Wiki

trigger · is_ironman

Definition

  • Supported scope:any
  • Supported target:none

Description

Check if current game is ironman.

实战 · 配合 · 坑

实战内容由 AI 生成,并已对照 vanilla 命令词表校验 —— 请当作起点而非权威依据。上方的定义节才是游戏自带文档原文。

实战用法

is_ironman 常用于 mod 中需要区分铁人模式与普通模式的场景,例如在铁人模式下禁用某些"作弊性"的决策、事件选项,或者专门为铁人玩家解锁成就相关的触发条件。下面是一个典型用法——在决策的 available 块中,非铁人模式才允许使用某个调试/辅助决策:

# 仅允许非铁人模式玩家使用的辅助决策
my_debug_decision = {
    available = {
        NOT = { is_ironman = yes }
    }
    ...
}

# 反过来:铁人模式专属的成就校验事件选项
option = {
    trigger = {
        is_ironman = yes
    }
    name = "achievement_path.option_a"
    ...
}

配合关系

  • [game_rules_allow_achievements](/wiki/trigger/game_rules_allow_achievements):两者经常同时检查,铁人模式且规则允许成就时才触发特定逻辑,组合使用可精确锁定"标准成就局"环境。
  • [is_historical_focus_on](/wiki/trigger/is_historical_focus_on):mod 常将铁人模式 + 历史国策同时作为"正规局"判断条件,一起放在 AND 块中限制某些功能。
  • [difficulty](/wiki/trigger/difficulty):铁人模式往往与难度挂钩,二者配合可以针对"正式高难铁人局"给予差异化内容或平衡性调整。
  • [custom_trigger_tooltip](/wiki/trigger/custom_trigger_tooltip):当 is_ironman 嵌套在复杂条件中时,用它包裹可以向玩家显示更友好的提示文本,说明为何该选项在铁人模式下被锁定。

常见坑

  1. 将布尔值写反:新手有时写成 is_ironman = no 想表示"铁人模式下禁用",逻辑却写反了——is_ironman = no 在普通模式下为真,记住先想清楚"当前是/不是铁人"再决定用 yes 还是套一层 NOT = { is_ironman = yes }
  2. 误以为可以对 scope 加限定:该 trigger 支持任意 scope(any),但它始终检查的是当前存档是否为铁人模式,与当前迭代到哪个国家/州的 scope 无关,不要误以为切换到某个具体 scope 后行为会有差异。

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_ironman is commonly used in mods to distinguish between Ironman mode and regular mode, such as disabling certain "cheesy" decisions or event options in Ironman mode, or unlocking achievement-related trigger conditions specifically for Ironman players. Below is a typical use case—in the available block of a decision, only non-Ironman mode allows using a debug/utility decision:

# Utility decision available only to non-Ironman players
my_debug_decision = {
    available = {
        NOT = { is_ironman = yes }
    }
    ...
}

# Reverse: achievement verification event option exclusive to Ironman mode
option = {
    trigger = {
        is_ironman = yes
    }
    name = "achievement_path.option_a"
    ...
}

Synergy

  • [game_rules_allow_achievements](/wiki/trigger/game_rules_allow_achievements): The two are often checked together; specific logic is triggered only when Ironman mode is active and rules allow achievements. Combined use can precisely pinpoint a "standard achievement run" environment.
  • [is_historical_focus_on](/wiki/trigger/is_historical_focus_on): Mods often use Ironman mode + historical focus together as the "regular game" condition, placing both in an AND block to restrict certain features.
  • [difficulty](/wiki/trigger/difficulty): Ironman mode often correlates with difficulty; the two can work together to provide differentiated content or balance adjustments for "official high-difficulty Ironman runs".
  • [custom_trigger_tooltip](/wiki/trigger/custom_trigger_tooltip): When is_ironman is nested in complex conditions, wrapping it with this displays more player-friendly tooltip text, explaining why the option is locked in Ironman mode.

Common Pitfalls

  1. Inverting the boolean value: Beginners sometimes write is_ironman = no intending to mean "disabled in Ironman mode", but reverse the logic—is_ironman = no is true in regular mode. Remember to think clearly about whether "we are/aren't in Ironman" before deciding whether to use yes or wrap it with NOT = { is_ironman = yes }.
  2. Mistakenly thinking you can qualify the scope: This trigger supports any scope, but it always checks whether the current save is in Ironman mode, regardless of which country or state the current iteration is on. Don't assume behavior will differ when switching to a specific scope.