trigger · controls_province
Definition
- Supported scope:
COUNTRY - Supported target:
THIS,ROOT,PREV,FROM,OWNER,CONTROLLER,OCCUPIED,CAPITAL
Description
check controller for province
controls_provinceCOUNTRYTHIS, ROOT, PREV, FROM, OWNER, CONTROLLER, OCCUPIED, CAPITALcheck controller for province
Hands-on notes are AI-generated and checked against the vanilla command vocabulary — treat them as a starting point, not authoritative reference. The definition above is the game's own documentation.
controls_province is commonly used to check whether a nation actually controls a specific strategic province, triggering special decisions, tasks, or events—for example, in campaign mods to unlock rewards only after one side controls a key port or fortress province. Note that it checks control (controller), not ownership, making it ideal for war progression tracking or occupation trigger scenarios.
# Example: A decision is only available when the player nation controls a specific key province
available = {
controls_province = 1234 # 1234 is the target province ID
}
[controls_state](/wiki/trigger/controls_state): controls_province operates at the province level, while controls_state checks an entire state. These are often combined for layered occupation assessment—use state-level filtering for broad scope, then province-level verification for critical locations.[any_controlled_state](/wiki/trigger/any_controlled_state): When iterating over currently controlled states to further check specific provinces within them, commonly used as an outer loop container nested with controls_province.[activate_targeted_decision](/wiki/effect/activate_targeted_decision): After confirming province control, immediately activate a decision targeting that specific objective, forming a complete chain of "condition met → action unlocked".[has_country_flag](/wiki/trigger/has_country_flag): Typically paired with country flags to prevent control events from repeatedly triggering on the same province. Check the flag first before checking province control status.controls_province, causing the condition to never be met. Province IDs must be looked up in the map editor or map/definition.csv—they follow a completely different numbering system than state IDs.controls_province checks the current controller. During war, if an enemy occupies a province, the original owner no longer satisfies this condition. If your scenario logic requires checking "who owns the province," use ownership-related checks instead; otherwise the condition will unexpectedly fail during occupation.