Wiki

effect · set_mio_policy_cooldown

Definition

  • Supported scope:COUNTRY
  • Supported target:none

Description

Set the base cooldown (in days) after attaching a policy in the MIO policy, found in country in scope with input policy
token. This changes the base value. Modifiers will still apply over it. 
Input value cannot be negative.
ex:
SOV = {
  set_mio_policy_cooldown = {
	policy = my_policy_token
	value = 3
  }
  set_mio_policy_cooldown = {
	policy = my_policy_token
	value = var:my_number_var
  }
}

实战 · 配合 · 坑

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

实战用法

在自定义 MIO(军事工业组织)mod 中,当你希望某个政策附加后的冷却时间随游戏进程或国家条件动态变化时,可使用此 effect 覆盖该政策的基础冷却天数。例如,给苏联在完成某国策后将特定 MIO 政策的冷却期缩短,以体现工业动员加速效果:

focus = {
    id = SOV_industrial_mobilization
    # ...
    completion_reward = {
        SOV = {
            set_mio_policy_cooldown = {
                policy = sov_heavy_industry_policy
                value = 30
            }
        }
    }
}

配合关系

  • [add_mio_policy_cooldown](/wiki/effect/add_mio_policy_cooldown)set_mio_policy_cooldown 是直接设置基础冷却值,而 add_mio_policy_cooldown 是在现有值上叠加,两者常配合用于"先重置再微调"的冷却管理逻辑。
  • [add_mio_policy_cost](/wiki/effect/add_mio_policy_cost):政策冷却与政策费用通常同步调整,修改冷却的同时往往也需要修改消耗,使 MIO 政策平衡性完整。
  • [has_completed_focus](/wiki/trigger/has_completed_focus):常作为触发条件,在国家完成特定国策后才执行冷却修改,避免效果无条件生效破坏平衡。
  • [add_dynamic_modifier](/wiki/effect/add_dynamic_modifier):动态修正器可通过 modifier 进一步在基础冷却值之上叠加百分比效果,与 set_mio_policy_cooldown 设置的基础值形成协同。

常见坑

  1. 传入负数会报错:官方明确要求 value 不能为负值,新手有时试图通过填写负数来"清零"冷却,这会导致脚本报错或行为异常;若要设置极短冷却应填 0 而非负数。
  2. 误以为它覆盖修正器效果:此命令只修改基础冷却值,来自 modifier(如动态修正器、国策加成)的百分比或绝对值修正仍会在此基础上叠加计算,设置后实际冷却可能与填写的 value 不同。

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

In custom MIO (Military Industrial Organization) mods, when you want the cooldown duration of a policy to vary dynamically based on game progression or national conditions, you can use this effect to override the base cooldown days of that policy. For example, you can reduce the cooldown period of a specific MIO policy for the Soviet Union after completing a certain focus to reflect accelerated industrial mobilization:

focus = {
    id = SOV_industrial_mobilization
    # ...
    completion_reward = {
        SOV = {
            set_mio_policy_cooldown = {
                policy = sov_heavy_industry_policy
                value = 30
            }
        }
    }
}

Synergy

  • [add_mio_policy_cooldown](/wiki/effect/add_mio_policy_cooldown): set_mio_policy_cooldown directly sets the base cooldown value, while add_mio_policy_cooldown adds to the existing value. These two are often used together for "reset then fine-tune" cooldown management logic.
  • [add_mio_policy_cost](/wiki/effect/add_mio_policy_cost): Policy cooldown and policy cost are typically adjusted in sync. When modifying cooldown, you often need to adjust resource consumption as well to maintain complete MIO policy balance.
  • [has_completed_focus](/wiki/trigger/has_completed_focus): Commonly used as a trigger condition to execute cooldown modifications only after a nation completes a specific focus, preventing unbalanced unconditioned effects.
  • [add_dynamic_modifier](/wiki/effect/add_dynamic_modifier): Dynamic modifiers can further stack percentage effects on top of the base cooldown value set by set_mio_policy_cooldown, creating synergy with the base value.

Common Pitfalls

  1. Passing negative numbers causes errors: The official specification explicitly requires that value cannot be negative. Novices sometimes attempt to "zero out" cooldown by entering negative numbers, which results in script errors or unexpected behavior. To set very short cooldowns, use 0 instead of negative values.
  2. Mistaking it for overriding modifier effects: This command only modifies the base cooldown value. Percentage or absolute value adjustments from modifiers (such as dynamic modifiers or focus bonuses) still stack on top of this base value. The actual cooldown after execution may differ from the value you specified.