命令百科

effect · add_days_remove

Definition

  • Supported scope:COUNTRY
  • Supported target:none

Description

adds/removes days to 'days_remove' value of a decision
Example:
add_days_remove  = {
    decision = <some_decision>
    days = 30
}

实战 · 配合 · 坑

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

实战用法

add_days_remove 常用于动态调整某个决议的剩余有效期,例如当玩家触发特定事件或完成特定条件时,奖励延长或惩罚缩短某项政策决议的持续时间。典型场景是"科技加速"类决议:完成国策后奖励额外 30 天,或触发危机事件后削减剩余天数以示代价。

# 国策完成后,为某项正在进行的决议延长 30 天
complete_national_focus = some_focus
add_days_remove = {
    decision = my_wartime_economy_decision
    days = 30
}

# 事件惩罚:缩短决议剩余时间
add_days_remove = {
    decision = my_wartime_economy_decision
    days = -15
}

配合关系

  • [has_decision](/wiki/trigger/has_decision):在执行 add_days_remove 之前,应先用此触发器确认目标决议当前处于激活状态,避免对未激活决议操作导致脚本报错或静默失败。
  • [activate_decision](/wiki/effect/activate_decision):先激活某个决议,再立即用 add_days_remove 调整其初始倒计时,实现"动态时限"逻辑。
  • [add_days_mission_timeout](/wiki/effect/add_days_mission_timeout):两者功能相近但作用对象不同(一个针对 decision,一个针对 mission),处理限时任务系统时常对比使用,避免混淆。
  • [country_event](/wiki/effect/country_event):通过事件触发链,在特定剧情节点调用 add_days_remove 来动态收紧或放宽决议截止日期,构建更丰富的叙事反馈。

常见坑

  1. 填写不存在或已过期的决议 keydecision = 后必须填写当前已被激活(玩家已选择)的决议 token,若该决议未激活,效果会静默失败且不报错,导致难以调试;务必配合 [has_decision](/wiki/trigger/has_decision) 做前置检查。
  2. 混淆正负值方向days 为正值是"延长",为负值才是"缩短"剩余时间,初学者容易想当然地用正值去"提前结束"决议,实际上结果恰好相反,导致决议比预期活得更久。