Wiki

trigger · is_in_home_area

Definition

  • Supported scope:STATE
  • Supported target:any

Description

Checks if the first province in the state is connected to the capital of its owner

Hands-On Notes

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.

Hands-On Usage

is_in_home_area is commonly used to determine whether a state is within its owner's "core supply range," making it ideal for supply penalty mods, occupation policy mods, or dynamic modifier systems to filter between "domestic connection" and "overseas isolated" states. For example, you can restrict a decision's available block so that only states connected to the capital can proceed with certain constructions:

available = {
    is_in_home_area = yes
    is_owned_by = ROOT
    has_state_category = rural
}

Synergy

  • [is_owned_by](/wiki/trigger/is_owned_by) — Usually confirm state ownership first before checking connectivity to avoid triggering logic on enemy-occupied states.
  • [is_controlled_by](/wiki/trigger/is_controlled_by) — Supplement by checking actual control, since is_in_home_area only checks the owner's capital connectivity and does not account for the controlling faction.
  • [add_state_modifier](/wiki/effect/add_state_modifier) — After confirming a state is (or is not) in the home region, apply corresponding dynamic penalties/bonuses to it.
  • [has_state_category](/wiki/trigger/has_state_category) — Filter states by size category in combination to fine-tune which state types are affected by home connectivity conditions.

Common Pitfalls

  1. Mistaking it as checking the controlling faction's capital: This trigger checks connectivity to the owner's capital, not the controller's. If a state is controlled by an enemy but ownership hasn't changed, the result is still calculated based on the original owner, easily causing unexpected judgments in occupation scenarios.
  2. Using it under COUNTRY scope: is_in_home_area is only valid in STATE scope. If accidentally placed in the top-level condition block of a country event (rather than inside iteration blocks like any_owned_state), the script will silently error or always return false.