Lem moddability changes: new triggers, effects and improvements

  • We have updated our Community Code of Conduct. Please read through the new rules for the forum that are an integral part of Paradox Interactive’s User Agreement.

OldEnt

Captain
45 Badges
Aug 12, 2019
457
564
  • Magicka
  • Hearts of Iron IV: Expansion Pass
  • Stellaris: Synthetic Dawn
  • Europa Universalis IV: Golden Century
  • Europa Universalis IV: Mandate of Heaven
  • Hearts of Iron IV: Death or Dishonor
  • Europa Universalis IV: Cradle of Civilization
  • Hearts of Iron IV: Expansion Pass
  • Stellaris: Humanoids Species Pack
  • Stellaris: Apocalypse
  • Europa Universalis IV: Rule Britannia
  • Stellaris: Distant Stars
  • Europa Universalis IV: Dharma
  • Hearts of Iron IV: Together for Victory
  • Stellaris: Ancient Relics
  • Stellaris: Lithoids
  • Hearts of Iron IV: La Resistance
  • Stellaris: Federations
  • Crusader Kings III
  • Stellaris: Necroids
  • Stellaris: Nemesis
  • Europa Universalis IV: Cossacks
  • Europa Universalis IV
  • Cities: Skylines
  • Europa Universalis IV: El Dorado
  • Europa Universalis IV: Common Sense
  • Stellaris: Leviathans Story Pack
  • Europa Universalis IV: Mare Nostrum
  • Stellaris
  • Stellaris: Galaxy Edition
  • Stellaris: Galaxy Edition
  • Hearts of Iron IV: Cadet
  • Hearts of Iron IV: Colonel
  • Europa Universalis IV: Rights of Man
  • Stellaris: Digital Anniversary Edition
  • Europa Universalis IV: Third Rome
  • Stellaris: Megacorp
  • Europa Universalis IV: Pre-order
  • Stellaris - Path to Destruction bundle
  • Europa Universalis IV: Res Publica
  • Europa Universalis IV: Call to arms event
  • Europa Universalis IV: Wealth of Nations
  • Europa Universalis IV: Conquest of Paradise
  • Europa Universalis IV: Art of War
  • Crusader Kings II
This is a detailed rundown of changes to triggers, effects, modifiers etc. which come with Stellaris 3.1 Lem update, based on Stellaris Dev Diary #222 - Moddability Updates in LEM by @Caligula Caesar and moddability docs therein attached

If you are updating from 2.8.1 or prior read Nemesis moddability changes: over 100 new triggers and effects each based on Nemesis trigger_docs and dev diary by @Caligula Caesar.

Source view of changes is available as a GitHub diff page. Green is added, red is removed. Any red check if it does not exist elsewhere as green as it might have been just moved during formatting).

List of Stellaris triggers, modifiers and effects for most game versions since launch (live branch)

List of Stellaris triggers, modifiers and effects for most game versions since launch (LEM pre-release branch)




@Firegolem created ModUpdater 3.1 for automatic update of your mods (modder tool) https://forum.paradoxplaza.com/forum/threads/tool-modupdater-3-1.1491289/



NOTE: Following modifiers and one trigger are not present in the release version of 3.1.1.

Code:
is_ideal - Checks if the planet is ideal (as set in planet_classes)
is_ideal = yes
Supported Scopes: planet

Code:
- shipsize_space_dragon_purple_build_speed_mult, Category: Planets, Starbases
- shipsize_space_dragon_purple_hull_mult, Category: Ships
- shipsize_space_dragon_purple_hull_add, Category: Ships
- shipsize_space_dragon_purple_evasion_mult, Category: Ships
- shipsize_space_dragon_purple_disengage_chance_mult, Category: Ships
- shipsize_space_dragon_purple_tracking_mult, Category: Ships
- shipsize_space_dragon_purple_baby_build_speed_mult, Category: Planets, Starbases
- shipsize_space_dragon_purple_baby_hull_mult, Category: Ships
- shipsize_space_dragon_purple_baby_hull_add, Category: Ships
- shipsize_space_dragon_purple_baby_evasion_mult, Category: Ships
- shipsize_space_dragon_purple_baby_disengage_chance_mult, Category: Ships
- shipsize_space_dragon_purple_baby_tracking_mult, Category: Ships



The Grand Variables Guide was added - 000_how_to_use_variables_in_script.txt.



== Quick stats ==

104 effects added, 6 removed/renamed.
25 triggers added, 8 removed/renamed.
375 modifiers added, 426 removed/renamed.
9 localization commands added.
1 scope removed.

Hundreds of functionality changes.

== Quick remove/rename reference ==

Removed/Renamed triggers:
  1. observation_outpost (any/every/random_mining_station/research_station have also been removed, because they were nonsense. Use simply mining_station/research_station/orbital_station scope change instead. Also, observation_outpost no longer takes a "limit", but you can say "exists = observation_outpost" as compensation. Also see: count_orbital_station, any_orbital_station)
  2. any_research_station (=||=)
  3. any_mining_station (=||=)
  4. count_diplo_ties (use: count_relation)
  5. pop_can_live_on_planet (use: can_live_on_planet)
  6. count_armies (count_armies is count_owned_army or count_planet_army (depending on the case))
  7. has_non_swapped_tradition (use: has_active_tradition)
  8. has_swapped_tradition (use: has_active_tradition)
Removed/Renamed effects:
  1. observation_outpost (any/every/random_mining_station/research_station have also been removed, because they were nonsense. Use simply mining_station/research_station/orbital_station scope change instead. Also, observation_outpost no longer takes a "limit", but you can say "exists = observation_outpost" as compensation. Also see: every_orbital_station, random_orbital_station)
  2. random_research_station (=||=)
  3. random_mining_station (=||=)
  4. every_mining_station (=||=)
  5. every_research_station (=||=)
  6. set_primitive (use: set_country_type)
Removed/Renamed modifiers:
426 removed/renamed, see MODIFIER DOCUMENTATION.

Removed/Renamed scopes:
  1. spaceport


== LOCALIZATION DOCUMENTATION ==

In most cases, it is also possible to get the value of variables with '[Scope.my_variable]' and saved dates with '[Scope.my_date_flag]'.

Added localization commands (3.1.0):
Code:
GetSpeciesFossilName
GetSpeciesFossilNamePlural
GetSpeciesRemnantName
GetSpeciesRemnantNamePlural
Species
GetFossilName
GetFossilNamePlural
GetRemnantName
GetRemnantNamePlural



== SCOPE DOCUMENTATION ==

Improved scopes' documentation (3.1.0).

Removed scopes (3.1.0):
Code:
spaceport



== TRIGGER DOCUMENTATION ==

Removed triggers (3.1.0):
Code:
observation_outpost - Checks if the planet's observation post meets the specified criteria
observation_outpost = { <triggers> }
Supported Scopes: planet

count_diplo_ties - Checks the number of diplomatic in the scope that fulfill the specified criteria
count_diplo_ties = { count < 6 limit = { <triggers> } }
Supported Scopes: country

pop_can_live_on_planet - Checks if the pop's species is allowed to live on its planet
pop_can_live_on_planet = yes
Supported Scopes: pop

any_research_station - Checks if the planet's orbital research station meets the specified criteria
any_research_station = { <triggers> }
Supported Scopes: planet

any_mining_station - Checks if the planet's orbital mining station meets the specified criteria
any_mining_station = { <triggers> }
Supported Scopes: planet

count_armies - Checks the number of armies on/in the planet/country that meet the specified criteria
count_armies = { limit = { <triggers> } count < 12 }
Supported Scopes: planet country

has_non_swapped_tradition - Checks if a country has the given tradition and it is not swapped. Also returns true if the tradition is swapped but has inherit_effects = yes (i.e. it's a cosmetic flavor swap).
has_non_swapped_tradition = tr_my_santa_claus_tradition
Supported Scopes: country

has_swapped_tradition - Checks if a country has the given swapped tradition.
has_swapped_tradition = tr_my_santa_claus_tradition
Supported Scopes: country

Added triggers (3.1.0):
Code:
num_sapient_pops - Checks the number of sapient pops on the planet/country
num_sapient_pops > 12
Supported Scopes: planet country

can_live_on_planet - Checks if the pop or species is allowed to live on a specified planet
can_live_on_planet = from.capital_scope
Supported Scopes: pop species

has_army_flag - Checks if the army has a specific flag
has_army_flag = <flag> (note: one can use e.g. my_flag@from to track relationships between objects)
Supported Scopes: army

has_deposit_flag - Checks if the deposit has a specific flag
has_deposit_flag = <flag> (note: one can use e.g. my_flag@from to track relationships between objects)
Supported Scopes: deposit

has_war_flag - Checks if the war has a specific flag
has_war_flag = <flag> (note: one can use e.g. my_flag@from to track relationships between objects)
Supported Scopes: war

has_starbase_flag - Checks if the starbase has a specific flag
has_starbase_flag = <flag> (note: one can use e.g. my_flag@from to track relationships between objects)
Supported Scopes: starbase

has_sector_flag - Checks if the sector has a specific flag
has_sector_flag = <flag> (note: one can use e.g. my_flag@from to track relationships between objects)
Supported Scopes: sector

has_archaeology_flag - Checks if the archaeological site has a specific flag
has_archaeology_flag = <flag> (note: one can use e.g. my_flag@from to track relationships between objects)
Supported Scopes: archaeological_site

has_spynetwork_flag - Checks if the spy network has a specific flag
has_spynetwork_flag = <flag> (note: one can use e.g. my_flag@from to track relationships between objects)
Supported Scopes: spy_network

has_espionage_asset_flag - Checks if the espionage asset has a specific flag
has_espionage_asset_flag = <flag> (note: one can use e.g. my_flag@from to track relationships between objects)
Supported Scopes: espionage_asset

has_collected_system_trade_value - Checks the system's trade value that is collected by any country
has_collected_system_trade_value > 200
Supported Scopes: galactic_object

has_uncollected_system_trade_value - Checks the system's uncollected trade value (i.e. that no country profits from)
has_uncollected_system_trade_value > 200
Supported Scopes: galactic_object

num_researched_techs - Checks the country's number of researched technologies
num_researched_techs > 21
Supported Scopes: country

has_active_tradition - Checks if a country has the given tradition or tradition swap. Tradition specified must be the one giving effects, i.e. tradition swaps with 'inherit_effects = yes' are ignored and the base tradition should be specified in those cases.
has_active_tradition = tr_my_santa_claus_tradition
Supported Scopes: country

num_tradition_categories - Checks number of tradition categories the country has picked
num_tradition_categories > 2
Supported Scopes: country

has_climate - Checks if the planet's climate is set to a specified string in planet_classes:
has_climate = dry
Supported Scopes: planet

is_ideal - Checks if the planet is ideal (as set in planet_classes)
is_ideal = yes
Supported Scopes: planet

is_starbase_building_module - Checks if the starbase is currently building a specific module
is_starbase_building_module = <starbase module>
Supported Scopes: starbase

is_starbase_building_building - Checks if the starbase is currently building a specific building
is_starbase_building_building = <starbase building>
Supported Scopes: starbase

starbase_buildable_is_in_queue_before - Check if the first buildable is in the starbase building queue before the second buildable (for prerequisites, mostly)
Returns false if the first one, or both aren't in the queue. Returns true if the first one is in, but the second isn't.
starbase_buildable_is_in_queue_before = { first = <buildable> second = <buildable>
Supported Scopes: starbase

count_orbital_station - Iterate through each orbital station owned by the current country or in the current system - checks whether the enclosed triggers return true for X/all of them
count_orbital_station = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: country galactic_object

any_galcom_member - Iterate through each member of the galactic community - checks whether the enclosed triggers return true for any of them
any_galcom_member = { <count=<num/all>> <triggers> }
Supported Scopes: all

count_galcom_member - Iterate through each member of the galactic community - checks whether the enclosed triggers return true for X/all of them
count_galcom_member = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: all

any_council_member - Iterate through each member of the galactic council - checks whether the enclosed triggers return true for any of them
any_council_member = { <count=<num/all>> <triggers> }
Supported Scopes: all

count_council_member - Iterate through each member of the galactic council - checks whether the enclosed triggers return true for X/all of them
count_council_member = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: all

Extended functionality (3.1.0):
Code:
any_orbital_station - Iterate through each orbital station owned by the current country or in the current system - checks whether the enclosed triggers return true for any of them
any_orbital_station = { <count=<num/all>> <triggers> }
Supported Scopes: country galactic_object
Added country galactic_object scopes, removed planet scope. <count=<num/all>>

Extended functionality (3.1.0)
Code:
num_buildings - Checks the number the planet has of any, or a specific, building
num_buildings = {  type = <key/any>  value > 2/variable  disabled = <any(default)/yes(only)/no(only)>  in_construction <any/no(default)/yes(only)> }
Supported Scopes: planet country
Accepts variable. Added country scope. disabled = <any(default)/yes(only)/no(only)> in_construction <any/no(default)/yes(only)>

Extended functionality (3.1.0):
Code:
is_variable_set - Checks if the specified variable is set on the current scope. Use to avoid unset variables errors
is_variable_set = my_var
Supported Scopes: megastructure planet country ship pop fleet galactic_object leader army ambient_object species pop_faction war federation starbase deposit sector archaeological_site first_contact spy_network espionage_operation espionage_asset

check_variable - Checks a variable for the country/leader/planet/system/fleet
check_variable = { which = <variable> value >=< <float>/<variable>/<scope.variable>/trigger:<trigger> }
Supported Scopes: megastructure planet country ship pop fleet galactic_object leader army ambient_object species pop_faction war federation starbase deposit sector archaeological_site first_contact spy_network espionage_operation espionage_asset

check_variable_arithmetic - Checks a variable for the scope if a certain amount of arithmetic is done to it (note: the variable's value is not changed by this trigger)
check_variable_arithmetic = {
    which = <variable>
    add/subtract/multiply/divide/modulo = <float>/<variable>/<scope.variable>/trigger:<trigger> (note: this line can be repeated as many times as desired)
    value <=> <float>/<variable>/<scope.variable>/trigger:<trigger> (the value to compare against)
}
Supported Scopes: megastructure planet country ship pop fleet galactic_object leader army ambient_object species pop_faction war federation starbase deposit sector archaeological_site first_contact spy_network espionage_operation espionage_asset
Better syntax and scoping, accepts variable. More scopes supported: ambient_object deposit archaeological_site spy_network espionage_operation espionage_asset

Extended functionality (3.1.0):
Code:
num_armies - Checks the country's or planet's number of armies
num_armies < 20
Supported Scopes: planet country
Added planet scope.

The following triggers now accept variable (Extended functionality) (3.1.0):

Code:
num_favors - Check amount of favors that scoped country can collect from target country:
num_favors = {
    target = <country>
    value ><= <value>/<variable>
}
Supported Scopes: country

opinion - Checks the country's opinion of the target country
opinion = { who = <target> value = -70/variable }
Supported Scopes: country

envoy_opinion_change - Checks the country's opinion of the target country has been changed by envoys
envoy_opinion_change = { who = <target> value >= 25/variable }
Supported Scopes: country

intel - Checks the country's Intel on the target country
intel = { who = <target> value = 70/variable }
Supported Scopes: country

tech_unlocked_ratio - Checks the relative amount of already-researched tech between the country and target country
tech_unlocked_ratio = { who = <target> ratio = 0.4/variable }
Supported Scopes: country

has_intel_level - Checks the country's intel level on a category for the target country
has_intel_level = { who = <target> category = economy level = 2/variable }
Supported Scopes: country

has_intel_report - Checks if the country has intel report of at least the specified level on a category for the target country
has_intel_report = { who = <target> category = economy level = 2/variable }
Supported Scopes: country

trust - Checks the country's trust of the target country
trust = { who = <target> value = 50/variable }
Supported Scopes: country

branch_office_value - Checks the planet's branch officevalue
branch_office_value = { who = <target> value > 10/variable }
Supported Scopes: planet

num_districts - Checks the number the planet has of any, or a specific, district
num_districts = { type = <key/any> value > 2/variable }
Supported Scopes: planet

num_free_districts - Checks the number of available slots the planet has of any, or a specific, district
num_free_districts = { type = <key/any> value > 2/variable }
Supported Scopes: planet

their_opinion - Checks target country's opinion value of the current country
their_opinion = { who = <target> value > 25/variable }
Supported Scopes: country

check_modifier_value - Checks the value of a specified modifier in the current scope against a value.
check_modifier_value = { modifier = pop_growth_speed_reduction value > 1.05/variable
Supported Scopes: megastructure planet country ship pop fleet galactic_object leader army species design pop_faction spy_network espionage_operation

check_galaxy_setup_value - Checks the value for a specific option from the galaxy setup
check_galaxy_setup_value = { setting = <string> value >=< <float>/<variable> }
possible values: num_empires, num_advanced_empires, num_fallen_empires, num_marauder_empires, mid_game_year, end_game_year, victory_year, num_guaranteed_colonies, num_gateways, num_wormhole_pairs, num_hyperlanes, habitable_worlds_scale, primitive_worlds_scale, crisis_strength_scale, tech_costs_scale
Supported Scopes: all

has_country_resource - Checks the country's amount of a specific stored resource
has_country_resource = { type = minerals amount > 99/variable }
Supported Scopes: country

num_killed_ships - Checks how many of target country's ships that the country has destroyed
num_killed_ships = { target = <target> value > 5/variable }
Supported Scopes: country

opposing_ethics_divergence - Checks how far removed the country/pop's ethos is from target's
opposing_ethics_divergence = { steps > 1/variable who = <target> }
Supported Scopes: country pop

count_tech_options - Checks the country's number available tech research options in a specific field
count_tech_options = { area = physics count > 0/variable }
Supported Scopes: country

count_war_participants - Checks the number of participants in the war on a specific side that meet the specified criteria
count_war_participants = { limit = { <triggers> } side = target count < 4/variable
Supported Scopes: war

count_potential_war_participants - Checks the amount of potential war participants in a specific war that meet the specified criteria
count_potential_war_participants = { attacker = <target> defender = <target> side = <target> limit = { <triggers> } count > 2/variable
Supported Scopes: all

years_of_peace - Checks the number of in-game years country has been at peace, with optional parameter to delay from start of game
years_of_peace = { value > 10/variable delay = 0 }
Supported Scopes: country

count_starbase_modules - Checks the number of starbase modules that are of the specified type or not
count_starbase_modules = { type = anchorage count < 12/variable }
Supported Scopes: starbase

calc_true_if - Returns true if the specified number of sub-triggers return true
calc_true_if = { amount = 2/variable <trigger> <trigger> <trigger> }
Supported Scopes: all

planet_resource_compare - Checks specific resource value for scoped planet:
planet_resource_compare = {
    resource = <resource_name>
    value ><= <value>/variable>
    type = upkeep/produces/balance(default)
}

market_resource_price - Checks market price of a specific resource for the current country:
market_resource_price = {
    resource = <resource_name>
    amount = <value> (how much are you buying/selling)
    trade_type = market_buy/market_sell/not_set (i.e. price without market fees)
    value ><= <value>/<variable>
}

pop_percentage - Checks the percentage of pops in the scope that fulfill the specified criteria
pop_percentage = {
    percentage > 0.74/variable
    limit = { <triggers> }
    exclude = { <triggers> } (optional: specifies pops to exclude from the calculation)
}
Supported Scopes: planet country pop_faction sector

pop_produces_resource - Checks if a pop is currently producing a particular resource
pop_produces_resource = { type = minerals amount < 5.5/variable }
Supported Scopes: pop

pop_maintenance_cost - Checks the maintenace costs of a pop
pop_maintenance_cost = { value > 0.5/variable resource = energy }
Supported Scopes: pop

count_starbase_sizes - Checks if the scoped country has a specified quantity of a starbase size
count_starbase_sizes = {
    starbase_size = <starbase_ship_size>
    count >= 2/variable
}
Supported Scopes: country

relative_encryption_decryption = {
    target = <country>
    value > 1.0/variable
}
Supported Scopes: country spy_network espionage_operation

count_ambient_object - Iterate through every ambient object in the game - checks whether the enclosed triggers return true for X/all of them
count_ambient_object = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: all

count_system_ambient_object - Iterate through every ambient object in the solar system - checks whether the enclosed triggers return true for X/all of them
count_system_ambient_object = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: galactic_object

count_owned_army - Iterate through each army that is owned by the country - checks whether the enclosed triggers return true for X/all of them
count_owned_army = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: country

count_planet_army - Iterate through each army on the planet (not in ground combat) belonging to the planet owner - checks whether the enclosed triggers return true for X/all of them
count_planet_army = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: planet

count_ground_combat_defender - Iterate through each army currently defending the planet in ground combat - checks whether the enclosed triggers return true for X/all of them
count_ground_combat_defender = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: planet

count_ground_combat_attacker - Iterate through each army currently attacking the planet in ground combat - checks whether the enclosed triggers return true for X/all of them
count_ground_combat_attacker = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: planet

count_country - Iterate through all countries - checks whether the enclosed triggers return true for X/all of them
count_country = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: all

count_relation - Iterate through all relations - checks whether the enclosed triggers return true for X/all of them
count_relation = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: country

count_neighbor_country - Iterate through all neighbor countries - checks whether the enclosed triggers return true for X/all of them
count_neighbor_country = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: country

count_bordering_country - Iterate through all bordering countries of a system - checks whether the enclosed triggers return true for X/all of them
count_bordering_country = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: galactic_object

count_rival_country - Iterate through all countries rivalled by the scoped country - checks whether the enclosed triggers return true for X/all of them
count_rival_country = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: country

count_federation_ally - Iterate through all countries in a federation with the scoped country - checks whether the enclosed triggers return true for X/all of them
count_federation_ally = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: country

count_playable_country - Iterate through all playable countries - checks whether the enclosed triggers return true for X/all of them
count_playable_country = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: all

count_subject - Iterate through all subjects of the scoped country - checks whether the enclosed triggers return true for X/all of them
count_subject = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: country

count_spynetwork - Iterate through each spynetwork - checks whether the enclosed triggers return true for X/all of them
count_spynetwork = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: country no_scope

count_espionage_operation - Iterate through each espionage operation - checks whether the enclosed triggers return true for X/all of them
count_espionage_operation = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: country no_scope spy_network

count_espionage_asset - Iterate through each espionage asset - checks whether the enclosed triggers return true for X/all of them
count_espionage_asset = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: no_scope spy_network espionage_operation

count_federation - Iterate through each federation - checks whether the enclosed triggers return true for X/all of them
count_federation = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: all

count_first_contact - Iterate through each first contact (both active and complete) that this country is engaging in - checks whether the enclosed triggers return true for X/all of them
count_first_contact = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: country

count_active_first_contact - Iterate through each active (non-completed) first contact that this country is engaging in - checks whether the enclosed triggers return true for X/all of them
count_active_first_contact = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: country

count_galaxy_fleet - Iterate through each fleet in the entire game - checks whether the enclosed triggers return true for X/all of them
count_galaxy_fleet = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: all

count_combatant_fleet - Iterate through each fleet this fleet is in combat with - checks whether the enclosed triggers return true for X/all of them
count_combatant_fleet = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: fleet

count_fleet_in_system - Iterate through each fleet in the current system - checks whether the enclosed triggers return true for X/all of them
count_fleet_in_system = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: galactic_object

count_owned_fleet - Iterate through each fleet owned by the country - checks whether the enclosed triggers return true for X/all of them
count_owned_fleet = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: country

count_fleet_in_orbit - Iterate through each fleet orbiting the current planet/starbase/megastructure - checks whether the enclosed triggers return true for X/all of them
count_fleet_in_orbit = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: megastructure planet starbase

count_owned_leader - Iterate through each leader that is owned by the country - checks whether the enclosed triggers return true for X/all of them
count_owned_leader = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: country

count_pool_leader - Iterate through each leader that is recruitable for the country - checks whether the enclosed triggers return true for X/all of them
count_pool_leader = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: country

count_envoy - Iterate through each envoy available to the country - checks whether the enclosed triggers return true for X/all of them
count_envoy = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: country

count_megastructure - Iterate through each megastructure - checks whether the enclosed triggers return true for X/all of them
count_megastructure = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: all

count_owned_megastructure - Iterate through each owned megastructure - checks whether the enclosed triggers return true for X/all of them
count_owned_megastructure = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: country

count_system_megastructure - Iterate through each megastructure in system - checks whether the enclosed triggers return true for X/all of them
count_system_megastructure = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: all

count_member - Iterate through each member of the federation - checks whether the enclosed triggers return true for X/all of them
count_member = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: federation

count_associate - Iterate through each associate member of the federation - checks whether the enclosed triggers return true for X/all of them
count_associate = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: federation

count_system_planet - Iterate through each planet in the current system - checks whether the enclosed triggers return true for X/all of them
count_system_planet = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: galactic_object

count_planet_within_border - Iterate through each planet within the current empire's borders - checks whether the enclosed triggers return true for X/all of them
count_planet_within_border = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: country

count_owned_planet - Iterate through each inhabited planet owned by the current empire - checks whether the enclosed triggers return true for X/all of them
count_owned_planet = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: country sector

count_controlled_planet - Iterate through each inhabited planet controlled by the current empire - checks whether the enclosed triggers return true for X/all of them
count_controlled_planet = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: country

count_galaxy_planet - Iterate through each planet ANYWHERE in the game; warning: resource intensive! - checks whether the enclosed triggers return true for X/all of them
count_galaxy_planet = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: all

count_deposit - Iterate through each deposit on the planet - checks whether the enclosed triggers return true for X/all of them
count_deposit = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: planet

count_moon - Iterate through each moon of the planet - checks whether the enclosed triggers return true for X/all of them
count_moon = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: planet

count_owned_pop - Iterate through all owned pops - checks whether the enclosed triggers return true for X/all of them
count_owned_pop = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: planet country pop_faction sector

count_species_pop - Iterate through each pop that belongs to this species; warning: resource-intensive! - checks whether the enclosed triggers return true for X/all of them
count_species_pop = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: species

count_pop_faction - Iterate through all the country's pop factions - checks whether the enclosed triggers return true for X/all of them
count_pop_faction = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: country

count_galaxy_sector - Iterate through all sectors in the game - checks whether the enclosed triggers return true for X/all of them
count_galaxy_sector = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: all

count_owned_sector - Iterate through every owned sector - checks whether the enclosed triggers return true for X/all of them
count_owned_sector = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: country

count_owned_ship - Iterate through each ship in the fleet or owned by the country - checks whether the enclosed triggers return true for X/all of them
count_owned_ship = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: country fleet

count_ship_in_system - Iterate through each ship in the current system - checks whether the enclosed triggers return true for X/all of them
count_ship_in_system = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: galactic_object

count_owned_pop_species - Iterate through each species of a country's owned pops - checks whether the enclosed triggers return true for X/all of them
count_owned_pop_species = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: country

count_galaxy_species - Check if any species in the galaxy meet the specified criteria - checks whether the enclosed triggers return true for X/all of them
count_galaxy_species = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: all

count_owned_species - Check if any of the species <on the planet/in the country> meet the specified criteria - checks whether the enclosed triggers return true for X/all of them
count_owned_species = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: planet country

count_enslaved_species - Check if any of the species with enslaved pops <on the planet/in the country> meet the specified criteria - checks whether the enclosed triggers return true for X/all of them
count_enslaved_species = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: planet country

count_owned_starbase - Iterate through every owned starbase - checks whether the enclosed triggers return true for X/all of them
count_owned_starbase = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: country

count_system - Iterate through all systems - checks whether the enclosed triggers return true for X/all of them
count_system = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: all

count_rim_system - Iterate through all rim systems - checks whether the enclosed triggers return true for X/all of them
count_rim_system = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: all

count_system_within_border - Iterate through all systems within the country's or sector's borders - checks whether the enclosed triggers return true for X/all of them
count_system_within_border = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: country sector

count_neighbor_system - Iterate through all a system's neighboring systems by hyperlane - checks whether the enclosed triggers return true for X/all of them
count_neighbor_system = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: galactic_object

count_neighbor_system_euclidean - Iterate through all a system's neigboring systems (by closeness, not by hyperlanes) - checks whether the enclosed triggers return true for X/all of them
count_neighbor_system_euclidean = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: galactic_object

count_war_participant - Iterate through all war participants - checks whether the enclosed triggers return true for X/all of them
count_war_participant = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: war

count_attacker - Iterate through all attackers in the current war - checks whether the enclosed triggers return true for X/all of them
count_attacker = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: war

count_defender - Iterate through all defenders in the current war - checks whether the enclosed triggers return true for X/all of them
count_defender = {
    count = <num/all>
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: war

count_war - Iterate through all wars the country is engaged in - checks whether the enclosed triggers return true for X/all of them
count_war = {
    count = <num/all/variable>
    limit = { <triggers> }
}
Supported Scopes: country



== EFFECT DOCUMENTATION ==

Removed effects (3.1.0):
Code:
set_primitive - [DEPRECATED, USE SET_COUNTRY_TYPE] Sets the scoped country as primitive
set_primitive = yes
Supported Scopes: country

random_research_station - Executes enclosed effects on a random orbital research station that meets the limit criteria
random_research_station = { limit = { <triggers> } <effects> }
Supported Scopes: planet

random_mining_station - Executes enclosed effects on a random orbital mining station that meets the limit criteria
random_mining_station = { limit = { <triggers> } <effects> }
Supported Scopes: planet

every_mining_station - Executes enclosed effects on every orbital mining station in the game that meets the limit criteria
every_mining_station = { limit = { <triggers> } <effects> }
Supported Scopes: planet country

every_research_station - Executes enclosed effects on every orbital mining station in the game that meets the limit criteria
every_mining_station = { limit = { <triggers> } <effects> }
Supported Scopes: planet country

observation_outpost - Executes enclosed effects on every observation post in the game that meets the limit criteria
observation_outpost = { limit = { <triggers> } <effects> }
Supported Scopes: planet country

Added effects (3.1.0):
Code:
add_blocker - Adds a blocker to a planet, with some control over what it is set to block (add_deposit will add a random planetary deposit to block)
add_blocker = {
    type = <key>
    blocked_deposit = none (default)/<deposit scope - copies the type to the blocked deposit but any flags or variables are lost>/random
}
Supported Scopes: planet

set_visited - Sets the target system as 'visited' (i.e. low system intel on the map)
set_visited = <target>
Supported Scopes: country

set_army_flag - Sets an arbitrarily-named flag on the scoped army
set_army_flag = <key> (note: one can use e.g. my_flag@from to track relationships between objects)
Supported Scopes: army

set_deposit_flag - Sets an arbitrarily-named flag on the scoped deposit
set_deposit_flag = <key> (note: one can use e.g. my_flag@from to track relationships between objects)
Supported Scopes: deposit

set_war_flag - Sets an arbitrarily-named flag on the scoped war
set_war_flag = <key> (note: one can use e.g. my_flag@from to track relationships between objects)
Supported Scopes: war

set_starbase_flag - Sets an arbitrarily-named flag on the scoped starbase
set_starbase_flag = <key> (note: one can use e.g. my_flag@from to track relationships between objects)
Supported Scopes: starbase

set_sector_flag - Sets an arbitrarily-named flag on the scoped sector
set_sector_flag = <key> (note: one can use e.g. my_flag@from to track relationships between objects)
Supported Scopes: sector

set_archaeology_flag - Sets an arbitrarily-named flag on the scoped arc site
set_archaeology_flag = <key> (note: one can use e.g. my_flag@from to track relationships between objects)
Supported Scopes: archaeological_site

set_spynetwork_flag - Sets an arbitrarily-named flag on the scoped spy network
set_spynetwork_flag = <key> (note: one can use e.g. my_flag@from to track relationships between objects)
Supported Scopes: spy_network

set_espionage_asset_flag - Sets an arbitrarily-named flag on the scoped espionage asset
set_espionage_asset_flag = <key> (note: one can use e.g. my_flag@from to track relationships between objects)
Supported Scopes: espionage_asset

remove_army_flag - Removes a flag from the scoped army
remove_army_flag = <key> (note: one can use e.g. my_flag@from to track relationships between objects)
Supported Scopes: army

remove_deposit_flag - Removes a flag from the scoped deposit
remove_deposit_flag = <key> (note: one can use e.g. my_flag@from to track relationships between objects)
Supported Scopes: deposit

remove_war_flag - Removes a flag from the scoped war
remove_war_flag = <key> (note: one can use e.g. my_flag@from to track relationships between objects)
Supported Scopes: war

remove_starbase_flag - Removes a flag from the scoped starbase
remove_starbase_flag = <key> (note: one can use e.g. my_flag@from to track relationships between objects)
Supported Scopes: starbase

remove_sector_flag - Removes a flag from the scoped sector
remove_sector_flag = <key> (note: one can use e.g. my_flag@from to track relationships between objects)
Supported Scopes: sector

remove_archaeology_flag - Removes a flag from the scoped arc site
remove_archaeology_flag = <key> (note: one can use e.g. my_flag@from to track relationships between objects)
Supported Scopes: archaeological_site

remove_spynetwork_flag - Removes a flag from the scoped spy network
remove_spynetwork_flag = <key> (note: one can use e.g. my_flag@from to track relationships between objects)
Supported Scopes: spy_network

remove_espionage_asset_flag - Removes a flag from the scoped espionage asset
remove_espionage_asset_flag = <key> (note: one can use e.g. my_flag@from to track relationships between objects)
Supported Scopes: espionage_asset

set_timed_army_flag - Sets an arbitrarily-named flag on the scoped army for a set duration
set_timed_army_flag = {
    flag = <key> (note: one can use <key>@scope e.g. my_flag@from to track relationships between objects)
    days/months/years = <int>/<variable>
}
Supported Scopes: army

set_timed_deposit_flag - Sets an arbitrarily-named flag on the scoped deposit for a set duration
set_timed_deposit_flag = {
    flag = <key> (note: one can use <key>@scope e.g. my_flag@from to track relationships between objects)
    days/months/years = <int>/<variable>
}
Supported Scopes: deposit

set_timed_war_flag - Sets an arbitrarily-named flag on the scoped war for a set duration
set_timed_war_flag = {
    flag = <key> (note: one can use <key>@scope e.g. my_flag@from to track relationships between objects)
    days/months/years = <int>/<variable>
}
Supported Scopes: war

set_timed_starbase_flag - Sets an arbitrarily-named flag on the scoped starbase for a set duration
set_timed_starbase_flag = {
    flag = <key> (note: one can use <key>@scope e.g. my_flag@from to track relationships between objects)
    days/months/years = <int>/<variable>
}
Supported Scopes: starbase

set_timed_sector_flag - Sets an arbitrarily-named flag on the scoped sector for a set duration
set_timed_sector_flag = {
    flag = <key> (note: one can use <key>@scope e.g. my_flag@from to track relationships between objects)
    days/months/years = <int>/<variable>
}
Supported Scopes: sector

set_timed_archaeology_flag - Sets an arbitrarily-named flag on the scoped arc site for a set duration
set_timed_archaeology_flag = {
    flag = <key> (note: one can use <key>@scope e.g. my_flag@from to track relationships between objects)
    days/months/years = <int>/<variable>
}
Supported Scopes: archaeological_site

set_timed_spynetwork_flag - Sets an arbitrarily-named flag on the scoped spy network for a set duration
set_timed_spynetwork_flag = {
    flag = <key> (note: one can use <key>@scope e.g. my_flag@from to track relationships between objects)
    days/months/years = <int>/<variable>
}
Supported Scopes: spy_network

set_timed_espionage_asset_flag - Sets an arbitrarily-named flag on the scoped espionage asset for a set duration
set_timed_espionage_asset_flag = {
    flag = <key> (note: one can use <key>@scope e.g. my_flag@from to track relationships between objects)
    days/months/years = <int>/<variable>
}
Supported Scopes: espionage_asset

set_saved_date - Sets an arbitrarily-named date flag for the scoped object. Acts both as an <scope object>_flag and as a means for saving a date. The flag can then be referred to in localisations [This.<flag>] to produce the date.
set_saved_date = {
    key = <key> (refer to this in locs; note: this is actually a <country/whatever>_flag)
    days_from_present = <int>/<variable> (time until the date you wish to save)
    expires = <int>/<variable> (time until the saved date is cleared, default is never)
}
Supported Scopes: megastructure planet country ship pop fleet galactic_object leader army ambient_object species pop_faction war federation starbase deposit sector archaeological_site first_contact spy_network espionage_operation espionage_asset

round_variable_to_closest - Rounds a previously-set variable to the closest X
round_variable_to_closest = {
    which = <string>
    value = <float>/<variable>/<scope.variable>/trigger:<trigger> (variable will be rounded to a multiple of this value)
}
Supported Scopes: megastructure planet country ship pop fleet galactic_object leader army ambient_object species pop_faction war federation starbase deposit sector archaeological_site first_contact spy_network espionage_operation espionage_asset

reroll_random - Rerolls the random seed. Use if you want to have a second random_list return a different result. Do not use in tooltips that show random results, because the tooltip will be wrong!
reroll_random = yes
Supported Scopes: all

set_male_ruler_title - Sets the country's male ruler title to a custom value
set_male_ruler_title = "Grand Executioner"
Supported Scopes: country

set_female_ruler_title - Sets the country's female ruler title to a custom value
set_female_ruler_title = "Grand Executionerress"
Supported Scopes: country

set_male_heir_title - Sets the country's male heir title to a custom value
set_male_heir_title = "Little Executioner"
Supported Scopes: country

set_female_heir_title - Sets the country's female heir title to a custom value
set_female_heir_title = "Little Executioneress"
Supported Scopes: country

clear_custom_ruler_and_heir_titles - Clears all custom ruler and heir titles from the country, resetting them to default values
clear_custom_ruler_and_heir_titles = yes
Supported Scopes: country

ordered_ambient_object - Iterate through every ambient object in the game - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_ambient_object = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: all

ordered_system_ambient_object - Iterate through every ambient object in the solar system - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_system_ambient_object = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: galactic_object

ordered_owned_army - Iterate through each army that is owned by the country - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_owned_army = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: country

ordered_planet_army - Iterate through each army on the planet (not in ground combat) belonging to the planet owner - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_planet_army = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: planet

ordered_ground_combat_defender - Iterate through each army currently defending the planet in ground combat - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_ground_combat_defender = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: planet

ordered_ground_combat_attacker - Iterate through each army currently attacking the planet in ground combat - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_ground_combat_attacker = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: planet

ordered_country - Iterate through all countries - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_country = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: all

ordered_relation - Iterate through all relations - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_relation = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: country

ordered_neighbor_country - Iterate through all neighbor countries - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_neighbor_country = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: country

ordered_bordering_country - Iterate through all bordering countries of a system - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_bordering_country = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: galactic_object

ordered_rival_country - Iterate through all countries rivalled by the scoped country - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_rival_country = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: country

ordered_federation_ally - Iterate through all countries in a federation with the scoped country - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_federation_ally = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: country

ordered_playable_country - Iterate through all playable countries - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_playable_country = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: all

ordered_subject - Iterate through all subjects of the scoped country - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_subject = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: country

ordered_spynetwork - Iterate through each spynetwork - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_spynetwork = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: country no_scope

ordered_espionage_operation - Iterate through each espionage operation - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_espionage_operation = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: country no_scope spy_network

ordered_espionage_asset - Iterate through each espionage asset - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_espionage_asset = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: no_scope spy_network espionage_operation

ordered_federation - Iterate through each federation - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_federation = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: all

ordered_first_contact - Iterate through each first contact (both active and complete) that this country is engaging in - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_first_contact = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: country

ordered_active_first_contact - Iterate through each active (non-completed) first contact that this country is engaging in - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_active_first_contact = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: country

ordered_galaxy_fleet - Iterate through each fleet in the entire game - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_galaxy_fleet = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: all

ordered_combatant_fleet - Iterate through each fleet this fleet is in combat with - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_combatant_fleet = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: fleet

ordered_fleet_in_system - Iterate through each fleet in the current system - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_fleet_in_system = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: galactic_object

ordered_owned_fleet - Iterate through each fleet owned by the country - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_owned_fleet = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: country

ordered_fleet_in_orbit - Iterate through each fleet orbiting the current planet/starbase/megastructure - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_fleet_in_orbit = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: megastructure planet starbase

random_orbital_station - Iterate through each orbital station owned by the current country or in the current system - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_orbital_station = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: country galactic_object

ordered_orbital_station - Iterate through each orbital station owned by the current country or in the current system - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_orbital_station = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: country galactic_object

every_orbital_station - Iterate through each orbital station owned by the current country or in the current system - executes the enclosed effects on all of them for which the limit triggers return true
every_orbital_station = { limit = { <triggers> } <effects> }
Supported Scopes: country galactic_object

random_galcom_member - Iterate through each member of the galactic community - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_galcom_member = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: all

ordered_galcom_member - Iterate through each member of the galactic community - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_galcom_member = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: all

every_galcom_member - Iterate through each member of the galactic community - executes the enclosed effects on all of them for which the limit triggers return true
every_galcom_member = { limit = { <triggers> } <effects> }
Supported Scopes: all

random_council_member - Iterate through each member of the galactic council - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_council_member = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: all

ordered_council_member - Iterate through each member of the galactic council - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_council_member = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: all

every_council_member - Iterate through each member of the galactic council - executes the enclosed effects on all of them for which the limit triggers return true
every_council_member = { limit = { <triggers> } <effects> }
Supported Scopes: all

ordered_owned_leader - Iterate through each leader that is owned by the country - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_owned_leader = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: country

ordered_pool_leader - Iterate through each leader that is recruitable for the country - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_pool_leader = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: country

ordered_envoy - Iterate through each envoy available to the country - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_envoy = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: country

ordered_megastructure - Iterate through each megastructure - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_megastructure = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: all

ordered_owned_megastructure - Iterate through each owned megastructure - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_owned_megastructure = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: country

ordered_system_megastructure - Iterate through each megastructure in system - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_system_megastructure = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: all

ordered_member - Iterate through each member of the federation - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_member = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: federation

ordered_associate - Iterate through each associate member of the federation - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_associate = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: federation

ordered_system_planet - Iterate through each planet in the current system - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_system_planet = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: galactic_object

ordered_planet_within_border - Iterate through each planet within the current empire's borders - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_planet_within_border = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: country

ordered_owned_planet - Iterate through each inhabited planet owned by the current empire - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_owned_planet = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: country sector

ordered_controlled_planet - Iterate through each inhabited planet controlled by the current empire - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_controlled_planet = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: country

ordered_galaxy_planet - Iterate through each planet ANYWHERE in the game; warning: resource intensive! - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_galaxy_planet = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: all

ordered_deposit - Iterate through each deposit on the planet - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_deposit = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: planet

ordered_moon - Iterate through each moon of the planet - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_moon = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: planet

ordered_owned_pop - Iterate through all owned pops - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_owned_pop = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: planet country pop_faction sector

ordered_species_pop - Iterate through each pop that belongs to this species; warning: resource-intensive! - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_species_pop = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: species

ordered_pop_faction - Iterate through all the country's pop factions - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_pop_faction = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: country

ordered_galaxy_sector - Iterate through all sectors in the game - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_galaxy_sector = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: all

ordered_owned_sector - Iterate through every owned sector - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_owned_sector = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: country

ordered_owned_ship - Iterate through each ship in the fleet or owned by the country - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_owned_ship = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: country fleet

ordered_ship_in_system - Iterate through each ship in the current system - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_ship_in_system = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: galactic_object

ordered_owned_pop_species - Iterate through each species of a country's owned pops - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_owned_pop_species = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: country

ordered_galaxy_species - Check if any species in the galaxy meet the specified criteria - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_galaxy_species = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: all

ordered_owned_species - Check if any of the species <on the planet/in the country> meet the specified criteria - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_owned_species = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: planet country

ordered_enslaved_species - Check if any of the species with enslaved pops <on the planet/in the country> meet the specified criteria - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_enslaved_species = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: planet country

ordered_owned_starbase - Iterate through every owned starbase - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_owned_starbase = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: country

ordered_system - Iterate through all systems - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_system = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: all

ordered_rim_system - Iterate through all rim systems - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_rim_system = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: all

ordered_system_within_border - Iterate through all systems within the country's or sector's borders - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_system_within_border = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: country sector

ordered_neighbor_system - Iterate through all a system's neighboring systems by hyperlane - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_neighbor_system = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: galactic_object

ordered_neighbor_system_euclidean - Iterate through all a system's neigboring systems (by closeness, not by hyperlanes) - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_neighbor_system_euclidean = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: galactic_object

ordered_war_participant - Iterate through all war participants - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_war_participant = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: war

ordered_attacker - Iterate through all attackers in the current war - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_attacker = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: war

ordered_defender - Iterate through all defenders in the current war - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_defender = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: war

ordered_war - Iterate through all wars the country is engaged in - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object according to the order specified (position 0, order_by = trigger:num_pops would run the effects on the X with the most pops)
ordered_war = {
    limit = { <triggers> }
    position = <integer, starting with 0>
    order_by = <variable>/trigger:<trigger>
    inverse = yes/no (default: no - if yes, then 0 is lowest rather than highest)
    <effects>
}
Supported Scopes: country

Extended functionality (3.1.0):
Code:
random_owned_ship - Iterate through each ship in the fleet or owned by the country - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_owned_ship = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: country fleet

random_country - Iterate through all countries - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_country = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: all

random_playable_country - Iterate through all playable countries - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_playable_country = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: all

random_system_planet - Iterate through each planet in the current system - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_system_planet = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: galactic_object

random_deposit - Iterate through each deposit on the planet - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_deposit = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: planet

random_moon - Iterate through each moon of the planet - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_moon = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: planet

random_rim_system - Iterate through all rim systems - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_rim_system = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: all

random_owned_leader - Iterate through each leader that is owned by the country - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_owned_leader = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: country

random_owned_pop - Iterate through all owned pops - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_owned_pop = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: planet country pop_faction sector

random_owned_fleet - Iterate through each fleet owned by the country - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_owned_fleet = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: country

random_ambient_object - Iterate through every ambient object in the game - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_ambient_object = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: all

random_system_ambient_object - Iterate through every ambient object in the solar system - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_system_ambient_object = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: galactic_object

random_fleet_in_system - Iterate through each fleet in the current system - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_fleet_in_system = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: galactic_object

random_neighbor_system - Iterate through all a system's neighboring systems by hyperlane - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_neighbor_system = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: galactic_object

random_subject - Iterate through all subjects of the scoped country - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_subject = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: country

random_planet_within_border - Iterate through each planet within the current empire's borders - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_planet_within_border = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: country

random_pop_faction - Iterate through all the country's pop factions - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_pop_faction = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: country

random_owned_army - Iterate through each army that is owned by the country - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_owned_army = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: country

random_planet_army - Iterate through each army on the planet (not in ground combat) belonging to the planet owner - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_planet_army = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: planet

random_ground_combat_defender - Iterate through each army currently defending the planet in ground combat - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_ground_combat_defender = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: planet

random_ground_combat_attacker - Iterate through each army currently attacking the planet in ground combat - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_ground_combat_attacker = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: planet

random_relation - Iterate through all relations - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_relation = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: country

random_neighbor_country - Iterate through all neighbor countries - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_neighbor_country = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: country

random_bordering_country - Iterate through all bordering countries of a system - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_bordering_country = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: galactic_object

random_rival_country - Iterate through all countries rivalled by the scoped country - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_rival_country = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: country

random_federation_ally - Iterate through all countries in a federation with the scoped country - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_federation_ally = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: country

random_spynetwork - Iterate through each spynetwork - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_spynetwork = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: country no_scope

random_espionage_operation - Iterate through each espionage operation - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_espionage_operation = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: country no_scope spy_network

random_espionage_asset - Iterate through each espionage asset - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_espionage_asset = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: no_scope spy_network espionage_operation

random_federation - Iterate through each federation - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_federation = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: all

random_first_contact - Iterate through each first contact (both active and complete) that this country is engaging in - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_first_contact = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: country

random_active_first_contact - Iterate through each active (non-completed) first contact that this country is engaging in - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_active_first_contact = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: country

random_galaxy_fleet - Iterate through each fleet in the entire game - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_galaxy_fleet = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: all

random_combatant_fleet - Iterate through each fleet this fleet is in combat with - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_combatant_fleet = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: fleet

random_fleet_in_orbit - Iterate through each fleet orbiting the current planet/starbase/megastructure - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_fleet_in_orbit = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: megastructure planet starbase

random_pool_leader - Iterate through each leader that is recruitable for the country - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_pool_leader = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: country

random_envoy - Iterate through each envoy available to the country - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_envoy = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: country

random_megastructure - Iterate through each megastructure - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_megastructure = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: all

random_owned_megastructure - Iterate through each owned megastructure - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_owned_megastructure = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: country

random_system_megastructure - Iterate through each megastructure in system - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_system_megastructure = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: all

random_member - Iterate through each member of the federation - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_member = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: federation

random_associate - Iterate through each associate member of the federation - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_associate = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: federation

random_owned_planet - Iterate through each inhabited planet owned by the current empire - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_owned_planet = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: country sector

random_controlled_planet - Iterate through each inhabited planet controlled by the current empire - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_controlled_planet = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: country

random_galaxy_planet - Iterate through each planet ANYWHERE in the game; warning: resource intensive! - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_galaxy_planet = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: all

random_species_pop - Iterate through each pop that belongs to this species; warning: resource-intensive! - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_species_pop = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: species

random_galaxy_sector - Iterate through all sectors in the game - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_galaxy_sector = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: all

random_owned_sector - Iterate through every owned sector - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_owned_sector = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: country

random_ship_in_system - Iterate through each ship in the current system - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_ship_in_system = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: galactic_object

random_owned_pop_species - Iterate through each species of a country's owned pops - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_owned_pop_species = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: country

random_galaxy_species - Check if any species in the galaxy meet the specified criteria - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_galaxy_species = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: all

random_owned_species - Check if any of the species <on the planet/in the country> meet the specified criteria - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_owned_species = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: planet country

random_enslaved_species - Check if any of the species with enslaved pops <on the planet/in the country> meet the specified criteria - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_enslaved_species = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: planet country

random_owned_starbase - Iterate through every owned starbase - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_owned_starbase = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: country

random_system - Iterate through all systems - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_system = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: all

random_system_within_border - Iterate through all systems within the country's or sector's borders - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_system_within_border = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: country sector

random_neighbor_system_euclidean - Iterate through all a system's neigboring systems (by closeness, not by hyperlanes) - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_neighbor_system_euclidean = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: galactic_object

random_war_participant - Iterate through all war participants - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_war_participant = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: war

random_attacker - Iterate through all attackers in the current war - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_attacker = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: war

random_defender - Iterate through all defenders in the current war - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_defender = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: war

random_war - Iterate through all wars the country is engaged in - executes the enclosed effects on one of them for which the limit triggers return true. Picks the specific object randomly.
random_war = {
    limit = { <triggers> }
    weights = { (optional - adds weights to affect the chance a specific object is selected)
        base = float
        modifier = { <add/factor = float> <triggers> }
    }
    <effects>
}
Supported Scopes: country
factor instead of mult

Extended functionality (3.1.0):
Code:
create_species - Creates a new species
create_species = {
    name = <string>
    plural = <string>
    class = <species class key>
    portrait = <random/portrait id>
    homeworld = <target>
    traits = { <specific/random traits> }
    sapient = <Y/N, determines if species is pre-sapient>
    is_mod = <Y/N, determines if species is a modification of another>
    immortal = <Y/N, determines if species leaders are immortal>
  can_be_modified = <Y(default)/N/this>
}
Supported Scopes: all
added can_be_modified = <Y(default)/N/this>

Extended functionality (3.1.0):
Code:
add_modifier - Adds a specific modifier to the scoped object for a set duration
add_modifier = {
    modifier = <key>
    days/months/years = <int, -1 (default) means it never expires>
    multiplier = <float>/<variable> (optional)
    time_multiplier = <variable> (optional: days/months/years value is multiplied by the value of this variable)
    clear_on_owner_change = yes (optional: default no; clears modifier if planet/system/megastructure's owner changes)
}
Supported Scopes: megastructure planet country ship pop fleet galactic_object pop_faction federation spy_network espionage_operationl
added time_multiplier = <variable> (optional: days/months/years value is multiplied by the value of this variable)

Extended functionality (3.1.0):
Code:
modify_species - Creates a new, modified species based on an already-extant species
modify_species = {
    species = <target> # species to modify
    base = <target>/auto/none # new base species; default: auto (uses species)
    add_trait = <key> # optional, can specify multiple
    remove_trait = <key> # optional, can specify multiple
    add_traits_at_start_of_list = yes # optional, pushes out other traits if needed
    ideal_planet_class = <target or pc_name> # optional
    change_scoped_species = yes/no # modify scoped pops/planet/leader/country; default: yes
    portrait = <target or portrait name> # optional
    effect = { SCOPE_SPECIES } # optional effect to run on the resulting new species, is executed after any handling of change_scoped_species
}
Supported Scopes: planet country pop leader species
added add_traits_at_start_of_list = yes # optional, pushes out other traits if needed

Extended functionality (3.1.0):
Code:
set_variable - Sets or creates an arbitrarily-named variable with a specific value in the current scope
set_variable = { which = <string> value = <float>/<variable>/<scope.variable>/trigger:<trigger> }
Supported Scopes: megastructure planet country ship pop fleet galactic_object leader army ambient_object species pop_faction war federation starbase deposit sector archaeological_site first_contact spy_network espionage_operation espionage_asset

clear_variable - Clears a previously-set variable from the game.
clear_variable = <string>
Supported Scopes: megastructure planet country ship pop fleet galactic_object leader army ambient_object species pop_faction war federation starbase deposit sector archaeological_site first_contact spy_network espionage_operation espionage_asset

round_variable - Rounds a previously-set variable to the closest integer.
round_variable = <string>
Supported Scopes: megastructure planet country ship pop fleet galactic_object leader army ambient_object species pop_faction war federation starbase deposit sector archaeological_site first_contact spy_network espionage_operation espionage_asset

floor_variable - Rounds a previously-set variable down to the previous integer.
floor_variable = <string>
Supported Scopes: megastructure planet country ship pop fleet galactic_object leader army ambient_object species pop_faction war federation starbase deposit sector archaeological_site first_contact spy_network espionage_operation espionage_asset

ceiling_variable - Rounds a previously-set variable up to the next integer.
ceiling_variable = <string>
Supported Scopes: megastructure planet country ship pop fleet galactic_object leader army ambient_object species pop_faction war federation starbase deposit sector archaeological_site first_contact spy_network espionage_operation espionage_asset

change_variable - Increments a previously-set variable by a specific amount
change_variable = { which = <string> value = <float>/<variable>/<scope.variable>/trigger:<trigger> }
Supported Scopes: megastructure planet country ship pop fleet galactic_object leader army ambient_object species pop_faction war federation starbase deposit sector archaeological_site first_contact spy_network espionage_operation espionage_asset

subtract_variable - Decrements a previously-set variable by a specific amount
subtract_variable = { which = <string> value = <float>/<variable>/<scope.variable>/trigger:<trigger> }
Supported Scopes: megastructure planet country ship pop fleet galactic_object leader army ambient_object species pop_faction war federation starbase deposit sector archaeological_site first_contact spy_network espionage_operation espionage_asset

multiply_variable - Multiplies a previously-set variable by a specific amount
multiply_variable = { which = <string> value = <float>/<variable>/<scope.variable>/trigger:<trigger> }
Supported Scopes: megastructure planet country ship pop fleet galactic_object leader army ambient_object species pop_faction war federation starbase deposit sector archaeological_site first_contact spy_network espionage_operation espionage_asset

divide_variable - Divides a previously-set variable by a specific amount
divide_variable = { which = <string> value = <float>/<variable>/<scope.variable>/trigger:<trigger> }
Supported Scopes: megastructure planet country ship pop fleet galactic_object leader army ambient_object species pop_faction war federation starbase deposit sector archaeological_site first_contact spy_network espionage_operation espionage_asset

modulo_variable - Modulos a previously-set variable by a specific amount i.e. X % Y
modulo_variable = { which = <string> value = <float>/<variable>/<scope.variable>/trigger:<trigger> }
Supported Scopes: megastructure planet country ship pop fleet galactic_object leader army ambient_object species pop_faction war federation starbase deposit sector archaeological_site first_contact spy_network espionage_operation espionage_asset
Better syntax and scoping, accepts variable. More scopes supported: ambient_object deposit archaeological_site spy_network espionage_operation espionage_asset

Extended functionality (3.1.0):
Code:
set_name - Sets the name of the scoped country/planet/ship/fleet/leader/army/system/pop faction
set_name = <string>
Supported Scopes: megastructure planet country ship fleet galactic_object leader army pop_faction war federation sector
added war sector scopes

Extended functionality (3.1.0):
Code:
export_trigger_value_to_variable - Exports the value of a trigger to a specified variable (so for num_pops, it'll export the number of pops).
export_trigger_value_to_variable = {
    trigger = pop_produces_resource
    parameters = { resource = energy } (optional: specify extra parameters for triggers with { }
    variable = <string> (this example will print the amount of energy the pop produces to a variable)
    rounded = yes (default: no)
}
Supported Scopes: megastructure planet country ship pop fleet galactic_object leader army ambient_object species pop_faction war federation starbase deposit sector archaeological_site first_contact spy_network espionage_operation espionage_asset
Supports all triggers, including complex ones. See dev diary #222. More scopes supported.

Extended functionality (3.1.0):
Code:
set_closed_borders - Changes closed borders status between two countries
set_closed_borders = {
    who = target
    status = yes/no
    forced = <int>/<variable> (number of years)
}
Supported Scopes: country
added forced = <int>/<variable> (number of years). Accepts variable.

Extended functionality (3.1.0):
Code:
rename_species - rename_species = {
    use one of the following:
    name = "an explicit name with [Bracket.Stuff]"
    name = "an entry within the species name database"
    name = random
    name_list = "key"
}
Supported Scopes: species
name = "an entry within the species name database" instead of name = "an explicit name with [Bracket.Stuff]"

Extended functionality (3.1.0):
Code:
change_species_characteristics - Changes the characteristics of a species
change_species_characteristics = {
    sapient = <Y/N, determines if species is pre-sapient>
    immortal = <Y/N, determines if species leaders are immortal>
    pops_can_be_colonizers = <Y/N, determines if pops of that species can colonize>
    pops_can_migrate = <Y/N, determines if pops of that species can migrate>
    pops_can_reproduce = <Y/N, determines if pops of that species can reproduce>
    pops_can_join_factions = <Y/N, determines if pops of that species can join factions>
    can_generate_leaders = <Y/N, determines if that species can generate leaders>
    pops_can_be_slaves = <Y/N, determines if pops from that species can become slaves>
    pops_have_happiness = <Y/N, determines if pops from that species have happiness>
    can_be_modified = <Y/N, determines if the species can be modified>
    pops_auto_growth = <1, speed at which the pops from that species grow automatically
    pop_maintenance = <1, amount of energy each pop of that species consume monthly
    new_pop_resource_requirement = { type = food_surplus value = 42 }
    portrait = <key or species event target>
    add_trait = <key> # optional, can specify multiple
    remove_trait = <key> # optional, can specify multiple
    add_traits_at_start_of_list = yes # optional, pushes out other traits if needed
    portrait = <key/species/leader event target, limits >
    gender = <any/male/female/leader event target, limits species to this gender or removes limit if 'any'>
    can_change_leader = <Y/N, apply portrait and gender (randomizes new name) changes to existing leaders>

Supported Scopes: species
expanded portrait property. added add_trait, remove_trait, add_traits_at_start_of_list, gender, can_change_leader

The following effects now accept variable (Extended functionality) (3.1.0):
Code:
add_event_chain_counter - Increments (or decrements with negative values) an event chain counter for the scoped country by a specific amount
add_event_chain_counter = { event_chain = <key> counter = <key> amount = <int>/<variable> }
Supported Scopes: country

set_timed_first_contact_flag - Sets an arbitrarily-named flag on the scoped first contact site for a set duration
set_timed_first_contact_flag = {
    flag = <key> (note: one can use <key>@scope e.g. my_flag@from to track relationships between objects)
    days/months/years = <int>/<variable>
}
Supported Scopes: first_contact

set_timed_federation_flag - Sets an arbitrarily-named flag on the scoped federation for a set duration
set_timed_federation_flag = {
    flag = <key> (note: one can use <key>@scope e.g. my_flag@from to track relationships between objects)
    days/months/years = <int>/<variable>
}
Supported Scopes: federation

set_timed_country_flag - Sets an arbitrarily-named flag on the scoped country for a set duration
set_timed_country_flag = {
    flag = <key> (note: one can use <key>@scope e.g. my_flag@from to track relationships between objects)
    days/months/years = <int>/<variable>
}
Supported Scopes: country

set_timed_fleet_flag - Sets an arbitrarily-named flag on the scoped fleet for a set duration
set_timed_fleet_flag = {
    flag = <key> (note: one can use <key>@scope e.g. my_flag@from to track relationships between objects)
    days/months/years = <int>/<variable>
}
Supported Scopes: fleet

set_timed_global_flag - Sets an arbitrarily-named global flag for a set duration
set_timed_global_flag = {
    flag = <key> (note: one can use <key>@scope e.g. my_flag@from to track relationships between objects)
    days/months/years = <int>/<variable>
}
Supported Scopes: all

set_timed_planet_flag - Sets an arbitrarily-named flag on the scoped planet for a set duration
set_timed_planet_flag = {
    flag = <key> (note: one can use <key>@scope e.g. my_flag@from to track relationships between objects)
    days/months/years = <int>/<variable>
}
Supported Scopes: planet

set_timed_pop_flag - Sets an arbitrarily-named flag on the scoped pop for a set duration
set_timed_pop_flag = {
    flag = <key> (note: one can use <key>@scope e.g. my_flag@from to track relationships between objects)
    days/months/years = <int>/<variable>
}
Supported Scopes: pop

set_timed_relation_flag - Sets an arbitrarily-named flag for the scoped country towards target country for a set duration
set_timed_relation_flag = {
    flag = <key> (note: one can use <key>@scope e.g. my_flag@from to track relationships between objects)
    who = <target>
    days/months/years = <int>
}
Supported Scopes: country

set_timed_ship_flag - Sets an arbitrarily-named flag on the scoped ship for a set duration
set_timed_ship_flag = {
    flag = <key> (note: one can use <key>@scope e.g. my_flag@from to track relationships between objects)
    days/months/years = <int>/<variable>
}
Supported Scopes: ship

set_timed_star_flag - Sets an arbitrarily-named flag on the scoped system for a set duration
set_timed_star_flag = {
    flag = <key> (note: one can use <key>@scope e.g. my_flag@from to track relationships between objects)
    days/months/years = <int>/<variable>

Supported Scopes: galactic_object

set_timed_ambient_object_flag - Sets an arbitrarily-named flag on the scoped ambient object for a set duration
set_timed_ambient_object_flag = {
    flag = <key> (note: one can use <key>@scope e.g. my_flag@from to track relationships between objects)
    days/months/years = <int>/<variable>
}
Supported Scopes: fleet

add_favors - Add <value> favors for scoped country to use on target country. add_favor = {
    target = <target>
    value = 2/variable }
Supported Scopes: country

remove_favors - Remove <value/all> favors that scoped country have on target country:
remove_favors = {
   target = <target>
   value = <value/all/variable> }
Supported Scopes: country

add_threat - Adds diplomatic threat from target country
add_threat = { who = <country> amount = 4/variable }
Supported Scopes: planet country galactic_object

set_timed_species_flag - Sets an arbitrarily-named flag on the scoped species for a set duration
set_timed_species_flag = {
    flag = <key> (note: one can use <key>@scope e.g. my_flag@from to track relationships between objects)
    days/months/years = <int>/<variable>
}
Supported Scopes: species

add_trust - Adds trust on scope country towards target country
add_trust = { amount = <amount>/<variable> who = <target> }
Supported Scopes: country

set_timed_leader_flag - Sets an arbitrarily-named flag on the scoped leader for a set duration
set_timed_leader_flag = {
    flag = <key> (note: one can use <key>@scope e.g. my_flag@from to track relationships between objects)
    days/months/years = <int>/<variable>
}
Supported Scopes: leader

set_timed_megastructure_flag - Sets an arbitrarily-named flag on the scoped mega structure for a set duration
set_timed_megastructure_flag = {
    flag = <key> (note: one can use <key>@scope e.g. my_flag@from to track relationships between objects)
    days/months/years = <int>/<variable>
}
Supported Scopes: megastructure

add_casus_belli - Adds a Casus Belli to the scoped country against the target country.
add_casus_belli = { type = cb_subjugation who = <country> days = 10/variable }
Supported Scopes: country

effect_on_blob - Executes an effect on systems with planets owned by the scoped country, starting at an origin, and until a certain percentage of owned planets matching the planet_limit has been covered.
effect_on_blob = {
    center = <system target>
    owned_planets_percentage = 1.0/variable
    planet_limit = { <planet triggers> }
    effect = { <system effects> }
}
Supported Scopes: country

add_random_research_option - Adds s random tech research option to the scoped country's tech view list, permanent until researched. if none applicable it runs fail_effects
add_random_research_option = {
    category = <string>
    area = <key>
    tier = <int>
    add_progress = <num>/<variable>
    ignore_prereqs = <yes/no> #default no
    ignore_rare = <yes/no> #default yes
    fail_effects = {}
}
Supported Scopes: country

copy_random_tech_from - Adds a random tech from the target country within the given category and tech area constraints. The country must be able to research said tech (weight > 0, fulfils potential trigger)
copy_random_tech_from = {
    who = <country>
    category = computing (optional)
    area = physics (optional)
    progress = 0.5/variable (optional: this makes it grant the tech option rather than the whole tech)
}
Supported Scopes: country

add_timed_trait - Adds a specific trait to the scoped leader for a specific duration
add_timed_trait = { trait = <trait> days/months/years = <value>/<variable> }
Supported Scopes: leader

add_intel - Adds the defined amount of intel toward the target empire
add_intel = { amount = <float>/<variable> who = <target> }
Supported Scopes: country

set_timed_espionage_operation_flag - Sets an arbitrarily-named flag on the scoped espionage operation for a set duration
set_timed_espionage_operation_flag = {
    flag = <key> (note: one can use <key>@scope e.g. my_flag@from to track relationships between objects)
    days/months/years = <int>/<variable>
}
Supported Scopes: espionage_operation

add_victory_score - Adds victory score to a country
add_victory_score = { source=<loc_key> score=<value>/<variable> }
Supported Scopes: country

set_timed_pop_faction_flag - Sets an arbitrarily-named flag on the scoped pop faction for a set duration
set_timed_pop_faction_flag = {
    flag = <key> (note: one can use <key>@scope e.g. my_flag@from to track relationships between objects)
    days = <int>/<variable>?
}
Supported Scopes: pop pop_faction

add_tech_progress - Gives percentage progress (0.0-1.0) in a specific tech to the scoped country
add_tech_progress = { tech = <key> progress = <float>/<variable> }
Supported Scopes: country

add_static_war_exhaustion - Adds static war exhaustion, scaled with value_for_planet_destruction, to owner of the battle location
add_static_war_exhaustion = {
    attacker = <country>
    location = <planet>
    value_for_planet_destruction = <0.0-1.0>/<variable> #scales the amount of war exhaustion that is added
}
Supported Scopes: country



== MODIFIER DOCUMENTATION ==

Improved scope documentation for all modifers (3.1.0).

Added modifiers (3.1.0):
Code:
pop_amenities_usage_organic_mult
pop_amenities_usage_robotic_mult
country_hostile_claim_influence_cost_mult
starbase_defense_platform_capacity_mult
espionage_hostile_operation_difficulty_add
espionage_hostile_operation_difficulty_mult
espionage_hostile_operation_cost_add
espionage_hostile_operation_cost_mult
diplo_action_acceptance_add
hostile_op_cat_manipulation_difficulty_add
hostile_op_cat_manipulation_difficulty_mult
hostile_op_cat_sabotage_difficulty_add
hostile_op_cat_sabotage_difficulty_mult
hostile_op_cat_subterfuge_difficulty_add
hostile_op_cat_subterfuge_difficulty_mult
hostile_op_cat_provocation_difficulty_add
hostile_op_cat_provocation_difficulty_mult
hostile_op_cat_government_difficulty_add
hostile_op_cat_government_difficulty_mult
hostile_op_cat_diplomacy_difficulty_add
hostile_op_cat_diplomacy_difficulty_mult
hostile_op_cat_economy_difficulty_add
hostile_op_cat_economy_difficulty_mult
hostile_op_cat_technology_difficulty_add
hostile_op_cat_technology_difficulty_mult
hostile_op_cat_military_difficulty_add
hostile_op_cat_military_difficulty_mult
habitat_jobs_produces_mult
habitat_jobs_time_produces_mult
habitat_jobs_energy_produces_mult
habitat_jobs_minerals_produces_mult
habitat_jobs_food_produces_mult
habitat_jobs_physics_research_produces_mult
habitat_jobs_society_research_produces_mult
habitat_jobs_engineering_research_produces_mult
habitat_jobs_influence_produces_mult
habitat_jobs_unity_produces_mult
habitat_jobs_consumer_goods_produces_mult
habitat_jobs_alloys_produces_mult
habitat_jobs_volatile_motes_produces_mult
habitat_jobs_exotic_gases_produces_mult
habitat_jobs_rare_crystals_produces_mult
habitat_jobs_sr_living_metal_produces_mult
habitat_jobs_sr_zro_produces_mult
habitat_jobs_sr_dark_matter_produces_mult
habitat_jobs_nanites_produces_mult
habitat_jobs_minor_artifacts_produces_mult
habitat_jobs_menace_produces_mult
non_artificial_planet_jobs_produces_mult
non_artificial_planet_jobs_time_produces_mult
non_artificial_planet_jobs_energy_produces_mult
non_artificial_planet_jobs_minerals_produces_mult
non_artificial_planet_jobs_food_produces_mult
non_artificial_planet_jobs_physics_research_produces_mult
non_artificial_planet_jobs_society_research_produces_mult
non_artificial_planet_jobs_engineering_research_produces_mult
non_artificial_planet_jobs_influence_produces_mult
non_artificial_planet_jobs_unity_produces_mult
non_artificial_planet_jobs_consumer_goods_produces_mult
non_artificial_planet_jobs_alloys_produces_mult
non_artificial_planet_jobs_volatile_motes_produces_mult
non_artificial_planet_jobs_exotic_gases_produces_mult
non_artificial_planet_jobs_rare_crystals_produces_mult
non_artificial_planet_jobs_sr_living_metal_produces_mult
non_artificial_planet_jobs_sr_zro_produces_mult
non_artificial_planet_jobs_sr_dark_matter_produces_mult
non_artificial_planet_jobs_nanites_produces_mult
non_artificial_planet_jobs_minor_artifacts_produces_mult
non_artificial_planet_jobs_menace_produces_mult
planet_farmers_time_produces_add
planet_farmers_time_upkeep_add
planet_farmers_energy_produces_add
planet_farmers_energy_upkeep_add
planet_farmers_minerals_produces_add
planet_farmers_minerals_upkeep_add
planet_farmers_food_produces_add
planet_farmers_food_upkeep_add
planet_farmers_physics_research_produces_add
planet_farmers_physics_research_upkeep_add
planet_farmers_society_research_produces_add
planet_farmers_society_research_upkeep_add
planet_farmers_engineering_research_produces_add
planet_farmers_engineering_research_upkeep_add
planet_farmers_influence_produces_add
planet_farmers_influence_upkeep_add
planet_farmers_unity_produces_add
planet_farmers_consumer_goods_produces_add
planet_farmers_consumer_goods_upkeep_add
planet_farmers_alloys_produces_add
planet_farmers_alloys_upkeep_add
planet_farmers_volatile_motes_produces_add
planet_farmers_volatile_motes_upkeep_add
planet_farmers_exotic_gases_produces_add
planet_farmers_exotic_gases_upkeep_add
planet_farmers_rare_crystals_produces_add
planet_farmers_rare_crystals_upkeep_add
planet_farmers_sr_living_metal_produces_add
planet_farmers_sr_living_metal_upkeep_add
planet_farmers_sr_zro_produces_add
planet_farmers_sr_zro_upkeep_add
planet_farmers_sr_dark_matter_produces_add
planet_farmers_sr_dark_matter_upkeep_add
planet_farmers_nanites_produces_add
planet_farmers_nanites_upkeep_add
planet_farmers_minor_artifacts_produces_add
planet_farmers_minor_artifacts_upkeep_add
planet_farmers_menace_produces_add
planet_farmers_menace_upkeep_add
planet_miners_time_upkeep_add
planet_miners_energy_upkeep_add
planet_miners_minerals_upkeep_add
planet_miners_food_upkeep_add
planet_miners_physics_research_upkeep_add
planet_miners_society_research_upkeep_add
planet_miners_engineering_research_upkeep_add
planet_miners_influence_upkeep_add
planet_miners_unity_upkeep_add
planet_miners_consumer_goods_upkeep_add
planet_miners_alloys_upkeep_add
planet_miners_volatile_motes_upkeep_add
planet_miners_exotic_gases_upkeep_add
planet_miners_rare_crystals_upkeep_add
planet_miners_sr_living_metal_upkeep_add
planet_miners_sr_zro_upkeep_add
planet_miners_sr_dark_matter_upkeep_add
planet_miners_nanites_upkeep_add
planet_miners_minor_artifacts_upkeep_add
planet_miners_menace_upkeep_add
planet_sr_miners_time_upkeep_add
planet_sr_miners_energy_upkeep_add
planet_sr_miners_minerals_upkeep_add
planet_sr_miners_food_upkeep_add
planet_sr_miners_physics_research_upkeep_add
planet_sr_miners_society_research_upkeep_add
planet_sr_miners_engineering_research_upkeep_add
planet_sr_miners_influence_upkeep_add
planet_sr_miners_unity_upkeep_add
planet_sr_miners_consumer_goods_upkeep_add
planet_sr_miners_alloys_upkeep_add
planet_sr_miners_volatile_motes_upkeep_add
planet_sr_miners_exotic_gases_upkeep_add
planet_sr_miners_rare_crystals_upkeep_add
planet_sr_miners_sr_living_metal_upkeep_add
planet_sr_miners_sr_zro_upkeep_add
planet_sr_miners_sr_dark_matter_upkeep_add
planet_sr_miners_nanites_upkeep_add
planet_sr_miners_minor_artifacts_upkeep_add
planet_sr_miners_menace_upkeep_add
planet_technician_time_produces_add
planet_technician_time_upkeep_add
planet_technician_energy_produces_add
planet_technician_energy_upkeep_add
planet_technician_minerals_produces_add
planet_technician_minerals_upkeep_add
planet_technician_food_produces_add
planet_technician_food_upkeep_add
planet_technician_physics_research_produces_add
planet_technician_physics_research_upkeep_add
planet_technician_society_research_produces_add
planet_technician_society_research_upkeep_add
planet_technician_engineering_research_produces_add
planet_technician_engineering_research_upkeep_add
planet_technician_influence_produces_add
planet_technician_influence_upkeep_add
planet_technician_unity_produces_add
planet_technician_unity_upkeep_add
planet_technician_consumer_goods_produces_add
planet_technician_consumer_goods_upkeep_add
planet_technician_alloys_produces_add
planet_technician_alloys_upkeep_add
planet_technician_volatile_motes_produces_add
planet_technician_volatile_motes_upkeep_add
planet_technician_exotic_gases_produces_add
planet_technician_exotic_gases_upkeep_add
planet_technician_rare_crystals_produces_add
planet_technician_rare_crystals_upkeep_add
planet_technician_sr_living_metal_produces_add
planet_technician_sr_living_metal_upkeep_add
planet_technician_sr_zro_produces_add
planet_technician_sr_zro_upkeep_add
planet_technician_sr_dark_matter_produces_add
planet_technician_sr_dark_matter_upkeep_add
planet_technician_nanites_produces_add
planet_technician_nanites_upkeep_add
planet_technician_minor_artifacts_produces_add
planet_technician_minor_artifacts_upkeep_add
planet_technician_menace_produces_add
planet_technician_menace_upkeep_add
planet_researchers_time_upkeep_add
planet_researchers_energy_upkeep_add
planet_researchers_minerals_upkeep_add
planet_researchers_food_upkeep_add
planet_researchers_physics_research_upkeep_add
planet_researchers_society_research_upkeep_add
planet_researchers_engineering_research_upkeep_add
planet_researchers_influence_upkeep_add
planet_researchers_unity_upkeep_add
planet_researchers_consumer_goods_upkeep_add
planet_researchers_alloys_upkeep_add
planet_researchers_volatile_motes_upkeep_add
planet_researchers_volatile_motes_upkeep_add
planet_researchers_rare_crystals_upkeep_add
planet_researchers_sr_living_metal_upkeep_add
planet_researchers_sr_zro_upkeep_add
planet_researchers_sr_dark_matter_upkeep_add
planet_researchers_nanites_upkeep_add
planet_researchers_minor_artifacts_upkeep_add
planet_researchers_menace_upkeep_add
planet_metallurgists_time_produces_add
planet_metallurgists_time_upkeep_add
planet_metallurgists_energy_produces_add
planet_metallurgists_energy_upkeep_add
planet_metallurgists_minerals_produces_add
planet_metallurgists_minerals_upkeep_add
planet_metallurgists_food_produces_add
planet_metallurgists_food_upkeep_add
planet_metallurgists_physics_research_produces_add
planet_metallurgists_physics_research_upkeep_add
planet_metallurgists_society_research_produces_add
planet_metallurgists_society_research_upkeep_add
planet_metallurgists_engineering_research_produces_add
planet_metallurgists_engineering_research_upkeep_add
planet_metallurgists_influence_produces_add
planet_metallurgists_influence_upkeep_add
planet_metallurgists_unity_produces_add
planet_metallurgists_unity_upkeep_add
planet_metallurgists_consumer_goods_produces_add
planet_metallurgists_consumer_goods_upkeep_add
planet_metallurgists_alloys_produces_add
planet_metallurgists_alloys_upkeep_add
planet_metallurgists_volatile_motes_produces_add
planet_metallurgists_volatile_motes_upkeep_add
planet_metallurgists_exotic_gases_produces_add
planet_metallurgists_exotic_gases_upkeep_add
planet_metallurgists_rare_crystals_produces_add
planet_metallurgists_rare_crystals_upkeep_add
planet_metallurgists_sr_living_metal_produces_add
planet_metallurgists_sr_living_metal_upkeep_add
planet_metallurgists_sr_zro_produces_add
planet_metallurgists_sr_zro_upkeep_add
planet_metallurgists_sr_dark_matter_produces_add
planet_metallurgists_sr_dark_matter_upkeep_add
planet_metallurgists_nanites_produces_add
planet_metallurgists_nanites_upkeep_add
planet_metallurgists_minor_artifacts_produces_add
planet_metallurgists_minor_artifacts_upkeep_add
planet_metallurgists_menace_produces_add
planet_metallurgists_menace_upkeep_add
planet_artisans_time_produces_add
planet_artisans_time_upkeep_add
planet_artisans_energy_produces_add
planet_artisans_energy_upkeep_add
planet_artisans_minerals_produces_add
planet_artisans_minerals_upkeep_add
planet_artisans_food_produces_add
planet_artisans_food_upkeep_add
planet_artisans_physics_research_produces_add
planet_artisans_physics_research_upkeep_add
planet_artisans_society_research_produces_add
planet_artisans_society_research_upkeep_add
planet_artisans_engineering_research_produces_add
planet_artisans_engineering_research_upkeep_add
planet_artisans_influence_produces_add
planet_artisans_influence_upkeep_add
planet_artisans_unity_produces_add
planet_artisans_unity_upkeep_add
planet_artisans_consumer_goods_produces_add
planet_artisans_consumer_goods_upkeep_add
planet_artisans_alloys_produces_add
planet_artisans_alloys_upkeep_add
planet_artisans_volatile_motes_produces_add
planet_artisans_volatile_motes_upkeep_add
planet_artisans_exotic_gases_produces_add
planet_artisans_exotic_gases_upkeep_add
planet_artisans_rare_crystals_produces_add
planet_artisans_rare_crystals_upkeep_add
planet_artisans_sr_living_metal_produces_add
planet_artisans_sr_living_metal_upkeep_add
planet_artisans_sr_zro_produces_add
planet_artisans_sr_zro_upkeep_add
planet_artisans_sr_dark_matter_produces_add
planet_artisans_sr_dark_matter_upkeep_add
planet_artisans_nanites_produces_add
planet_artisans_nanites_upkeep_add
planet_artisans_minor_artifacts_produces_add
planet_artisans_minor_artifacts_upkeep_add
planet_artisans_menace_produces_add
planet_artisans_menace_upkeep_add
job_catalytic_technician_add
job_catalytic_technician_per_pop
job_catalytic_technician_per_crime
job_artificer_add
job_artificer_per_pop
job_artificer_per_crime
job_scrap_miner_add
job_scrap_miner_per_pop
job_scrap_miner_per_crime
job_catalytic_drone_add
job_catalytic_drone_per_pop
job_catalytic_drone_per_crime
job_scrap_miner_drone_add
job_scrap_miner_drone_per_pop
job_scrap_miner_drone_per_crime
job_robot_caretaker_add
job_robot_caretaker_per_pop
job_robot_caretaker_per_crime
job_turtle_miner_add
job_turtle_miner_per_pop
job_turtle_miner_per_crime
job_turtle_miner_gestalt_add
job_turtle_miner_gestalt_per_pop
job_turtle_miner_gestalt_per_crime
shipsize_space_dragon_purple_build_speed_mult
shipsize_space_dragon_purple_hull_mult
shipsize_space_dragon_purple_hull_add
shipsize_space_dragon_purple_evasion_mult
shipsize_space_dragon_purple_disengage_chance_mult
shipsize_space_dragon_purple_tracking_mult
shipsize_space_dragon_purple_baby_build_speed_mult
shipsize_space_dragon_purple_baby_hull_mult
shipsize_space_dragon_purple_baby_hull_add
shipsize_space_dragon_purple_baby_evasion_mult
shipsize_space_dragon_purple_baby_disengage_chance_mult
shipsize_space_dragon_purple_baby_tracking_mult
BIOLOGICAL_pop_growth_from_immigration
BIOLOGICAL_pop_growth_speed
BIOLOGICAL_pop_growth_speed_reduction
ROBOT_pop_happiness
MACHINE_pop_happiness
LITHOID_pop_growth_from_immigration
LITHOID_pop_growth_speed
LITHOID_pop_growth_speed_reduction
LITHOID_pop_growth_from_immigration
LITHOID_pop_growth_speed
LITHOID_pop_growth_speed_reduction
pc_shattered_ring_habitable_habitability
planet_district_srw_commercial_build_speed_mult
planet_district_arcology_organic_housing_build_speed_mult
planet_building_clone_army_clone_vat_build_speed_mult
planet_building_gaiaseeders_1_build_speed_mult
planet_building_gaiaseeders_2_build_speed_mult
planet_building_gaiaseeders_3_build_speed_mult
planet_building_gaiaseeders_4_build_speed_mult
planet_building_subversive_shrine_build_speed_mult
the_lonely_bot_category_research_speed_mult
fungal_emitters_category_research_speed_mult
NANO_SWARM_CAT_research_speed_mult
STAR_RESONANCE_CAT_research_speed_mult
ALPHA_CENTAURI_CAT_research_speed_mult
hostile_operation_gather_information_difficulty_add
hostile_operation_gather_information_difficulty_mult
hostile_operation_diplomatic_incident_difficulty_add
hostile_operation_diplomatic_incident_difficulty_mult
hostile_operation_sleeper_cells_difficulty_add
hostile_operation_sleeper_cells_difficulty_mult
hostile_operation_acquire_asset_difficulty_add
hostile_operation_acquire_asset_difficulty_mult
hostile_operation_extort_favors_difficulty_add
hostile_operation_extort_favors_difficulty_mult
hostile_operation_smear_campaign_difficulty_add
hostile_operation_smear_campaign_difficulty_mult
hostile_operation_steal_technology_difficulty_add
hostile_operation_steal_technology_difficulty_mult
hostile_operation_sabotage_starbase_difficulty_add
hostile_operation_sabotage_starbase_difficulty_mult
hostile_operation_arm_privateers_difficulty_add
hostile_operation_arm_privateers_difficulty_mult
hostile_operation_crisis_beacon_difficulty_add
hostile_operation_crisis_beacon_difficulty_mult
hostile_operation_weaken_galactic_empire_difficulty_add
hostile_operation_weaken_galactic_empire_difficulty_mult
hostile_operation_target_seditionists_difficulty_add
hostile_operation_target_seditionists_difficulty_mult
hostile_operation_spark_rebellion_difficulty_add
hostile_operation_spark_rebellion_difficulty_mult

Removed modifiers (3.1.0):
Code:
bio_pop_growth_from_immigration
bio_pop_growth_speed
bio_pop_growth_speed_reduction
lith_pop_growth_from_immigration
lith_pop_growth_speed
lith_pop_growth_speed_reduction
planet_buildings_strongholds_time_cost_mult
planet_buildings_strongholds_energy_cost_mult
planet_buildings_strongholds_minerals_cost_mult
planet_buildings_strongholds_food_cost_mult
planet_buildings_strongholds_physics_research_cost_mult
planet_buildings_strongholds_society_research_cost_mult
planet_buildings_strongholds_engineering_research_cost_mult
planet_buildings_strongholds_influence_cost_mult
planet_buildings_strongholds_unity_cost_mult
planet_buildings_strongholds_alloys_cost_mult
planet_buildings_strongholds_consumer_goods_cost_mult
planet_buildings_strongholds_volatile_motes_cost_mult
planet_buildings_strongholds_exotic_gases_cost_mult
planet_buildings_strongholds_rare_crystals_cost_mult
planet_buildings_strongholds_sr_living_metal_cost_mult
planet_buildings_strongholds_sr_zro_cost_mult
planet_buildings_strongholds_sr_dark_matter_cost_mult
planet_buildings_strongholds_nanites_cost_mult
planet_buildings_strongholds_minor_artifacts_cost_mult
planet_buildings_strongholds_menace_cost_mult
planet_buildings_strongholds_cost_mult
planet_districts_cities_time_cost_mult
planet_districts_cities_energy_cost_mult
planet_districts_cities_minerals_cost_mult
planet_districts_cities_food_cost_mult
planet_districts_cities_physics_research_cost_mult
planet_districts_cities_society_research_cost_mult
planet_districts_cities_engineering_research_cost_mult
planet_districts_cities_influence_cost_mult
planet_districts_cities_unity_cost_mult
planet_districts_cities_alloys_cost_mult
planet_districts_cities_consumer_goods_cost_mult
planet_districts_cities_volatile_motes_cost_mult
planet_districts_cities_exotic_gases_cost_mult
planet_districts_cities_rare_crystals_cost_mult
planet_districts_cities_sr_living_metal_cost_mult
planet_districts_cities_sr_zro_cost_mult
planet_districts_cities_sr_dark_matter_cost_mult
planet_districts_cities_nanites_cost_mult
planet_districts_cities_minor_artifacts_cost_mult
planet_districts_cities_menace_cost_mult
planet_districts_cities_cost_mult
planet_districts_industrial_time_cost_mult
planet_districts_industrial_energy_cost_mult
planet_districts_industrial_minerals_cost_mult
planet_districts_industrial_food_cost_mult
planet_districts_industrial_physics_research_cost_mult
planet_districts_industrial_society_research_cost_mult
planet_districts_industrial_engineering_research_cost_mult
planet_districts_industrial_influence_cost_mult
planet_districts_industrial_unity_cost_mult
planet_districts_industrial_alloys_cost_mult
planet_districts_industrial_consumer_goods_cost_mult
planet_districts_industrial_volatile_motes_cost_mult
planet_districts_industrial_exotic_gases_cost_mult
planet_districts_industrial_rare_crystals_cost_mult
planet_districts_industrial_sr_living_metal_cost_mult
planet_districts_industrial_sr_zro_cost_mult
planet_districts_industrial_sr_dark_matter_cost_mult
planet_districts_industrial_nanites_cost_mult
planet_districts_industrial_minor_artifacts_cost_mult
planet_districts_industrial_menace_cost_mult
planet_districts_industrial_cost_mult
planet_districts_hab_energy_time_cost_mult
planet_districts_hab_energy_energy_cost_mult
planet_districts_hab_energy_minerals_cost_mult
planet_districts_hab_energy_food_cost_mult
planet_districts_hab_energy_physics_research_cost_mult
planet_districts_hab_energy_society_research_cost_mult
planet_districts_hab_energy_engineering_research_cost_mult
planet_districts_hab_energy_influence_cost_mult
planet_districts_hab_energy_unity_cost_mult
planet_districts_hab_energy_alloys_cost_mult
planet_districts_hab_energy_consumer_goods_cost_mult
planet_districts_hab_energy_volatile_motes_cost_mult
planet_districts_hab_energy_exotic_gases_cost_mult
planet_districts_hab_energy_rare_crystals_cost_mult
planet_districts_hab_energy_sr_living_metal_cost_mult
planet_districts_hab_energy_sr_zro_cost_mult
planet_districts_hab_energy_sr_dark_matter_cost_mult
planet_districts_hab_energy_nanites_cost_mult
planet_districts_hab_energy_minor_artifacts_cost_mult
planet_districts_hab_energy_menace_cost_mult
planet_districts_hab_energy_cost_mult
planet_districts_hab_industrial_time_cost_mult
planet_districts_hab_industrial_energy_cost_mult
planet_districts_hab_industrial_minerals_cost_mult
planet_districts_hab_industrial_food_cost_mult
planet_districts_hab_industrial_physics_research_cost_mult
planet_districts_hab_industrial_society_research_cost_mult
planet_districts_hab_industrial_engineering_research_cost_mult
planet_districts_hab_industrial_influence_cost_mult
planet_districts_hab_industrial_unity_cost_mult
planet_districts_hab_industrial_alloys_cost_mult
planet_districts_hab_industrial_consumer_goods_cost_mult
planet_districts_hab_industrial_volatile_motes_cost_mult
planet_districts_hab_industrial_exotic_gases_cost_mult
planet_districts_hab_industrial_rare_crystals_cost_mult
planet_districts_hab_industrial_sr_living_metal_cost_mult
planet_districts_hab_industrial_sr_zro_cost_mult
planet_districts_hab_industrial_sr_dark_matter_cost_mult
planet_districts_hab_industrial_nanites_cost_mult
planet_districts_hab_industrial_minor_artifacts_cost_mult
planet_districts_hab_industrial_menace_cost_mult
planet_districts_hab_industrial_cost_mult
planet_districts_hab_research_time_cost_mult
planet_districts_hab_research_energy_cost_mult
planet_districts_hab_research_minerals_cost_mult
planet_districts_hab_research_food_cost_mult
planet_districts_hab_research_physics_research_cost_mult
planet_districts_hab_research_society_research_cost_mult
planet_districts_hab_research_engineering_research_cost_mult
planet_districts_hab_research_influence_cost_mult
planet_districts_hab_research_unity_cost_mult
planet_districts_hab_research_alloys_cost_mult
planet_districts_hab_research_consumer_goods_cost_mult
planet_districts_hab_research_volatile_motes_cost_mult
planet_districts_hab_research_exotic_gases_cost_mult
planet_districts_hab_research_rare_crystals_cost_mult
planet_districts_hab_research_sr_living_metal_cost_mult
planet_districts_hab_research_sr_zro_cost_mult
planet_districts_hab_research_sr_dark_matter_cost_mult
planet_districts_hab_research_nanites_cost_mult
planet_districts_hab_research_minor_artifacts_cost_mult
planet_districts_hab_research_menace_cost_mult
planet_districts_hab_research_cost_mult
planet_districts_hab_mining_time_cost_mult
planet_districts_hab_mining_energy_cost_mult
planet_districts_hab_mining_minerals_cost_mult
planet_districts_hab_mining_food_cost_mult
planet_districts_hab_mining_physics_research_cost_mult
planet_districts_hab_mining_society_research_cost_mult
planet_districts_hab_mining_engineering_research_cost_mult
planet_districts_hab_mining_influence_cost_mult
planet_districts_hab_mining_unity_cost_mult
planet_districts_hab_mining_alloys_cost_mult
planet_districts_hab_mining_consumer_goods_cost_mult
planet_districts_hab_mining_volatile_motes_cost_mult
planet_districts_hab_mining_exotic_gases_cost_mult
planet_districts_hab_mining_rare_crystals_cost_mult
planet_districts_hab_mining_sr_living_metal_cost_mult
planet_districts_hab_mining_sr_zro_cost_mult
planet_districts_hab_mining_sr_dark_matter_cost_mult
planet_districts_hab_mining_nanites_cost_mult
planet_districts_hab_mining_minor_artifacts_cost_mult
planet_districts_hab_mining_menace_cost_mult
planet_districts_hab_mining_cost_mult
planet_districts_hab_trade_time_cost_mult
planet_districts_hab_trade_energy_cost_mult
planet_districts_hab_trade_minerals_cost_mult
planet_districts_hab_trade_food_cost_mult
planet_districts_hab_trade_physics_research_cost_mult
planet_districts_hab_trade_society_research_cost_mult
planet_districts_hab_trade_engineering_research_cost_mult
planet_districts_hab_trade_influence_cost_mult
planet_districts_hab_trade_unity_cost_mult
planet_districts_hab_trade_alloys_cost_mult
planet_districts_hab_trade_consumer_goods_cost_mult
planet_districts_hab_trade_volatile_motes_cost_mult
planet_districts_hab_trade_exotic_gases_cost_mult
planet_districts_hab_trade_rare_crystals_cost_mult
planet_districts_hab_trade_sr_living_metal_cost_mult
planet_districts_hab_trade_sr_zro_cost_mult
planet_districts_hab_trade_sr_dark_matter_cost_mult
planet_districts_hab_trade_nanites_cost_mult
planet_districts_hab_trade_minor_artifacts_cost_mult
planet_districts_hab_trade_menace_cost_mult
planet_districts_hab_trade_cost_mult
planet_districts_hab_leisure_time_cost_mult
planet_districts_hab_leisure_energy_cost_mult
planet_districts_hab_leisure_minerals_cost_mult
planet_districts_hab_leisure_food_cost_mult
planet_districts_hab_leisure_physics_research_cost_mult
planet_districts_hab_leisure_society_research_cost_mult
planet_districts_hab_leisure_engineering_research_cost_mult
planet_districts_hab_leisure_influence_cost_mult
planet_districts_hab_leisure_unity_cost_mult
planet_districts_hab_leisure_alloys_cost_mult
planet_districts_hab_leisure_consumer_goods_cost_mult
planet_districts_hab_leisure_volatile_motes_cost_mult
planet_districts_hab_leisure_exotic_gases_cost_mult
planet_districts_hab_leisure_rare_crystals_cost_mult
planet_districts_hab_leisure_sr_living_metal_cost_mult
planet_districts_hab_leisure_sr_zro_cost_mult
planet_districts_hab_leisure_sr_dark_matter_cost_mult
planet_districts_hab_leisure_nanites_cost_mult
planet_districts_hab_leisure_minor_artifacts_cost_mult
planet_districts_hab_leisure_menace_cost_mult
planet_districts_hab_leisure_cost_multplanet_districts_cities_time_cost_mult
planet_districts_cities_energy_cost_mult
planet_districts_cities_minerals_cost_mult
planet_districts_cities_food_cost_mult
planet_districts_cities_physics_research_cost_mult
planet_districts_cities_society_research_cost_mult
planet_districts_cities_engineering_research_cost_mult
planet_districts_cities_influence_cost_mult
planet_districts_cities_unity_cost_mult
planet_districts_cities_alloys_cost_mult
planet_districts_cities_consumer_goods_cost_mult
planet_districts_cities_volatile_motes_cost_mult
planet_districts_cities_exotic_gases_cost_mult
planet_districts_cities_rare_crystals_cost_mult
planet_districts_cities_sr_living_metal_cost_mult
planet_districts_cities_sr_zro_cost_mult
planet_districts_cities_sr_dark_matter_cost_mult
planet_districts_cities_nanites_cost_mult
planet_districts_cities_minor_artifacts_cost_mult
planet_districts_cities_menace_cost_mult
planet_districts_cities_cost_mult
planet_districts_industrial_time_cost_mult
planet_districts_industrial_energy_cost_mult
planet_districts_industrial_minerals_cost_mult
planet_districts_industrial_food_cost_mult
planet_districts_industrial_physics_research_cost_mult
planet_districts_industrial_society_research_cost_mult
planet_districts_industrial_engineering_research_cost_mult
planet_districts_industrial_influence_cost_mult
planet_districts_industrial_unity_cost_mult
planet_districts_industrial_alloys_cost_mult
planet_districts_industrial_consumer_goods_cost_mult
planet_districts_industrial_volatile_motes_cost_mult
planet_districts_industrial_exotic_gases_cost_mult
planet_districts_industrial_rare_crystals_cost_mult
planet_districts_industrial_sr_living_metal_cost_mult
planet_districts_industrial_sr_zro_cost_mult
planet_districts_industrial_sr_dark_matter_cost_mult
planet_districts_industrial_nanites_cost_mult
planet_districts_industrial_minor_artifacts_cost_mult
planet_districts_industrial_menace_cost_mult
planet_districts_industrial_cost_mult
planet_districts_hab_energy_time_cost_mult
planet_districts_hab_energy_energy_cost_mult
planet_districts_hab_energy_minerals_cost_mult
planet_districts_hab_energy_food_cost_mult
planet_districts_hab_energy_physics_research_cost_mult
planet_districts_hab_energy_society_research_cost_mult
planet_districts_hab_energy_engineering_research_cost_mult
planet_districts_hab_energy_influence_cost_mult
planet_districts_hab_energy_unity_cost_mult
planet_districts_hab_energy_alloys_cost_mult
planet_districts_hab_energy_consumer_goods_cost_mult
planet_districts_hab_energy_volatile_motes_cost_mult
planet_districts_hab_energy_exotic_gases_cost_mult
planet_districts_hab_energy_rare_crystals_cost_mult
planet_districts_hab_energy_sr_living_metal_cost_mult
planet_districts_hab_energy_sr_zro_cost_mult
planet_districts_hab_energy_sr_dark_matter_cost_mult
planet_districts_hab_energy_nanites_cost_mult
planet_districts_hab_energy_minor_artifacts_cost_mult
planet_districts_hab_energy_menace_cost_mult
planet_districts_hab_energy_cost_mult
planet_districts_hab_industrial_time_cost_mult
planet_districts_hab_industrial_energy_cost_mult
planet_districts_hab_industrial_minerals_cost_mult
planet_districts_hab_industrial_food_cost_mult
planet_districts_hab_industrial_physics_research_cost_mult
planet_districts_hab_industrial_society_research_cost_mult
planet_districts_hab_industrial_engineering_research_cost_mult
planet_districts_hab_industrial_influence_cost_mult
planet_districts_hab_industrial_unity_cost_mult
planet_districts_hab_industrial_alloys_cost_mult
planet_districts_hab_industrial_consumer_goods_cost_mult
planet_districts_hab_industrial_volatile_motes_cost_mult
planet_districts_hab_industrial_exotic_gases_cost_mult
planet_districts_hab_industrial_rare_crystals_cost_mult
planet_districts_hab_industrial_sr_living_metal_cost_mult
planet_districts_hab_industrial_sr_zro_cost_mult
planet_districts_hab_industrial_sr_dark_matter_cost_mult
planet_districts_hab_industrial_nanites_cost_mult
planet_districts_hab_industrial_minor_artifacts_cost_mult
planet_districts_hab_industrial_menace_cost_mult
planet_districts_hab_industrial_cost_mult
planet_districts_hab_research_time_cost_mult
planet_districts_hab_research_energy_cost_mult
planet_districts_hab_research_minerals_cost_mult
planet_districts_hab_research_food_cost_mult
planet_districts_hab_research_physics_research_cost_mult
planet_districts_hab_research_society_research_cost_mult
planet_districts_hab_research_engineering_research_cost_mult
planet_districts_hab_research_influence_cost_mult
planet_districts_hab_research_unity_cost_mult
planet_districts_hab_research_alloys_cost_mult
planet_districts_hab_research_consumer_goods_cost_mult
planet_districts_hab_research_volatile_motes_cost_mult
planet_districts_hab_research_exotic_gases_cost_mult
planet_districts_hab_research_rare_crystals_cost_mult
planet_districts_hab_research_sr_living_metal_cost_mult
planet_districts_hab_research_sr_zro_cost_mult
planet_districts_hab_research_sr_dark_matter_cost_mult
planet_districts_hab_research_nanites_cost_mult
planet_districts_hab_research_minor_artifacts_cost_mult
planet_districts_hab_research_menace_cost_mult
planet_districts_hab_research_cost_mult
planet_districts_hab_mining_time_cost_mult
planet_districts_hab_mining_energy_cost_mult
planet_districts_hab_mining_minerals_cost_mult
planet_districts_hab_mining_food_cost_mult
planet_districts_hab_mining_physics_research_cost_mult
planet_districts_hab_mining_society_research_cost_mult
planet_districts_hab_mining_engineering_research_cost_mult
planet_districts_hab_mining_influence_cost_mult
planet_districts_hab_mining_unity_cost_mult
planet_districts_hab_mining_alloys_cost_mult
planet_districts_hab_mining_consumer_goods_cost_mult
planet_districts_hab_mining_volatile_motes_cost_mult
planet_districts_hab_mining_exotic_gases_cost_mult
planet_districts_hab_mining_rare_crystals_cost_mult
planet_districts_hab_mining_sr_living_metal_cost_mult
planet_districts_hab_mining_sr_zro_cost_mult
planet_districts_hab_mining_sr_dark_matter_cost_mult
planet_districts_hab_mining_nanites_cost_mult
planet_districts_hab_mining_minor_artifacts_cost_mult
planet_districts_hab_mining_menace_cost_mult
planet_districts_hab_mining_cost_mult
planet_districts_hab_trade_time_cost_mult
planet_districts_hab_trade_energy_cost_mult
planet_districts_hab_trade_minerals_cost_mult
planet_districts_hab_trade_food_cost_mult
planet_districts_hab_trade_physics_research_cost_mult
planet_districts_hab_trade_society_research_cost_mult
planet_districts_hab_trade_engineering_research_cost_mult
planet_districts_hab_trade_influence_cost_mult
planet_districts_hab_trade_unity_cost_mult
planet_districts_hab_trade_alloys_cost_mult
planet_districts_hab_trade_consumer_goods_cost_mult
planet_districts_hab_trade_volatile_motes_cost_mult
planet_districts_hab_trade_exotic_gases_cost_mult
planet_districts_hab_trade_rare_crystals_cost_mult
planet_districts_hab_trade_sr_living_metal_cost_mult
planet_districts_hab_trade_sr_zro_cost_mult
planet_districts_hab_trade_sr_dark_matter_cost_mult
planet_districts_hab_trade_nanites_cost_mult
planet_districts_hab_trade_minor_artifacts_cost_mult
planet_districts_hab_trade_menace_cost_mult
planet_districts_hab_trade_cost_mult
planet_districts_hab_leisure_time_cost_mult
planet_districts_hab_leisure_energy_cost_mult
planet_districts_hab_leisure_minerals_cost_mult
planet_districts_hab_leisure_food_cost_mult
planet_districts_hab_leisure_physics_research_cost_mult
planet_districts_hab_leisure_society_research_cost_mult
planet_districts_hab_leisure_engineering_research_cost_mult
planet_districts_hab_leisure_influence_cost_mult
planet_districts_hab_leisure_unity_cost_mult
planet_districts_hab_leisure_alloys_cost_mult
planet_districts_hab_leisure_consumer_goods_cost_mult
planet_districts_hab_leisure_volatile_motes_cost_mult
planet_districts_hab_leisure_exotic_gases_cost_mult
planet_districts_hab_leisure_rare_crystals_cost_mult
planet_districts_hab_leisure_sr_living_metal_cost_mult
planet_districts_hab_leisure_sr_zro_cost_mult
planet_districts_hab_leisure_sr_dark_matter_cost_mult
planet_districts_hab_leisure_nanites_cost_mult
planet_districts_hab_leisure_minor_artifacts_cost_mult
planet_districts_hab_leisure_menace_cost_mult
planet_districts_hab_leisure_cost_mult
planet_refiners_time_upkeep_mult
planet_refiners_energy_upkeep_mult
planet_refiners_minerals_upkeep_mult
planet_refiners_food_upkeep_mult
planet_refiners_physics_research_upkeep_mult
planet_refiners_society_research_upkeep_mult
planet_refiners_engineering_research_upkeep_mult
planet_refiners_influence_upkeep_mult
planet_refiners_unity_upkeep_mult
planet_refiners_alloys_upkeep_mult
planet_refiners_volatile_motes_upkeep_mult
planet_refiners_exotic_gases_upkeep_mult
planet_refiners_rare_crystals_upkeep_mult
planet_refiners_sr_living_metal_upkeep_mult
planet_refiners_sr_zro_upkeep_mult
planet_refiners_sr_dark_matter_upkeep_mult
planet_refiners_nanites_upkeep_mult
planet_refiners_minor_artifacts_upkeep_mult
planet_refiners_menace_upkeep_mult
planet_refiners_upkeep_mult
planet_translucers_time_upkeep_mult
planet_translucers_energy_upkeep_mult
planet_translucers_minerals_upkeep_mult
planet_translucers_food_upkeep_mult
planet_translucers_physics_research_upkeep_mult
planet_translucers_society_research_upkeep_mult
planet_translucers_engineering_research_upkeep_mult
planet_translucers_influence_upkeep_mult
planet_translucers_unity_upkeep_mult
planet_translucers_alloys_upkeep_mult
planet_translucers_consumer_goods_upkeep_mult
planet_translucers_volatile_motes_upkeep_mult
planet_translucers_exotic_gases_upkeep_mult
planet_translucers_rare_crystals_upkeep_mult
planet_translucers_sr_living_metal_upkeep_mult
planet_translucers_sr_zro_upkeep_mult
planet_translucers_sr_dark_matter_upkeep_mult
planet_translucers_nanites_upkeep_mult
planet_translucers_minor_artifacts_upkeep_mult
planet_translucers_menace_upkeep_mult
planet_translucers_upkeep_mult
planet_chemists_time_upkeep_mult
planet_chemists_energy_upkeep_mult
planet_chemists_minerals_upkeep_mult
planet_chemists_food_upkeep_mult
planet_chemists_physics_research_upkeep_mult
planet_chemists_society_research_upkeep_mult
planet_chemists_engineering_research_upkeep_mult
planet_chemists_influence_upkeep_mult
planet_chemists_unity_upkeep_mult
planet_chemists_alloys_upkeep_mult
planet_chemists_consumer_goods_upkeep_mult
planet_chemists_volatile_motes_upkeep_mult
planet_chemists_exotic_gases_upkeep_mult
planet_chemists_rare_crystals_upkeep_mult
planet_chemists_sr_living_metal_upkeep_mult
planet_chemists_sr_zro_upkeep_mult
planet_chemists_sr_dark_matter_upkeep_mult
planet_chemists_nanites_upkeep_mult
planet_chemists_minor_artifacts_upkeep_mult
planet_chemists_menace_upkeep_mult
planet_chemists_upkeep_mult
PRESAPIENT_species_trait_points_add
OTHER_species_trait_points_add
 
Last edited:
  • 4Love
  • 2
  • 1Like
Reactions:
Repository updated https://github.com/OldEnt/stellaris-triggers-modifiers-effects-list

NOTE: Following modifiers and one trigger are not present in the release version of 3.1.1.

Code:
is_ideal - Checks if the planet is ideal (as set in planet_classes)
is_ideal = yes
Supported Scopes: planet

Code:
- shipsize_space_dragon_purple_build_speed_mult, Category: Planets, Starbases
- shipsize_space_dragon_purple_hull_mult, Category: Ships
- shipsize_space_dragon_purple_hull_add, Category: Ships
- shipsize_space_dragon_purple_evasion_mult, Category: Ships
- shipsize_space_dragon_purple_disengage_chance_mult, Category: Ships
- shipsize_space_dragon_purple_tracking_mult, Category: Ships
- shipsize_space_dragon_purple_baby_build_speed_mult, Category: Planets, Starbases
- shipsize_space_dragon_purple_baby_hull_mult, Category: Ships
- shipsize_space_dragon_purple_baby_hull_add, Category: Ships
- shipsize_space_dragon_purple_baby_evasion_mult, Category: Ships
- shipsize_space_dragon_purple_baby_disengage_chance_mult, Category: Ships
- shipsize_space_dragon_purple_baby_tracking_mult, Category: Ships

\Stellaris\events contains three guide files useful to modders:
Code:
000_added_pre_triggers_to_planet_events.txt
000_fleet_action_examples.txt
000_how_to_use_variables_in_script.txt
 
  • 2
Reactions:
Last edited:
  • 1Love
Reactions: