Hands-On Usage
has_collaboration is commonly used in spy/intelligence mods to check whether a target country's collaboration level with you meets a threshold, thereby unlocking special decisions, diplomatic options, or event branches—for example, allowing puppet state or regime change processes to trigger only when the target nation's collaboration with you exceeds a certain value.
# Only enable this decision when France's collaboration with Germany exceeds 50%
available = {
has_collaboration = {
target = FRA
value > 0.5
}
}
Synergy
[has_country_flag](/wiki/trigger/has_country_flag): Commonly paired with collaboration checks to ensure a story segment or prerequisite step has been completed before stacking the collaboration threshold, preventing players from skipping narrative content to trigger effects directly.
[add_collaboration](/wiki/effect/add_collaboration): The natural pairing for collaboration checks—use triggers to verify the threshold is met, then use effects to further increase collaboration in events or decisions, creating a stepped progression logic.
[exists](/wiki/trigger/exists): Confirm the target nation still exists in the game before checking collaboration, preventing script errors or unexpected behavior when the target has already been annexed.
[has_completed_focus](/wiki/trigger/has_completed_focus): Often used alongside collaboration checks, requiring players to complete specific national focuses to unlock rewards from high collaboration, adding strategic depth.
Common Pitfalls
- Missing the
target field: has_collaboration must explicitly specify target; omitting it causes the script to fail parsing and is easily mistaken for a syntax error. The @ shorthand syntax (has_collaboration@GER) can only be used in variable comparison contexts and should not be arbitrarily mixed with regular trigger blocks.
- Reversing the scope direction: This trigger checks "the target nation's collaboration with the current scope nation," not the reverse. Beginners often flip the agent-target relationship between scope and target, causing the collaboration direction checked to be opposite from expectations and breaking the trigger entirely.