trigger · is_subject
Definition
- Supported scope:
COUNTRY - Supported target:
any
Description
Checks if the country is subject of any other country
is_subjectCOUNTRYanyChecks if the country is subject of any other country
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.
is_subject is commonly used to determine whether a country is in a vassal or puppet state, allowing you to restrict certain options in focus trees, decisions, or events to only non-overlord nations. For example, when creating independence movement mods, you can use it to ensure that only countries still in a subject relationship can trigger independence demand events.
# available block of a certain decision: only usable when the current nation is a vassal
available = {
is_subject = yes
}
[has_autonomy_state](/wiki/trigger/has_autonomy_state): Used in conjunction with is_subject, it further determines the specific autonomy tier (such as colony, dominion, etc.) after confirming vassal status, enabling layered conditional logic.[any_subject_country](/wiki/trigger/any_subject_country): Inverse synergy—iterates through all vassals from the overlord's perspective, forming a complete verification chain across both ends of the subject relationship with is_subject.[compare_autonomy_progress_ratio](/wiki/trigger/compare_autonomy_progress_ratio): Vassal nations often need to check autonomy progress simultaneously; use it together with is_subject to avoid meaningless autonomy value judgments on non-vassal nations.[end_puppet](/wiki/effect/end_puppet): Commonly paired with is_subject trigger checks in effect blocks—first confirm the subject relationship exists, then execute the puppet removal operation to prevent script errors.is_subject must be the vassal nation itself being checked, not the overlord. Beginners often write is_subject = yes under overlord scope, causing incorrect judgment targets. Instead, use traversal commands like any_subject_country from the overlord's side to check.= yes / = no: Some beginners only know is_subject = yes and forget that is_subject = no is equally valid and frequently used (for example, restricting certain diplomatic actions to independent nations only). Omitting the latter results in redundant condition blocks or even logic errors.