Every commander, whether naval officer, ground force commander, administrator or scientist, follows one shared lifecycle. It runs from creation through naming, bonus rolls, rank, appointment, experience, promotion, casualties, captivity and retirement, to the saved rows that bring the person back after a reload.

Type-specific detail lives on companion pages, which this page links instead of repeating. Scientific personnel covers academy graduation, profession inheritance, scientist bonuses and the shared health and retirement check. Recruitment and administrator experience covers administrator rolls and gains. Promotion, experience and career continuity covers naval admin appointments, required rank and the promotion score. Ranks and commander assignments covers ground formation rank. Medals covers awards, crew grade, officers and training covers crew grade effects, and prisoners and interrogation covers prisoners. This page covers the shared record, names, the bonus catalogue, naval and ground initial rolls, traits, the rank ladder, the assignment model, ship officer automation, ship and ground experience, casualties, lifepods, histories and reload rules.

A commander is one record that normally sits in one of two lists, the active commanders or the retired commanders. Creating a commander adds the new record to the active list as the very last step. Retiring a commander moves the record to the retired list and takes it out of the active list. Every periodic check reads only the active list. The Commanders window actions Restore, Replace All and Delete Rank leave the affected commanders in neither list. The next save therefore drops them, because a save writes only the active commanders, the retired commanders marked to be kept, and retired prisoners.

The construction cycle runs the shared personnel checks in a fixed order. The health, accident and career retirement check runs first, then the random bonus experience check. Commander crew training runs later, after maintenance and civilian shipping. Automatic assignment runs inside each race’s strategic update, for races with automatic assignment switched on (FCT_Race.chkAutoAssign = 1), for Standard NPRs.

Academy graduation is a population production step and is not part of this block. A recruit created in a cycle therefore misses that cycle’s experience roll, as the scientific personnel page records. Each military academy adds 10 graduating officers per year to the population’s running total, and each whole officer in that total graduates as one new commander.

A commander record holds identity, a career clock, a location, one link for each kind of post it can hold, and several collections. The command type says which of those links is in use. Every way of assigning a commander clears the old assignment first, so normally at most one link is set. The command type is stored in FCT_Commander.CommandType.

Group Stored data Notes
Identity CommanderID, race, species, profession (CommanderType), Name, Female, research field (ResSpecID) The research field is set for every profession at creation
Origin EducationColony, homeworld (HomeworldID) Copied from the population the commander is created at
Career clock CareerStart, GameTimePromoted, GameTimeAssigned, service years Service years are a cached value that the health check rewrites
Rank rank (RankID), Seniority, rank level, PromotionScore, DoNotPromote Scientists and administrators have no rank
Location population (PopLocationID), transport ship (TransportShipID), lifepod (LifepodID) Clearing an assignment empties the population and the transport ship together, never the lifepod
Assignment Ship command, the five ship officer posts, colony, sector, academy, ground formation, research project, naval admin command One stored command ID (CommandID), read according to CommandType
Status RetireStatus, StoryCharacter, RetainRetired, Prisoner, Processed Processed marks an interrogated prisoner
Collections Bonuses, medals, measurements, history entries, traits Saved in separate tables
Inert Loyalty, KillTonnageCommercial, KillTonnageMilitary, DoNotRelieve, PopPromotionScore, Title, Orders, Notes Saved and loaded only

The inert values have no effect anywhere in play. Loyalty receives d30 plus 70 at creation. The other inert values are only written when the game saves and read back when it loads. No game rule uses any of them.

The command type has twelve assignment values with gaps in the numbering. The game stores the number.

Stored CommandType Assignment
0 None
1 Commanding officer of a ship
3 Colony governor
4 Sector governor
5 Ground formation commander
7 Research project leader
8 Executive officer (XO)
9 Chief engineer
10 Science officer
11 Tactical officer
12 Naval admin commander
15 Commander, air group (CAG), shown as Strike Group Commander
17 Academy commandant

The officer roles occupy values 8 to 11, and the CAG is 15.

Every commander comes from one creation step, given a home population, an option to log a new-commander event, and an optional parent commander. The table lists every source of new commanders in the game. Only academy graduation passes a parent, so only academy recruits can inherit a profession, a research field or the better-of-two bonus roll.

Source Population Parent Count Follow-up
Military academy graduation Graduating colony Current academy commandant One per whole officer in the population’s AcademyOfficers total None
New game race setup Homeworld None max(academies x 10 x 20, 300) Rank promotion pass with the time requirement waived
Independence Seceding colony None floor(old race commanders x population share) Waived-time promotions, then the ship phase of automatic assignment only
Commanders window Replace All Capital None Entered number Rank promotion pass with the time requirement waived
Commanders window extra commanders Capital None Entered number None

At new game setup the count is the homeworld’s military academies times 10 graduates per academy per year times 20, with a floor of 300. On independence the new race receives the old race’s active commander count times the seceding population’s share, rounded down.

Creation runs these steps in order. The profession inheritance and research field rules are described in recruitment and academy commandants.

  1. Allocate an ID, set the race, and roll the profession. When no profession was inherited from the parent, a d100 decides it. Under limited research administration (FCT_Game.LimitedLabs = 1) the roll gets plus 1. Below 65 gives a naval officer, 65 to 92 a ground force commander, 93 to 96 an administrator, and 97 or more a scientist.
  2. Set the rank to the most junior rank of that profession. Scientists and administrators get no rank.
  3. Set seniority to the count of active commanders holding the same rank, plus one.
  4. Name the recruit from the population’s academy name theme (FCT_Population.AcademyNameThemeID) when it has one, otherwise from the race name themes.
  5. Backdate the career start by d5 years and copy it into the assignment time and the promotion time.
  6. Copy the location, education colony, species and homeworld, and roll loyalty as d30 plus 70.
  7. Roll the research field. With a parent, a d100 of 25 or less copies the parent’s field, otherwise a d9 picks one of the nine fields. Then roll the profession-specific absolute bonus, the administrator roll for administrators and the scientist roll for scientists, and roll health risk.
  8. Roll every conditional percentage bonus, recalculate the promotion score, assign traits, and write a “Promoted to” history entry with the rank name when a rank exists.
  9. Log the new-commander event when requested, as a new administrator, new scientist, new naval officer or new ground force officer event. Then add the commander to the active list.

The seniority count in step 3 compares rank records across all races. For an unranked scientist or administrator it counts every unranked commander of every race. The game does not use seniority for unranked personnel in the paths described here.

Random naming picks one of the race’s name themes, then builds the name from that theme. A race with no name theme names every random commander “Aaron Aardvark”. The same name appears when random naming fails with an error, which the game reports as Function #2299.

When a race has only one theme, that theme is used directly. With several themes the game writes a running total of each theme’s Chance into the theme list, then rolls d(total). The first theme whose running total is at least the roll wins. The Chance weights come from FCT_RaceNameThemes, which the game saves and restores per race.

The name is built according to the theme’s SpecialRule. Each name part is drawn from the matching part list by a d(count) roll, which picks the entry at that position in the list. An empty part list makes the draw fail with a Function #1652 error, the name then fails with Function #1651, and the commander is named “error”.

SpecialRule Construction
1 Three letter codes, each d26 plus 64, then -d9-d9-d9
2 Two letter codes, each d26 plus 64, then -d9-d9- and three letters
3 First name, plus a family name when d3 is below 3
4 First name and family name, with “a” appended when the first name is female and the family name ends in “ov”
Other Parts chosen by NameOne, NameTwo, NameThree (1 first, 2 family, 3 third), with NameOneAddition inserted after part one when d100 is at most NameOneAdditionChance

Rules 1 and 2 add the letter codes together as numbers before any text appears, so they print a sum instead of letters. Rule 1 yields a number from 195 to 270 before the digits, and rule 2 a number from 130 to 180. The three trailing letters of rule 2 print as letters. Three d26 rolls of 1, 2 and 3 give 65 + 66 + 67, so rule 1 prints “198-” and three digits. The game database as shipped has one SpecialRule 3 theme (Indonesian, NameThemeID 45 in DIM_CommanderNameTheme) and none with 1, 2 or 4.

Creation never sets the commander’s Female value. Only loading a saved game assigns it. The Female flag of a name part in DIM_CommanderNames is a different value and drives the rule 4 suffix. The Commanders window Rename and Auto Rename All actions use the race themes and ignore academy themes.

A bonus is an entry holding a bonus type and a decimal value (BonusValue in FCT_CommanderBonuses). The type data comes from DIM_CommanderBonusType and carries Percentage, MaximumBonus, DisplayOrder, an abbreviation (BonusAbbrev) and four profession flags.

Bonus IDs Kind Maximum in the game database as shipped
Percentage IDs 1 to 14, 16, 17, 20 to 24, 26, 28 to 33, 35 to 38 Multiplier, missing reads as 1 1.5
25 Colony Administration Absolute 10
27 Research Admin Absolute 50

The four flags Naval, Ground, Civilian and Scientist only filter the bonus search boxes in the Commanders window. Fleet Training (ID 37) has DisplayOrder -1 and is hidden from every search box. Communications is rolled only for naval officers. It matters when the game picks the commander for diplomatic contact from the captains of ships with diplomacy modules.

Reading a bonus returns the stored value, or 1 for a missing percentage type, or 0 for a missing absolute type. The half bonus multiplier is 1 + (B - 1) / 2 and the quarter bonus multiplier is 1 + (B - 1) / 4, where B is the stored value. Both return 1 when no entry exists. A ship’s commanding officer contributes half bonuses to departmental multipliers, and sector governors contribute quarter bonuses to colony output.

A missing entry and an entry at 1.0 differ. Automatic assignment searches that require the commander to hold an entry for a bonus skip a commander without one, even though the missing bonus reads as 1.

Initial percentage bonuses come from one conditional roll per bonus, defined by a qualifying threshold q and five band limits t1 to t5. The roll applies when the commander’s profession matches the target profession or the target is all professions. It rolls d100. When the parent commander holds at least 1.2 in that bonus, the game rolls a second d100 and keeps the higher of the two. A roll above q creates the entry at 1.05 up to t1, 1.10 up to t2, 1.15 up to t3, 1.20 up to t4, 1.25 up to t5, and 1.30 above t5. A roll at or below q creates no entry.

Naval officer bonus q / t1, t2, t3, t4, t5 Entry chance without parent
Political Reliability (any profession, political bonus option on) 80 / 90, 95, 97, 98, 99 20%
Crew Training 20 / 50, 80, 90, 95, 98 80%
Survey 60 / 75, 85, 93, 97, 99 40%
Reaction 50 / 65, 80, 90, 95, 98 50%
Fighter Combat 70 / 75, 80, 90, 95, 98 30%
Carrier Operations 80 / 85, 90, 95, 98, 99 20%
Intelligence, Ground Support, Communications, Diplomacy 90 / 92, 94, 96, 98, 99 10% each
Tactical, Engineering 80 / 84, 88, 92, 96, 98 20% each
Production, Mining, Terraforming 80 / 88, 94, 96, 98, 99 20% each
Logistics 50 / 60, 70, 80, 90, 95 50%

The political bonus option is the game setting stored in FCT_Game.PoliticalAdmirals. Production, Mining, Terraforming, Logistics and Diplomacy are rolled in a separate group that runs only for naval officers.

Ground force commander bonus q / t1, t2, t3, t4, t5 Entry chance without parent
Ground Combat Defence, Ground Combat Offence 50 / 75, 90, 94, 97, 99 50% each
Occupation, Ground Combat Logistics, Ground Combat Training 60 / 80, 90, 94, 97, 99 40% each
Survey, Artillery, Manoeuvre 80 / 90, 93, 95, 97, 99 20% each
Anti-Aircraft 85 / 92, 94, 96, 98, 99 15%
Tactical, Production, Xenoarchaeology 90 / 92, 94, 96, 98, 99 10% each
Decontamination 94 / 95, 96, 97, 98, 99 6%

Production, Xenoarchaeology and Decontamination are rolled in a separate group that runs only for ground force commanders.

Administrator rolls and the administrator part of the industrial rolls are tabulated in recruitment and administrator experience. The scientist Research and Research Admin rolls are in initial research and administration bonuses. The last group of industrial rolls runs for administrators and scientists alike, but every roll in it targets administrators only, so scientists receive nothing from it.

Each recruit receives d3 plus 1 traits, so two to four. All six trait groups start selectable. For each trait the game rolls d6 until it hits a selectable group, disables that group’s opposites (Opposite1 and Opposite2 in DIM_TraitGroup), then draws a trait from the group with d(count), redrawing while the commander already holds that trait.

The group roll is always a d6, so only groups with IDs 1 to 6 can ever be chosen. A chosen group does not disable itself, and group 2 has no opposites, so later picks can return to an already used group. The game database as shipped defines six groups with 21, 28, 36, 19, 10 and 34 traits.

Group Description Disables
1 Inflexible / Uncaring 3
2 No effect on anything else None
3 Cheerful / Good character 1 and 6
4 Aggressive 5 and 6
5 Cautious 4
6 Cowardly / Malicious / Character Flaws 3 and 4

Traits are display data. They appear in the commander’s bonus list in the Commanders window and are saved and restored. Nothing else uses them.

A rank belongs to one race and one rank type (RankType in FCT_Ranks), either naval officer or ground force commander. Priority 1 is the most senior rank and larger numbers are more junior. The next higher rank is the one at priority minus 1, the next lower rank the one at priority plus 1, and the rank n steps down the one at priority plus n, always within the same race and rank type. A rank displays its abbreviation, or its full name when the abbreviation is empty.

Rank themes are built when a game loads, from DIM_RankThemeTypes and DIM_RankThemes ordered by ThemeID, ThemeRankID. For each row with a non-empty RankName the game adds a naval rank at the next naval priority, starting from 1 for each theme. A non-empty GFRankName adds a ground rank at the next ground priority. Missing abbreviations become “R” plus the priority. The CivilianRank column is never used.

Applying a rank theme sets the race’s administrator and scientist rank titles to “Administrator” and “Scientist”, then copies every theme rank into a new race rank with a fresh ID. It does not remove existing ranks. The theme is chosen in race creation, in the NPR template, or at random for generated NPRs. The standard setup for players, Standard NPRs applies it before creating recruits.

Lookup Rule
First rank of a profession Highest priority number, the most junior rank
Rank by grade Walk ranks by descending priority, return the grade-th one, or none
Rank requirement ordinal 1-based position from the junior end, or 1 when the rank is absent
A commander’s rank level The same position for the commander’s own rank, or 1 on any failure
Highest rank priority Largest priority across both rank types of the race

Grade 1 is the most junior rank. Ship class rank requirements, naval admin defaults, academy commandant requirements and ground tiers all turn grades into ranks with the rank-by-grade lookup. The rank requirement ordinal turns a ship class rank back into a grade for saving.

Reading the rank level of a scientist or administrator fails, because they have no rank. The game reports a Function #2422 error and uses 1. Prisoner interrogation and release read the rank level.

Seniority renumbering takes the active commanders holding one rank, sorts them by current seniority, renumbers them 1, 2, 3 and so on, and stores the count as the rank’s commander count. Lower seniority numbers are more senior. Retirement renumbers the rank the commander vacated.

The Commanders window edits the ladder directly. Add Rank shifts every rank of the type down one priority and inserts the new rank at priority 1. Delete Rank clears and removes its active commanders without retiring them, then renumbers the remaining ranks from 1. Each existing rank keeps its grade after Add Rank, because grades count from the junior end.

The game also counts commanders and required ship officer slots per rank. It counts science department ships twice, one and two ranks below the ship class rank, and never counts combat information centres. Nothing runs this count during play, so the required slot count of every rank stays 0.

An assignment links two records. The commander side records the post, the command type, the assignment time and usually a location. The post records its commander, except academies. An academy keeps no record of its commandant, and the game finds the commandant by searching the active commanders for one whose academy post is that population.

Command type What the post records Location set on assignment
Ship and the five officer roles The ship’s list of commanders by role Transport ship set to the ship
Ground formation The formation’s commander Transport ship and population from the formation
Colony The population’s governor Population
Sector The sector command’s commander Population set to the sector population
Academy commandant None Population
Naval admin command The command’s commander Population and transport ship from the command
Research project The project’s leader Covered on the research page

Assigning a commander to a ship clears the incoming commander’s old post without history and clears the incumbent with history. It then records the commander in the ship’s role list and writes history on both commander and ship. It does not set a population location. A vacant role reads as no commander.

The Commanders window offers assignments through the rows of DIM_AssignmentTypeFilter. The selection box shows filters whose LeaderType is all professions or matches the commander’s profession, ordered by DisplayOrder.

Filter Leader Ship role (ShipCommandType) Rank modifier (RankPriorityModifier) Ship tests
Warships Naval Ship (1) 0 Military, armed
Military Ships Naval Ship (1) 0 Military
Fighters and Small Craft Naval Ship (1) 0 Fighter, not commercial
Commercial Ships Naval Ship (1) 0 Commercial, not fighter
Fleet Commander Naval 16 -1 Military
Executive Officer, military or commercial Naval 8 1 Military, or commercial and not fighter
Chief Engineer, Commander Air Group, Science Officer Naval 9, 15, 10 2, 1, 1 Military
Tactical Officer Naval 11 2 Military, armed
Populations, Sectors Administrator None 0 Not a ship filter
Ground Forces Ground None 0 Not a ship filter
Naval Admin Commands Naval None 0 Not a ship filter
Academy Commandant All None 0 Not a ship filter

Military means neither fighter nor commercial. Armed means the ship class ProtectionValue is above 0.

The ship list leaves out shipping-line ships and classes marked NoOfficers. It requires a ship class rank priority of at most the race’s highest rank priority number minus the rank modifier. For an officer role the ship class rank priority plus the modifier must equal the commander’s priority exactly. The ship class must also carry the matching department system, which is auxiliary control, main engineering, primary flight control, science department or combat information centre. For the captain role, the Eligible Only box requires a ship class priority at least equal to the commander’s priority.

The Team and Survey columns are never used. The Fleet Commander row uses ship role 16, which is not a valid command type, and no ship assignment handles it. Choosing it clears the current assignment, sets the transport ship to the chosen ship, writes “Assigned as of” with an empty title, and leaves the command type at none.

Manual assignment from the Assign button checks only rank, administration rating and identity. A captain must not be junior to the ship class rank (“is too junior for this assignment”). An officer must hold exactly the offset rank (“is not the required rank for this assignment”). Assigning a commander to the role it already holds is refused (“is already assigned to this role”). Ground and admin posts reject junior ranks. The assignment itself does not test location. The Assign button refuses commanders in a lifepod or marked as prisoners before the assignment runs. The academy list, not the assignment, applies a profession test. Administrators need Colony Administration of at least the academy count. Scientists need Research Admin divided by 5 (by 1 under limited research administration) of at least that count. Naval officers and ground force commanders need a rank on their own ladder at or above the rank at grade equal to the academy count.

Automatic assignment runs the ship phase first, then optionally the ground and civilian phases. Ship candidates are either one target ship or every race ship outside a shipping line, excluding classes marked NoOfficers.

Before the ship phase, the game gives each candidate ship an assignment priority, a weight and a preferred captain bonus according to the ship class main function (FCT_ShipClass.MainFunction). Both values start at 0, and the first matching row wins.

Order Ship class test Priority Weight Preferred bonus
1 Survey ship (geological or gravitational) 10 Size Survey
2 Carrier 20 Size Carrier Operations
3 Intelligence ship 25 Size Intelligence
4 Diplomatic ship 5 Size Diplomacy
5 Warship 30 ProtectionValue Crew Training
6 Fighter 40 ProtectionValue Fighter Combat
7 Ground support fighter 50 ProtectionValue Ground Support
8 Any other non-commercial class 300 Size Crew Training
9 Stabilisation ship (construction ship) 400 1 / (JGConstructionTime + 1) Production
10 Terraformer 500 Terraforming module value Terraforming
11 Fuel harvester 600 Sorium harvester value Mining
12 Orbital miner 700 Orbital mining value Mining
13 Salvager 800 Salvage module value Production
14 Other commercial 900 Size Logistics

Weights are whole numbers, with fractions dropped. The class’s JGConstructionTime column in FCT_ShipClass is a whole number too, so the stabilisation ship weight uses whole-number division and equals 1 only when the time is 0. Ships are visited by the ship class CommanderPriority ascending (default 5), then assignment priority ascending, then weight descending.

The ship phase then runs four steps.

  1. Captains from the pool. The pool is the naval officers who are not prisoners, not in a lifepod, and either unassigned or holding one of the five officer roles. For each ship without a captain the game picks, among holders of the ship class rank with an entry for the preferred bonus, the one with the highest value. An NPR diplomatic ship with no match can take a more senior officer. Otherwise the game promotes and assigns an officer one rank below, promoted more than a year ago and not marked DoNotPromote. That choice is ordered by preferred bonus plus Political Reliability, then promotion score. The promotable pool applies no command type test.
  2. Pool refresh. The pool becomes the unassigned naval officers who are not prisoners and not in a lifepod. When that pool is empty, automatic assignment stops at once. The ground, governor and naval admin phases then do not run in that pass.
  3. Department officers. The game fills XOs with Crew Training, science officers with Survey, CAGs with Carrier Operations, chief engineers with Engineering and tactical officers with Tactical.
  4. Remaining captains. A captain fill runs three times, with Reaction, Engineering and Tactical as the required bonus.

Step 1 can pull an officer from another ship’s department post. Its promotion choice can pull a captain or an admin commander, because assigning to a ship clears the old post. Step 1 also picks out the officer with the best Diplomacy bonus and then makes no use of that choice.

The department officer fill targets two ranks below the ship class rank for chief engineers and tactical officers, and one rank below for the other roles. It skips ships without the department system or without a rank at the target level, and requires an entry for the role bonus. When no officer matches, its promotion choice requires an entry for the ship’s preferred captain bonus, not the role bonus, and orders candidates by role bonus plus Political Reliability, then promotion score.

The remaining captain fill skips commercial classes. It stops at the first captainless ship with no matching officer, so later ships are not tried in that pass.

When the non-ship phases are included, the ground phase follows, as described in ranks and commander assignments. Players then get vacancy-only filling of governors and naval admin commands. NPRs instead run the governor selection below and stop before those two steps.

The NPR governor selection visits populations by AI value, highest first. Candidates are administrators who are not prisoners, have enough Colony Administration for the population, and have an assignment time earlier than now, which excludes anyone appointed earlier in the same pass. Five bonus weights are sorted by weight, highest first, and ties keep the listed order.

Bonus Weight
Mining Mines + automated mines + 10 x civilian mining complexes (see civilian mining complexes)
Production Construction factories
Shipbuilding 50 x shipyards (see shipyards)
Population Growth 10, or 99,000 when race wealth is below 1,000 and the colony exceeds 50 million
Wealth Creation 5, or 100,000 under the same condition

The winner has the best value in the first weighted bonus, then the second, and so on. A winner other than the incumbent replaces it. The candidate pool can include an administrator already governing another colony or sector.

Every loss of a post goes through one process. It can write an Unassignment history entry, log the change as a promotion, and record the academy post. Nearly every action records the academy post. Bypass promotions log the change as a promotion.

The clearing step builds one history text from the first post that matches. The order is research project, ground formation, colony, sector, naval admin, ship, XO, chief engineer, science officer, tactical officer and CAG. The academy text is set first, and only when the clear records the academy post. Any later match replaces it. The formation, colony, sector and admin posts forget the commander, and the ship posts remove the role from the ship’s role list.

With history recording on, the text becomes an Unassignment history entry. With the promotion option on, it becomes an “As a result of promotion” event. A led research project is cancelled with its progress stored. The step then sets the command type to none and empties all twelve post links, the population location and the transport ship. It does not touch the lifepod, the prisoner flag or the rank.

A commander therefore leaves every clear with no location at all. Some actions set a location afterwards. Disembarking places the commander at a race population at the ship’s coordinates when one exists. Others leave the location empty, such as the Drop Off Commander move action and a friendly lifepod rescue.

Cause Who is cleared History
Manual Unassign in the Commanders window Selected commander Yes
Reassign Naval button Naval officers except academy commandants and admin commanders Yes
Ship decommission, transfer, capture, or refit to a class with a different rank, through disembarking Transported, admin-hosted and ship-role commanders Yes
Ground formation deleted, scrapped or transferred Formation commander Yes
Sector command removed Sector governor Yes
Population removed or conquered Commanders located at it, governing it, or commanding its academy Yes
Naval admin command deleted Its commander Yes
Rank deleted, Replace All All affected commanders, then removed from the game No
Administration gain at a colony set to AutoAssign Yes The governor Yes, logged as promotion

Ship destruction does not use disembarking. For a Standard race the game runs the evacuation step, and other race types skip officer handling there. Unless the ship was abandoned, the surviving crew is current crew x (d50 + 25) / 100. Evacuation stops before touching any officer when the surviving crew is zero or less. In both cases the officers keep their command type, their ship post and their transport ship, all still pointing at the removed ship. The game shows no cleanup before the next save. On reload the removed ship’s ID cannot be found and the officer comes back unassigned.

Creating a bonus entry happens only when none exists, and it never overwrites. Raising a bonus first creates a missing entry at 1 for a percentage type or 0 for an absolute type. It does nothing when the value already equals the catalogue maximum. Otherwise it adds the amount and caps the result at the maximum. When events are requested it logs a scientist experience, administrator experience, unassigned or commander experience event.

The experience check gives every active commander one gain opportunity each time it runs. The gate, the 0.05 or 0.10 amount, the political roll and the scientist and administrator outcomes are described in experience and changing specialty. The naval admin targets are in promotion, experience and career continuity. With the political bonus option on, a d10000 at or below elapsed years x 1000 first raises Political Reliability by 0.05. The main gate succeeds on a d10000 at or below elapsed years x 2500 for an assigned commander. It uses elapsed years x 500 instead for an unassigned commander and for a research project leader whose project has no facilities. The amount is 0.10 on a d3 of 1, otherwise 0.05.

After a successful gate, the bonus is chosen by assignment, checked in this order.

Assignment Bonus raised
Ship captain or XO aboard a non-survey class Ship command experience roll, below
Ship captain or XO aboard a geological or gravitational survey class Nothing
Chief engineer, tactical officer, CAG, with a transport ship set Engineering, Tactical, Carrier Operations
Ground formation commander Ground formation experience roll, below
Scientist, any assignment except colony or sector Research on a d3 of 1 or 2, otherwise Research Admin by d10 (d2 under limited research administration)
Naval admin commander Table on the naval page
Science officer, or any other assigned non-scientist Nothing
Unassigned or academy naval officer d30 table below
Unassigned or academy ground commander d23 table below
Governor, sector governor, or unassigned or academy administrator d24 table on the civilian governance page

The ship command experience roll starts with d5. A 1 raises Crew Training and a 2 raises Reaction. Otherwise the ship class main function picks the bonus. An unmatched main function rolls a second d5, raising Engineering on 1, Tactical on 2 and Crew Training on 3 to 5.

Ship class main function Bonus after the first d5 misses
Intelligence ship Intelligence
Orbital miner, fuel harvester Mining
Colony ship, freighter, liner, troop transport Logistics
Terraformer Terraforming
Carrier Carrier Operations
Fighter Fighter Combat
Ground support fighter Ground Support
Stabilisation ship (construction ship), salvager Production
Anything else Second d5

The ground formation experience roll raises Occupation when the formation sits on a population whose political status is not Imperial Population. Otherwise the game uses the formation’s role, which it works out from the formation’s elements.

Formation role Bonus raised
Ground artillery, ground anti-aircraft Artillery, Anti-Aircraft
Ground logistics Ground Combat Logistics
Planetary defence Tactical
Engineering Production on d3 of 1 or 2, Xenoarchaeology on 3
Survey, xenoarchaeology, decontamination The bonus of the same name
Ground attack d7: 1-2 Offence, 3-4 Manoeuvre, 5-6 Training, 7 Logistics
Ground defence d7: 1-3 Defence, 4-6 Training, 7 Logistics
Other d7: 1 Offence, 2-3 Defence, 4 Manoeuvre, 5-6 Training, 7 Logistics
Unassigned naval officer d30 Bonus
1-3 Crew Training
4 Engineering
5-6 Tactical
7-9 Reaction
10-12 Survey
13-15 Logistics
16-18 Mining
19-21 Terraforming
22-23 Production
24-25 Fighter Combat
26 Carrier Operations
27-28 Diplomacy
29 Intelligence
30 Ground Support
Unassigned ground commander d23 Bonus
1 Artillery
2 Manoeuvre
3-4 Ground Combat Logistics
5-6 Ground Combat Training
7 Xenoarchaeology
8-11 Occupation
12 Production
13 Anti-Aircraft
14 Survey
15 Tactical
16-19 Defence
20-22 Offence
23 Decontamination

Every experience path uses the commander’s own bonuses. None reads command effectiveness, crew grade, ship damage or the species. A gain aimed at a capped bonus is lost, not redirected.

Promotion moves a commander one rank up. The game renumbers the target rank, sets the commander’s seniority to that rank’s count plus one, changes the rank, stamps the promotion time, renumbers the old rank and writes a “Promoted to” history entry. It does not touch the assignment.

Demotion mirrors it one rank down. It writes “Demoted to”, also stamps the promotion time, and logs the event under the commander promotion event type. Only the Commanders window Demote button demotes. The button refuses scientists, administrators and commanders already at the junior end of the ladder.

Manual Promote and Demote leave the assignment in place. A demoted captain keeps a ship whose class requires a more senior rank, and a promoted XO keeps a post whose exact-rank requirement no longer matches. The automatic passes fill only vacant posts and do not recheck an incumbent’s rank.

The staffing-ratio rank promotion pass and its score are described on the naval page. The game runs that pass only with the time requirement waived, from new game setup, independence and Replace All. Nothing runs it with the requirement in force, so its time-gated rule, which requires more than a year since the last promotion and no prisoner status, never applies.

During normal play a commander therefore rises only through these paths.

  • Ship captain fill. One rank below the ship class rank, promoted more than a year ago, not marked DoNotPromote.
  • Ship officer fill. One rank below the role’s target rank, with the same time and flag tests.
  • Ground formation fill. The second ground pass, described on the ground force organisation page.
  • Naval admin fill. The lower-rank fallback of naval admin automatic assignment.
  • Manual Promote. The Promote button applies no time test.

The waived-time pass backdates the career start by a further 2 + d5 years for every promotion it grants, and clears the promoted commander’s assignment. At new game setup this gives senior officers longer derived service, which feeds the career retirement threshold.

Crew grade effects and commander crew training belong to grade growth and fleet training. The commander side is short. Commander crew training raises ship grade from the Crew Training of the captain and the XO, the captain at half the XO’s rate. Both gains pass the gates and admin multiplier described in grade growth and fleet training. A ship gains nothing once it holds 1000 grade points, or when the officer’s Crew Training is 1 or less, or when the ship has neither command and control capacity nor a class size of 20 or less. The officer’s Crew Training is multiplied by the Crew Training multiplier of the fleet’s parent naval admin command for that system. The rate is 500 grade points per year per unit of multiplied bonus above 1, halved for the captain, capped at 1000.

The race pool of academy crewmen (FCT_Race.AcademyCrewmen) starts at 10,000 and TrainingLevel at 1. Each academy adds 1000 / TrainingLevel crewmen per year, in whole-number division, alongside officer graduation.

A new ship takes its starting grade from the academy pool. A conscript-only class receives 0. When the pool covers the ship class crew, the game subtracts the crew and gives 100 x TrainingLevel grade points. When it does not, the ship gets 100 x TrainingLevel x pool / crew grade points and the pool empties. An empty pool gives 0. Shipyard construction and both ship-producing industrial project types draw from the pool this way.

Rescued lifepod crew converts into academy crewmen at the current training level. The pool gains int(crew x grade points / (100 x TrainingLevel)), truncated toward zero. A crew above 100 x TrainingLevel grade points returns more crewmen than it held, and one below returns fewer. Disembarking with crew transfer uses the same conversion for the crew of a decommissioned or transferred ship, but only when the ship’s grade is above 100.

The accident, health and career retirement checks are one shared check described in age, health, retirement and assignment loss, with the naval threshold on the naval page. Story characters skip the accident, health and career checks. The length-of-service medal step at the end still includes them.

The ground commander threshold is 19 + (ground retirement base rank priority - rank priority) x 5 service years. At the start of the check the game sets both the naval and the ground retirement base rank to the most junior naval rank. A ground commander’s threshold therefore measures distance from the junior naval priority, which matches the ground ladder only when both ladders have the same length. The career check applies only from 10 service years. Naval officers use 9 + (base priority - rank priority) x 5, and administrators and scientists use 39. Above the threshold the retirement roll succeeds when d10000 < (service years - threshold) x 20 x elapsed years x 100, with the chance doubled for an unassigned commander.

Retirement sets the retirement status, clears the assignment with history, moves the commander to the retired list, and renumbers the old rank. It installs no successor.

Cause Who is exposed Chance Status (RetireStatus)
Bridge destroyed (component 18) Captain and science officer 50% each Killed in Naval Combat (1)
Auxiliary control (65736), CIC (65738), main engineering (65737) XO, tactical officer, chief engineer 50% Killed in Naval Combat (1)
Flag bridge (225) Commanders of admin commands hosted on the ship 50% each Killed in Naval Combat (1)
Ship destroyed, Standard race Transported, admin-hosted and ship-role commanders 50%, none when abandoned Killed in Naval Combat (1) or lifepod
Ship destroyed with embarked formations Formation commanders not already handled by evacuation, meaning those whose transport ship is not the destroyed ship or whose race is not Standard Certain Killed in Naval Combat (1)
HQ element unit loss in ground combat Formation commander d1000 < (class HQ size / formation total HQ size) x 0.25 x 1000 Killed in Ground Combat (11)
Boarding losses on an HQ element Formation commander d(units) <= lost units Killed during Boarding Combat (13)
Formation destroyed with commander kill Formation commander Certain Killed in Ground Combat (11)
Life support failure Ship-role commanders d100 < casualty percent / 2 Died due to Life Support Failure (10)
Lifepod endurance exceeded Commanders linked to the pod Certain Died in a Life Pod (12)
Execution from the prisoner window Selected prisoner Certain Executed (14)

The formation total HQ size is the sum over its elements of units times the element class HQ size.

Component damage exposes commanders only when the damaged component is a command and control component. Primary flight control is not among the cases, so a CAG is never exposed to component casualties. Ground combat and boarding formulas belong to element attacks and damage and deferred casualties, morale and aftermath.

When the game gathers the commanders aboard a ship for the flag bridge casualty roll, for evacuation and for disembarking, it includes the commander of every naval admin command hosted on the ship. A vacant hosted command has no commander, but it still takes a place among the commanders aboard. Each of those three steps runs into an error when it reaches that vacant place, reports it (Function #336 for the casualty roll, #365 for evacuation, #2832 for disembarking) and ends. Evacuation and disembarking list every commander whose transport ship is that ship first, and ship-role and hosted admin commanders all count as transported by it. The failure therefore normally comes after every real commander has been handled and only shows the error. It also makes disembarking report zero commanders, which hides the refit message about reassigned officers. In the flag bridge roll the vacant place fails only when its 50% roll succeeds, which ends the roll before later admin commanders on that ship roll.

Evacuation gathers the commanders transported by the ship, the admin-hosted commanders and the six ship roles, removes duplicates, then clears each one with history and empties its transport ship. Unless the ship was abandoned, a failed 50% roll kills the commander. A survivor gets an escape history line, a ship-destruction-survived measurement, and a link to the new lifepod. Evacuation rules for crew belong to survivors, wrecks and lost cargo.

A pod lasts 1,209,600 seconds, which is 14 days. When a pod expires, every commander linked to it dies with the status Died in a Life Pod, and the pod is removed.

Rescuing survivors works two ways. A friendly rescue converts the crew into academy crewmen, clears each linked commander’s assignment without history, writes a “Rescued from life pod in” history line naming the system, empties the transport ship and removes the pod. A foreign rescue adds a survivor group to the rescuing ship and marks each linked commander a prisoner, not yet interrogated. It also clears the commander’s assignment with history, sets the transport ship to that ship, and writes a “Captured by” history line.

Neither rescue removes the commander’s link to the pod. A rescued commander keeps a link to a removed pod until the next reload, and the status colour stays gold. The ship and ground automatic assignment pools, the first search of naval admin automatic assignment and the commander search all require no lifepod link, so these searches exclude the rescued commander until then. The lower-rank fallback for naval admin automatic assignment has no lifepod test. Ordinary colony governor selection also has none. These paths can still appoint a rescued commander. The Commanders window Assign button refuses any commander with a lifepod link.

Surrender marks every ship-role commander a prisoner, after an Unassignment history line, a clear without history and the transport ship set to the surrendering ship. Admin-hosted and transported commanders are not included. The transfer to the captor then runs disembarking, which empties the transport ship of every commander aboard. Disembarking also sets the population location to a captor population at the ship’s coordinates when one exists. Prisoner groups, interrogation, release and rescue by conquest belong to prisoners and interrogation. Release clears the prisoner flag, the interrogated flag, the transport ship and the population location, and rescue by conquest also sets the status back to Active.

A prisoner stays in the active list with its own race. It therefore keeps rolling for health, accidents, career retirement and experience, because none of those checks looks at prisoner status. Ship, ground and naval admin automatic assignment and NPR governor selection exclude prisoners. Ordinary colony governor selection does not exclude them.

Adding a history entry appends it with the current game time. When the entry is an assignment, the game first deletes any Unassignment entry with the same game time, so an immediate reassignment shows only the new post. Showing the history list sorts it by time, newest first, and keeps that sorted order.

The game has a step meant to add a line to the ship of a ship-role commander. It checks for the opposite condition, so it never writes a line, and for a ship-role commander without a ship it fails with a Function #3672 error. Medal awards, accidents, medical retirement, natural death and career retirement all use it, so none of them writes ship history. Commander lines in ship history come from direct ship history entries, such as those written by assignment to a ship, the component casualty roll and life support failure.

Recording a measurement does nothing for NPR commanders. Otherwise it adds the amount to the measurement total and awards every medal of the commander’s race whose condition threshold was crossed by this addition. Award rules, including the repeat count fixed at 2, belong to the shared award operation and where measurements come from.

All numbers in this section use made-up inputs.

  • Academy recruit bonus. A naval recruit graduates under a commandant holding Crew Training 1.25. The first d100 is 40 and the second is 85, so the game keeps 85. The value 85 falls in the band from 81 to 90, so the recruit gets Crew Training 1.15. Without the commandant the 40 would give 1.05.
  • Captain experience. A warship captain sees an increment of 0.02 elapsed years. The gate succeeds on d10000 at most 0.02 x 2500 = 50, a 0.5% chance. On success the amount is 0.10 with probability 1/3, else 0.05. For a warship class the target is Crew Training with probability 0.2 + 0.6 x 0.6 = 0.56, Reaction 0.20, Engineering 0.12 and Tactical 0.12. A Crew Training of 1.45 receiving 0.10 is capped at 1.50.
  • Assignment order. Four captainless ships share CommanderPriority 5. A diplomatic ship has priority 5, a survey ship 10, a carrier 20 and a warship of protection 1,250 has priority 30 and weight 1,250. They are visited in that order. A stabilisation ship with JGConstructionTime 5 has weight 1 / 6 = 0 in whole-number division, so it ties at priority 400 with every stabilisation ship whose JGConstructionTime is above 0. A stabilisation ship with time 0 has weight 1 and sorts ahead of them.
  • Seniority after promotion. Captain rank holds three officers with seniority 1, 2 and 3. Rear Admiral holds four. Promoting the seniority 2 Captain renumbers Rear Admiral to 1 to 4 and places the new arrival at 5, then renumbers Captain to 1 and 2.
  • Rank grades. In the United States theme the naval ladder has eight ranks, Fleet Admiral at priority 1 down to Lieutenant Commander at priority 8. Grade 1 is Lieutenant Commander and grade 3 is Captain. A population with three academies lists a naval officer as eligible commandant only at Captain or more senior.
  • Ground retirement threshold. With an eight-rank naval ladder the base priority is 8. A ground Colonel at priority 6 has threshold 19 + (8 - 6) x 5 = 29 service years. If the naval ladder had ten ranks and the ground ladder eight, the same Colonel would have 19 + (10 - 6) x 5 = 39.
  • Lifepod crew. A friendly fleet rescues a pod of 300 crew at 225 grade points with TrainingLevel 1. The academy pool grows by int(300 x 225 / 100) = 675. At TrainingLevel 2 the same pod adds int(337.5) = 337.
  • Partial academy crew. A class with crew 250 is built while the pool holds 100 at TrainingLevel 1. The ship starts with 100 x 100 / 250 = 40 grade points and the pool drops to 0. The next ship built from an empty pool starts at 0.

Saving commanders deletes the game’s rows in six tables and rewrites them. The saved set is every active commander plus retired commanders marked RetainRetired or Prisoner. Other retired commanders are not written and are absent after a reload.

Table Data written Load rule
FCT_Commander Identity, type, rank ID, scores, clocks, command type and command ID, location IDs, lifepod ID, seniority, status flags, inert values Row skipped when race, species or research field is missing
FCT_CommanderBonuses Bonus ID and value Known types only, value rounded to three places
FCT_CommanderHistory Text and game time History type not saved, every entry loads as a general entry
FCT_CommanderMedal, FCT_CommanderMeasurement Covered on the medals page Attached to active or retired commanders
FCT_CommanderTraits Game ID, CmdrID, trait ID Read without a GameID filter
FCT_Ranks Rank ID, race, name, priority, type, abbreviation Blank abbreviation becomes “R” plus priority
FCT_RaceNameThemes Race, theme, chance Rebuilds the weighted theme list

The stored command ID depends on the command type, and the game resolves it the same way when it loads. A missing ship, population, sector, formation, research project, admin command or academy population sets the command type to none. Loading restores each post’s link to its commander (the ship’s role list for ship roles, the post’s commander elsewhere), and leaves academy posts to the commandant search. Missing location, education colony, homeworld, transport ship, lifepod or rank IDs become empty without skipping the row.

The retirement status routes each loaded commander. Active goes to the active list, and every other status goes to the retired list. Research projects left without a leader are then cancelled with their progress stored.

The trait rows are read for every game in the database and matched by commander ID alone. New commander IDs start above the highest CommanderID in the whole table, across all games, so rows from another game normally find no loaded commander and are skipped.

Several values are recomputed rather than restored. PromotionScore is saved. It is recalculated at creation, in waived-time promotions, in the naval ship phase and by the Commanders window display. The ground automatic phase sorts on the stored value. Service years are rewritten by the health check. The per-rank commander count and the rank promotion candidate lists are not saved, and seniority renumbering and promotion passes rebuild them. The ground command capacity factor, which scales a ground formation commander’s bonuses when HQ capacity is exceeded, is not saved, so it loads at its starting value of 1. The next increment recomputes it for every formation commander.

A reload also repairs two drifts described earlier. A stale lifepod link saves the removed pod’s ID, which cannot be found on load, so the commander returns with no lifepod link. An officer left on a destroyed ship saves the removed ship’s ID and returns unassigned.

Catalogues load before personnel. Rank themes, traits, assignment filters, bonus types and name parts load first, then race ranks, then lifepods, then commanders, histories, bonuses, medals and measurements in that order.

Phase This page Owning detail
Academy graduation, profession and field rolls Creation and recruitment sources Recruitment and academy commandants
Scientist initial bonuses Bonus catalogue and initial rolls Initial research and administration bonuses
Administrator initial bonuses Bonus catalogue and initial rolls Recruitment and administrator experience
Naval and ground initial bonuses, names, traits Bonus catalogue and initial rolls, Names and name themes, Personality traits This page
Rank ladder, themes, seniority Ranks, themes and seniority This page
Naval admin required rank and appointment The assignment model Required rank and effective command, Appointments and automatic assignment
Ship captain and officer appointment Automatic ship officer assignment This page
Ground formation rank and appointment The assignment model Ranks and commander assignments
Governor and sector appointment Automatic ship officer assignment Manual appointments and assignment preferences, Vacancies, priority and automatic reassignment
Research project leadership The assignment model Assignments, pause, cancellation and queues
Assignment loss Clearing and losing an assignment This page
Scientist and administrator experience Experience and bonus growth Experience and changing specialty, Recruitment and administrator experience
Ship, ground and unassigned experience Experience and bonus growth This page
Naval admin experience, promotion score Promotion and demotion Promotion, experience and career continuity
Command bonus effects Not covered Local bonuses and parent recursion, HQ capacity and command bonuses, Bonus propagation and operational consumers
Crew grade and training Crew grade and academy crew Grade growth and fleet training, Replacing crew
Health, accident, career retirement Health, retirement and casualties Age, health, retirement and assignment loss
Component casualties and evacuation Health, retirement and casualties Damaged versus destroyed records, Survivors, wrecks and lost cargo
Life support casualties Health, retirement and casualties Survivors, overcrowding and life support
Ground and boarding deaths Health, retirement and casualties Element attacks and damage, Deferred casualties, morale and aftermath
Lifepods and capture Lifepods and captivity This page, then Surrender adds prisoners
Prisoner interrogation and release Lifepods and captivity Prisoners and interrogation
Medals and measurements Histories and medals The shared award operation, Length-of-service awards
Save and load Persistence and reload Personnel persistence, Medal persistence

Related community documentation and developer posts. These may describe a different game version.