Skip to content

Configuration: AI and diplomacy

Computer-player behavior and diplomatic rules.

Settings index

ai

AI race variants

Selects the stock race-customization variants available when generating AI players.

Notes: Applies only on Hard and Impossible difficulty. Values are unique variant numbers from 1 through 5; the default preserves classic selection from variants 1 through 3.

  • Configuration path: ai ai_race_variants
  • Accepted input: 6 entries

Built-in default configuration

ai ai_race_variants =
    1
    2
    3;

Examples

ai ai_race_variants = 4 5;
ai ai_race_variants = 1 2 3 5;

Stealth Field for Stealthy AI races

Allows Stealthy AI races to install a researched Stealth Field.

Notes: False preserves classic behavior, where the Stealthy Ships trait excludes Stealth Field from AI designs.

  • Configuration path: ai stealth_field
  • Accepted input: true or false

Built-in default configuration

ai stealth_field = false;

Examples

ai stealth_field = true;

AI autobuild rules

Configures the weighted colony-level selector shared by AI colonies and human legacy autobuild.

Notes: Native buildability remains authoritative. Colony food excludes Food Replicator output, terms use deterministic integer truncation, and square roots round down.

Fields

Examples

ai autobuild_rules cutoff mode = relative;
ai autobuild_rules candidates automated_factory weight base = 13;
ai autobuild_rules candidates housing cutoff_stage = after;

AI strategic production

Configures AI-only emergency defense, economic emergency, expansion, and weighted empire allocation.

Notes: Each strategic action retains its existing availability checks. Colony-level buildability checks are not applied uniformly to every strategic action.

Fields

Examples

ai strategic_production emergency_defense order 1 = missile_base;
ai strategic_production expansion colony_base_minimum_industry = 13;
ai strategic_production allocation candidates defer weight defer peace = 333;

AI race-variant data

Configures the native trait-assignment rows used for Hard and Impossible AI races.

Notes: Rows are selected by stock race, difficulty, and variant. The separate ai_race_variants setting selects which variant numbers may be rolled.

Fields

Built-in default configuration

ai race_variants customization alkari hard 1 count = 2;
ai race_variants customization alkari hard 1 traits =
    ship_attack 2
    ground_combat 2
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization alkari hard 2 count = 1;
ai race_variants customization alkari hard 2 traits =
    trans_dimensional 1
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization alkari hard 3 count = 2;
ai race_variants customization alkari hard 3 traits =
    home_world_richness 1
    large_home_world 1
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization alkari hard 4 count = 3;
ai race_variants customization alkari hard 4 traits =
    ship_attack 1
    production 2
    cybernetic 1
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization alkari hard 5 count = 3;
ai race_variants customization alkari hard 5 traits =
    government 0
    ship_attack 2
    production 2
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization alkari impossible 1 count = 1;
ai race_variants customization alkari impossible 1 traits =
    government 4
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization alkari impossible 2 count = 2;
ai race_variants customization alkari impossible 2 traits =
    ship_attack 2
    trans_dimensional 1
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization alkari impossible 3 count = 4;
ai race_variants customization alkari impossible 3 traits =
    trans_dimensional 1
    cybernetic 1
    production 2
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization alkari impossible 4 count = 6;
ai race_variants customization alkari impossible 4 traits =
    government 0
    home_world_richness 1
    large_home_world 1
    ship_attack 2
    ground_combat 2
    production 2
    government 0
    government 0;
ai race_variants customization alkari impossible 5 count = 4;
ai race_variants customization alkari impossible 5 traits =
    government 0
    warlord 1
    ship_attack 2
    trans_dimensional 1
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization bulrathi hard 1 count = 2;
ai race_variants customization bulrathi hard 1 traits =
    production 2
    ground_combat 3
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization bulrathi hard 2 count = 1;
ai race_variants customization bulrathi hard 2 traits =
    ship_defense 2
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization bulrathi hard 3 count = 2;
ai race_variants customization bulrathi hard 3 traits =
    ship_attack 2
    ground_combat 3
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization bulrathi hard 4 count = 3;
ai race_variants customization bulrathi hard 4 traits =
    ship_attack 2
    ship_defense 2
    repulsive 1
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization bulrathi hard 5 count = 3;
ai race_variants customization bulrathi hard 5 traits =
    ship_attack 2
    uncreative 1
    tolerant 1
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization bulrathi impossible 1 count = 3;
ai race_variants customization bulrathi impossible 1 traits =
    ship_attack 2
    ship_defense 2
    ground_combat 3
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization bulrathi impossible 2 count = 2;
ai race_variants customization bulrathi impossible 2 traits =
    repulsive 1
    tolerant 1
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization bulrathi impossible 3 count = 4;
ai race_variants customization bulrathi impossible 3 traits =
    repulsive 1
    ship_attack 2
    ship_defense 2
    food 2
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization bulrathi impossible 4 count = 6;
ai race_variants customization bulrathi impossible 4 traits =
    uncreative 1
    repulsive 1
    government 6
    food 2
    production 2
    ship_defense 2
    government 0
    government 0;
ai race_variants customization bulrathi impossible 5 count = 7;
ai race_variants customization bulrathi impossible 5 traits =
    uncreative 1
    repulsive 1
    ship_attack 2
    ship_defense 2
    food 2
    production 2
    research 2
    government 0;
ai race_variants customization darlok hard 1 count = 1;
ai race_variants customization darlok hard 1 traits =
    ship_defense 2
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization darlok hard 2 count = 2;
ai race_variants customization darlok hard 2 traits =
    research 1
    government 6
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization darlok hard 3 count = 2;
ai race_variants customization darlok hard 3 traits =
    repulsive 1
    trans_dimensional 1
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization darlok hard 4 count = 3;
ai race_variants customization darlok hard 4 traits =
    repulsive 1
    ship_attack 2
    ship_defense 2
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization darlok hard 5 count = 2;
ai race_variants customization darlok hard 5 traits =
    research 1
    subterranean 1
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization darlok impossible 1 count = 3;
ai race_variants customization darlok impossible 1 traits =
    repulsive 1
    ship_defense 2
    subterranean 1
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization darlok impossible 2 count = 4;
ai race_variants customization darlok impossible 2 traits =
    uncreative 1
    ship_defense 2
    tolerant 1
    production 2
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization darlok impossible 3 count = 4;
ai race_variants customization darlok impossible 3 traits =
    uncreative 1
    trans_dimensional 1
    ship_attack 2
    ship_defense 2
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization darlok impossible 4 count = 7;
ai race_variants customization darlok impossible 4 traits =
    research 1
    uncreative 1
    ship_attack 2
    ship_defense 2
    trans_dimensional 1
    artifacts_home_world 1
    growth 2
    government 0;
ai race_variants customization darlok impossible 5 count = 6;
ai race_variants customization darlok impossible 5 traits =
    research 1
    repulsive 1
    government 0
    subterranean 1
    tolerant 1
    production 2
    government 0
    government 0;
ai race_variants customization elerian hard 1 count = 1;
ai race_variants customization elerian hard 1 traits =
    ship_defense 3
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization elerian hard 2 count = 2;
ai race_variants customization elerian hard 2 traits =
    ship_attack 3
    production 2
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization elerian hard 3 count = 1;
ai race_variants customization elerian hard 3 traits =
    artifacts_home_world 1
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization elerian hard 4 count = 1;
ai race_variants customization elerian hard 4 traits =
    spying 2
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization elerian hard 5 count = 1;
ai race_variants customization elerian hard 5 traits =
    food 2
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization elerian impossible 1 count = 2;
ai race_variants customization elerian impossible 1 traits =
    ship_attack 3
    ship_defense 3
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization elerian impossible 2 count = 2;
ai race_variants customization elerian impossible 2 traits =
    research 2
    food 2
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization elerian impossible 3 count = 4;
ai race_variants customization elerian impossible 3 traits =
    spying 1
    ship_attack 3
    warlord 1
    research 2
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization elerian impossible 4 count = 3;
ai race_variants customization elerian impossible 4 traits =
    ground_combat 1
    ship_defense 3
    trans_dimensional 1
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization elerian impossible 5 count = 6;
ai race_variants customization elerian impossible 5 traits =
    ground_combat 1
    spying 1
    ship_attack 3
    ship_defense 3
    warlord 1
    production 2
    government 0
    government 0;
ai race_variants customization gnolam hard 1 count = 2;
ai race_variants customization gnolam hard 1 traits =
    home_world_richness 1
    large_home_world 1
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization gnolam hard 2 count = 1;
ai race_variants customization gnolam hard 2 traits =
    ship_defense 2
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization gnolam hard 3 count = 1;
ai race_variants customization gnolam hard 3 traits =
    growth 2
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization gnolam hard 4 count = 2;
ai race_variants customization gnolam hard 4 traits =
    repulsive 1
    subterranean 1
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization gnolam hard 5 count = 2;
ai race_variants customization gnolam hard 5 traits =
    repulsive 1
    government 4
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization gnolam impossible 1 count = 1;
ai race_variants customization gnolam impossible 1 traits =
    government 4
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization gnolam impossible 2 count = 2;
ai race_variants customization gnolam impossible 2 traits =
    low_gravity 0
    growth 2
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization gnolam impossible 3 count = 3;
ai race_variants customization gnolam impossible 3 traits =
    ground_combat 1
    research 2
    government 4
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization gnolam impossible 4 count = 4;
ai race_variants customization gnolam impossible 4 traits =
    ground_combat 1
    repulsive 1
    subterranean 1
    government 4
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization gnolam impossible 5 count = 5;
ai race_variants customization gnolam impossible 5 traits =
    ground_combat 1
    repulsive 1
    government 6
    research 2
    growth 2
    government 0
    government 0
    government 0;
ai race_variants customization human hard 1 count = 1;
ai race_variants customization human hard 1 traits =
    spying 2
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization human hard 2 count = 1;
ai race_variants customization human hard 2 traits =
    fantastic_traders 1
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization human hard 3 count = 1;
ai race_variants customization human hard 3 traits =
    food 2
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization human hard 4 count = 1;
ai race_variants customization human hard 4 traits =
    artifacts_home_world 1
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization human hard 5 count = 1;
ai race_variants customization human hard 5 traits =
    research 2
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization human impossible 1 count = 2;
ai race_variants customization human impossible 1 traits =
    research 2
    income 2
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization human impossible 2 count = 2;
ai race_variants customization human impossible 2 traits =
    ship_attack 2
    ship_defense 2
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization human impossible 3 count = 1;
ai race_variants customization human impossible 3 traits =
    food 3
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization human impossible 4 count = 3;
ai race_variants customization human impossible 4 traits =
    large_home_world 1
    home_world_richness 1
    artifacts_home_world 1
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization human impossible 5 count = 2;
ai race_variants customization human impossible 5 traits =
    fantastic_traders 1
    spying 2
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization klackon hard 1 count = 1;
ai race_variants customization klackon hard 1 traits =
    food 3
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization klackon hard 2 count = 2;
ai race_variants customization klackon hard 2 traits =
    production 3
    home_world_richness 1
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization klackon hard 3 count = 1;
ai race_variants customization klackon hard 3 traits =
    aquatic 1
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization klackon hard 4 count = 2;
ai race_variants customization klackon hard 4 traits =
    high_gravity 1
    spying 1
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization klackon hard 5 count = 3;
ai race_variants customization klackon hard 5 traits =
    uncreative 1
    tolerant 1
    production 3
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization klackon impossible 1 count = 2;
ai race_variants customization klackon impossible 1 traits =
    production 3
    aquatic 1
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization klackon impossible 2 count = 3;
ai race_variants customization klackon impossible 2 traits =
    food 3
    production 3
    home_world_richness 1
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization klackon impossible 3 count = 2;
ai race_variants customization klackon impossible 3 traits =
    ship_attack 2
    ship_defense 2
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization klackon impossible 4 count = 3;
ai race_variants customization klackon impossible 4 traits =
    uncreative 1
    tolerant 1
    subterranean 1
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization klackon impossible 5 count = 3;
ai race_variants customization klackon impossible 5 traits =
    spying 1
    production 3
    tolerant 1
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization meklar hard 1 count = 1;
ai race_variants customization meklar hard 1 traits =
    ship_defense 2
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization meklar hard 2 count = 1;
ai race_variants customization meklar hard 2 traits =
    food 2
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization meklar hard 3 count = 1;
ai race_variants customization meklar hard 3 traits =
    research 2
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization meklar hard 4 count = 2;
ai race_variants customization meklar hard 4 traits =
    repulsive 1
    government 6
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization meklar hard 5 count = 4;
ai race_variants customization meklar hard 5 traits =
    repulsive 1
    ship_attack 2
    ship_defense 2
    large_home_world 1
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization meklar impossible 1 count = 2;
ai race_variants customization meklar impossible 1 traits =
    ship_attack 2
    ship_defense 2
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization meklar impossible 2 count = 1;
ai race_variants customization meklar impossible 2 traits =
    government 6
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization meklar impossible 3 count = 4;
ai race_variants customization meklar impossible 3 traits =
    growth 1
    food 2
    research 2
    government 6
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization meklar impossible 4 count = 3;
ai race_variants customization meklar impossible 4 traits =
    ship_attack 2
    ship_defense 2
    ground_combat 2
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization meklar impossible 5 count = 4;
ai race_variants customization meklar impossible 5 traits =
    repulsive 1
    food 2
    research 2
    ship_defense 2
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization mrrshan hard 1 count = 1;
ai race_variants customization mrrshan hard 1 traits =
    ship_defense 2
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization mrrshan hard 2 count = 1;
ai race_variants customization mrrshan hard 2 traits =
    stealthy_ships 1
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization mrrshan hard 3 count = 3;
ai race_variants customization mrrshan hard 3 traits =
    government 0
    income 2
    growth 2
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization mrrshan hard 4 count = 3;
ai race_variants customization mrrshan hard 4 traits =
    government 0
    trans_dimensional 1
    ship_defense 2
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization mrrshan hard 5 count = 3;
ai race_variants customization mrrshan hard 5 traits =
    government 0
    stealthy_ships 1
    ship_defense 2
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization mrrshan impossible 1 count = 2;
ai race_variants customization mrrshan impossible 1 traits =
    ship_defense 2
    stealthy_ships 1
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization mrrshan impossible 2 count = 4;
ai race_variants customization mrrshan impossible 2 traits =
    government 0
    income 2
    growth 2
    research 2
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization mrrshan impossible 3 count = 4;
ai race_variants customization mrrshan impossible 3 traits =
    government 0
    research 2
    food 2
    ship_defense 2
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization mrrshan impossible 4 count = 6;
ai race_variants customization mrrshan impossible 4 traits =
    government 0
    repulsive 1
    food 2
    production 2
    ship_defense 2
    cybernetic 1
    government 0
    government 0;
ai race_variants customization mrrshan impossible 5 count = 4;
ai race_variants customization mrrshan impossible 5 traits =
    repulsive 1
    ship_defense 2
    stealthy_ships 1
    ground_combat 2
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization psilon hard 1 count = 1;
ai race_variants customization psilon hard 1 traits =
    home_world_richness 1
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization psilon hard 2 count = 1;
ai race_variants customization psilon hard 2 traits =
    spying 2
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization psilon hard 3 count = 1;
ai race_variants customization psilon hard 3 traits =
    food 2
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization psilon hard 4 count = 2;
ai race_variants customization psilon hard 4 traits =
    repulsive 1
    growth 2
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization psilon hard 5 count = 2;
ai race_variants customization psilon hard 5 traits =
    ship_attack 1
    government 4
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization psilon impossible 1 count = 2;
ai race_variants customization psilon impossible 1 traits =
    food 2
    production 2
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization psilon impossible 2 count = 1;
ai race_variants customization psilon impossible 2 traits =
    home_world_richness 1
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization psilon impossible 3 count = 2;
ai race_variants customization psilon impossible 3 traits =
    low_gravity 0
    spying 2
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization psilon impossible 4 count = 1;
ai race_variants customization psilon impossible 4 traits =
    government 4
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization psilon impossible 5 count = 3;
ai race_variants customization psilon impossible 5 traits =
    repulsive 1
    spying 2
    government 4
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization sakkra hard 1 count = 1;
ai race_variants customization sakkra hard 1 traits =
    food 2
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization sakkra hard 2 count = 2;
ai race_variants customization sakkra hard 2 traits =
    repulsive 1
    aquatic 1
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization sakkra hard 3 count = 2;
ai race_variants customization sakkra hard 3 traits =
    repulsive 1
    high_gravity 1
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization sakkra hard 4 count = 4;
ai race_variants customization sakkra hard 4 traits =
    uncreative 1
    food 2
    production 2
    research 2
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization sakkra hard 5 count = 3;
ai race_variants customization sakkra hard 5 traits =
    uncreative 1
    tolerant 1
    production 2
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization sakkra impossible 1 count = 1;
ai race_variants customization sakkra impossible 1 traits =
    food 3
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization sakkra impossible 2 count = 3;
ai race_variants customization sakkra impossible 2 traits =
    repulsive 1
    food 2
    aquatic 1
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization sakkra impossible 3 count = 4;
ai race_variants customization sakkra impossible 3 traits =
    repulsive 1
    uncreative 1
    high_gravity 1
    tolerant 1
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization sakkra impossible 4 count = 4;
ai race_variants customization sakkra impossible 4 traits =
    uncreative 1
    repulsive 1
    tolerant 1
    government 4
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization sakkra impossible 5 count = 3;
ai race_variants customization sakkra impossible 5 traits =
    uncreative 1
    tolerant 1
    income 2
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization silicoid hard 1 count = 2;
ai race_variants customization silicoid hard 1 traits =
    home_world_richness 1
    large_home_world 1
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization silicoid hard 2 count = 1;
ai race_variants customization silicoid hard 2 traits =
    artifacts_home_world 1
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization silicoid hard 3 count = 2;
ai race_variants customization silicoid hard 3 traits =
    production 2
    home_world_richness 1
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization silicoid hard 4 count = 2;
ai race_variants customization silicoid hard 4 traits =
    production 2
    large_home_world 1
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization silicoid hard 5 count = 2;
ai race_variants customization silicoid hard 5 traits =
    ship_attack 2
    ground_combat 2
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization silicoid impossible 1 count = 3;
ai race_variants customization silicoid impossible 1 traits =
    repulsive 1
    growth 0
    subterranean 1
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization silicoid impossible 2 count = 1;
ai race_variants customization silicoid impossible 2 traits =
    government 6
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization silicoid impossible 3 count = 1;
ai race_variants customization silicoid impossible 3 traits =
    growth 2
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization silicoid impossible 4 count = 3;
ai race_variants customization silicoid impossible 4 traits =
    production 2
    research 2
    home_world_richness 1
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization silicoid impossible 5 count = 3;
ai race_variants customization silicoid impossible 5 traits =
    home_world_richness 1
    large_home_world 1
    artifacts_home_world 1
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization trilarian hard 1 count = 2;
ai race_variants customization trilarian hard 1 traits =
    home_world_richness 1
    large_home_world 1
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization trilarian hard 2 count = 1;
ai race_variants customization trilarian hard 2 traits =
    ship_defense 2
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization trilarian hard 3 count = 3;
ai race_variants customization trilarian hard 3 traits =
    repulsive 1
    growth 2
    large_home_world 1
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization trilarian hard 4 count = 5;
ai race_variants customization trilarian hard 4 traits =
    uncreative 1
    ship_attack 2
    production 2
    large_home_world 1
    artifacts_home_world 1
    government 0
    government 0
    government 0;
ai race_variants customization trilarian hard 5 count = 5;
ai race_variants customization trilarian hard 5 traits =
    food 1
    ship_attack 2
    ship_defense 2
    large_home_world 1
    home_world_richness 1
    government 0
    government 0
    government 0;
ai race_variants customization trilarian impossible 1 count = 3;
ai race_variants customization trilarian impossible 1 traits =
    large_home_world 1
    artifacts_home_world 1
    home_world_richness 1
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization trilarian impossible 2 count = 3;
ai race_variants customization trilarian impossible 2 traits =
    ship_attack 2
    ship_defense 2
    production 2
    government 0
    government 0
    government 0
    government 0
    government 0;
ai race_variants customization trilarian impossible 3 count = 8;
ai race_variants customization trilarian impossible 3 traits =
    uncreative 1
    repulsive 1
    production 2
    research 2
    large_home_world 1
    artifacts_home_world 1
    home_world_richness 1
    growth 2;
ai race_variants customization trilarian impossible 4 count = 8;
ai race_variants customization trilarian impossible 4 traits =
    repulsive 1
    food 1
    growth 2
    large_home_world 1
    artifacts_home_world 1
    home_world_richness 1
    ship_attack 2
    ship_defense 2;
ai race_variants customization trilarian impossible 5 count = 7;
ai race_variants customization trilarian impossible 5 traits =
    ship_defense 2
    ship_attack 2
    cybernetic 1
    food 2
    large_home_world 1
    uncreative 1
    repulsive 1
    government 0;
ai race_variants evolution alkari hard 1 count = 2;
ai race_variants evolution alkari hard 1 traits =
    ship_attack 3
    ground_combat 3;
ai race_variants evolution alkari hard 2 count = 1;
ai race_variants evolution alkari hard 2 traits =
    ship_attack 3
    government 0;
ai race_variants evolution alkari hard 3 count = 1;
ai race_variants evolution alkari hard 3 traits =
    production 3
    government 0;
ai race_variants evolution alkari hard 4 count = 2;
ai race_variants evolution alkari hard 4 traits =
    production 3
    ship_attack 0;
ai race_variants evolution alkari hard 5 count = 2;
ai race_variants evolution alkari hard 5 traits =
    ship_attack 3
    production 3;
ai race_variants evolution alkari impossible 1 count = 1;
ai race_variants evolution alkari impossible 1 traits =
    production 3
    government 0;
ai race_variants evolution alkari impossible 2 count = 2;
ai race_variants evolution alkari impossible 2 traits =
    ship_attack 3
    ground_combat 2;
ai race_variants evolution alkari impossible 3 count = 1;
ai race_variants evolution alkari impossible 3 traits =
    ship_attack 3
    government 0;
ai race_variants evolution alkari impossible 4 count = 2;
ai race_variants evolution alkari impossible 4 traits =
    ship_attack 3
    production 3;
ai race_variants evolution alkari impossible 5 count = 2;
ai race_variants evolution alkari impossible 5 traits =
    ship_attack 3
    production 3;
ai race_variants evolution bulrathi hard 1 count = 1;
ai race_variants evolution bulrathi hard 1 traits =
    ship_defense 3
    government 0;
ai race_variants evolution bulrathi hard 2 count = 1;
ai race_variants evolution bulrathi hard 2 traits =
    ship_defense 3
    government 0;
ai race_variants evolution bulrathi hard 3 count = 1;
ai race_variants evolution bulrathi hard 3 traits =
    ship_defense 2
    government 0;
ai race_variants evolution bulrathi hard 4 count = 1;
ai race_variants evolution bulrathi hard 4 traits =
    ship_defense 3
    government 0;
ai race_variants evolution bulrathi hard 5 count = 2;
ai race_variants evolution bulrathi hard 5 traits =
    ship_defense 2
    ship_attack 3;
ai race_variants evolution bulrathi impossible 1 count = 1;
ai race_variants evolution bulrathi impossible 1 traits =
    ship_defense 3
    government 0;
ai race_variants evolution bulrathi impossible 2 count = 2;
ai race_variants evolution bulrathi impossible 2 traits =
    ship_defense 3
    ground_combat 3;
ai race_variants evolution bulrathi impossible 3 count = 1;
ai race_variants evolution bulrathi impossible 3 traits =
    ship_defense 3
    government 0;
ai race_variants evolution bulrathi impossible 4 count = 2;
ai race_variants evolution bulrathi impossible 4 traits =
    production 3
    ship_attack 2;
ai race_variants evolution bulrathi impossible 5 count = 2;
ai race_variants evolution bulrathi impossible 5 traits =
    ship_attack 3
    production 3;
ai race_variants evolution darlok hard 1 count = 1;
ai race_variants evolution darlok hard 1 traits =
    ship_defense 3
    government 0;
ai race_variants evolution darlok hard 2 count = 1;
ai race_variants evolution darlok hard 2 traits =
    research 0
    government 0;
ai race_variants evolution darlok hard 3 count = 1;
ai race_variants evolution darlok hard 3 traits =
    ship_defense 2
    government 0;
ai race_variants evolution darlok hard 4 count = 1;
ai race_variants evolution darlok hard 4 traits =
    ship_defense 3
    government 0;
ai race_variants evolution darlok hard 5 count = 1;
ai race_variants evolution darlok hard 5 traits =
    research 0
    government 0;
ai race_variants evolution darlok impossible 1 count = 1;
ai race_variants evolution darlok impossible 1 traits =
    ship_defense 3
    government 0;
ai race_variants evolution darlok impossible 2 count = 1;
ai race_variants evolution darlok impossible 2 traits =
    ship_defense 3
    government 0;
ai race_variants evolution darlok impossible 3 count = 1;
ai race_variants evolution darlok impossible 3 traits =
    ship_defense 3
    government 0;
ai race_variants evolution darlok impossible 4 count = 1;
ai race_variants evolution darlok impossible 4 traits =
    ship_defense 3
    government 0;
ai race_variants evolution darlok impossible 5 count = 1;
ai race_variants evolution darlok impossible 5 traits =
    ship_defense 2
    government 0;
ai race_variants evolution elerian hard 1 count = 2;
ai race_variants evolution elerian hard 1 traits =
    ship_attack 3
    production 2;
ai race_variants evolution elerian hard 2 count = 2;
ai race_variants evolution elerian hard 2 traits =
    ground_combat 2
    production 3;
ai race_variants evolution elerian hard 3 count = 1;
ai race_variants evolution elerian hard 3 traits =
    ship_defense 3
    government 0;
ai race_variants evolution elerian hard 4 count = 1;
ai race_variants evolution elerian hard 4 traits =
    ship_defense 3
    government 0;
ai race_variants evolution elerian hard 5 count = 1;
ai race_variants evolution elerian hard 5 traits =
    ship_defense 3
    government 0;
ai race_variants evolution elerian impossible 1 count = 1;
ai race_variants evolution elerian impossible 1 traits =
    production 3
    government 0;
ai race_variants evolution elerian impossible 2 count = 1;
ai race_variants evolution elerian impossible 2 traits =
    production 3
    government 0;
ai race_variants evolution elerian impossible 3 count = 1;
ai race_variants evolution elerian impossible 3 traits =
    ship_defense 3
    government 0;
ai race_variants evolution elerian impossible 4 count = 2;
ai race_variants evolution elerian impossible 4 traits =
    production 2
    ship_attack 2;
ai race_variants evolution elerian impossible 5 count = 2;
ai race_variants evolution elerian impossible 5 traits =
    production 3
    spying 0;
ai race_variants evolution gnolam hard 1 count = 1;
ai race_variants evolution gnolam hard 1 traits =
    production 3
    government 0;
ai race_variants evolution gnolam hard 2 count = 1;
ai race_variants evolution gnolam hard 2 traits =
    ship_defense 3
    government 0;
ai race_variants evolution gnolam hard 3 count = 1;
ai race_variants evolution gnolam hard 3 traits =
    production 3
    government 0;
ai race_variants evolution gnolam hard 4 count = 1;
ai race_variants evolution gnolam hard 4 traits =
    production 3
    government 0;
ai race_variants evolution gnolam hard 5 count = 1;
ai race_variants evolution gnolam hard 5 traits =
    production 3
    government 0;
ai race_variants evolution gnolam impossible 1 count = 1;
ai race_variants evolution gnolam impossible 1 traits =
    production 3
    government 0;
ai race_variants evolution gnolam impossible 2 count = 1;
ai race_variants evolution gnolam impossible 2 traits =
    production 3
    government 0;
ai race_variants evolution gnolam impossible 3 count = 2;
ai race_variants evolution gnolam impossible 3 traits =
    ground_combat 0
    production 2;
ai race_variants evolution gnolam impossible 4 count = 2;
ai race_variants evolution gnolam impossible 4 traits =
    ground_combat 0
    production 2;
ai race_variants evolution gnolam impossible 5 count = 2;
ai race_variants evolution gnolam impossible 5 traits =
    ground_combat 0
    production 2;
ai race_variants evolution human hard 1 count = 1;
ai race_variants evolution human hard 1 traits =
    spying 3
    government 0;
ai race_variants evolution human hard 2 count = 1;
ai race_variants evolution human hard 2 traits =
    production 3
    government 0;
ai race_variants evolution human hard 3 count = 1;
ai race_variants evolution human hard 3 traits =
    production 3
    government 0;
ai race_variants evolution human hard 4 count = 1;
ai race_variants evolution human hard 4 traits =
    production 3
    government 0;
ai race_variants evolution human hard 5 count = 1;
ai race_variants evolution human hard 5 traits =
    production 3
    government 0;
ai race_variants evolution human impossible 1 count = 1;
ai race_variants evolution human impossible 1 traits =
    production 3
    government 0;
ai race_variants evolution human impossible 2 count = 1;
ai race_variants evolution human impossible 2 traits =
    ship_defense 3
    government 0;
ai race_variants evolution human impossible 3 count = 1;
ai race_variants evolution human impossible 3 traits =
    production 3
    government 0;
ai race_variants evolution human impossible 4 count = 1;
ai race_variants evolution human impossible 4 traits =
    production 3
    government 0;
ai race_variants evolution human impossible 5 count = 1;
ai race_variants evolution human impossible 5 traits =
    production 3
    government 0;
ai race_variants evolution klackon hard 1 count = 2;
ai race_variants evolution klackon hard 1 traits =
    production 3
    ship_attack 2;
ai race_variants evolution klackon hard 2 count = 1;
ai race_variants evolution klackon hard 2 traits =
    food 3
    government 0;
ai race_variants evolution klackon hard 3 count = 2;
ai race_variants evolution klackon hard 3 traits =
    production 3
    ship_defense 2;
ai race_variants evolution klackon hard 4 count = 2;
ai race_variants evolution klackon hard 4 traits =
    production 3
    spying 0;
ai race_variants evolution klackon hard 5 count = 1;
ai race_variants evolution klackon hard 5 traits =
    food 3
    government 0;
ai race_variants evolution klackon impossible 1 count = 1;
ai race_variants evolution klackon impossible 1 traits =
    food 3
    government 0;
ai race_variants evolution klackon impossible 2 count = 1;
ai race_variants evolution klackon impossible 2 traits =
    ship_defense 3
    government 0;
ai race_variants evolution klackon impossible 3 count = 1;
ai race_variants evolution klackon impossible 3 traits =
    ship_defense 3
    government 0;
ai race_variants evolution klackon impossible 4 count = 2;
ai race_variants evolution klackon impossible 4 traits =
    production 3
    ship_attack 2;
ai race_variants evolution klackon impossible 5 count = 1;
ai race_variants evolution klackon impossible 5 traits =
    food 3
    government 0;
ai race_variants evolution meklar hard 1 count = 1;
ai race_variants evolution meklar hard 1 traits =
    ship_defense 3
    government 0;
ai race_variants evolution meklar hard 2 count = 1;
ai race_variants evolution meklar hard 2 traits =
    ship_defense 2
    government 0;
ai race_variants evolution meklar hard 3 count = 1;
ai race_variants evolution meklar hard 3 traits =
    ship_defense 2
    government 0;
ai race_variants evolution meklar hard 4 count = 1;
ai race_variants evolution meklar hard 4 traits =
    ship_defense 2
    government 0;
ai race_variants evolution meklar hard 5 count = 1;
ai race_variants evolution meklar hard 5 traits =
    ship_defense 3
    government 0;
ai race_variants evolution meklar impossible 1 count = 1;
ai race_variants evolution meklar impossible 1 traits =
    ship_defense 3
    government 0;
ai race_variants evolution meklar impossible 2 count = 1;
ai race_variants evolution meklar impossible 2 traits =
    ship_defense 2
    government 0;
ai race_variants evolution meklar impossible 3 count = 1;
ai race_variants evolution meklar impossible 3 traits =
    ship_defense 2
    government 0;
ai race_variants evolution meklar impossible 4 count = 1;
ai race_variants evolution meklar impossible 4 traits =
    ship_defense 3
    government 0;
ai race_variants evolution meklar impossible 5 count = 1;
ai race_variants evolution meklar impossible 5 traits =
    ship_defense 3
    government 0;
ai race_variants evolution mrrshan hard 1 count = 1;
ai race_variants evolution mrrshan hard 1 traits =
    ship_defense 3
    government 0;
ai race_variants evolution mrrshan hard 2 count = 1;
ai race_variants evolution mrrshan hard 2 traits =
    ship_defense 2
    government 0;
ai race_variants evolution mrrshan hard 3 count = 1;
ai race_variants evolution mrrshan hard 3 traits =
    ship_defense 2
    government 0;
ai race_variants evolution mrrshan hard 4 count = 1;
ai race_variants evolution mrrshan hard 4 traits =
    ship_defense 3
    government 0;
ai race_variants evolution mrrshan hard 5 count = 1;
ai race_variants evolution mrrshan hard 5 traits =
    ship_defense 3
    government 0;
ai race_variants evolution mrrshan impossible 1 count = 1;
ai race_variants evolution mrrshan impossible 1 traits =
    ship_defense 3
    government 0;
ai race_variants evolution mrrshan impossible 2 count = 1;
ai race_variants evolution mrrshan impossible 2 traits =
    ship_defense 2
    government 0;
ai race_variants evolution mrrshan impossible 3 count = 1;
ai race_variants evolution mrrshan impossible 3 traits =
    ship_defense 3
    government 0;
ai race_variants evolution mrrshan impossible 4 count = 1;
ai race_variants evolution mrrshan impossible 4 traits =
    ship_defense 3
    government 0;
ai race_variants evolution mrrshan impossible 5 count = 1;
ai race_variants evolution mrrshan impossible 5 traits =
    ship_defense 3
    government 0;
ai race_variants evolution psilon hard 1 count = 1;
ai race_variants evolution psilon hard 1 traits =
    production 3
    government 0;
ai race_variants evolution psilon hard 2 count = 1;
ai race_variants evolution psilon hard 2 traits =
    production 3
    government 0;
ai race_variants evolution psilon hard 3 count = 1;
ai race_variants evolution psilon hard 3 traits =
    production 3
    government 0;
ai race_variants evolution psilon hard 4 count = 1;
ai race_variants evolution psilon hard 4 traits =
    production 3
    government 0;
ai race_variants evolution psilon hard 5 count = 2;
ai race_variants evolution psilon hard 5 traits =
    ship_attack 0
    production 3;
ai race_variants evolution psilon impossible 1 count = 2;
ai race_variants evolution psilon impossible 1 traits =
    ship_attack 2
    production 3;
ai race_variants evolution psilon impossible 2 count = 1;
ai race_variants evolution psilon impossible 2 traits =
    production 3
    government 0;
ai race_variants evolution psilon impossible 3 count = 1;
ai race_variants evolution psilon impossible 3 traits =
    production 3
    government 0;
ai race_variants evolution psilon impossible 4 count = 1;
ai race_variants evolution psilon impossible 4 traits =
    production 3
    government 0;
ai race_variants evolution psilon impossible 5 count = 1;
ai race_variants evolution psilon impossible 5 traits =
    production 3
    government 0;
ai race_variants evolution sakkra hard 1 count = 1;
ai race_variants evolution sakkra hard 1 traits =
    production 3
    government 0;
ai race_variants evolution sakkra hard 2 count = 1;
ai race_variants evolution sakkra hard 2 traits =
    production 3
    government 0;
ai race_variants evolution sakkra hard 3 count = 1;
ai race_variants evolution sakkra hard 3 traits =
    production 3
    government 0;
ai race_variants evolution sakkra hard 4 count = 2;
ai race_variants evolution sakkra hard 4 traits =
    production 3
    ship_attack 2;
ai race_variants evolution sakkra hard 5 count = 2;
ai race_variants evolution sakkra hard 5 traits =
    production 3
    ship_attack 2;
ai race_variants evolution sakkra impossible 1 count = 1;
ai race_variants evolution sakkra impossible 1 traits =
    production 3
    government 0;
ai race_variants evolution sakkra impossible 2 count = 1;
ai race_variants evolution sakkra impossible 2 traits =
    production 3
    government 0;
ai race_variants evolution sakkra impossible 3 count = 1;
ai race_variants evolution sakkra impossible 3 traits =
    production 3
    government 0;
ai race_variants evolution sakkra impossible 4 count = 1;
ai race_variants evolution sakkra impossible 4 traits =
    production 3
    government 0;
ai race_variants evolution sakkra impossible 5 count = 1;
ai race_variants evolution sakkra impossible 5 traits =
    production 3
    government 0;
ai race_variants evolution silicoid hard 1 count = 1;
ai race_variants evolution silicoid hard 1 traits =
    production 3
    government 0;
ai race_variants evolution silicoid hard 2 count = 1;
ai race_variants evolution silicoid hard 2 traits =
    production 3
    government 0;
ai race_variants evolution silicoid hard 3 count = 1;
ai race_variants evolution silicoid hard 3 traits =
    production 3
    government 0;
ai race_variants evolution silicoid hard 4 count = 1;
ai race_variants evolution silicoid hard 4 traits =
    production 3
    government 0;
ai race_variants evolution silicoid hard 5 count = 1;
ai race_variants evolution silicoid hard 5 traits =
    production 3
    government 0;
ai race_variants evolution silicoid impossible 1 count = 1;
ai race_variants evolution silicoid impossible 1 traits =
    production 3
    government 0;
ai race_variants evolution silicoid impossible 2 count = 1;
ai race_variants evolution silicoid impossible 2 traits =
    production 3
    government 0;
ai race_variants evolution silicoid impossible 3 count = 1;
ai race_variants evolution silicoid impossible 3 traits =
    production 3
    government 0;
ai race_variants evolution silicoid impossible 4 count = 1;
ai race_variants evolution silicoid impossible 4 traits =
    production 3
    government 0;
ai race_variants evolution silicoid impossible 5 count = 1;
ai race_variants evolution silicoid impossible 5 traits =
    production 3
    government 0;
ai race_variants evolution trilarian hard 1 count = 1;
ai race_variants evolution trilarian hard 1 traits =
    production 3
    government 0;
ai race_variants evolution trilarian hard 2 count = 1;
ai race_variants evolution trilarian hard 2 traits =
    ship_defense 3
    government 0;
ai race_variants evolution trilarian hard 3 count = 1;
ai race_variants evolution trilarian hard 3 traits =
    production 3
    government 0;
ai race_variants evolution trilarian hard 4 count = 1;
ai race_variants evolution trilarian hard 4 traits =
    ship_defense 2
    government 0;
ai race_variants evolution trilarian hard 5 count = 2;
ai race_variants evolution trilarian hard 5 traits =
    production 2
    ship_attack 3;
ai race_variants evolution trilarian impossible 1 count = 1;
ai race_variants evolution trilarian impossible 1 traits =
    production 3
    government 0;
ai race_variants evolution trilarian impossible 2 count = 2;
ai race_variants evolution trilarian impossible 2 traits =
    production 3
    ship_attack 3;
ai race_variants evolution trilarian impossible 3 count = 2;
ai race_variants evolution trilarian impossible 3 traits =
    production 3
    ship_attack 2;
ai race_variants evolution trilarian impossible 4 count = 2;
ai race_variants evolution trilarian impossible 4 traits =
    production 2
    food 0;
ai race_variants evolution trilarian impossible 5 count = 1;
ai race_variants evolution trilarian impossible 5 traits =
    production 3
    government 0;

Examples

ai race_variants customization alkari hard 1 count = 2;

AI ship design priorities

Configures ordered special-system and special-weapon choices used while the AI designs ships.

Notes: Each item ID is interpreted according to its kind. The seven theme lists share allocation column 1; beam, missile, and special-weapon lists use columns 2, 3, and 5. Special-device and defense lists use columns 6 and 4. All lists preserve their native fixed lengths and default order.

Fields

Built-in default configuration

ai ship_design c1_bio_weapon =
    22 special
    33 special
    2 special
    26 weapon
    25 weapon;
ai ship_design c1_capture =
    35 special
    39 weapon
    28 weapon
    36 special
    37 special;
ai ship_design c1_cloaking =
    23 special
    6 special
    31 special;
ai ship_design c1_beam_defense =
    17 special
    8 special
    2 special
    18 special;
ai ship_design c1_missile_defense =
    38 special
    21 special
    13 weapon
    9 special
    36 weapon
    8 special
    19 special
    33 weapon;
ai ship_design c1_armor =
    3 special
    14 special
    27 special;
ai ship_design c1_shield =
    13 special
    20 special
    30 special;
ai ship_design c2_beam_offense =
    34 special
    1 special
    15 special
    25 special
    32 special
    16 special
    5 special;
ai ship_design c3_missile_offense =
    34 special
    12 special;
ai ship_design c5_special_weapon =
    38 weapon
    37 weapon
    10 special
    35 weapon
    34 weapon;
ai ship_design c6_special_device =
    24 special
    13 weapon
    36 weapon
    32 weapon
    23 special
    6 special
    31 special
    26 special
    22 special
    33 special
    37 special
    28 special;
ai ship_design c4_defense_human_non_beams =
    29 special
    8 special
    19 special
    13 special
    38 special
    21 special
    14 special
    17 special
    9 special
    27 special
    18 special
    2 special
    30 special
    20 special
    33 weapon
    26 special
    13 weapon
    36 weapon
    3 special;
ai ship_design c4_defense_human_beams =
    29 special
    8 special
    19 special
    13 special
    38 special
    21 special
    14 special
    17 special
    9 special
    27 special
    18 special
    2 special
    30 special
    20 special
    33 weapon
    26 special
    13 weapon
    36 weapon
    3 special;

Examples

ai ship_design c1_bio_weapon 1 item = 22;
ai ship_design c1_bio_weapon 1 kind = special;
ai ship_design c1_missile_defense 3 kind = weapon;
ai ship_design c6_special_device 1 item = 24;
ai ship_design c4_defense_human_beams 1 kind = special;

AI ship design space allocations

Configures Auto Design hull-space budgets by active design profile and hull size.

Notes: Minus one disables an allocation step. Tactical designs use the standard_beam_missile_x2 profile after their tactical-only setup.

Built-in default configuration

ai ship_design_allocations standard_beam_missile_x2 =
    -1 -1 -1 15 -1 -1 -1 -1 -1 85 -1 0
    10 0 -1 5 -1 -1 -1 -1 45 30 -1 10
    15 0 -1 0 -1 -1 -1 10 30 30 -1 15
    15 0 -1 5 -1 -1 -1 15 25 25 -1 15
    15 0 -1 10 -1 -1 -1 15 25 20 -1 15
    15 0 -1 15 -1 -1 -1 15 20 20 -1 15;
ai ship_design_allocations hybrid_beam_carrier =
    -1 -1 -1 15 -1 -1 45 -1 -1 40 -1 0
    10 -1 -1 5 -1 -1 40 -1 15 20 -1 10
    15 -1 -1 0 -1 -1 35 -1 20 20 -1 10
    15 -1 -1 5 -1 -1 35 -1 20 15 -1 10
    15 -1 -1 10 -1 -1 35 -1 15 15 -1 10
    15 -1 -1 15 -1 -1 30 -1 15 15 -1 10;
ai ship_design_allocations hybrid_beam_missile_x5 =
    -1 -1 -1 15 -1 -1 -1 45 -1 40 -1 0
    10 -1 -1 5 -1 -1 -1 40 15 20 -1 10
    15 -1 -1 0 -1 -1 -1 35 20 20 -1 10
    15 -1 -1 5 -1 -1 -1 35 20 15 -1 10
    15 -1 -1 10 -1 -1 -1 35 15 15 -1 10
    15 -1 -1 15 -1 -1 -1 30 15 15 -1 10;
ai ship_design_allocations standard_missile_x10 =
    -1 -1 -1 15 -1 -1 -1 85 -1 -1 0 0
    10 -1 0 5 -1 -1 -1 75 -1 -1 0 10
    15 -1 0 0 -1 -1 -1 65 -1 -1 10 10
    15 -1 0 5 -1 -1 -1 50 -1 10 10 10
    15 -1 0 10 -1 -1 -1 45 -1 10 10 10
    15 -1 0 15 -1 -1 -1 40 -1 10 10 10;
ai ship_design_allocations standard_carrier =
    -1 -1 -1 15 -1 -1 85 -1 -1 -1 0 0
    10 -1 -1 5 -1 -1 65 -1 -1 5 5 10
    15 -1 -1 0 -1 -1 60 -1 -1 10 5 10
    15 -1 -1 5 -1 -1 55 -1 -1 10 5 10
    15 -1 -1 10 -1 -1 45 -1 -1 15 5 10
    15 -1 -1 15 -1 -1 40 -1 -1 15 5 10;
ai ship_design_allocations special_device =
    -1 -1 -1 15 -1 50 -1 -1 -1 35 -1 0
    10 -1 -1 5 -1 40 -1 -1 20 15 -1 10
    15 -1 -1 0 -1 35 -1 -1 20 20 -1 10
    15 -1 -1 5 -1 30 -1 -1 20 20 -1 10
    15 -1 -1 10 -1 25 -1 -1 20 20 -1 10
    15 -1 -1 15 -1 20 -1 -1 20 20 -1 10;
ai ship_design_allocations special_weapon =
    -1 -1 -1 15 60 -1 -1 -1 -1 25 0 0
    10 -1 -1 5 50 -1 -1 -1 15 10 0 10
    15 -1 -1 0 45 -1 -1 -1 15 15 0 10
    15 -1 -1 5 40 -1 -1 -1 15 15 0 10
    15 -1 -1 10 35 -1 -1 -1 15 15 0 10
    15 -1 -1 15 60 -1 -1 -1 0 0 0 10;
ai ship_design_allocations special_weapon2 =
    -1 -1 -1 15 60 -1 -1 -1 -1 25 -1 0
    10 -1 -1 5 50 -1 -1 -1 15 10 -1 10
    15 -1 -1 0 45 -1 -1 -1 15 15 -1 10
    15 -1 -1 5 40 -1 -1 -1 15 15 -1 10
    15 -1 -1 10 35 -1 -1 -1 15 15 -1 10
    15 -1 -1 15 30 -1 -1 -1 15 15 -1 10;

Examples

ai ship_design_allocations standard_beam_missile_x2 frigate beams = 50;

AI Black Hole Generator design chance

Sets the chance that AI Titan and Doom Star designs use the special-weapon class after researching Black Hole Generator.

Notes: Values 0 through 4 represent 0%, 25%, 50%, 75%, and 100%; 3 preserves classic behavior. The unrelated generic 1.50 parser also accepted 5, which had no distinct documented probability and is intentionally rejected.

  • Configuration path: ai ship_design_bhg_chance
  • Accepted input: a number
  • Accepted values: type minimum to 4

Built-in default configuration

ai ship_design_bhg_chance = 3;

Examples

ai ship_design_bhg_chance = 3;

AI Stellar Converter design chance

Sets the chance that AI Doom Star designs use the special-weapon class after researching Stellar Converter.

Notes: Values 0 through 4 represent 0%, 25%, 50%, 75%, and 100%; 3 preserves classic behavior. The unrelated generic 1.50 parser also accepted 5, which had no distinct documented probability and is intentionally rejected.

  • Configuration path: ai ship_design_stellar_chance
  • Accepted input: a number
  • Accepted values: type minimum to 4

Built-in default configuration

ai ship_design_stellar_chance = 3;

Examples

ai ship_design_stellar_chance = 3;

AI technology priorities

Configures technology fields and applications that receive increased weight when the AI chooses its next research target.

Notes: The defaults preserve MOO2 1.50: Advanced Engineering and Xeno Relations receive double weight, Neural Scanner receives double weight, and Deuterium Fuel Cells receives five times weight.

Fields

Built-in default configuration

ai tech_priority = advanced_engineering xeno_relations neural_scanner deuterium_fuel_cells;

Examples

ai tech_priority double_field_1 = advanced_engineering;
ai tech_priority double_application = neural_scanner;
ai tech_priority quintuple_application = deuterium_fuel_cells;

Alternate diplomacy patience modifiers

Uses the trade/research and peace modifiers when evaluating those treaty proposals.

Notes: False preserves classic behavior, where every treaty proposal uses the general treaty modifier.

  • Configuration path: ai alternate_diplomacy
  • Accepted input: true or false

Built-in default configuration

ai alternate_diplomacy = false;

Examples

ai alternate_diplomacy = true;

diplomacy

Starting diplomatic relations

Configures initial relations from each race to every other race.

Notes: Rows are directional. Defaults reproduce the complete final MOO2 1.50 matrix, including Meklar hostility toward Bulrathi.

Built-in default configuration

diplomacy starting_relations alkari =
    0
    0
    -24
    24
    0
    0
    -12
    0
    -24
    0
    12
    0
    24
    0;
diplomacy starting_relations bulrathi =
    0
    0
    -12
    24
    0
    0
    0
    -12
    0
    0
    0
    0
    0
    0;
diplomacy starting_relations darlok =
    -24
    -12
    0
    0
    12
    0
    0
    12
    0
    0
    0
    12
    0
    0;
diplomacy starting_relations elerian =
    24
    24
    0
    0
    -24
    0
    0
    0
    24
    -12
    0
    -12
    0
    0;
diplomacy starting_relations gnolam =
    0
    0
    12
    -24
    0
    0
    0
    12
    -12
    0
    0
    0
    0
    0;
diplomacy starting_relations human =
    0
    0
    0
    0
    0
    0
    0
    0
    0
    0
    0
    0
    0
    0;
diplomacy starting_relations klackon =
    -12
    0
    0
    0
    0
    0
    0
    0
    -12
    0
    -12
    12
    24
    0;
diplomacy starting_relations meklar =
    0
    -12
    12
    0
    12
    0
    0
    0
    12
    0
    0
    -12
    -12
    0;
diplomacy starting_relations mrrshan =
    -24
    0
    0
    24
    -12
    0
    -12
    12
    0
    0
    0
    0
    12
    0;
diplomacy starting_relations psilon =
    0
    0
    0
    -12
    0
    0
    0
    0
    0
    0
    0
    0
    12
    0;
diplomacy starting_relations sakkra =
    12
    0
    0
    0
    0
    0
    -12
    0
    0
    0
    0
    0
    0
    0;
diplomacy starting_relations silicoid =
    0
    0
    12
    -12
    0
    0
    12
    -12
    0
    0
    0
    0
    0
    0;
diplomacy starting_relations trilarian =
    24
    0
    0
    0
    0
    0
    24
    -12
    12
    12
    0
    0
    0
    0;
diplomacy starting_relations custom =
    0
    0
    0
    0
    0
    0
    0
    0
    0
    0
    0
    0
    0
    0;

Examples

diplomacy starting_relations meklar bulrathi = -12;

ai

Pre-Warp AI Colony Bases

Allows AI players to build Colony Bases after researching Colony Base without a Colony Ship, fuel, or drive technology.

Notes: False preserves classic AI expansion requirements.

  • Configuration path: ai colony_bases_prewarp
  • Accepted input: true or false

Built-in default configuration

ai colony_bases_prewarp = false;

Examples

ai colony_bases_prewarp = true;

AI colony productivity bonus

Adds a difficulty-dependent bonus to AI food, production, and research output.

Notes: Values are twentieths of a production unit. Zero preserves no bonus for the selected difficulty.

  • Configuration path: ai productivity_bonus
  • Accepted input: 5 entries
  • Entry names: Game difficulty

Built-in default configuration

ai productivity_bonus =
    -10
    0
    10
    20
    40;

Examples

ai productivity_bonus hard = 20;

AI colony income bonus

Adds a difficulty-dependent BC bonus per population unit to AI colony income.

Notes: Values are quarters of a BC per population unit.

  • Configuration path: ai income_bonus
  • Accepted input: 5 entries
  • Entry names: Game difficulty

Built-in default configuration

ai income_bonus =
    0
    0
    1
    2
    3;

Examples

ai income_bonus hard = 2;

AI surrender delay

Sets the number of turns after game start before an AI may surrender to another AI.

Notes: The delay applies only to AI-to-AI surrender evaluation. The default 150 preserves MOO2 1.50 behavior.

  • Configuration path: ai surrender_delay
  • Units: turns
  • Accepted input: a number

Built-in default configuration

ai surrender_delay = 150;

Examples

ai surrender_delay = 150;

Eel offspring interval

Sets the number of stationary turns before a wandering Space Eel attempts to produce offspring.

Notes: The timer resets whenever it reaches this interval. The separate max_eels setting limits the wandering-Eel population.

  • Configuration path: ai eel_spawn_frequency
  • Units: turns
  • Accepted input: a number
  • Accepted values: 1 to 100

Built-in default configuration

ai eel_spawn_frequency = 30;

Examples

ai eel_spawn_frequency = 30;

Maximum wandering Eels

Limits the number of wandering Space Eels that may be present in the galaxy.

  • Configuration path: ai max_eels
  • Accepted input: a number
  • Accepted values: 1 to 100

Built-in default configuration

ai max_eels = 4;

Examples

ai max_eels = 4;

diplomacy

Restrict diplomacy reports

Hides the Races screen Report action and disables Tech Exchange, Demand Tech, and Offer Tech during Audience.

Notes: False preserves classic behavior. This is the restored equivalent of MOO2 1.50's /noreport ruleset option.

  • Configuration path: diplomacy noreport
  • Accepted input: true or false

Built-in default configuration

diplomacy noreport = false;

Examples

diplomacy noreport = true;

ai

AI hyper-advanced technology thresholds

Sets the number of hyper-advanced levels the AI may complete in each technology branch.

Notes: The AI rerolls branches that reached their threshold and stops research after every branch reaches its configured value. All-zero defaults preserve classic behavior.

Built-in default configuration

ai ai_hypertech_threshold =
    0
    0
    0
    0
    0
    0
    0
    0;

Examples

ai ai_hypertech_threshold adv_physics = 5;
ai ai_hypertech_threshold adv_power = 3;

Stock races

Configures the government and racial traits of every predefined race.

Notes: Rows are used by new-player initialization and the race-selection screen. Numeric pick choices use zero for no pick and one through three for the available penalty or bonus levels.

Built-in default configuration

ai stock_race =
    dictatorship 0 0 0 0 0 3 0 0 0 false false false false false 0 true false false false false false false false false false false false false false false
    dictatorship 0 0 0 0 0 0 2 2 0 false true false false false 0 false false false false false false false false false false false false false false false
    dictatorship 0 0 0 0 0 0 0 0 3 false false false false false 0 false false false false false false false false false false false false true false false
    feudal 0 0 0 0 0 2 2 0 0 false false false false false 0 false false false false false false false false false true false true false false false
    dictatorship 0 0 0 0 3 0 0 0 0 true false false false false 0 false false false false false false false false true false true false false false false
    democracy 0 0 0 0 0 0 0 0 0 false false false false false 0 false false false false true false false false false false false false false false false
    unification 0 2 2 0 0 0 0 0 0 false false false false true 0 false false false false false true false false false false false false false false false
    dictatorship 0 0 3 0 0 0 0 0 0 false false false false false 0 false true false false false false false false false false false false false false false
    dictatorship 0 0 0 0 0 0 3 0 0 false false false false false 1 false false false false false false false false false false false false false false true
    dictatorship 0 0 0 3 0 0 0 0 0 true false false false true 0 false false false false false false true false false false false false false false false
    feudal 3 2 0 0 0 0 0 0 1 false false false true true 0 false false false false false false false false false false false false false false false
    dictatorship 1 0 0 0 0 0 0 0 0 false false false false false 0 false false true true false false false true false false false false false false false
    dictatorship 0 0 0 0 0 0 0 0 0 false false true false false 0 false false false false false false false false false false false false false true false;

Examples

ai stock_race human government = democracy;
ai stock_race alkari growth = 0;
ai stock_race silicoid growth = 1;
ai stock_race sakkra growth = 3;

AI race personalities

Configures the personality selected for every stock race by the difficulty-adjusted random roll.

Notes: At new-game initialization, the game computes Random(10) + 1 minus difficulty, clamps it to zero through nine, and selects that race's entry. The internal fourteenth row is not configurable because it is not a stock race.

Built-in default configuration

ai race_personality alkari =
    erratic
    honorable
    honorable
    honorable
    honorable
    honorable
    honorable
    honorable
    pacifist
    pacifist;
ai race_personality bulrathi =
    ruthless
    aggressive
    aggressive
    aggressive
    aggressive
    aggressive
    aggressive
    aggressive
    erratic
    erratic;
ai race_personality darlok =
    ruthless
    ruthless
    xenophobic
    aggressive
    aggressive
    aggressive
    aggressive
    aggressive
    aggressive
    aggressive;
ai race_personality elerian =
    xenophobic
    xenophobic
    ruthless
    ruthless
    ruthless
    ruthless
    ruthless
    aggressive
    aggressive
    aggressive;
ai race_personality gnolam =
    ruthless
    ruthless
    aggressive
    aggressive
    erratic
    erratic
    erratic
    pacifist
    pacifist
    pacifist;
ai race_personality human =
    erratic
    honorable
    honorable
    honorable
    honorable
    honorable
    honorable
    honorable
    pacifist
    pacifist;
ai race_personality klackon =
    xenophobic
    xenophobic
    xenophobic
    xenophobic
    xenophobic
    xenophobic
    xenophobic
    ruthless
    aggressive
    aggressive;
ai race_personality meklar =
    xenophobic
    aggressive
    aggressive
    erratic
    erratic
    erratic
    erratic
    erratic
    erratic
    erratic;
ai race_personality mrrshan =
    xenophobic
    ruthless
    ruthless
    ruthless
    ruthless
    ruthless
    ruthless
    ruthless
    aggressive
    aggressive;
ai race_personality psilon =
    erratic
    erratic
    honorable
    pacifist
    pacifist
    pacifist
    pacifist
    pacifist
    pacifist
    pacifist;
ai race_personality sakkra =
    ruthless
    aggressive
    aggressive
    aggressive
    aggressive
    aggressive
    aggressive
    aggressive
    erratic
    erratic;
ai race_personality silicoid =
    xenophobic
    xenophobic
    xenophobic
    xenophobic
    xenophobic
    xenophobic
    xenophobic
    aggressive
    aggressive
    erratic;
ai race_personality trilarian =
    erratic
    honorable
    honorable
    honorable
    honorable
    honorable
    pacifist
    pacifist
    pacifist
    pacifist;

Examples

ai race_personality human roll roll_1 = honorable;

Antaran fleet policy

Configures strategic Antaran growth, attack selection, fleet composition, ship costs, and low-tier retirement.

Notes: Defaults preserve classic behavior and match MOO2 1.50. The Normal retirement divisors are retained for table compatibility but the direct Normal turn limits govern those difficulties. Post-Warp uses the Average growth delay.

Fields

Built-in default configuration

ai antaran_fleet growth_delay =
    200
    100
    0;
ai antaran_fleet resource_growth frequency = 25;
ai antaran_fleet resource_growth offensive_multiplier =
    100
    150
    200;
ai antaran_fleet resource_growth defensive_multiplier =
    100
    150
    200;
ai antaran_fleet attack = 200 2 3 3;
ai antaran_fleet ship_limit offensive =
    4
    4
    3
    2
    2;
ai antaran_fleet ship_limit defensive =
    0
    0
    3
    2
    7;
ai antaran_fleet ship_cost =
    2
    5
    12
    30
    75;
ai antaran_fleet retirement raider normal_turn_limit = 100;
ai antaran_fleet retirement raider divisor =
    100
    150
    200;
ai antaran_fleet retirement marauder normal_turn_limit = 199;
ai antaran_fleet retirement marauder divisor =
    100
    150
    200;

Examples

ai antaran_fleet growth_delay prewarp = 200;
ai antaran_fleet resource_growth frequency = 25;
ai antaran_fleet resource_growth offensive_multiplier impossible = 200;
ai antaran_fleet attack minimum_offensive_force_shift = 2;
ai antaran_fleet ship_limit offensive harbinger = 2;
ai antaran_fleet ship_cost intruder = 12;
ai antaran_fleet retirement raider divisor hard = 150;

Antaran offensive crew quality

Configures the crew quality assigned to newly deployed offensive Antaran ships.

Notes: Veteran preserves classic behavior. Elite assigns Elite crew and 500 experience, matching MOO2 1.50's optional elite_offensive_ants setting.

Allowed choices

  • veteran
  • elite

Built-in default configuration

ai antaran_offensive_crew = veteran;

Examples

ai antaran_offensive_crew = elite;

Antaran Star Fortress weapon space

Sets the total weapon space used to equip the Antaran Star Fortress.

Notes: The default 1500 preserves the classic 1200-space hull's 25 percent compensation independently of the regular Star Fortress space increase.

  • Configuration path: ai antaran_star_fortress_space
  • Units: space
  • Accepted input: a number

Built-in default configuration

ai antaran_star_fortress_space = 1500;

Examples

ai antaran_star_fortress_space = 1500;

AI uncolonized-planet food worth

Configures the AI value of farmer food on uncolonized planets.

Notes: Values are worth per half-food unit. Defaults reproduce MOO2 1.50's 75 and 38 multipliers after conversion to half-food storage.

Fields

Built-in default configuration

ai uncolonized_planet_food_worth = 75 38;

Examples

ai uncolonized_planet_food_worth biological = 75;
ai uncolonized_planet_food_worth cybernetic = 38;

AI uncolonized-planet special worth

Configures the AI value added for Gold Deposits, Gem Deposits, Ancient Artifacts, and Orion on uncolonized planets.

Notes: The values are applied before planet size, mineral, and climate modifiers. Defaults preserve classic behavior and match MOO2 1.50.

Fields

Built-in default configuration

ai uncolonized_planet_special_worth = 1280 2560 640 1600;

Examples

ai uncolonized_planet_special_worth gold_deposits = 1280;
ai uncolonized_planet_special_worth ancient_artifacts = 640;

Wandering monsters stay after combat

Prevents wandering monsters from retiring after combat or an Amoeba colony attack.

Notes: False preserves classic behavior. Eels and non-toxicizing Amoebae stay regardless of this setting.

  • Configuration path: ai monsters_stay
  • Accepted input: true or false

Built-in default configuration

ai monsters_stay = false;

Examples

ai monsters_stay = true;

Wandering monster retirement roll

Sets the random-roll bound used when Crystal, Dragon, and Hydra may retire after combat.

Notes: The monster retires only when the single inclusive roll equals one. Zero deterministically retires eligible monsters without advancing the random seed.

  • Configuration path: ai monsters_stay_chance
  • Accepted input: a number

Built-in default configuration

ai monsters_stay_chance = 2;

Examples

ai monsters_stay_chance = 2;