History record model
Section titled “History record model”Ships, fleets and commanders accumulate dated history lines. Every line has the same four parts.
- The game time it was written at, in seconds, stored as a decimal number.
- A text description.
- A history type.
- A mark that the line was restored from a saved game.
Each fleet, ship and commander keeps its own list of lines. A new owner starts with an empty list.
The history type has three values in this order: Generic (0), Assignment (1) and Unassignment (2). Only commander lines set the type. Ship and fleet lines always stay Generic.
Each owner type has its own way of adding a line.
| Owner | Parts set | Extra rule |
|---|---|---|
| Ship | Game time = current game time, description |
If adding the line fails, the game shows a Function #3669 error and the line is not added |
| Fleet | Game time = current game time, description |
A failure here is not caught separately |
| Commander | Game time = current game time, description, type |
An Assignment line first deletes every Unassignment line with the same game time. A failure shows a Function #409 error |
No rule checks whether the owner belongs to an NPR. NPR ships, fleets and commanders therefore collect history in memory exactly like player ones. The NPR exclusion exists only for measurements, described in history and measurements. Once written, a line is never edited or removed on its own, with three exceptions. The same-time Unassignment removal above is one. The fleet pruning at save is the second. The commander history display is the third, because it sorts the list and keeps the sorted order.
Neighbouring rules live on other pages. Commander lifecycle owns the assignment model and the clearing rule whose texts are listed here, and its clearing section says who is cleared when. Medals and achievement conditions owns medal conditions and the award that measurements trigger. Object identity and reload owns history as creation evidence and states the five-year fleet pruning rule. Treasury snapshots are a different store, described in treasury persistence and history displays. Exploration and survey completion rules are in exploration and first transit, and combat kill resolution is in destruction aftermath.
Ship history entries
Section titled “Ship history entries”Ship history comes from two kinds of event. Most events build their own text and add it to one ship. A shared discovery and work step builds its text and writes it to several ships of a fleet at once. That step has its own section, discovery and work entries. This section lists the single-ship events.
| Event | Text written | Written when |
|---|---|---|
| Construction | Constructed at [shipyard name], or Constructed when no shipyard is involved |
Ship creation, which adds the line itself, and a failure here shows no Function #3669 error |
| Officer assignment | [name and rank] assigned as [title] |
Assignment of an officer to a ship |
| Officer killed by component loss | [role prefix][name and rank] killed due to the destruction of [location] |
The officer casualty roll for a destroyed control component |
| Officer killed by life support failure | [command type description] [name and rank] died due to life support failure |
The life support failure check |
| Combat kill by this ship | Destroyed [target text] ([tons] tons) in [system] |
The combat kill record |
| Penetrating damage taken | [amount] internal damage suffered during engagement in [system] |
The combat aftermath step |
| Shipyard repair | Repair completed at [population] |
Shipyard task completion |
| Shipyard refit or automatic refit | Refit to [class] completed at [population] |
Shipyard task completion |
Refit to [class] |
Construction. Ship creation writes the construction line after the ship’s fleet, civilian flags and mineral record are set, and before ordnance is loaded. The line is the first entry of every ship that enters play through ship creation, player and NPR alike.
Officer assignment. Assignment to a ship writes the ship line immediately after the commander’s own Assignment line, with the same title. The titles are “Commanding Officer”, “Executive Officer”, “Chief Engineer “ with a trailing space, “Commander, Air Group”, “Science Officer” and “Tactical Officer”. The trailing space makes the chief engineer’s commander line read “Assigned as Chief Engineer of” with two spaces. A command type outside those six leaves the title empty. The displaced incumbent receives no ship line, only its own Unassignment line in commander history.
Officer casualties. When a control component is destroyed, the game picks the officers tied to that component, then kills each one with a 50% chance. A killed officer gets a ship line, a commander line naming the location and the ship, and retires with the status “Killed in Naval Combat”. The role prefix depends on the component.
| Destroyed component | SDComponentID (FCT_ShipDesignComponents) |
Officers at risk | Location text | Role prefix |
|---|---|---|---|---|
| Bridge | 18 | Commanding officer and science officer | “the Bridge” | none |
| Auxiliary Control | 65736 | Executive officer | “Auxiliary Control” | “Executive Officer “ |
| Combat Information Centre | 65738 | Tactical officer | “the Combat Information Centre” | “Tactical Officer “ |
| Main Engineering | 65737 | Chief engineer | “Main Engineering” | “Chief Engineer “ |
| Flag Bridge | 225 | The commander of each naval admin command based on the ship | “the Flag Bridge” | “Flag Officer “ |
How control components are hit is described in space combat resolution.
Life support failure. Each officer dies when a roll of 1 to 100 is below half the life support casualty percentage. The game retires the officer before it writes either history line. Retirement clears the assignment and resets the command type to none, so the role description falls back to the plain word “None” and the ship line starts with “None”. The commander’s own list receives the “Relieved” Unassignment line from the retirement first, then “Died due to life support failure on board [ship]”. Life support failure itself is described in ship readiness and recovery.
Combat kills. The combat kill record runs when an attack destroys its target. A ship attacker gets the ship line. The target text is the target as the attacker’s race knows it. The tonnage is the target’s class size in hull spaces times 50 tons per hull space, written with thousands separators and no decimals. The system is the attacker’s race’s name for the system its fleet is in. The attacking ship’s commanding officer gets a parallel commander line ending “while in command of [ship]”. A ground formation attacker gets no ship line. Its commander, when it has one, gets a line naming the formation instead.
Penetrating damage. The combat aftermath writes the damage line only for a target that survived with at least one penetrating hit. The amount in the line and in the Internal Damage Taken measurement is armour hits x damage per hit, not penetrating hits x damage per hit. A record with penetrating hits and zero armour hits therefore writes a line that starts with “0”. The amount is written as a plain decimal number, without thousands separators.
Shipyard work. Repair completion writes its line after clearing damage and before the crew grade and overhaul adjustments. Refit and automatic refit completion write their line before the crew and officer changes. Construction through a shipyard uses the construction line above, and scrapping writes no line. The task rules are in shipyard completion.
The ship line that is never written. The game has a step meant to add a ship line when a ship officer receives a medal, dies in an accident, retires for medical reasons, dies of natural causes or retires at the end of a career. It adds the line only when the commander has no assigned ship, which is the opposite of what is needed. For a commander in a ship role the ship exists, so the check fails and nothing is written. A commander who holds a ship role but has no ship recorded for it passes the check, and the step fails with a Function #3672 error. None of those five events therefore produces a ship line. Commander lifecycle states the same finding.
Discovery and work entries
Section titled “Discovery and work entries”One shared step writes discovery and work lines to the ships of a fleet, one line per selected ship. The measurement type picks both the text and the ships. The step starts from the fleet’s independent ships, the ships that have no mothership. Parasites docked on a carrier in the fleet never receive these lines. Independent ship selection is also described in fleet organisation.
| Measurement type | Ships that receive the line | Text | Details used |
|---|---|---|---|
| Ruins Discovered | Independent ships with an undamaged geological survey sensor | Discovered [ruin description] on [body name] |
The surveyed body and its ruin |
| Independent ships with an undamaged geological survey sensor | The surveyed body | ||
| Jump Points Discovered | Independent ships with an undamaged gravitational survey sensor | Discovered jump point in [fleet system] with two spaces |
none |
| Star Systems Discovered | Every independent ship | Discovered new system: [fleet system] |
none |
| Habitable World Discovered | Every independent ship | Discovered habitable world in: [fleet system] |
none |
| Tons Salvaged | Every independent ship | [salvage text] in [fleet system] |
The salvage text |
| JP Stablisations Completed | Every independent ship | Stabilised [destination] jump point in [fleet system] |
The stabilised jump point |
| LP Stablisations Completed | Every independent ship | Stabilised [body name] lagrange point in [fleet system] |
The body of the new lagrange point |
Body names are the fleet race’s name for the body. The fleet system is the fleet race’s name for the system the fleet is in when the line is written. Any other measurement type writes nothing.
Module filters with no effect. For salvage, jump point stabilisation and lagrange point stabilisation, the game works out which ships carry an undamaged salvage module or jump point stabilisation module and then ignores the result. Every independent ship in the fleet receives the line, including ships without the module. The measurement step applies the same filters and keeps them, so salvage credit and salvage history can reach different ships.
Stabilised jump point destination. The destination name starts as “Unknown”. It becomes “unexplored” when the jump point has no linked jump point. It becomes the race’s name for the linked system when the race has a survey record of that system. A linked jump point into a system the race has no survey record for keeps “Unknown”.
Eight places in the game write these lines. Each one records the matching measurement immediately before it writes history.
| Game step | Measurement and history | Condition |
|---|---|---|
| Geological survey completion during fleet movement | Ruins Discovered | The body has a RuinID above 0 and AbandonedFactories above 0 in FCT_SystemBody |
| Same, geological survey completion | ||
| Same, completion of a new lagrange point stabilisation | LP Stablisations Completed | The target body exists |
| Jump point charting from a survey location | Jump Points Discovered | Once per newly charted jump point, when a fleet did the charting and the charting does not come from another race’s survey data |
| Jump point exploration | Star Systems Discovered | A fleet is on the order and the destination system was unknown to the race |
| Same | Habitable World Discovered | At least one destination body with an atmosphere has colony cost 0 for the primary species |
| Jump point stabilisation completion | JP Stablisations Completed | The jump point exists |
| Wreck salvage completion | Tons Salvaged | Every completed salvage |
Exploration names the departure system. During a jump transit the game runs exploration before it moves the fleet and before it switches the fleet to the new system. The system and habitable world lines therefore name the system the fleet jumped from, not the system it discovered. The event log at the same moment names the new system correctly. Exploring a jump point without a fleet writes no history. First exploration is described in jump point network.
Habitable count. The habitable world line carries no count. The measurement adds the number of destination bodies with an atmosphere whose colony cost is 0, calculated for the primary species without orbital extremes.
Salvage text. Wreck salvage builds the salvage text “Salvaged [class]”. A wreck of the fleet’s own race uses the real class name. A foreign wreck uses “unknown class” whether or not the race holds an alien class record for it. The salvage event text uses the alien class name when the record exists, so the event and the history differ for a known foreign class.
Fleet history entries
Section titled “Fleet history entries”Fleet history has five events. Every one leaves the type at Generic.
| Event | Text | Written when |
|---|---|---|
| Fleet created | Created on [current game date] |
Fleet creation |
| Fleet created to hold a captured or transferred ship | Created to receive foreign ship |
Ship transfer between races |
| Minerals found by an orbital geological survey | Minerals discovered on [body name] |
Geological survey completion during fleet movement |
| Jump points charted at a gravitational survey location | Jump Point discovered in [fleet system] |
Gravitational survey completion during fleet movement |
| Move order completed | The order’s description | Move order completion during fleet movement |
Creation. Every fleet made by fleet creation receives the creation line, including detachments, NPR fleets and civilian fleets. The date is a long date without time of day, while the stored game time holds the exact second. Fleet creation as a whole is described in fleet creation.
Receiving fleet. When a ship transfer to another race needs a new fleet for the captured ship, it creates the fleet and then adds its own line. The new fleet therefore starts with two entries at the same game time, “Created on [date]” and “Created to receive foreign ship”.
Mineral survey. The minerals line is written only when the surveyed body has at least one mineral deposit. The same step logs the event and records Bodies With Minerals Discovered. No ship line exists for this discovery, because the survey step writes no ship lines for it and the shared discovery step has no text for it. Geological survey results are described in geological discoveries.
Jump point charting. The fleet line is written once per completed survey location when the charting reports success, which happens when at least one jump point was charted. Ship lines are written once per charted jump point during the charting. A location that charts two jump points gives the fleet one line and each eligible ship two lines. Charting rules are in survey locations and jump-point charting.
Completed orders. Every move order that reaches the completion check during fleet movement adds its description to the fleet. This happens before a cycling order is copied to the end of the queue and before completed orders are removed from the fleet. Orders deleted in other ways, for example when a ship is removed or when the fleet’s orders are cleared, never reach this check and leave no line. Order queues are described in movement and logistics.
Commander history entries
Section titled “Commander history entries”Commander history is the only list that uses all three history types. The type matters only when a line is written. An Assignment line removes Unassignment lines with the same game time, so a relief followed by a reassignment in the same instant shows only the new post. The persistence section explains why the type does not survive a reload.
Assignment entries. Each assignment path clears the incoming commander without history, clears the incumbent with history, then writes an Assignment line.
| Path | Text |
|---|---|
| Assignment to a ship | Assigned as [title] of [ship] |
| Assignment to a ground formation | Assigned as Commanding Officer of [formation] |
| Manual assignment to the selected post, sector | Assigned to [sector name] |
| Same, colony | Assigned to [population name] |
| Same, academy | Assigned as Academy Commandant on [population name] |
| Same, naval admin command | Assigned to [admin command name] |
| Automatic assignment to a naval admin command | Assigned to [admin command name] |
| Automatic administrator assignment for one colony | Assigned to [population name] |
| Race-wide automatic assignment, colony governors | Assigned to [population name] |
Research project leadership is the exception. Starting a research project makes the scientist its leader without any history line. Leadership rules are in research and scientific personnel.
Unassignment entries. Clearing an assignment builds one text from the post held and, when the clearing records history, writes it as an Unassignment line. The texts read “Relieved from command of [post]”, “Relieved as [role] of [ship]” or “Relieved from leadership of [project] research project”. The order in which posts are tested and the events that record history belong to the clearing section. A surrender writes a separate Unassignment line, “Surrendered to [captor title]”, then clears without history.
Rank entries. Promotion writes “Promoted to [rank]”. Demotion writes “Demoted to [rank]”. Commander creation writes a “Promoted to [rank]” line when the new commander has a rank, so a commander created with a rank starts its list with a promotion line. The Commanders window restore writes “Restored to [rank]” for naval and ground officers and “Restored to active service” for the other types. Rank rules are in promotion and demotion.
Medal entries. A medal award writes “Awarded the [medal]”. A condition award appends “: [condition description]”. A manual award with a citation appends “. Citation: [citation]”. A repeat award of a multiple-award medal appends “. This is the 2nd award of this medal”, because the award count is set to 2 on every repeat. The award rules are in the shared award operation.
Health and retirement entries. The commander health, retirement and service medal step writes one line per outcome. For the four outcomes that end service it writes the line before the commander retires.
- “Killed in an accident”
- “Developed a medical problem affecting long term health”
- “Developed a significant medical problem affecting long term health”
- “Developed a serious medical problem affecting long term health”
- “Forced to retire due to ill health”
- “Died of natural causes”
- “Retired from Service”
The Commanders window retire button writes “Retired by order of High Command” before the commander retires with the status “Retired by Order of High Command”. The rolls are in health, retirement and casualties.
Combat, loss and captivity entries.
| Event | Text | Written when |
|---|---|---|
| Ship kill by the commanded ship | Destroyed [target] ([tons] tons) while in command of [ship] |
The combat kill record |
| Ship kill by the commanded formation | Destroyed [target] ([tons] tons) while in command of [formation] |
Same |
| Control component destroyed | Killed due to the destruction of [location] on [ship] |
The officer casualty roll |
| Ship destroyed, escape failed | Killed during the destruction of [ship] |
Evacuation of a destroyed ship |
| Ship destroyed, escaped to lifepod | Escaped the destruction of [ship] and made it to a lifepod |
Same |
| Ship destroyed, escaped without lifepod | Escaped the destruction of [ship] |
Same, but no situation reaches this outcome |
| Life support failure | Died due to life support failure on board [ship] |
The life support failure check |
| Embarked formation lost with its ship | Killed during the destruction of [ship] |
Ship removal |
| Ground formation destroyed | Killed due to the destruction of their ground unit |
Ground formation destruction, when the commander dies with it |
| HQ element destroyed | Killed due to the destruction of [class] on [population or ship] |
A hit on an HQ element in ground or boarding combat |
| Boarding attempt | Killed during a boarding attempt on [ship] |
The boarding attempt |
| Friendly lifepod rescue | Rescued from life pod in [system] |
Lifepod rescue |
| Foreign lifepod rescue | Captured by [the rescuing race's name for the commander's own race] |
Same |
| Lifepod expiry | Died when lifepod ran out of life support |
Lifepod expiry |
The order of the death line and the retirement decides the order the list shows at equal game times. Most events add the death line first, so the retirement then appends the “Relieved” Unassignment line after it. The life support path retires first. A failed escape during evacuation has already cleared the commander with history, so its list shows the relief before the death. Lifepods and capture are described in lifepods and captivity.
The HQ element line for a formation on a ship takes the ship’s name from the commander’s race’s intelligence record of that ship. The game takes the first matching record, if there is one. For a boarding formation the ship is the boarded enemy ship, so the boarder race’s record is found and the line is written. For a defending formation on its own race’s ship, no record is found. The hit resolution then fails while writing the event log line, with a Function #1806 error, before the history line and the commander’s death are written. That ends the hit resolution for this hit, and it adds 0 instead of the unit class size to the destroyed ground tonnage. Boarding and ground combat own the combat rules.
History and measurements
Section titled “History and measurements”History lines and measurements are separate stores written side by side. A measurement has a type, a decimal amount and a strike group flag. Ships keep a list of measurements. Commanders keep one total per type. Fleets keep none.
Measurements are recorded in three ways.
- Fleet measurement. Does nothing for an NPR fleet. Otherwise it gives the amount to each selected independent ship, then credits one commander. Ship selection depends on the type and counts only undamaged components. Jump point discovery needs gravitational survey sensors. Salvage needs a salvage module. Both stabilisations need a jump point stabilisation module. Ruins, minerals need geological survey sensors. Other types reach every independent ship. Jump point discovery, salvage, stabilisation and geological discoveries credit the senior captain among the fleet’s ships with the matching undamaged component. Other types credit the senior commanding officer of the whole fleet, ordered by rank priority then seniority.
- Ship and captain measurement. Records on the ship, then on the ship’s commanding officer if one is assigned.
- Ship measurement. Adds to the ship’s own entry for the type, the one without the strike group flag, creating it at the first record. When the ship is assigned to a mothership, it also adds to the mothership’s strike-group entry for the type. It has no NPR check.
Commander measurement does nothing for an NPR commander. Otherwise it adds the amount and awards every medal of the race whose condition threshold, the condition’s AmountRequired, lies above the previous total and at or below the new one. Selection and award detail belongs to where measurements come from.
The two stores diverge in four ways.
- History has no NPR check, while fleet and commander measurements do. An NPR survey ship gets discovery lines but no fleet-recorded measurement.
- History reaches more ships than measurement credit for salvage and stabilisation, because the history filters have no effect.
- Measurements add up on the mothership as strike-group totals. History never passes to a mothership.
- Most measurement types have no history line at all. Point defence kills, armour damage, ground kills, research, boarding and installation recovery change counters only.
Measurement type catalogue
Section titled “Measurement type catalogue”The game has 25 measurement types. The name is what the measurement lists show. The value is the number stored in the MeasurementType column of FCT_ShipMeasurement and FCT_CommanderMeasurement, and medal conditions in DIM_MedalCondition use the same numbers in their MeasurementType column. The third column names every game step that records the type. The last column names the history line written alongside, if any.
MeasurementType |
Name shown | Recorded by | History line alongside |
|---|---|---|---|
| 0 | none | Nothing records it | None |
| 1 | Star Systems Discovered | Jump point exploration | Ship line, departure system name |
| 2 | Ruins Discovered | Geological survey completion | Ship line |
| 3 | Ship Destruction Survived | Evacuation of a destroyed ship, commander only | Commander lifepod escape line |
| 4 | Hostile Ships Destroyed | The combat kill record | Ship and captain kill lines |
| 5 | Commercial Tonnage Destroyed | The combat kill record, ship attacker and ground attacker | Kill lines |
| 6 | Hostile Missiles Destroyed | Anti-missile attack records, point defence, interceptors, point-blank defence | None |
| 7 | Military Tonnage Destroyed | The combat kill record, ship attacker and ground attacker | Kill lines |
| 8 | Armour Damage Taken | Combat aftermath, armour hits | None |
| 9 | Internal Damage Taken | Combat aftermath, penetrating hits | Ship damage line |
| 10 | Ground Tonnage Destroyed | Beam bombardment, missile bombardment, ship ground attack, boarding combat, ground combat | None |
| 11 | Bodies With Minerals Discovered | Geological survey completion | Fleet minerals line |
| 12 | Jump Points Discovered | Jump point charting | Ship line per jump point, fleet line per location |
| 13 | Research Points Generated | Player research progress, plus a top-up at project completion | None |
| 14 | Research Projects Completed | Research project completion | None |
| 15 | Length of Service | Nothing records it. The service medal check compares the commander’s years of service directly | Medal line only |
| 16 | Successful Boarding Combat | Ship boarding combat | None |
| 17 | Habitable World Discovered | Jump point exploration | Ship line, departure system name |
| 18 | Combat Drop - Formation | Nothing in play. The single-formation unload records it behind a check that no order passes | None |
| 19 | Combat Drop - Transport | Nothing in play. The transport ship and transport captain records sit behind the same check | None |
| 20 | Recover Installation | Ruin installation recovery | None |
| 21 | Tons Salvaged | Wreck salvage, military and commercial wrecks | Ship salvage line |
| 22 | JP Stablisations Completed | Jump point stabilisation | Ship stabilisation line |
| 23 | Geological survey completion | Ship line | |
| 24 | LP Stablisations Completed | Lagrange point stabilisation completion | Ship stabilisation line |
Amounts depend on the event. Ship kills add 1. A point-defence kill adds 1 and point-blank defence adds its destroyed count. An interceptor kill adds 2, once directly and once through its attack record, which adds its total hits. Destroyed tonnage adds the class size x 50 tons per hull space. Salvage adds the wreck tonnage, class size x 50, or a tenth of it (times 0.1) for a commercial class. Damage adds hits times damage per hit. Point defence describes the interception paths.
The game also contains a damage measurement step that would record Internal Damage Taken or, otherwise, Military Tonnage Destroyed (class size x 50) on the damaged ship itself. Nothing in the game runs it.
No path records either drop type. The drop check compares the move action with Orbital Drop All Ground Units twice. That action never reaches the single-formation unload, because the game sends it to the unload-all step, which records no measurement.
History and measurement displays
Section titled “History and measurement displays”The Naval Organization window shows fleet history and ship history on two tabs, each titled History, one in the fleet view and one in the ship view. Each is a two-column list of date and event.
- Fleet history. The list is cleared and every entry is added sorted by descending game time, newest first. Each date is a long date with time of day. When the list is not empty it scrolls the last item, the oldest entry, into view.
- Ship history. The ship view uses the same sort, date format and scroll for the ship’s lines.
- Commander history. The Commanders window sorts the list newest first, stores the sorted copy back as the commander’s list and shows each entry with a date without time.
The sort keeps lines with equal game time in the order they were written, in all three lists. Dates count the game time in seconds from 1 January of the game’s start year. A game time beyond 1,000 years (31,536,000 seconds each) is shown as the date 1,000 years after the start.
Measurements have three views. The ship detail lists the ship’s own entries, then strike-group entries with “ (SG)” appended, each group sorted by name, with amounts written with thousands separators. The commander summary lists measurements sorted by name. The Combat Ratings tab of the Naval Organization window reads seven combat types from every ship of the race that has measurements: Military Tonnage Destroyed, Commercial Tonnage Destroyed, Hostile Missiles Destroyed, Ground Tonnage Destroyed, Armour Damage Taken, Internal Damage Taken and Hostile Ships Destroyed. When its Include Strikegroup checkbox is checked, a strike-group entry is also read, and the last matching entry in the ship’s list sets the value, so own and strike-group totals are not summed.
Destruction, capture, scrapping and death
Section titled “Destruction, capture, scrapping and death”No rule copies, archives or moves a history list. A list lives exactly as long as its owner stays among the ships, fleets or commanders that the save writes.
Ship destruction. Removing a ship as destroyed or abandoned evacuates officers for a standard race, creates a wreck, kills embarked formation commanders and finally removes the ship from the game. The wreck does not carry the ship’s history. The ship’s history and measurements remain in memory on the removed ship, but the save writes only ships still in the game, so they are gone after the next save. The kill line on the attacker and the commanders’ death lines survive with their owners. Ship removal is described in ship death.
Fleet removal. A fleet whose last ship leaves is removed from the game and its history goes with it. Absorbing one fleet into another moves the ships and removes the absorbed fleet without copying its history into the recipient. Ships keep their own histories through every fleet transfer. Absorbing is described in join and absorb actions.
Capture and transfer between races. A ship transferred to another race stays the same ship. The transfer changes the race, species and class and may rename the ship from the captor’s intelligence, but the ship’s history and measurements are untouched. Old lines keep the old names, and the new owner sees the previous owner’s history. The officers on board are disembarked and cleared with history. A surrendering ship’s officers become prisoners after their “Surrendered to” line. Capture rules are in ship capture and surrender.
Scrapping. Shipyard scrapping recovers components, fuel and supplies and removes the ship as scrapped. No ship line is written. Officers aboard receive their Relieved line when they are disembarked, and the ship’s history disappears with the ship.
Commander death and retirement. Retirement moves the commander to the retired commanders, so the history stays in memory. The save writes active commanders and only those retired commanders with RetainRetired or Prisoner set in FCT_Commander. History of other dead or retired commanders is not saved and is absent after a reload. The Commanders window toggles RetainRetired. Restoring a retired commander keeps the full list and adds a restore line.
Tactical map view history
Section titled “Tactical map view history”The tactical map keeps a back and forward list of viewed positions per race. It shares the word history and nothing else with the records above. Each race keeps entries numbered by index. Each entry holds the system viewed, the view coordinates, its index and a current flag, which is set when the entry is made.
Centring the map with history recording on adds an entry. The ordinary recentre records history. Adding an entry drops every entry after the current one, or clears the list when none is current, then appends a new current entry whose index equals the number of entries already in the list.
Navigation finds the entry at the current index plus the step, restores it and marks it current. Restoring recentres the map without adding an entry, switching the selected system first when needed. Alt+F11 steps back (-1) and Alt+F12 steps forward (+1). The tactical map and most windows pass their key presses to the same hotkey handling. The entries are not saved and start empty on every load.
Worked examples
Section titled “Worked examples”All numbers in this section use made-up inputs.
- Gravitational survey with two jump points. A player survey fleet holds ships A and B with undamaged gravitational sensors, tanker C without one, and a docked parasite D. Completing a survey location charts two jump points in Alpha. Each charted point records the measurement and writes history, so A and B each gain Jump Points Discovered 2 and two lines “Discovered jump point in Alpha”. C and D gain nothing. The fleet gains one line “Jump Point discovered in Alpha”. The senior captain of A and B gains 2 and is tested against every medal threshold crossed. An NPR fleet in the same position gets the same history lines and no measurements.
- Salvage of a known foreign freighter. A salvage fleet of a salvage ship and an escort finishes a wreck of a commercial foreign class of size 120 hull spaces, for which the race holds an alien class record. The salvage ship gains Tons Salvaged
120 x 50 x 0.1 = 600. Both ships gain the line “Salvaged unknown class in Beta”, while the event names the alien class. A military class of the same size gives 6,000. - Penetration with no armour hits. A record against a surviving ship has 0 armour hits, 3 penetrating hits and damage per hit 4. The ship and its captain gain Internal Damage Taken 0 and the ship gains “0 internal damage suffered during engagement in Sol”. With 5 armour hits and 3 penetrating hits the amount is
5 x 4 = 20. - Exploration from Sol. A fleet in Sol jumps through an unexplored point and discovers a new system that the race names Alpha Centauri. Two of its atmospheric bodies have colony cost 0. Each independent ship gains “Discovered new system: Sol” and “Discovered habitable world in: Sol”. Habitable World Discovered rises by 2.
- Five-year pruning. An NPR fleet has entries at game times 1,000 and 2,000. The game saves at time 157,681,000. The cutoff is
157,681,000 - 157,680,000 = 1,000. The strict comparison drops the entry at 1,000 and keeps the one at 2,000, both in the saved rows and in the live list. A player fleet without a shipping line keeps both. - Relief and reassignment in one instant. A captain is relieved at time 5,000 by a newcomer and then assigned to another ship at time 5,000. The Assignment line removes the Unassignment line, so the list shows only “Assigned as Commanding Officer of [ship]”. If the game is saved after the relief and reloaded at the same time before the new assignment, the relief line reloads as Generic and survives the later assignment.
- Captured fleet. A ship surrenders at time 9,000 and the captor needs a new fleet. The new fleet shows two lines at 9,000, “Created on [date]” and “Created to receive foreign ship”. The ship still lists “Constructed at [yard]” from its first owner.
Persistence and reload
Section titled “Persistence and reload”Each owner’s history rows are saved with the owner. Every save step first deletes the game’s rows, then inserts one row per entry.
| Table | Columns written | Saved with |
|---|---|---|
FCT_FleetHistory |
GameID, FleetID, Description, GameTime |
Fleets |
FCT_ShipHistory |
GameID, ShipID, Description, GameTime |
Ships |
FCT_CommanderHistory |
GameID, CommanderID, HistoryText, GameTime |
Commanders |
FCT_ShipMeasurement |
ShipID, MeasurementType, Amount, StrikeGroup, GameID |
Ships |
FCT_CommanderMeasurement |
CommanderID, MeasurementType, Amount, GameID |
Commanders |
What is not saved. The history type and the restored-from-save mark have no column. Every reloaded commander line is Generic, so an Unassignment line written before the save can no longer be removed by a same-time Assignment. Tactical map view entries have no table.
Fleet pruning. For an NPR fleet or a fleet with a shipping line, the fleet save replaces the live list with the entries whose game time is strictly greater than the current game time minus 157,680,000 seconds (five years) before writing. The rule and its effect on creation evidence are stated in object identity and reload. Ship and commander histories have no pruning.
Save error handling. In the ship save, writing a ship’s history rows and writing its measurement rows each have their own error guard. On a failure the game shows a Function #3678 error for history or a Function #3677 error for measurements, and the ship save step stops at that ship. The remaining ships and their rows are not written. The save then goes on with its next step.
Load order. Fleet history loads after fleets and sub-fleets. Ship history loads after ships and the ship ordnance. Commander history loads right after commanders, followed by commander bonuses, medals, commander measurements and ship measurements.
Load rules. Each table is read without a set order, and lines are appended in the order the database returns them. Display order comes from the sort at display time.
- Fleet history rows whose fleet is not loaded are skipped. Every restored fleet line gets the restored-from-save mark, and nothing in the game reads that mark.
- Ship history rows whose ship is not loaded are skipped. A ship skipped during ship loading, for example for a missing fleet, therefore loses its history rows silently.
- Commander history rows look the commander up among active commanders, then retired commanders, and are skipped when neither holds it.
- Commander measurement rows look the commander up among active commanders, then retired commanders, and add by type into the commander’s totals. Ship measurement rows for ships not loaded are skipped, and the strike group flag is restored.
Each table loads in one step. A failure on one row shows an error and ends that table’s load step, so its remaining rows are not loaded. Commander persistence beyond history is in commander persistence.
Concept map
Section titled “Concept map”- History record model, the shape and types every history line shares.
- Ship history entries, single-ship events and the ship line that is never written.
- Discovery and work entries, lines written to several ships of a fleet at once.
- Fleet history entries, the five fleet events and completed orders.
- Commander history entries, assignment, relief, rank, medal, health and loss lines.
- History and measurements, the counters recorded beside history and their NPR checks.
- Measurement type catalogue, the 25 stored measurement values.
- History and measurement displays, how windows sort and show both stores.
- Destruction, capture, scrapping and death, what owner loss does to a list.
- Tactical map view history, the unsaved back and forward view list.
- Persistence and reload, the five tables, pruning and load rules.
- Commander lifecycle, assignment, clearing and death rules behind commander lines.
- Clearing and losing an assignment, which events write Relieved lines.
- Medals and achievement conditions, medal awards that measurements trigger.
- Object identity and reload, fleet pruning and history as creation evidence.
- Treasury persistence and history displays, the separate treasury history store.
- Exploration surveys and discovery, survey and exploration rules that write discovery lines.
- Space combat resolution, kills and damage that write combat lines.
- Salvage and archaeology, wreck salvage and ruin recovery behind salvage lines.
- Shipyard development and ship work, repair and refit completion lines.
- Fleet organisation, independent ship selection and fleet creation.
- Ownership, destruction and aftermath, ship removal, capture and surrender.
- Research and scientific personnel, project leadership that writes no line.
- Naval administration and command, admin command assignments in commander history.
- Civilian governance and sectors, governor and sector assignments in commander history.
- Game time and state refresh, the game time every line is stamped with.
- Boarding and ship capture, boarding combat behind boarding death lines.
- Ground combat and conquest, ground combat behind formation and HQ element death lines.
- Movement and logistics, order queues whose completed orders write fleet lines.
- Jump point network and galaxy topology, first exploration behind system discovery lines.
- Point defence, interception paths behind missile kill counts.
- Ground force organisation, ground formations whose commanders get assignment lines.
- Move action catalogue, the drop actions that record no drop measurement.
- Civilian economy and autonomous logistics, shipping lines whose fleets are pruned at save.
Resources
Section titled “Resources”Related community documentation and developer posts. These may describe a different game version.