命令百科

trigger · is_historical_focus_on

Definition

  • Supported scope:any
  • Supported target:none

Description

check if the historical focus is active

实战 · 配合 · 坑

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

实战用法

is_historical_focus_on 常用于区分"历史模式"与"自由模式",让 mod 在玩家选择了历史国策路线时提供不同的事件触发条件或限制分支。例如,在非历史模式下才允许某个"架空历史"国策或事件出现,避免与历史路线冲突。

# 仅在非历史模式时允许某个架空事件触发
available = {
    NOT = { is_historical_focus_on = yes }
}

配合关系

  • [has_game_rule](/wiki/trigger/has_game_rule):游戏规则与历史模式常同时影响分支逻辑,组合使用可精确控制特定规则+历史模式下的条件。
  • [or](/wiki/trigger/or):当需要"历史模式开启 满足其他条件"时,包裹在 or 块中避免过于严格的限制。
  • [not](/wiki/trigger/not):最高频的搭档,绝大多数架空/非历史分支都需要 NOT = { is_historical_focus_on = yes } 来反向判断。
  • [has_dlc](/wiki/trigger/has_dlc):部分 DLC 内容只在特定游戏模式下有意义,与历史模式判断并列使用可做双重门控。

常见坑

  1. 将 yes/no 写反:新手有时想限定"仅历史模式生效"却写成 NOT = { is_historical_focus_on = yes },逻辑反了。务必想清楚"历史开启"对应 = yes,"历史关闭"才需要套 NOT
  2. 误以为可以用 effect 切换该状态is_historical_focus_on 仅是只读判断,无法通过任何 effect 在游戏中途强制开关历史模式,试图这样做的设计思路需要改用 set_global_flag 之类的变量来模拟替代标记。