Conditions

From Stellaris Wiki
Jump to navigation Jump to search

Version

Outliner top.png
Please help with verifying or updating older sections of this article. At least some were last verified for version 3.5.

This article is for the PC version of Stellaris only.

Logical boolean operators[edit | edit source]

Operators allow conditions and triggers to be manipulated in order to return a simple true or false statement to be processed.

They appear:

  • In condition blocks (trigger section of events, or equivalent: mult_modifier, can_use_…, potential, allow, …).
  • In the limit clause of command blocks.
  • In scripted blocks: as scripted triggers (or scripted effects), which can be used to group conditions into re-usable macro.
  • At the root of events for pre-triggers used to improve performances (actually only on planets).
Name Description Example
if…
else_if…
else…
Returns true if the conditional statement inside the block evaluates to true.

if = { limit = { owner = { has_ethic = ethic_fanatic_xenophile } } … } else_if = { limit = { … } … } else = { … }

AND Returns true if all conditional statements inside the block evaluate to true.
This is usually the default in a trigger or new scope, so is not needed to be explicitly specified. i.e. trigger = { AND = { A B } } is the same as trigger = { A B }
Putting the conditions most likely to be false first can slightly help performance of the scripting engine.

AND = { has_ethic = ethic_fanatic_xenophile has_ethic = ethic_egalitarian }

OR Returns true if at least one conditional statement inside the block evaluates to true.
Putting the conditions most likely to be true first can slightly help performance of the scripting engine.

OR = { has_ethic = ethic_fanatic_xenophile has_ethic = ethic_egalitarian }

NOT Returns true if the conditional statement inside the block evaluates to false, and false if it evaluates to true.
Note that NOT only accepts one statement. If you use more than one, it will usually work, but can cause unforeseen bugs, as well as put an error in the error.log file.
It's better to use NOR or NAND for blocks containing more than one statement.

NOT = { has_ethic = ethic_fanatic_xenophile }

NOR Returns true if none of the conditional statements inside the block evaluate to true. Same as NOT = { OR = { <conditions> } } (all are false).

NOR = { has_ethic = ethic_fanatic_xenophile has_ethic = ethic_fanatic_militarist }

NAND Returns true unless all of the conditional statements inside the block evaluate to true. Same as NOT = { AND = { <conditions> } } (at minimum one is false).

NAND = { has_ethic = ethic_fanatic_xenophile has_technology = "tech_zero_point_power" }

calc_true_if Returns true if at least amount conditions return true. amount supports numerical operators.

calc_true_if = { amount >= 3 leader_class = scientist is_researching_area = society gender = female has_level > 2 leader_age < 85 }

It is important to remember De Morgan's laws to use NOR and NAND correctly:

NAND = { A B } <=> NOT = { AND = { A B } } <=> OR = { NOT = { A } NOT = { B } }
NOR = { A B } <=> NOT = { OR = { A B } } <=> AND = { NOT = { A } NOT = { B } }

So this means a list of NOTs in an AND can be simplified:

trigger = {
	NOT = { A }
	NOT = { B }
	NOT = { C }
}

is the same as:

trigger = {
	NOR = {
		A
		B
		C
	}
}

Conversely, a list of NOTs in an OR can be simplified:

trigger = {
	OR = {
		NOT = { A }
		NOT = { B }
		NOT = { C }
	}
}

is the same as:

trigger = {
	NAND = {
		A
		B
		C
	}
}

If you need XOR logic, you can use calc_true_if or something like this:

trigger = {
	OR = { A B }
	NAND = { A B }
}

is the same as:

trigger = {
	calc_true_if = { amount = 1 A B	}
}

Or this for 3 input XOR logic:

trigger = {
	OR = {
		AND = {
			OR = { A B C }
			NOR = {
				AND = { A B }
				AND = { A C }
				AND = { B C }
			}
		}
		AND = { A B C }
	}
}

is the same as:

trigger = {
	OR = {
		AND = { A B C }
		calc_true_if = { amount = 1 A B	C }
	}
}

Scopes[edit | edit source]

Scopes specify the target of the trigger or condition in question. They allow for variables to be checked on other objects that the trigger script is not attached to. Currently, Stellaris recognises a set of keywords as valid scopes. The most commonly used are outlined in the table below. An empire or nation scope is referred to as country scope.

Name Description
capital If the script this belongs to is attached to a country, capital will return the capital planet of the country.
controller Returns the country which may be not owner, but currently control this object (i.e. in case of occupation)
root Returns the object that the script belongs to. If called on a planet-level script, then this returns the planet.
from Returns the location of the object that the script belongs to. If this is attached to a ship-level script, then this returns the ship's current planet.
fromfrom Returns the location of the object that the script belongs to, twice removed. If this is attached
owner Returns the country that has control over the object that the script belongs to.
planet Returns the planet of the current object.
prev Returns the object from previous scope
prevprev Returns the object from the scope before the previous scope
prevprevprev Returns the object from the third previous scope (i.e. the previous scope before the prevprev scope)
prevprevprevprev Returns the object from the fourth previous scope in the pattern of prev, prevprev and prevprevprev
random
this Returns the current scope object in the cycle (i.e., for example, each instance in every_sector)
pop Returns the pop attached to the current object.

Trigger list[edit | edit source]

The vanilla game has many scripted triggers defined you can use, though they don't show here, as this list is only the triggers built-in to the engine. In addition, you can write your own scripted triggers. Scripted Triggers are stored in the ./common/scripted_triggers/ directory. Current built-in triggers can be also found in the triggers.log file in your local data folder's script_documentation.[1]

Name Desc Example Scope
text For 'desc = {trigger = {' use. Shows custom text text = <text> all
not An inverted trigger all
custom_tooltip Replaces the tooltips for the enclosed triggers with a custom text custom_tooltip = {

text = <text used as fallback for both fails and successes> fail_text = <text used for fails["string"/default/none]> success_text = <text used for successes["string"/default/none]> <triggers> }

all
if Evaluates the triggers if the display_triggers of the limit are met if = { limit = { <display_triggers> } <triggers> } all
any_playable_country Iterate through all playable countries - checks whether the enclosed triggers return true for any of them any_playable_country = { <triggers> } all
has_mission Checks if the observation post has a specific mission has_mission = technological_enlightenment_4 fleet
switch Switch case for a trigger switch = {

trigger = pop_has_ethic ethic_xenophile = { <trigger> } ethic_xenophobe = { <trigger> } default = { <trigger> } }

all
num_fleets Checks the country's number of fleets num_fleets < 8 country
num_ships Checks the country/fleet's number of ships num_ships > 39 country fleet
research_leader Checks if the country's researcher in a specific field meets the specified criteria research_leader = { area = engineering <triggers> } country
has_fleet_order Checks if the ship/fleet has a specific fleet order. Fleet orders include: move_to_system_point_order orbit_planet_order build_orbital_station_order build_space_station_order colonize_planet_order survey_planet_order research_discovery_orde research_anomaly_order collect_data_fleet_order upgrade_design_at_starbase_fleet_order upgrade_design_at_orbitable_fleet_order return_fleet_order repair_fleet_order evade_hostiles_order follow_order assist_research_order land_armies_order merge_fleet_order aggressive_stance_fleet_order auto_explore_order auto_patrol_order build_megastructure_fleet_order destroy_planet_order planet_killer_weapon_windup_order planet_killer_weapon_fire_order explore_bypass_order use_bypass_order jumpdrive_order jumpdrive_windup experimental_subspace_navigation_fleet_order excavate_archaeological_site_fleet_order has_fleet_order = survey_planet_order ship fleet
closest_system Finds the closest system within the given hyperlane steps and limit = { <triggers> }. If this system does not exist, it returns false. If it does exist, it is checked against the triggers outside of the limit = {}. closest_system = {

limit = { <triggers> } min_steps = 2 max_steps = 20 use_bypasses = yes/no (default: no) <triggers> }

all
any_owned_fleet Iterate through each fleet owned by the country - checks whether the enclosed triggers return true for any of them any_owned_fleet = { <triggers> } country
has_orbital_station Checks if the planet has any kind of orbital station has_orbital_station = yes planet
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 = { <triggers> } country galactic_object
else_if Evaluates the enclosed triggers if the display_triggers of the preceding `if` or `else_if` is not met and its own display_trigger of the limit is met

if = { limit = { <display_triggers> } <triggers> } else_if = { limit = { <display_triggers> } <triggers> }

all
happiness Checks the pop's happiness percentage happiness < 0.5 pop
agreement_preset Checks if the agreement has the specified preset agreement_preset = <preset key> agreement
is_half_species Check if scoped species is half species of specific/any species is_half_species = <target/any> species
faction_approval Checks the scoped faction's approval percentage faction_approval < 0.9 pop_faction
has_designation Checks if the colony has a certain designation has_designation = col_rural/<planet scope> planet
colony_type Checks if the colony is of a certain type colony_type = col_rural/<planet scope> planet
num_favors Check amount of favors that scoped country can collect from target country: num_favors = {

target = <country> value ><= <value>/<variable> }

country
num_ships_in_debris Checks the number of ships of a ship size in debris num_ships_in_debris = { ship_size = corvette value > 15 } debris
last_building_changed Checks if the last building queued/unqueued/built/demolished/upgraded was the specified building last_building_changed = building_capitol planet
empire_size Checks the empire's size. Identical to empire_sprawl trigger. empire_size < 20 country
empire_sprawl Checks the empire's sprawl. Identical to empire_size trigger. empire_sprawl < 20 country
empire_sprawl_over_cap Checks how much the empire's sprawl is over its admin capacity empire_sprawl_over_cap < 5 country
empire_sprawl_cap_fraction Checks the empire's sprawl compared to its admin level empire_sprawl_cap_fraction < 0.5 country
last_district_changed Checks if the last district queued/unqueued/built/demolished/upgraded was the specified district last_district_changed = district_capitol planet
has_ring Checks if the planet has a planetary ring has_ring = yes planet
is_moon Checks if the planet is the moon of another planet is_moon = yes planet
opinion Checks the country's opinion of the target country opinion = { who = <target> value = -70/variable } country
opinion_level Checks the country's opinion level of the target country (with support for comparison operators) opinion_level = { who = <target> level >= neutral } 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 } country
ideal_planet_class Checks if the pop, species or country's ideal planet class is a specific class ideal_planet_class = pc_tundra/<planet scope> country pop species
ethos Checks the average ethics divergence on the planet, i.e. num of pops not of the country's ethics / total num of pops ethos < 0.4 planet
distance Checks the ship/fleet/planet/leader/pop/system's galaxy map distance to target in absolute units distance = {

source = <target> min_distance >= 50 max_distance <= 120 type = <hyperlane/euclidean> bypass_empire = <empire> min_jumps = 2 max_jumps = 10 same_solar_system = yes/no (default: no; this toggles whether the trigger checks galaxy map or solar system distances) }

megastructure planet ship pop fleet galactic_object leader ambient_object starbase deposit archaeological_site first_contact
is_pirate Checks if the country is a pirate country is_pirate = yes country
planet_size Checks the planet's size planet_size < 20 planet
gender Checks the leader's gender gender = female/male/indeterminable leader
any_planet_within_border Iterate through each planet within the current empire's borders - checks whether the enclosed triggers return true for any of them any_planet_within_border = { <triggers> } country
any_owned_ship Iterate through each ship in the fleet or controlled by the country - checks whether the enclosed triggers return true for any of them any_owned_ship = { <triggers> } country fleet
pop_has_ethic Checks if the pop has a specific ethos pop_has_ethic = ethic_fanatic_xenophile pop
pop_has_trait Checks if the pop has a specific trait pop_has_trait = trait_decadent pop
has_observation_outpost Checks if the planet has an observation post has_observation_outpost = yes planet
starting_system Checks if the system is the starting system for any country starting_system = yes galactic_object
graphical_culture Checks if the country has specific graphical culture graphical_culture = fungoid_01 country ship
is_civilian Checks if the scoped fleet or ship is civilian (as set in ship sizes). is_civilian = <yes/no> ship fleet
vassals Checks the country's number of subjects with agreement preset 'preset_vassal' vassals > 0 country
exists Checks if a target scope exists exists = <target> all
has_edict Checks if the country has a specific edict enabled has_edict = crystal_sonar country
is_designable Checks if the scoped ship design, ship or fleet (all ships) has a designable ship size. is_designable = yes ship fleet design
is_in_cluster Checks if the planet/system belongs to a specific spawning cluster is_in_cluster = resource_cluster_3 planet galactic_object
any_moon Iterate through each moon of the planet - checks whether the enclosed triggers return true for any of them any_moon = { <triggers> } planet
num_empires Checks the number of regular empires in the galaxy num_empires > 3 country
leader_class Checks if the leader is of a specific class leader_class = scientist leader
leader_age Checks the scope leader's age leader_age > 85 leader
has_deposit Checks if the planet has any, or a specific, deposit has_deposit = yes

has_deposit = d_immense_engineering_deposit

planet deposit
is_same_value Checks if the current scope and the target scope are the same thing is_same_value = <target> all
intel Checks the country's Intel on the target country intel = { who = <target> value = 70/variable } country
has_pop_faction_flag Checks if the pop faction has a specific flag has_pop_faction_flag = <flag> (note: one can use e.g. my_flag@from to track relationships between objects) pop pop_faction
num_communications Checks the country's number of established communications num_communications > 3 country
last_changed_policy Checks if the last policy changed by the country was a specific policy last_changed_policy = slavery country
is_species Checks if the pop/country's founder species is of a specific pre-defined species is_species = ROBOT_POP_SPECIES_2 country pop leader species
last_increased_tech Checks if the country's last researched technology was a specific tech last_increased_tech = tech_gene_expressions country
any_war Iterate through all wars the country is engaged in - checks whether the enclosed triggers return true for any of them any_war = { <triggers> } country
any_defender Iterate through all defenders in the current war - checks whether the enclosed triggers return true for any of them any_defender = { <triggers> } war
any_attacker Iterate through all attackers in the current war - checks whether the enclosed triggers return true for any of them any_attacker = { <triggers> } war
original_owner Checks if the planet is still owned by its first colonizer original_owner = yes planet
subjects Checks the country's number of subjects subjects > 0 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 } country
can_colonize Checks if the planet can be colonized by target country can_colonize = { who = <target> status = yes } planet
has_special_project Checks if the country has a specific special project available has_special_project = EMERGENCY_BUOY_PROJECT country
has_completed_special_project_in_log Checks if the country has completed a specific special project as part of an in-progress event chain has_completed_special_project_in_log = EMERGENCY_BUOY_PROJECT country
has_failed_special_project_in_log Checks if the country has failed, timed out or aborted a specific special project as part of an in-progress event chain has_failed_special_project_in_log = EMERGENCY_BUOY_PROJECT country
is_subspecies Checks if the pop/country/species is a subspecies of the target species is_subspecies = <target> country pop leader species
is_valid Checks to see if target scope is valid for the country/planet/army is_valid = yes/no planet country army
check_pop_faction_parameter Checks if one of the faction's parameters is the same as target scope check_pop_faction_parameter = { which = <parameter> value = <target> } pop_faction
is_robot_pop Checks if the pop is a robot is_robot_pop = yes pop
num_fallen_empires Checks the number of fallen empires in the galaxy num_fallen_empires > 3 country
is_preferred_weapons Checks if the country's AI prefers weapons using this component tag is_preferred_weapons = weapon_type_energy country
has_access_fleet Checks if the target country is allowed to enter the system has_access_fleet = <target> galactic_object
is_point_of_interest Checks if the planet/country/ship/system/ambient object has a specific point of interest for a specific event chain for a specific country is_point_of_interest = { id = <id> event_chain = <event_chain> owner = <target> } planet country ship galactic_object ambient_object
terraformed_by Checks if planet is terraformed by country. terraformed_by = <scope> planet
has_megastructure Checks if a country or star has a mega structure. has_megastructure = spy_orb_4 country galactic_object
recently_lost_war Checks if the country recently lost a war ('recently' meaning recent enough to have a truce) recently_lost_war = yes country
has_research_agreement Checks if two countries have a research agreement. has_research_agreement = <target> country
upgrade_days_left Checks how many days an upgrading megastructure will take to complete its upgrade. upgrade_days_left > 360 megastructure
has_any_megastructure Checks if the scope has a megastructure has_any_megastructure = yes planet galactic_object
former_living_standard_type Compares the former living standard type with the given one. former_living_standard_type = living_standard_normal pop
former_citizenship_type Compares the former citizenship type with the given one. former_citizenship_type = citizenship_full pop
former_military_service_type Compares the former military service type with the given one. former_military_service_type = military_service_full pop
former_slavery_type Compares the former slavery type with the given one. former_slavery_type = slavery_normal pop
former_purge_type Compares the former purge type with the given one. former_purge_type = purge_normal pop
former_population_control_type Compares the former population control type with the given one. former_population_control_type = population_control_yes pop
former_migration_control_type Compares the former migration control type with the given one. former_migration_control_type = migration_control_yes pop
is_alliance_fleet Checks if the scoped fleet is an alliance fleet. is_alliance_fleet = <yes/no> fleet
has_forbidden_jobs Check that you have forbidden job of a specific type has_forbidden_jobs = "miner" planet
is_researching_special_project Checks if the country is currently researching a specific special project is_researching_special_project = special_project_name country leader
last_activated_relic Checks if the specified relic was the last activated one last_activated_relic = <relic_key> country
any_system_planet Iterate through each planet (colony or not) in the current system - checks whether the enclosed triggers return true for any of them any_system_planet = { <triggers> } galactic_object
is_scope_type Checks currently in the specified scope: is_scope_type = fleet

valid tokens are: none, megastructure, planet, country, ship, pop, fleet, galactic_object, leader, army, ambient_object, species, design,pop_faction, war, alliance, starbase,deposit,observer, sector.

all
is_robotic Check if the species in the scope is a robot species or not is_robotic = <yes/no> species
num_sapient_pops Checks the number of sapient pops on the planet/country num_sapient_pops > 12 planet country
has_unlocked_all_traditions Checks if the country has unlocked all traditions has_unlocked_all_traditions = yes/no country
has_potential_claims Checks if the country has any potential claims they can make. has_potential_claims = yes/no country
civics_count Checks the countrys' number of civics civics_count < 3 country
has_available_jobs Check that you have available job of a specific type has_available_jobs = "miner" planet
is_galactic_custodian Checks if an empire is Custodian of the Galactic Council is_galactic_custodian = yes/no country
has_galactic_custodian Checks if the Galactic Community has named a Custodian has_galactic_custodian = yes/no all
is_galactic_emperor Checks if an empire is the Galactic Emperor is_galactic_emperor = yes/no country
has_galactic_emperor Checks if the Galactic Emperor has taken over has_galactic_emperor = yes/no all
imperial_authority Checks imperial authority. imperial_authority >=< 40 all
has_stage_modifier Checks if the espionage operation has a certain modifier specific for the current stage has_stage_modifier = <modifier> espionage_operation
galactic_defense_force_exists Checks if the Galactic Defense Force or Imperial Armada exists galactic_defense_force_exists = yes/no all
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 } 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 } country
has_intel Checks if the specified intel is available for the target country (stale intel will not return true) has_intel = { who = <target> intel = system_low_intel } country
has_stale_intel Checks if the specified intel is stale for the target country (available intel will not return true) has_stale_intel = { who = <target> intel = system_low_intel } country
and all inside trigger must be true all
or At least one entry inside the trigger must be true all
is_star Checks if the planet is a star is_star = yes planet
is_asteroid Checks if the planet is an asteroid is_asteroid = yes planet
species_portrait Checks if the species (or pop/empire's dominant species) uses a certain portrait species_portrait = rep13 country pop species
is_neutral_to Checks if the country has a neutral attitude towards target country is_neutral_to = <target> country
trust Checks the country's trust of the target country trust = { who = <target> value = 50/variable } country
name_list_category Checks if a specific name list is used for the a species during empire creation dlc_recommendation
current_stage Checks if the specified stage is currently active in the scoped situation. current_stage = <stage> (name defined in situation's stages) situation
is_leased Checks if the scoped fleet is leased. is_leased = <yes/no> fleet
lease_days Checks the number of days left before fleet lease contract is finished lease_days < 77 fleet
has_loyalty Checks the subject's current loyalty to its overlord. has_loyalty >=< -50 country
has_monthly_loyalty Checks the subject's current monthly loyalty gain/loss. has_monthly_loyalty >=< -5 country
hidden_trigger Hides the tooltip for the triggers within hidden_trigger = { <triggers> } all
has_district Checks if the planet has any, or a specific, district has_district = yes

has_district = district_mining

planet
free_district_slots Checks the planet's number of slots available for new constructions free_district_slots > 2 planet
diplomacy_weight Checks the country's diplomacy weight diplomacy_weight > 200 country
has_owner Checks if the planet is colonized (in planet scope) or the system has an owner (in system scope) has_owner = yes planet galactic_object
free_housing Checks the planet's available housing free_housing > 5 planet
is_ai Checks if the country is played by the AI is_ai = no country
always Sets trigger to be either always true or false always = yes all
has_trait Checks if a pop/leader/species/country's dominant species has a certain trait has_trait = leader_trait_carefree country pop leader species dlc_recommendation
has_ethic Checks if a country has a certain ethos has_ethic = ethic_fanatic_pacifist country pop dlc_recommendation
is_owned_by Checks if the planet/system/army/ship is owned by the target country is_owned_by = <target> megastructure planet ship pop fleet galactic_object leader army pop_faction starbase deposit sector archaeological_site first_contact spy_network espionage_operation agreement situation
is_immortal Checks if the leader is immortal (either by script effect or species characteristics) is_immortal = yes/no leader
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 pop species
days_passed Checks the number of in-game days passed since the 2200.1.1 start days_passed < 15 all
free_amenities Checks the planet's available amenities free_amenities > 5 planet
has_deficit Checks if the country has a deficit of the defined resource has_deficit = minerals country
has_commercial_pact Check if the country has a commercial pact with target country has_commercial_pact = <target> country
is_being_assimilated Checks if the pop is being purged is_being_assimilated = yes pop
has_unemployed_pop_of_category Checks if the planet has an unemployed pop of a category has_unemployed_pop_of_category = bio_trophy planet
num_guaranteed_colonies Checks the number of guaranteed colonies defined in setup num_guaranteed_colonies > 1 all
num_owned_relics Checks the number of relics owned by the scoped country num_owned_relics > 1 country
has_civic_in_slot Checks if the country has a civic in a slot has_civic_in_slot = { civic = civic_galactic_sovereign index = 2 } country
has_branch_office Check if the planet has a branch office owned by target country/any country/no country has_branch_office = <target/yes/no> planet
is_same_species checks if the scoped object is of the same species as another object is_same_species = <target> country ship pop leader army species
is_criminal_syndicate Checks if the country is a criminal syndicate is_criminal_syndicate = yes country
is_blocker Checks if scoped deposit is a blocker-type is_blocker = yes deposit
is_same_empire Checks if the country is the same as another, target country is_same_empire = <target> country
free_branch_office_building_slots Checks the planet's number of branch office slots available for new constructions free_branch_office_building_slots > 2 planet
branch_office_value Checks the planet's branch office value branch_office_value = { who = <target> value > 10/variable } planet
free_jobs Checks the number of jobs compared to pops on the planet free_jobs > 12 planet
is_planet_class Checks if the planet is of a certain class is_planet_class = pc_tundra/<planet scope> planet dlc_recommendation
has_strategic_resource Checks if the planet has any strategic resource has_strategic_resource = yes planet
is_star_class Checks if the system/planet(star) is of a certain class is_star_class = sc_black_hole/<system scope> planet galactic_object
has_technology Checks if the country has a technology (of at least a specific level) has_technology = tech_spaceport_4 country
can_research_technology Checks whether the current country is allowed to have the specified technology, i.e. does it fulfill the potential = { } field for that tech, and for any prereq techs that tech has. can_research_technology = <tech key> country
can_copy_random_tech_from Checks whether the target country has a technology the current country can steal via copy_random_tech_from effect can_copy_random_tech_from = {

who = <country> category = computing (optional) area = physics (optional) }

country
can_set_policy Checks if the country is allowed to set its policy to a specific one using set_policy effect can_set_policy = { policy = <key> option = <key> } country
any_fleet_in_orbit Iterate through each fleet orbiting the current planet/starbase/megastructure - checks whether the enclosed triggers return true for any of them any_fleet_in_orbit = { <triggers> } megastructure planet starbase
planet_devastation Checks the planet's devastation planet_devastation > 10 planet
is_pop_category Checks if the pop has the chosen pop category is_pop_category = <key> pop
won_the_game Checks if scoped country won the game won_the_game = yes country
planet_stability Compares the stability present on the planet with the given value planet_stability > 50 planet
perc_communications_with_playable Checks the country's percentage of communications with playable empires perc_communications_with_playable > 0.3 country
planet_crime Compares the crime present on the planet with the given value planet_crime > 50 planet
has_planetary_ascension_tier Checks if the planet's ascension tier is as specified: has_planetary_ascension_tier >= 1 planet
has_job Checks if the pop has a specific job, or any job if set to yes has_job = <key/yes> pop
has_planet_modifier Checks if the planet has a specific planet modifier has_planet_modifier = pm_titanic_life planet
is_deposit_type Checks if deposit is specified type is_deposit_type = d_immense_engineering_deposit deposit
has_built_species Checks if country has a built species defined has_built_species = yes/no country
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)> } planet country
num_districts Checks the number the planet has of any, or a specific, district num_districts = { type = <key/any> value > 2/variable } planet country
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 } planet
has_planet_flag Checks if the planet has a specific flag has_planet_flag = <flag> (note: one can use e.g. my_flag@from to track relationships between objects) planet
has_first_contact_flag Checks if the first contact site has a specific flag has_first_contact_flag = <flag> (note: one can use e.g. my_flag@from to track relationships between objects) first_contact
has_situation_flag Checks if the situation has a specific flag has_situation_flag = <flag> (note: one can use e.g. my_flag@from to track relationships between objects) situation
has_agreement_flag Checks if the agreement has a specific flag has_agreement_flag = <flag> (note: one can use e.g. my_flag@from to track relationships between objects) agreement
has_federation_flag Checks if the federation has a specific flag has_federation_flag = <flag> (note: one can use e.g. my_flag@from to track relationships between objects) federation
has_country_flag Checks if the empire has a specific flag has_country_flag = <flag> (note: one can use e.g. my_flag@from to track relationships between objects) country
has_fleet_flag Checks if the fleet has a specific flag has_fleet_flag = <flag> (note: one can use e.g. my_flag@from to track relationships between objects) fleet
has_ship_flag Checks if the ship has a specific flag has_ship_flag = <flag> (note: one can use e.g. my_flag@from to track relationships between objects) ship
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) 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) 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) 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) 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) 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) 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) 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) espionage_asset
is_ship_class Checks if the ship/fleet/design is a specific class is_ship_class = shipclass_colonizer ship fleet design
has_attitude_behavior Checks if the country has a AI behavior towards another country has_attitude_behavior = { target = <country> behavior = attack } country
is_ship_size Checks if the ship/fleet/design is a specific ship size is_ship_size = mining_station ship fleet design
is_capital Checks if the planet is its owner's capital is_capital = yes planet
is_capital_system Checks if the solar system has its owner's capital is_capital_system = yes galactic_object
has_ground_combat Checks if ground combat is taking place on the planet has_ground_combat = yes planet
is_at_war Checks if the country is at war is_at_war = yes country
num_owned_leaders Checks the country's number of owned (recruited) non-envoy leaders (includes the ruler) num_owned_leaders < 8 country
num_owned_planets Checks the country's or sector's number of owned planets num_owned_planets < 8 country sector
has_government Checks if the country has a specific government type, or any government at all has_government = <yes/any/no/none/type> country
num_pops Checks the number of pops on the planet/country/pop faction/sector num_pops > 12 planet country pop_faction sector
num_unemployed Checks the number of unemployed pops on the planet num_unemployed > 3 planet
can_work_specific_job Checks if the pop can work a specific job if a vacancy becomes available can_work_specific_job = <key> pop
is_primitive Checks if the country is a primitive, pre-FTL civilization is_primitive = yes country
is_archetype Checks if species has specified archetype: is_archetype = PRESAPIENT species
is_inside_nebula checks if the planet/ship/fleet/system is inside a nebula is_inside_nebula = yes planet ship fleet galactic_object
is_in_frontier_space checks if the planet/ship/fleet/system is in frontier space is_in_frontier_space = yes planet ship fleet galactic_object
is_inside_border Checks if the planet/ship/fleet/system is inside the borders of the target country is_inside_border = <target> planet ship fleet galactic_object
any_country Iterate through all countries - checks whether the enclosed triggers return true for any of them any_country = { <triggers> } all
any_pop Checks if any of the planet/species/pop faction pops meet the specified criteria. Warning: deprecated, use any_owned_pop/any_species_pop any_pop = { <triggers> } planet species pop_faction
is_overlord Checks if the country is the overlord of any subject countries is_overlord = yes country
is_at_war_with Checks if the country is at war with the target country is_at_war_with = <target> country
their_opinion Checks target country's opinion value of the current country their_opinion = { who = <target> value > 25/variable } country
is_same_species_class Checks if the pop/country is of the same species class as another pop/country is_same_species_class = <target> country ship pop leader army species
has_federation Checks if the country is in a federation has_federation = yes country
is_colonizable Checks if the planet can theoretically be colonized is_colonizable = yes planet
has_level Checks if the leader has a specific experience level has_level > 2 leader
num_minerals Checks the planet's total amount of minerals num_minerals < 20 planet
num_physics Checks the planet's total amount of physics research num_physics = 8 planet
num_society Checks the planet's total amount of society research num_society > 8 planet
num_engineering Checks the planet's total amount of engineering research num_engineering < 8 planet
num_modifiers Checks the planet's number of modifiers num_modifiers < 3 planet
has_any_strategic_resource Checks if the planet has any strategic resource has_any_strategic_resource = yes planet
has_pop_flag Checks if the pop has a specific flag has_pop_flag = <flag> (note: one can use e.g. my_flag@from to track relationships between objects) pop
is_occupied_flag Checks if the planet is under military occupation is_occupied_flag = yes planet
is_damaged Checks if the ship is damaged is_damaged = yes ship
has_hp Checks the ship's hull points has_hp > 200 ship
is_surveyed Checks if the planet/system has been survey by target country is_surveyed = { who = <target> status = yes } planet galactic_object
has_global_flag Checks if a Global Flag has been set has_global_flag = <flag> (note: one can use e.g. my_flag@from to track relationships between objects) all
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 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 agreement situation
check_variable Checks a variable for the country/leader/planet/system/fleet check_variable = { which = <variable> value ><= <float>/<variable>/<scope.variable>/trigger:<trigger> } 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 agreement situation
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) }

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 agreement situation
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 megastructure planet country ship pop fleet galactic_object leader army species design pop_faction spy_network espionage_operation
check_economic_production_modifier_for_job Checks the value of economic production modifiers a pop has for producing a certain resource via a certain job. Can specify checking all modifiers or just those from traits. WARNING: expensive trigger check_economic_production_modifier_for_job = {

job = miner resource = minerals resource = { minerals = 0.5 energy = 0.5 } (for evaluating the bonuses to multiple resources, with weights) species_modifiers_only = no (default: yes - only checks trait modifiers, trait triggered pop modifiers, and species habitability) value > 1.25 }

pop
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

all
is_colony Checks if the planet is colonized is_colony = yes planet
habitability Checks the planet's habitability (0 to 1) for target pop/species habitability = { who = <target> value = 0.6 } planet
has_building Checks if the planet has any, or a specific, building has_building = yes

has_building = building_capital_3

planet
has_holding Checks if the planet has any, or a specific, holding has_holding = { holding = any/none/<holding> owner = <owner> } planet
has_active_building Checks if the planet has a specific building, and that that building is not disabled or ruined. has_active_building = yes

has_active_building = building_capital_3

planet
is_controlled_by Checks if the planet/ship/fleet is controlled by the target country is_controlled_by = <target> planet ship fleet
is_terraformed Checks if the planet has ever been terraformed is_terraformed = yes planet
is_terraforming Checks if the planet is currently being terraformed is_terraforming = yes planet
is_federation_leader Checks if the country is the leader of their federation is_federation_leader = yes country
is_mobile Checks if the scoped fleet can move. is_mobile = <yes/no> fleet
is_in_sensor_range Checks if the specified ship, fleet, planet or system is within sensor range of the scoped country. is_in_sensor_range = <ship/fleet/system> country
is_in_sensor_range_of_country Checks if the scoped ship, fleet, planet or system is within sensor range of the specified country. is_in_sensor_range_of_country = root.owner planet ship fleet galactic_object
has_star_flag Checks if the solar system has a specific flag has_star_flag = <flag> (note: one can use e.g. my_flag@from to track relationships between objects) galactic_object dlc_recommendation
has_mining_station Checks if the planet has an orbital mining station has_mining_station = yes planet
has_research_station Checks if the planet has an orbital research station has_research_station = yes planet
army_type Checks the army's type army_type = assault_army army
is_defensive_army Checks if the army is defensive is_defensive_army = yes army
has_army Checks if the planet has an army has_army = yes planet
is_advisor_active checks if a country has an advisor is_advisor_active = yes country
count_pops Checks the number of pops in the scope that fulfill the specified criteria. Warning: deprecated, use count_owned_pop/count_species_pop count_pops = { limit = { <triggers> } count < 6 } planet species pop_faction
is_enslaved Checks if the pop is a slave is_enslaved = yes pop
is_being_purged Checks if the pop is being purged is_being_purged = yes pop
is_idle Checks if scoped leader is idle is_idle = yes leader
income Checks the country's monthly energy credit income income < 90 country
expenses Checks the country's monthly energy credit expenses expenses > 28 country
num_uncleared_blockers Checks the planet's total amount of uncleared blockers num_uncleared_blockers > 3 planet
local_human_species_class Checks if local humans founder species is a specific species class local_human_species_class = MAM all
num_envoys_to_federation Checks the country's number of envoys sent to its federation num_envoys_to_federation < 2 country
num_envoys_to_galcom Checks the country's number of envoys sent to the galactic community num_envoys_to_galcom < 2 country
has_envoy_task Checks the scoped envoy's task. has_envoy_task = {

task = improve_relations/ harm_relations/ federation/ galactic_community/ spy_network/ first_contact/ strengthen_imperial_authority/ undermine_imperial_authority/ none target = <country> (optional) }

leader
has_envoy_cooldown Checks the scoped envoy currently has a cooldown on its status. has_envoy_cooldown = yes/no leader
trade_income Checks the country's energy credits income from trade for the previous month trade_income < 30 country
has_anomaly Checks if the planet has an anomaly has_anomaly = yes planet
stored_physics_points Checks the country's amount of stored physics research stored_physics_points country
stored_society_points Checks the country's amount of stored society research stored_society_points country
stored_engineering_points Checks the country's amount of stored engineering research stored_engineering_points country
balance Checks the country's energy credit balance balance < 39 country
running_balance Checks the country's running energy credit balance running_balance > 61 country
is_planet Checks if the planet is the same as target planet is_planet = <target> planet
is_pop Checks if the pop is the same as target pop is_pop = <target> pop
is_ship Checks if the ship is the same as target ship is_ship = <target> ship
is_army Checks if the army is the same as target army is_army = <target> army
is_country Checks if the country is the same as target country is_country = <target> country
is_tutorial_level Checks the country's tutorial level (0 off, 1 limited, 2 full) is_tutorial_level = 0 country
is_multiplayer Checks if the game is running in multiplayer is_multiplayer = yes all
has_event_chain Checks if the country has a specific event chain has_event_chain = old_gods_chain country
is_species_class Checks if the pop/country's founder species is a specific species class is_species_class = MAM country pop species dlc_recommendation
has_opinion_modifier Checks if the country has a specific opinion modifier towards target country or anyone has_opinion_modifier = { who = <target (optional)> modifier = encroaching_colony is_reverse = no } country
has_established_contact Checks if the country has established contact with target country has_established_contact = <target> country
has_completed_event_chain_counter Checks if the country has completed a specific counter in an event chain has_completed_event_chain_counter = { event_chain = amoebas_2_chain counter = amoebas_slaughtered } country
has_planet_class Checks if the system has planet of specific class has_planet_class = pc_tundra/<scope> galactic_object
is_disabled Checks if the ship/fleet is disabled is_disabled = yes ship fleet
has_existing_ship_design Checks if the country has a specific ship design available country
has_resource Checks if the planet has a specific amount of a specific resource has_resource = { type = minerals amount < 5 }

has_resource = no

planet country deposit
has_building_construction Checks if the planet has any, or a specific, ongoing building construction has_building_construction = yes

has_building_construction = building_capital_3

planet
num_fallen_empires_setting Checks the number of fallen empires defined in setup num_fallen_empires_setting > 1 all
any_deposit Iterate through each deposit on the planet - checks whether the enclosed triggers return true for any of them any_deposit = { <triggers> } planet
free_building_slots Checks the planet's number of slots available for new constructions free_building_slots > 2 planet
has_relation_flag Checks if the country has a relation flag towards target country has_relation_flag = {

who = <target> flag = <flag> (note: one can use e.g. my_flag@from to track relationships between objects) }

country
reverse_has_relation_flag Checks if the target country has a relation flag towards the country reverse_has_relation_flag = {

who = <target> flag = <flag> (note: one can use e.g. my_flag@from to track relationships between objects) }

country
has_moon Checks if the planet has a moon has_moon = yes planet
num_moons Checks the planet's number of moons num_moons < 4 planet
is_sapient Checks if the pop is sapient is_sapient = no pop species
is_preventing_anomaly Checks if the planet is prevented from generating anomalies is_preventing_anomaly = yes planet
has_deposit_for Checks if the planet has a deposit for a specific ship class has_deposit_for = shipclass_mining_station planet
colony_age Checks the planet's (colony's) age in months colony_age > 12 planet
is_bottleneck_system Checks if the system is bottleneck within the range NDefines::NGameplay::SYSTEM_BOTTLENECK_RADIUS is_bottleneck_system = yes galactic_object
is_rim_system Checks if the system is on the galactic rim is_rim_system = yes galactic_object
any_rim_system Iterate through all rim systems - checks whether the enclosed triggers return true for any of them any_rim_system = { <triggers> } all
is_country_type Checks if the country is a specific type is_country_type = fallen_empire country
has_modifier Checks if the scope object has a certain modifier has_modifier = <modifier> megastructure planet country ship pop galactic_object pop_faction federation spy_network espionage_operation
any_ship_in_system Iterate through each ship in the current system - checks whether the enclosed triggers return true for any of them any_ship_in_system = { <triggers> } galactic_object
mission_progress Checks if the observation post has achieved specific progress in a mission mission_progress > 0.7 fleet
num_ethics Checks the country/pop's number of ethics num_ethics = 3 country pop
num_traits Checks the country/pop/leader/species' number of traits num_traits < 3 country pop leader species
has_truce Checks if the country has a truce with target country has_truce = <target> country
has_system_trade_value Checks the system's total trade value (collected and uncollected) has_system_trade_value > 200 galactic_object
has_collected_system_trade_value Checks the system's trade value that is collected by any country has_collected_system_trade_value > 200 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 galactic_object
can_access_system Checks if the scoped fleet is able to enter the system. Note: Avoid overusing this, it is a performance-intensive trigger! can_access_system = <solar system> fleet
is_ringworld Checks if the planet is a ringworld is_ringworld = yes planet
member_of_faction Checks if the pop belongs to any, or a specific, faction member_of_faction = no/<pop faction scope>/isolationist pop
support Checks the faction's support level support > 0.5 pop_faction
is_ideal_planet_class Checks if the planet is of the ideal class for target country, species or pop is_ideal_planet_class = { who = <target> status = yes/no } planet
is_pop_faction_type Checks the faction's type is_pop_faction_type = isolationist pop_faction
intel_level Checks the country's intel level of target system intel_level = { level > low system = <target> } country
is_researching_area Checks the scientist's field of research is_researching_area = society leader
situation_progress Checks if the scoped situation's progress is a certain value. situation_progress > 15 situation
situation_monthly_progress Checks if the scoped situation's monthly progress is a certain value. Returns the cached value from the last monthly tick. situation_monthly_progress > 1 situation
is_situation_type Checks if the scoped situation is a certain type. is_situation_type = my_situation_type situation
current_situation_approach Checks if the specified approach has been picked on the scoped situation. current_situation_approach = <approach> (name field of the approach) situation
can_set_situation_approach Checks if the specified approach is allowed to be picked (according to potential and allow triggers) on the scoped situation. can_set_situation_approach = <approach> (name field of the approach) situation
any_owned_leader Iterate through each leader that is owned by the country - checks whether the enclosed triggers return true for any of them any_owned_leader = { <triggers> } country
any_owned_pop Iterate through all owned pops - checks whether the enclosed triggers return true for any of them any_owned_pop = { <triggers> } planet country pop_faction sector
has_faction Checks if the country has any instance of target faction type has_faction = isolationist country
count_owned_pops Count the number of owned pops in the country that fulfill the specified criteria. Warning: deprecated, use count_owned_pop count_owned_pops = { limit = { <triggers> } count > 12 } planet country pop_faction
can_declare_war Checks if the country can declare war against target country can_declare_war = {

target = <target country> attacker_war_goal = <war goal> }

country
is_hostile Checks if the country is hostile towards target country is_hostile = <target> country
is_forced_neutral Checks if the country has been set to be neutral towards target country via set_faction_hostility is_forced_neutral = <target> country
is_forced_friendly Checks if the country has been set to be friendly towards target country via set_faction_hostility is_forced_friendly = <target> country
has_communications Checks if the country has established communications with target country has_communications = <target> country
has_country_resource Checks the country's amount of a specific stored resource has_country_resource = { type = minerals amount > 99/variable } country
has_leader_flag Checks if the leader has a specific flag has_leader_flag = <flag> (note: one can use e.g. my_flag@from to track relationships between objects) leader
num_killed_ships Checks how many of target country's ships that the country has destroyed num_killed_ships = { target = <target> value > 5/variable } country
num_taken_planets Checks how many planets the country has taken from target country num_taken_planets = { target = <target> value > 1 } country
leader_of_faction Checks if the leader is the leader of a faction leader_of_faction = yes/no/<pop faction scope>/isolationist leader
is_scope_valid Checks if the current scope is valid is_scope_valid = yes all
opposing_ethics_divergence Checks how far removed the country/pop's ethos is from target's opposing_ethics_divergence = { steps > 1/variable who = <target> } country pop
is_war_leader Checks if the country leads in a war is_war_leader = yes country pop_faction
is_in_federation_with Checks if the country is in a federation with target country is_in_federation_with = <target> country
can_change_policy Checks if the country can change a specific policy can_change_policy = slavery country
is_ironman Check if current game is running in ironman mode is_ironman = yes all
species_gender Checks what gender settings the species allows. species_gender = female/male/indeterminable/not_set species
has_monthly_income Checks the country's monthly income of a specific resource has_monthly_income = { resource = engineering_research value < 20 } country
else Evaluates the triggers if the display_triggers of preceding 'if' or 'else_if' is not met

if = { limit = { <display_triggers> } <triggers> } else = { <triggers> }

all
has_policy_flag Checks if the country has a specific policy has_policy_flag = slavery_not_allowed country
count_deposits Checks the number of deposits on the planet that meet the specified criteria count_deposits = { type = <deposit> count < 2 } planet
has_tech_option Checks if the country has a tech research option currently available has_tech_option = tech_mining_network_2 country
count_tech_options Checks the country's number available tech research options in a specific field count_tech_options = { area = physics count > 0/variable } country
has_point_of_interest Checks if the scoped country has a specific point of interest in its situation log has_point_of_interest = { poi = <id> } planet country ship fleet galactic_object ambient_object
is_being_repaired Checks if the ship/fleet is being repaired is_being_repaired = yes ship fleet
compare_distance Checks whether the current scope is closer to a specified object than it is to a second specified object within the same solar system. compare_distance = { closer_object = root further_object = from } megastructure planet ship pop fleet galactic_object leader ambient_object starbase deposit archaeological_site first_contact
any_ambient_object Iterate through every ambient object in the game - checks whether the enclosed triggers return true for any of them any_ambient_object = { <triggers> } all
any_system_ambient_object Iterate through every ambient object in the solar system - checks whether the enclosed triggers return true for any of them any_system_ambient_object = { <triggers> } galactic_object
has_ambient_object_flag Checks if the ambient object has a specific flag has_ambient_object_flag = <flag> (note: one can use e.g. my_flag@from to track relationships between objects) ambient_object
is_ambient_object_type Checks if the ambient object is a specific type. is_ambient_object_type = caravaneer_billboard_1 ambient_object
galaxy_percentage Checks if the country has a specific percentage (0.00-1.00) of the galaxy within its borders galaxy_percentage > 0.40 country
custom_tooltip_fail Shows custom text only when the associated trigger fails custom_tooltip_fail = {

text = <text> <triggers> }

all
is_in_combat Checks if the ship/fleet is engaged in combat is_in_combat = yes ship fleet
any_member Iterate through each member of the federation - checks whether the enclosed triggers return true for any of them any_member = { <triggers> } federation
is_guaranteeing Checks if the country is guaranteeing the independence of target country is_guaranteeing = <target> country
is_war_participant Checks if target country is participating in the war on the specified side is_war_participant = { who = <target>/war = <target> side = attackers/defenders/<target> } country war
is_homeworld Checks if the planet is its owner's homeworld is_homeworld = yes planet
is_friendly_to Checks if the country has a friendly attitude towards target country is_friendly_to = <target> country
is_hostile_to Checks if the country has a hostile attitude towards target country is_hostile_to = <target> country
is_protective_to Checks if the country has a protective attitude towards target country is_protective_to = <target> country
is_threatened_to Checks if the country has a threatened attitude towards target country is_threatened_to = <target> country
years_passed Checks the number of in-game years passed since the 2200 start years_passed < 150 all
mid_game_years_passed Checks the number of in-game years passed since the mid-game start date mid_game_years_passed >= 50 all
end_game_years_passed Checks the number of in-game years passed since the end-game start date end_game_years_passed >= 50 all
is_dismissive_to Checks if the country has a dismissive attitude towards target country is_dismissive_to = <target> country
is_patronizing_to Checks if the country has a patronizing attitude towards target country is_patronizing_to = <target> country
is_angry_to Checks if the country has an angry attitude towards target country is_angry_to = <target> country
is_neighbor_of Checks if the country/planet is neighbors with target country is_neighbor_of = <target> planet country ship fleet galactic_object
is_rival Checks if the country has a rival attitude towards target country is_rival = <target> country
is_unfriendly_to Checks if the country has an unfriendly attitude towards target country is_unfriendly_to = <target> country
is_loyal_to Checks if the country has a loyal attitude towards target country is_loyal_to = <target> country
is_disloyal_to Checks if the country has a disloyal attitude towards target country is_disloyal_to = <target> country
is_cordial_to Checks if the country has a cordial attitude towards target country is_cordial_to = <target> country
is_domineering_to Checks if the country has a domineering attitude towards target country is_domineering_to = <target> country
fleet_power Checks the scope's total fleet power fleet_power > 2500 country fleet federation
has_election_type Checks if the country has a specific election type has_election_type = oligarchic country
has_ai_personality Checks if an AI empire has a certain personality type has_ai_personality = fanatic_befrienders country
has_ai_personality_behaviour Checks if a country has a certain AI personality behavior has_ai_personality_behaviour = slaver country
has_valid_ai_personality Checks if the country has a valid AI personality has_valid_ai_personality = yes country
has_migration_access Checks if the country has migration access to target country has_migration_access = <target> country
logged_in_to_pdx_account Checks if the local human is logged in to a PDX account. This WILL cause an out of sync if used for anything that can change the game state all
would_join_war Checks if the country would join the side of target country in a hypothetical war would_join_war = { attacker = <target> defender = <target> side = <target> } 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 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 all
has_skill Checks if the leader has a specific experience level has_skill > 2 leader
has_experience Checks if the leader has a specific amount of experience has_experience < 900 leader
any_neighbor_system Iterate through all a system's neighboring systems by hyperlane - checks whether the enclosed triggers return true for any of them any_neighbor_system = { <triggers> } galactic_object
is_under_colonization Checks if the planet is being colonized is_under_colonization = yes planet
has_colony_progress Checks the planet's progress towards completing colonization has_colony_progress > 20 planet
distance_to_empire Checks the ship/fleet/planet/system's galaxy map distance to target empire distance_to_empire = {

who = <target> distance = x use_bypasses = no (default: yes) type = hyperlane/euclidean (default: hyperlane) }

planet ship fleet galactic_object
is_unemployed Checks if the pop is unemployed is_unemployed = yes pop
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 } country
is_within_borders_of Checks if the planet/system/fleet/ship is within the borders of the target country is_within_borders_of = <target> planet ship fleet galactic_object
num_marauder_empires_to_spawn Checks the number of marauder empires specified by the galaxy setup num_marauder_empires_to_spawn > 1 all
has_species_flag Checks if the species has a specific flag has_species_flag = <flag> (note: one can use e.g. my_flag@from to track relationships between objects) species
has_auto_move_target Checks if the fleet/ship has an active auto-move target set has_auto_move_target = yes ship fleet
count_starbase_modules Checks the number of starbase modules that are of the specified type or not count_starbase_modules = { type = anchorage (optional) include_being_constructed = yes/no count < 12/variable } galactic_object starbase
count_starbase_buildings Checks the number of starbase buildings that are of the specified type or not count_starbase_buildings = { type = command_center (optional) include_being_constructed = yes/no count < 12/variable } galactic_object starbase
is_belligerent_to Checks if the country has a belligerent attitude towards target country is_belligerent_to = <target> country
is_imperious_to Checks if the country has a imperious attitude towards target country is_imperious_to = <target> country
is_arrogant_to Checks if the country has a arrogant attitude towards target country is_arrogant_to = <target> country
has_association_status Check if the country has federation association status with target country has_association_status = <target> country
is_original_owner Checks if the target country is the planet's original owner is_original_owner = <target> planet
can_work_job Checks if the pop can work a job can_work_job = yes pop
subject_can_diplomacy Checks if the current country is allowed by its overlord to take diplomatic action subject_can_diplomacy = <target> country
has_surveyed_class Checks if the country has surveyed any planet of a specific class has_surveyed_class = pc_tundra country
fleet_size Checks the fleet's fleet size fleet_size < 125 fleet
host_has_dlc Checks if the host has a specific DLC enabled all
local_has_dlc Checks if the local player has a specific DLC enabled all
num_rare_techs Checks the country's number of researched rare technologies num_rare_techs < 4 country
num_repeatable_techs Checks the country's number of researched repeatable technologies num_repeatable_techs < 4 country
num_researched_techs Checks the country's number of researched technologies num_researched_techs > 21 country
num_researched_techs_of_tier Checks the country's number of researched technologies of a certain tier num_researched_techs_of_tier = { tier = 2 value > 21 country
can_research_tier Checks whether the country can research a certain tech tier can_research_tier = { tier = 1 area = society } country
has_mandate Checks if the leader has any, or a specific, mandate has_mandate = no

has_mandate = mandate_shipwright

leader
nor An inverted OR trigger all
nand An inverted AND trigger all
num_energy Checks the planet's total amount of energy num_energy > 19 planet
num_armies Checks the country's or planet's number of armies num_armies < 20 planet country
has_war_goal Checks if a war goal is set. Only works in diplomatic phrases. has_war_goal = yes all
max_naval_capacity Checks the country's max naval capacity in absolute numbers max_naval_capacity > 120 country
used_naval_capacity_integer Checks the country's used naval capacity in absolute numbers used_naval_capacity_integer < 89 country
used_naval_capacity_percent Checks the country's used naval capacity in relative terms (0.00-1.00) used_naval_capacity_percent < 0.75 country
max_starbase_capacity Checks the country's max starbase capacity max_starbase_capacity = 15 country
used_starbase_capacity_integer Checks the country's used starbase capacity in absolute numbers used_starbase_capacity_integer = 15 country
used_starbase_capacity_percent Checks the country's used starbase capacity in relative terms (0.00-1.00) used_starbase_capacity_percent < 0.75 country
war_begun_num_fleets_gone_mia Checks amount of target country's fleets that went MIA when the war began war_begun_num_fleets_gone_mia = { who = <target> value < 10 } war
custom_tooltip_success Shows custom text only when the associated trigger passes custom_tooltip_success = {

text = <text> <triggers> }

all
has_active_event Checks if country has active events: has_active_event = {

event.1 event.2 event.n }

country
success_text For 'desc = {trigger = {' use. Shows custom text when the associated trigger passes. success_text = {

text = <text> <triggers> }

all
fail_text For 'desc = {trigger = {' use. Shows custom text when the associated trigger fails. fail_text = {

text = <text> <triggers> }

all
has_defensive_pact Checks if the country has a defensive pact with target country has_defensive_pact = <target> country
calc_true_if Returns true if the specified number of sub-triggers return true calc_true_if = { amount = 2/variable <trigger> <trigger> <trigger> } all
is_researching_technology Checks if the country is currently researching a specific technology is_researching_technology = tech_gene_seed_purification country
is_subject Checks if the country is a subject of any other country is_subject = no country
any_subject Iterate through all subjects of the scoped country - checks whether the enclosed triggers return true for any of them any_subject = { <triggers> } country
log Prints a message to game.log for debugging purposes log = <string> all
is_enigmatic_to Checks if the country has a enigmatic attitude towards target country is_enigmatic_to = <target> country
is_berserker_to Checks if the country has a berserker attitude towards target country is_berserker_to = <target> country
has_same_ethos Checks if a country has the same ethos (complete set of ethics) as a country or pop has_same_ethos = <target> country pop
is_majority_species Checks if the specified species is the majority species on the current planet. is_majority_species = <species> planet
has_closed_borders Check if the country has closed its borders to target country has_closed_borders = <target> country
is_difficulty Checks the game's difficulty level (0 to 5, with 0 as Cadet and 5 as Grand Admiral is_difficulty = 2 all
is_exact_same_species Checks if the scoped object is originally of the same species, or currently of the exact same species instance, as another object is_exact_same_species = <target> country ship pop leader army species
can_control_access_for Checks if the country is allowed to control target country's border access to the country can_control_access_for = <target> country
is_overlord_to Checks if the country has an overlord attitude towards target country is_overlord_to = <target> country
is_improving_relations_with Checks if the country has an envoy sent to the target country to improve relations is_improving_relations_with = <target> country
is_harming_relations_with Checks if the country has an envoy sent to the target country to harm relations is_harming_relations_with = <target> country
distance_to_core_percent Checks the ship/fleet/planet/leader/pop/system's distance to the galactic core in percent, where center = 0 and galactic rim = 100 distance_to_core_percent < 60 all
has_non_aggression_pact Check if the country has a non-aggression pact with target country has_non_aggression_pact = <target> country
happiness_planet Checks the average happiness on the planet happiness_planet < 0.6 planet
pre_ruler_leader_class Checks the rulers previous leader class pre_ruler_leader_class = scientist leader
has_hp_percentage Checks a fleet or ship's hit points percentage has_hp_percentage > 0.5 ship fleet
can_join_factions Checks if scoped pop can join a faction pop
is_custodial_to Checks if the country has a custodial attitude towards target country is_custodial_to = <target> country
has_valid_civic Checks if the current country has a certain civic and if its validated has_valid_civic = my_test_civic_1 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 country
num_tradition_categories Checks number of tradition categories the country has picked num_tradition_categories > 2 country
is_event_leader Checks if a leader is a special event leader (defined in create_leader) is_event_leader = no leader
is_crises_allowed Check if current game allows crises is_crises_allowed = yes all
allowed_crisis_type Checks which crisis is allowed to spawn in the current game allowed_crisis_type = prethoryn/unbidden/contingency/all all
is_custom_capital_location Checks if the spatial object is its owner's custom capital location is_custom_capital_location = yes planet ship fleet galactic_object
resource_income_to_expenditure_balance_ratio Checks ratio between the country's income and expenditures for a specific resource. E.g. if it makes 80 energy and spends 100, its ratio is 0.8. resource_income_to_expenditure_balance_ratio = {

resource = <resource_name> value ><= <value> }

country
resource_stockpile_compare Checks specific resource stockpile for the country scope: resource_stockpile_compare = {

resource = <resource_name> value ><= <value> mult = <variable> (optional: multiply the value by a variable, e.g. for when you are doing the same with add_resource) }

country
planet_resource_compare Checks specific resource value for scoped planet. Warning: performance-intensive trigger! planet_resource_compare = {

resource = <resource_name> value ><= <value>/variable> type = upkeep/produces/balance(default) }

planet
resource_income_compare Checks specific resource income value for the country scope (note: checks profit minus loss, not revenue): resource_income_compare = {

resource = <resource_name> value ><= <value> }

country
resource_expenses_compare Checks specific resource expenses value for the country scope: resource_expenses_compare = {

resource = <resource_name> value ><= <value> }

country
resource_revenue_compare Checks specific resource revenue value for the country scope: resource_revenue_compare = {

resource = <resource_name> value ><= <value> }

country
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> }

country
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) }

planet country pop_faction sector
num_species Checks if the number of species on a planet, in an empire or in a pop faction is according to the argument. Does not count genetically modified species as unique. num_species > 8 planet country pop_faction
num_unique_species Checks if the number of species on a planet, in an empire or in a pop faction is according to the argument. Counts genetically modified species as unique. num_unique_species < 12 planet country pop_faction
has_diplo_migration_treaty Checks if two countries have a migration treaty. country
has_presence Checks if a system contains any fleets, stations, mega structures or colonized planets. has_presence = yes galactic_object
is_megastructure_type Compares the type of scope's mega structure to a type from the database. is_megastructure_type = <name of type> megastructure
is_upgrading Checks if the scope's fleet or mega structure is currently upgrading. is_upgrading = <yes/no> megastructure fleet
can_be_upgraded Checks if the scope's fleet, ship, starbase or megastructure can be upgraded. can_be_upgraded = <yes/no>. megastructure ship fleet starbase
relative_power Compares relative power between two countries. relative_power = { who = <target country> category = <fleet/economy/technology/all> value ><= <pathetic/inferior/equivalent/superior/overwhelming> country federation
has_tradition Checks if a country has the given tradition. has_tradition = tr_my_santa_claus_tradition country
any_relation Iterate through all relations - checks whether the enclosed triggers return true for any of them any_relation = { <triggers> } country
is_job_of_pop_category Checks if a job is of a certain pop category. Note that the result for this trigger is not dependent on where it is used - so it's for use in e.g. templated script values. is_job_of_pop_category = { job = <job> category = <category> } all
has_megastructure_flag Checks if the mega structure has a specific flag has_megastructure_flag = <flag> (note: one can use e.g. my_flag@from to track relationships between objects) megastructure
has_citizenship_type Checks if a species/pop/leader has a particular citizenship type in their country has_citizenship_type = { country = <who> type = <type> } pop leader species
has_population_control Checks if the pop is prevented from reproducing has_population_control = { value = bool country = scope } pop leader species
has_migration_control Checks if the pop is prevented from migrating has_migration_control = { value = bool country = scope } pop leader species
species_planet_slave_percentage Checks if a pop's planet has a specific percentage (0.00-1.00) of the same species enslaved species_planet_slave_percentage > 0.40 pop
has_ascension_perk Checks if a country has the given ascension perk. has_ascension_perk = ap_my_ascension_perk country
num_ascension_perks Compares the number of AP points the country has spent with the given value num_ascension_perks > 7 country
pop_produces_resource Checks if a pop is currently producing a particular resource pop_produces_resource = { type = minerals amount < 5.5/variable } pop
has_military_service_type Checks if a species/pop/leader has a particular military service type in their country has_military_service_type = { country = <who> type = <type> } pop leader species
has_purge_type Checks if a species/pop/leader has a particular purge type in their country has_purge_type = { country = <who> type = <type> } pop leader species
has_slavery_type Checks if a species/pop/leader has a particular slavery type in their country has_slavery_type = { country = <who> type = <type> } pop leader species
has_living_standard Checks if a species/pop/leader has a particular living standard in their country has_living_standard = { country = <who> type = <type> } pop leader species
has_citizenship_rights Checks if the pop/species/leader has rights has_citizenship_rights = yes/no pop leader
num_ascension_perk_slots Compares the number of unlocked ascension perk slots of the scope with the given value

num_ascension_perks > 7

country
is_fleet_idle Checks if the ship/fleet is idle is_fleet_idle = yes ship fleet
debug_break Trigger an assertion to stop the debugger when encountering this trigger; returns the value it is assigned debug_break = yes all
has_civic Checks if the current country has the specified civic has_civic = my_test_civic_1 country dlc_recommendation
has_authority Checks if the current country has the specified government authority has_authority = democratic country dlc_recommendation
has_invalid_civic Checks if the current country has a certain civic and if its invalidated has_invalid_civic = my_test_civic_1 country
has_colonization_control Checks if the pop is prevented from migrating has_colonization_control = { value = bool country = scope } pop leader species
has_trade_route Checks if a system has trade route going through. has_trade_route = <yes/no> galactic_object
trade_route_value Checks the trade value going through the system. trade_route_value ><= 40 galactic_object
trade_intercepted_percentage Checks the intercepted trade value ratio going through the system. trade_intercepted_percentage >=< 40 galactic_object
trade_intercepted_value Checks the intercepted trade value going through the system. trade_intercepted_value ><= 40 galactic_object
trade_protected_value Checks the protected trade value going through the system. trade_protected_value ><= 40 galactic_object
trade_protected_percentage Checks the protected trade value ratio going through the system. trade_protected_percentage >=< 40 galactic_object
planet_garrison_strength Checks the planet's army strength (as calculated by all armies including offensive or defensive owned by its current controller). Warning: moderately intensive trigger: planet_garrison_strength >= 510 planet
num_trade_routes Counts the number trade routes in the empire. num_trade_routes >=< 40 country
count_species Counts the number of species in the scope that fulfill the specified criteria, not counting sub-species as unique. count_species = { count > 4 limit = { <triggers> } } planet country
count_exact_species Counts the number of species in the scope that fulfill the specified criteria, counting sub-species as unique. count_exact_species = { count > 4 limit = { <triggers> } } planet country
is_constructing Checks if the scoped construction ship is building the specified thing is_constructing = megastructure | <megastructure type> | starbase | mining_station | research_station | observation_post | <ship class> ship fleet
has_secret_fealty_from_subject_of Checks if the country has a secret fealty from any of the target country's subjects has_secret_fealty_from_subject_of = <country> country
has_ruler_trait Checks if a leader has a certain ruler trait, even if they are not currently ruler has_ruler_trait = leader_trait_carefree leader
num_trait_points Checks the country/pop/leader/species' number of traits points spent num_trait_points < 3 country pop leader species
has_component Checks if a ship has a certain component has_component = <component template key> ship
has_notification_modifier Checks if a country has a certain notification modifier has_notification_modifier = <key> country
pop_maintenance_cost Checks the maintenance costs of a pop pop_maintenance_cost = { value > 0.5/variable resource = energy } pop
conditional_tooltip The enclosed trigger will be completely ignored if the condition in "trigger" isn't true. Useful to hide part of tooltips that are not relevant. all
has_natural_wormhole Returns true if the scopes system contains at least one natural wormhole has_natural_wormhole = yes galactic_object
has_claim Checks if the country has claims on the given country or system. has_claim = <country|system> country
num_active_gateways Checks the number of active gateways in the galaxy num_active_gateways < 3 all
attacker_war_exhaustion Checks the war exhaustion of the war's attackers attacker_war_exhaustion > 0.6 war
defender_war_exhaustion Checks the war exhaustion of the war's defenders defender_war_exhaustion < 0.2 war
off_war_exhaustion_sum Checks the country's total war exhaustion for all offensive wars off_war_exhaustion_sum < 0.1 country
def_war_exhaustion_sum Checks the country's total war exhaustion for all defensive wars def_war_exhaustion_sum > 0.75 country
has_starbase_module Checks if the starbase has a specific module has_starbase_module = <starbase module> starbase
has_starbase_building Checks if the starbase has a specific building has_starbase_building = <starbase building> starbase
has_starbase_size Compares the starbase ship size has_starbase_size >= <starbase ship size> starbase
has_seen_any_bypass Checks the scoped country has ever encountered a bypass of a given type before has_seen_any_bypass = bypass_type country
has_seen_specific_bypass Checks the scoped country has encountered a specific bypass before has_seen_specific_bypass = ROOT country
owns_any_bypass Checks if the scoped country controls any system containing a bypass of a specific type owns_any_bypass = bypass_type country
has_casus_belli Checks if the country has a valid casus belli (any casus belli or a specific one) on the given country. has_casus_belli = {

target = <country> type = <cb_type> #optional }

country
num_starbases Counts the number of starbases owned by the scoped country num_starbases >= 1 country
num_owned_active_gateways Checks the number of active gateways owned by the scoped country num_owned_active_gateways < 3 country
using_war_goal Checks if a war has a specific war goal using_war_goal = { type = <war goal> owner = <eventtarget, country> } war
has_specialist_perk Checks if the agreement has a specific specialist perk active has_specialist_perk = <perk_key> agreement
has_active_specialization Checks if the agreement has an active specialization of the specified type, or of any type if 'any' is specified has_active_specialization = <specialist_type_key/any> agreement
specialist_tier Checks the specialization tier of the subject of the agreement. specialist_tier >=< 2 agreement
is_total_war Checks if a war is a total war is_total_war = yes/no war
has_status Checks the current status of the scoped ship or fleet. has_status = <colossus status> #charging/firing ship fleet
valid_planet_killer_target Checks if the scoped fleet can target the given planet with its planet killer weapon valid_planet_killer_target = <planet> fleet
has_secret_fealty_with Checks if the country has a secret fealty with the other country (in either direction) has_secret_fealty_with = <country> country
has_orbital_bombardment Checks whether a planet is under bombardment has_orbital_bombardment = yes planet
has_orbital_bombardment_stance Checks to what degree the planet is being bombarded has_orbital_bombardment_stance = selective planet
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 }

country
is_starbase_type Checks if scoped starbase would evaluate to be a certain starbase_type for its current owner. is_starbase_type = sfortress starbase
command_limit Checks the country's command limit command_limit > 120 country
has_hyperlane_to Checks if the system has a hyperlane connection to target system has_hyperlane_to = <target> galactic_object
is_bridge Checks if a system has the bridge flag or not. is_bridge = <yes/no> galactic_object
is_capitals_connected_through_relay_network Checks if current country's capital is connected to target's capital through hyper relay network is_capitals_connected_through_relay_network = <target> country
is_system_connected_to_relay_network Checks if target system is connected to own capitals through hyper relay network is_system_connected_to_relay_network = <target> galactic_object
inverted_switch Switch case for a trigger treated as NOT. inverted_switch = {

trigger = pop_has_ethic ethic_xenophile = { <trigger> } ethic_xenophobe = { <trigger> } default = { <trigger> } }

all
is_scope_set Checks if the scope is set for appropriate target is_scope_set = <target> planet country ship pop fleet
is_primary_star Checks if the planet is the system's primary star is_primary_star = yes planet
uses_district_set Checks if the planet has the specified tag for district usage: uses_district_set = standard planet
has_climate Checks if the planet's climate is set to a specified string in planet_classes: has_climate = dry planet
built_on_planet Checks if the scoped megastructure is built on a planet built_on_planet = yes megastructure
last_changed_species_rights_type Check if the last species rights type changed for the pop or leader is of type type last_changed_species_rights_type = <living_standard/citizenship/military_service/slavery/purge/colonization_control/population_control/migration_control/none> pop leader
controlled_systems Checks the country's or sector's number of owned systems controlled_systems < 3 country sector
exploitable_planets Checks the country has planets that are unexploited (i.e. orbital stations can be built on them) exploitable_planets < 3 country
controlled_colonizable Returns the number of planets within the current country's borders that are habitable but have not been colonized controlled_colonizable > 0 country
ai_colonize_plans Checks how many plans the AI have for colonization (lighter than controlled_colonizable for AI) ai_colonize_plans > 0 country
scientist_count Checks the countrys' number of scientists scientist_count < 4 country
has_ai_expansion_plan Checks if the country AI has any plans to expand has_ai_expansion_plan = no country
ai_wants_to_negotiate_agreement Checks if the country AI wants to renegotiate any existing agreements country
is_on_market Checks if resource is enabled on the Galactic Market is_on_market = <resource_name> all
can_buy_on_market Checks if the current country can buy the specified resource on the market or galactic market can_buy_on_market = <resource_name> country
highest_threat Checks the countrys' highest threat against it highest_threat > 100 country
has_rival Checks if the target country is the country's rival has_rival = <target> country
has_subject Checks if the target country is the a subject of the current country. has_subject = <target> country
has_overlord Checks if the target country is the country's overlord has_overlord = <target> country
has_any_overlord Checks if the country has an overlord has_any_overlord = yes country
has_sector_type Checks if the sector has a specific type has_sector_type = <sector type> sector
num_sectors Counts the number of sectors owned by the scoped country num_sectors >= 1 country
has_deposit_category Checks if a deposit has specified category has_deposit_category = <category key> deposit
has_relic Checks if the scoped country has the specified relic has_relic = <relic_key> country
caravaneers_enabled Checks if Caravaneers are enabled in game setup all
xeno_compatibility_enabled Checks if Xeno Compatibility are enabled in game setup all
lgate_enabled Checks if L-Gates are enabled in game setup all
num_housing Checks the planet's total housing num_housing > 5 planet
num_deposits Checks the planet's total number of deposits num_deposits > 5 planet
is_sector_capital Checks if the planet is its sector's capital is_sector_capital = yes planet
has_sector_focus Checks if the sector has a certain focus has_sector_focus = basic sector
has_any_sector_focus Checks if the sector has any focus has_any_sector_focus = yes sector
is_site_last_die_result Compares the last dice roll. is_site_last_die_result >= <int> archaeological_site first_contact
is_current_stage_difficulty Compares the current stage difficulty. is_current_stage_difficulty >= <int> archaeological_site first_contact
is_site_at_stage Compares the current stage index. is_site_at_stage >= <int> archaeological_site
is_current_stage_clues Compares the current stage clues. is_current_stage_clues >= <int> archaeological_site first_contact
is_site_days_to_next_die_roll Compares days to next die roll. is_site_days_to_next_die_roll >= <int> archaeological_site first_contact
is_site_last_excavator Checks last excavating country. is_site_last_excavator = <country> archaeological_site
is_site_type Checks the type of the site. is_site_type = <archaeological site type key> archaeological_site
is_site_completed Checks if the site has been completed. is_site_completed = yes/no archaeological_site first_contact
is_site_under_excavation Checks if the site is currently being excavated. is_site_under_excavation_ = yes/no archaeological_site
is_site_current_stage_score Compares the current stage discovery score. is_site_current_stage_score >= <int> archaeological_site first_contact
is_site_current_stage_score_no_die Compares the current stage discovery score excluding the current die roll. is_site_current_stage_score_no_die >= <int> archaeological_site first_contact
is_current_excavator_fleet Checks current excavator fleet. is_current_excavator_fleet = <fleet> archaeological_site
is_artificial Checks if the planet is artificial (as set in planet_classes) is_artificial = yes planet
is_ideal Checks if the planet is ideal (as set in planet_classes) is_ideal = yes planet
federation_experience Checks experience of the federation. federation_experience >=< 40 ); federation
federation_cohesion Checks cohesion of the federation. federation_cohesion >=< 40 ); federation
federation_cohesion_growth Checks cohesion growth of the federation. federation_cohesion_growth >=< 40 ); federation
has_any_federation_law_in_category Checks if given law category has any active law has_any_federation_law_in_category = <federation law category> federation
has_federation_law Checks if given law has been enacted in scoped federation has_federation_law = <federation law> federation
has_federation_perk Checks if given perk has been unlocked in scoped federation has_federation_perk = <federation perk> federation
has_federation_type Checks if federation has specific federation type has_federation_type = <federation type> federation
federation_level Checks federation level in comparison to given value in scoped federation federation_level >=< <federation level> federation
is_voting_on_resolution Checks if the Galactic Community is currently voting on any, or a specific, resolution is_voting_on_resolution = <resolution/any> all
is_proposing_resolution Checks if the scoped country is currently proposing any, or a specific, resolution is_proposing_resolution = <resolution/any> country
is_years_since_community_formation Compare with number of years since the formation of the Galactic Community. NOTE: A negative value means it hasn't been formed yet! is_years_since_community_formationn >= <int32> all
is_years_since_council_establishment Compares with number of years since the establishment of the Galactic Council. NOTE: A negative value means it hasn't been established yet! is_years_since_council_establishment >= <int32> all
is_galactic_community_formed Checks if the Galactic Community has been formed is_galactic_community_formed = yes/no all
is_galactic_council_established Checks if the Galactic Council has been established is_galactic_council_established = yes/no all
is_galactic_community_member Checks if scoped country is part of the Galactic Community is_galactic_community_member = yes/no country
is_part_of_galactic_council Checks if scoped country is part of the Galactic Council is_part_of_galactic_council = yes/no country
num_members Checks number of members in scoped federation num_members >=< <integer value> federation
num_associates Checks number of associates in scoped federation num_associates >=< <integer value> federation
has_origin Checks if scoped country has specified origin has_origin = <origin key> country dlc_recommendation
is_last_lost_relic Checks whether the relic passed in parameter is the last relic lost by the country int the current scope. is_last_lost_relic = <relic_key> country
is_last_received_relic Checks whether the relic passed in parameter is the last relic received by the country int the current scope. is_last_received_relic = <relic_key> country
is_active_resolution Checks if the provided Resolution is active in the Community is_active_resolution = <resolution_type_key> all
is_in_breach_of_any Checks if an empire is in breach of any galactic resolution. is_in_breach_of_any = yes/no country
in_breach_of Checks if the scoped country is in breach of the specified resolution (or would be, were it to be enacted) in_breach_of = <resolution> country
num_council_positions Compares the number of council positions in the Galactic Community. num_council_positions >= <int32> all
galactic_community_rank Compares empire rank ( sorted by diplomatic weight ) in the Galactic Community. NOTE: If the scoped country isn't part of the community this returns -1. galactic_community_rank >= <int32> country
is_permanent_councillor Checks if an empire has a permanent seat on the Galactic Council is_permanent_councillor = yes/no country
has_federation_setting Checks if given setting is on for scoped federation has_federation_setting = <setting> federation
any_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 any of them any_owned_species = { <triggers> } planet country
any_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 any of them any_enslaved_species = { <triggers> } planet country
num_ai_empires_setting Checks the number of AI empires defined in setup num_ai_empires_setting >= 1 all
num_defensive_pacts Checks the number of defensive pacts the current country has. num_defensive_pacts > 2 country
num_support_independence Checks the number of empires the current country is supporting the independence of. num_support_independence > 2 country
num_guarantees Checks the number of empires the current country is guaranteeing. num_guarantees > 2 country
num_non_aggression_pacts Checks the number of non-aggression pacts the current country has. num_non_aggression_pacts > 2 country
num_commercial_pacts Checks the number of commercial pacts the current country has. num_commercial_pacts > 2 country
num_research_agreements Checks the number of research agreements a country has num_research_agreements > 2 country
num_migration_pacts Checks the number of migration pacts a country has num_migration_pacts > 2 country
num_rivals Checks the number of rivalries a country has num_rivals > 2 country
num_closed_borders Checks the number of countries the country has closed borders to num_closed_borders > 2 country
num_truces Checks the number of truces country has num_truces > 2 country
galaxy_size Checks whether the galaxy size if of a certain type galaxy_size = medium all
pop_has_happiness Checks if the current pop has happiness or not. pop_has_happiness = yes/no pop
has_current_purge Checks if any pops are being purged on the current planet. has_current_purge = yes/no planet
species_has_happiness_with_owner Checks if the current species has happiness or not when owned by a specified country. species_has_happiness_with_owner = country species
num_planets_in_system Checks the solar system's total number of planets num_planets_in_system > 5 galactic_object
num_galaxy_systems Checks number of star systems in the galaxy num_galaxy_systems > 400 all
num_assigned_jobs Checks the number of pops the planet or country has that work a specific job. num_assigned_jobs = { job = <key>/unemployed value > 2 } planet country
has_active_first_contact_with Checks if the scoped country has an active First Contact site with the target country has_active_first_contact_with = <country> country
can_have_first_contact_site_with Checks if the scoped country is allowed to have a First Contact site with the target country can_have_first_contact_site_with = <country> country
is_current_first_contact_stage Checks if the scoped first contact is at the specified stage. is_current_first_contact_stage = default_stage_2 first_contact
has_spynetwork Checks if scoped country has any spynetwork with a value > 0 has_spynetwork = yes country
has_espionage_asset Checks if the scope hold an asset of specified type has_espionage_asset = <asset type> spy_network espionage_operation
has_espionage_operation_flag Checks if the espionage operation has a specific flag has_espionage_operation_flag = <flag> (note: one can use e.g. my_flag@from to track relationships between objects) espionage_operation
has_menace_perk Checks if a country has a specific Menace Perk unlocked. has_menace_perk = <menace_perk_name> country
num_organic_pops_per_year Checks how many organic pops the planet expects to gain in a year on average (through growth and assembly) at the current rate. num_organic_pops_per_year > 0.41 planet
num_artificial_pops_per_year Checks how many artificial pops the planet expects to assemble in a year on average at the current rate. num_artificial_pops_per_year > 0.41 planet
has_spy_power Compares the infiltration level of the network has_spy_power = <num> spy_network
has_available_spy_power Compares the available infiltration level of the network has_available_spy_power = <num> spy_network
has_espionage_category Checks if the scope is of a specific category has_espionage_category = <espionage category key> espionage_operation
is_running_espionage_operation Checks if the scope is currently running an espionage operation is_running_espionage_operation = <bool> country spy_network
has_espionage_type Checks if the scope is of a specific type has_espionage_type = <espionage type key> espionage_operation
relative_encryption_decryption Divides the encryption value of the scope object with the decryption value of the target and compares with value. Target is only used for country scope. relative_encryption_decryption = {

target = <country> value > 1.0/variable }

country spy_network espionage_operation
is_espionage_operation_days_to_next_die_roll Compares days to next die roll. is_espionage_operation_days_to_next_die_roll >= <value> espionage_operation
is_espionage_operation_chapter Compares the current espionage operation chapter index. is_espionage_operation_chapter >= <int> espionage_operation
is_espionage_operation_difficulty Compares the espionage operation difficulty. is_espionage_operation_difficulty >= <value> espionage_operation
is_espionage_operation_score_no_die Compares the current espionage score excluding the current die roll. is_espionage_operation_score_no_die >= <value> espionage_operation
is_espionage_operation_score Compares the current espionage score. is_espionage_operation_score >= <value> espionage_operation
is_espionage_operation_last_die_result Compares the last dice roll. is_espionage_operation_last_die_result >= <int> espionage_operation
num_espionage_assets Compares the number of assets associated with the scope object. num_espionage_assets = <int> spy_network espionage_operation
has_ship_owner_type Checks if the ship/fleet/design has a specific owner type (country/federation/galactic_community/global_ship_design) has_ship_owner_type = galactic_community ship fleet design
has_crisis_level Checks if a country has a specific Crisis Level unlocked. has_crisis_level = <crisis_level_name> country
has_spynetwork_value Compares spy network value of the scoped object has_spynetwork_value >= <value> spy_network
is_spynetwork_level Compares spy network level of the scoped object is_spynetwork_level >= <int> spy_network
is_counter_espionage Compares counter espionage of the scoped object is_counter_espionage >= <value> country
has_embassy Check if the country has an embassy with the target country has_embassy = <target> country
is_spynetwork_max_level Compares spy network max level of the scoped object is_spynetwork_max_level >= <int> spy_network
is_starbase_building_module Checks if the starbase is currently building a specific module

iss_starbase_building_module = <starbase module>

starbase
is_starbase_building_building Checks if the starbase is currently building a specific building is_starbase_building_building = <starbase building> 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>

starbase
has_job_category Checks if the pop is currently working this strata job (worker, specialist, complex_drone, etc.) Returns false if unemployed. has_job_category = <key> pop
has_term_value Checks if the agreement has a specific term has_term_value = { term = <term> value = <term_value> } agreement
is_action_active Check if a trade action is already active in a trade deal with the specified empire (or with any empire if so specified) is_action_active = { action = <action_key> with_country = <other_country_scope/any> } country
is_offer_terms_actual Checks if terms of the special offer between scoped and target countries is not obsolete

Only works in certain parts of the script marked with ai_trade_facility. is_offer_terms_actual = { target = <country> }

country
can_afford_special_offer Checks if the scoped country can afford the offer given by the target country

Only works in certain parts of the script marked with ai_trade_facility. can_afford_special_offer = { target = <country> }

country
has_design_flag Checks if the design has a specific flag has_design_flag = <flag> (note: one can use e.g. my_flag@from to track relationships between objects) design
enclave_capacity_left Checks the country's free enclave number capacity in absolute numbers enclave_capacity_left > 1 country
any_agreement Iterate through each agreement - checks whether the enclosed triggers return true for any of them any_agreement = { <triggers> } country no_scope
count_agreement Iterate through each agreement - checks whether the enclosed triggers return true for X/all of them count_agreement = {

count = <num/all/variable> limit = { <triggers> } }

country no_scope
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> } }

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> } }

galactic_object
any_archaeological_site Iterate through every archaeological sites - checks whether the enclosed triggers return true for any of them any_archaeological_site = { <triggers> } all
count_archaeological_site Iterate through every archaeological sites - checks whether the enclosed triggers return true for X/all of them count_archaeological_site = {

count = <num/all/variable> limit = { <triggers> } }

all
any_owned_army Iterate through each army that is owned by the country - checks whether the enclosed triggers return true for any of them any_owned_army = { <triggers> } country
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> } }

country
any_planet_army Iterate through each army on the planet (not in ground combat), regardless of owner. - checks whether the enclosed triggers return true for any of them any_planet_army = { <triggers> } planet
count_planet_army Iterate through each army on the planet (not in ground combat), regardless of owner. - checks whether the enclosed triggers return true for X/all of them count_planet_army = {

count = <num/all/variable> limit = { <triggers> } }

planet
any_ground_combat_defender Iterate through each army currently defending the planet in ground combat - checks whether the enclosed triggers return true for any of them any_ground_combat_defender = { <triggers> } 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> } }

planet
any_ground_combat_attacker Iterate through each army currently attacking the planet in ground combat - checks whether the enclosed triggers return true for any of them any_ground_combat_attacker = { <triggers> } 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> } }

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> } }

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> } }

country
any_neighbor_country Iterate through all neighbor countries - checks whether the enclosed triggers return true for any of them any_neighbor_country = { <triggers> } 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> } }

country
any_country_neighbor_to_system Iterate through all countries that own system 1 jump away from current system (bypasses included) - checks whether the enclosed triggers return true for any of them any_country_neighbor_to_system = { <triggers> } galactic_object
count_country_neighbor_to_system Iterate through all countries that own system 1 jump away from current system (bypasses included) - checks whether the enclosed triggers return true for X/all of them count_country_neighbor_to_system = {

count = <num/all/variable> limit = { <triggers> } }

galactic_object
any_rival_country Iterate through all countries rivalled by the scoped country - checks whether the enclosed triggers return true for any of them any_rival_country = { <triggers> } country
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> } }

country
any_federation_ally Iterate through all countries in a federation with the scoped country - checks whether the enclosed triggers return true for any of them any_federation_ally = { <triggers> } 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> } }

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> } }

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> } }

country
any_available_debris Iterate through all debris belong to available special projects of the scoped country - checks whether the enclosed triggers return true for any of them any_available_debris = { <triggers> } country
count_available_debris Iterate through all debris belong to available special projects of the scoped country - checks whether the enclosed triggers return true for X/all of them count_available_debris = {

count = <num/all/variable> limit = { <triggers> } }

country
any_owned_design Iterate through all designs owned by the current country - checks whether the enclosed triggers return true for any of them any_owned_design = { <triggers> } country
count_owned_design Iterate through all designs owned by the current country - checks whether the enclosed triggers return true for X/all of them count_owned_design = {

count = <num/all/variable> limit = { <triggers> } }

country
any_spynetwork Iterate through each spynetwork - checks whether the enclosed triggers return true for any of them any_spynetwork = { <triggers> } country no_scope
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> } }

country no_scope
any_espionage_operation Iterate through each espionage operation - checks whether the enclosed triggers return true for any of them any_espionage_operation = { <triggers> } country no_scope spy_network
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> } }

country no_scope spy_network
any_espionage_asset Iterate through each espionage asset - checks whether the enclosed triggers return true for any of them any_espionage_asset = { <triggers> } no_scope spy_network espionage_operation
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> } }

no_scope spy_network espionage_operation
any_federation Iterate through each federation - checks whether the enclosed triggers return true for any of them any_federation = { <triggers> } all
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> } }

all
any_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 any of them any_first_contact = { <triggers> } country
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> } }

country
any_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 any of them any_active_first_contact = { <triggers> } 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> } }

country
any_galaxy_fleet Iterate through each fleet in the entire game - checks whether the enclosed triggers return true for any of them any_galaxy_fleet = { <triggers> } all
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> } }

all
any_combatant_fleet Iterate through each fleet this fleet is in combat with - checks whether the enclosed triggers return true for any of them any_combatant_fleet = { <triggers> } fleet
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> } }

fleet
any_fleet_in_system Iterate through each fleet in the current system - checks whether the enclosed triggers return true for any of them any_fleet_in_system = { <triggers> } galactic_object
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> } }

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> } }

country
any_controlled_fleet Iterate through each fleet controlled by the country - checks whether the enclosed triggers return true for any of them any_controlled_fleet = { <triggers> } country
count_controlled_fleet Iterate through each fleet controlled by the country - checks whether the enclosed triggers return true for X/all of them count_controlled_fleet = {

count = <num/all/variable> limit = { <triggers> } }

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> } }

megastructure planet 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> } }

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 = { <triggers> } 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> } }

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 = { <triggers> } 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> } }

all
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> } }

country
any_pool_leader Iterate through each leader that is recruitable for the country - checks whether the enclosed triggers return true for any of them any_pool_leader = { <triggers> } 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> } }

country
any_envoy Iterate through each envoy available to the country - checks whether the enclosed triggers return true for any of them any_envoy = { <triggers> } 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> } }

country
any_megastructure Iterate through each megastructure - checks whether the enclosed triggers return true for any of them any_megastructure = { <triggers> } all
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> } }

all
any_owned_megastructure Iterate through each owned megastructure - checks whether the enclosed triggers return true for any of them any_owned_megastructure = { <triggers> } country
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> } }

country
any_system_megastructure Iterate through each megastructure in system - checks whether the enclosed triggers return true for any of them any_system_megastructure = { <triggers> } all
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> } }

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> } }

federation
any_associate Iterate through each associate member of the federation - checks whether the enclosed triggers return true for any of them any_associate = { <triggers> } 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> } }

federation
count_system_planet Iterate through each planet (colony or not) 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> } }

galactic_object
any_system_colony Iterate through each colony in the current system - checks whether the enclosed triggers return true for any of them any_system_colony = { <triggers> } galactic_object
count_system_colony Iterate through each colony in the current system - checks whether the enclosed triggers return true for X/all of them count_system_colony = {

count = <num/all/variable> limit = { <triggers> } }

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> } }

country
any_owned_planet Iterate through each inhabited planet owned by the current empire - checks whether the enclosed triggers return true for any of them any_owned_planet = { <triggers> } country sector
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> } }

country sector
any_controlled_planet Iterate through each inhabited planet controlled by the current empire - checks whether the enclosed triggers return true for any of them any_controlled_planet = { <triggers> } country
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> } }

country
any_galaxy_planet Iterate through each planet ANYWHERE in the game; warning: resource intensive! - checks whether the enclosed triggers return true for any of them any_galaxy_planet = { <triggers> } all
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> } }

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> } }

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> } }

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> } }

planet country pop_faction sector
any_species_pop Iterate through each pop that belongs to this species; warning: resource-intensive! - checks whether the enclosed triggers return true for any of them any_species_pop = { <triggers> } species
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> } }

species
any_pop_faction Iterate through all the country's pop factions - checks whether the enclosed triggers return true for any of them any_pop_faction = { <triggers> } country
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> } }

country
any_galaxy_sector Iterate through all sectors in the game - checks whether the enclosed triggers return true for any of them any_galaxy_sector = { <triggers> } all
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> } }

all
any_owned_sector Iterate through every owned sector - checks whether the enclosed triggers return true for any of them any_owned_sector = { <triggers> } country
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> } }

country
count_owned_ship Iterate through each ship in the fleet or controlled by the country - checks whether the enclosed triggers return true for X/all of them count_owned_ship = {

count = <num/all/variable> limit = { <triggers> } }

country fleet
any_controlled_ship Iterate through each ship in the fleet or controlled by the country - checks whether the enclosed triggers return true for any of them any_controlled_ship = { <triggers> } country fleet
count_controlled_ship Iterate through each ship in the fleet or controlled by the country - checks whether the enclosed triggers return true for X/all of them count_controlled_ship = {

count = <num/all/variable> limit = { <triggers> } }

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> } }

galactic_object
any_situation Iterate through each situation a country is experiencing - checks whether the enclosed triggers return true for any of them any_situation = { <triggers> } country
count_situation Iterate through each situation a country is experiencing - checks whether the enclosed triggers return true for X/all of them count_situation = {

count = <num/all/variable> limit = { <triggers> } }

country
any_targeting_situation Iterate through each situation that is targeting the current planet - checks whether the enclosed triggers return true for any of them any_targeting_situation = { <triggers> } planet
count_targeting_situation Iterate through each situation that is targeting the current planet - checks whether the enclosed triggers return true for X/all of them count_targeting_situation = {

count = <num/all/variable> limit = { <triggers> } }

planet
any_owned_pop_species Iterate through each species of a country's owned pops - checks whether the enclosed triggers return true for any of them any_owned_pop_species = { <triggers> } country
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> } }

country
any_galaxy_species Check if any species in the galaxy meet the specified criteria - checks whether the enclosed triggers return true for any of them any_galaxy_species = { <triggers> } all
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> } }

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> } }

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> } }

planet country
any_owned_starbase Iterate through every owned primary starbase - checks whether the enclosed triggers return true for any of them any_owned_starbase = { <triggers> } country
count_owned_starbase Iterate through every owned primary starbase - checks whether the enclosed triggers return true for X/all of them count_owned_starbase = {

count = <num/all/variable> limit = { <triggers> } }

country
any_owned_nonprimary_starbase Iterate through every owned non-primary starbase (e.g. orbital rings), not including juggernauts - checks whether the enclosed triggers return true for any of them any_owned_nonprimary_starbase = { <triggers> } country
count_owned_nonprimary_starbase Iterate through every owned non-primary starbase (e.g. orbital rings), not including juggernauts - checks whether the enclosed triggers return true for X/all of them count_owned_nonprimary_starbase = {

count = <num/all/variable> limit = { <triggers> } }

country
any_system Iterate through all systems - checks whether the enclosed triggers return true for any of them any_system = { <triggers> } all
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> } }

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> } }

all
any_system_within_border Iterate through all systems within the country's or sector's borders - checks whether the enclosed triggers return true for any of them any_system_within_border = { <triggers> } country sector
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> } }

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> } }

galactic_object
any_neighbor_system_euclidean Iterate through all a system's neighboring systems (by closeness, not by hyperlanes) - checks whether the enclosed triggers return true for any of them any_neighbor_system_euclidean = { <triggers> } galactic_object
count_neighbor_system_euclidean Iterate through all a system's neighboring 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> } }

galactic_object
any_war_participant Iterate through all war participants - checks whether the enclosed triggers return true for any of them any_war_participant = { <triggers> } war
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> } }

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> } }

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/variable> limit = { <triggers> } }

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> } }

country
Note: For comparing different game versions of Stellaris triggers (modifiers and effects) since launch, you can use the GitHub file history feature here (created by OldEnt).

Scripted Triggers[edit | edit source]

There are more than singular Conditions can be used for a Condition. See dynamic modding for details.

Empire EmpireEthicsGovernments • Civics • OriginsMandatesAgendasTraditions • Ascension perksEdictsPoliciesRelicsTechnologiesCustom empires
Pops JobsFactions
Leaders LeadersLeader traits
Species SpeciesSpecies traits
Planets PlanetsPlanetary feature • Orbital depositBuildings • DistrictsPlanetary decisions
Systems SystemsStarbasesMegastructuresBypassesMap
Fleets FleetsShips • Components
Land Warfare ArmiesBombardment stance
Diplomacy Diplomacy • Federations • Galactic communityOpinion modifiersCasus Belli • War goals
Events EventsAnomaliesSpecial projectsArchaeological sites
Gameplay GameplayDefinesResources • EconomyGame start
Dynamic modding Dynamic moddingEffectsConditionsScopesModifiersVariablesAI
Media/localisation Maya exporterGraphicsPortraitsFlagsEvent picturesInterfaceIconsMusicLocalisation
Other Console commandsSave-game editingSteam WorkshopModding tutorial
  1. Default "%USERPROFILE%\Documents\Paradox Interactive\Stellaris\logs\script_documentation\". This list is dumped and formatted with this regexp.