命令百科

trigger · has_template_containing_unit

Definition

  • Supported scope:COUNTRY
  • Supported target:none

Description

check if country has a division template that contains a specific unit

实战 · 配合 · 坑

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

实战用法

has_template_containing_unit 常用于判断某国是否已组建含有特定兵种(如坦克营、工兵连)的师级模板,从而触发对应的科技建议、国策解锁或 AI 行为分支。例如,当玩家首次将重型坦克营加入模板时,自动弹出装甲化战争相关的决议或事件。

# 当玩家拥有包含重型坦克营的师模板时,解锁特定决议
available = {
    has_template_containing_unit = {
        unit = heavy_armor
    }
}

配合关系

  • [has_army_size](/wiki/trigger/has_army_size):先用 has_army_size 确认国家部署了足够数量的师,再用本 trigger 验证这些师是否包含指定兵种,两者结合可精准检查装甲部队规模是否达标。
  • [any_country_division](/wiki/trigger/any_country_division):可在 any_country_division 的子作用域中配合使用,用于检查实际下场的师而非模板,与本 trigger 互补覆盖"模板存在"与"单位已部署"两种场景。
  • [add_tech_bonus](/wiki/effect/add_tech_bonus):确认模板中含有目标兵种后,通过 add_tech_bonus 给予相关技术研发加成,形成"有装备→奖励研发"的逻辑闭环。
  • [division_template](/wiki/effect/division_template):当条件不满足时,可在 effect 块里用 division_template 直接为 AI 国家创建含指定兵种的模板,与本 trigger 形成"检测→补建"配对。

常见坑

  1. 兵种名称填写错误unit 字段必须填写内部代码名(如 heavy_armorengineer),而非本地化显示名称或师模板名,填错时游戏不会报错但条件永远为假,非常难以排查。
  2. 误以为检测的是已部署单位:本 trigger 只检查模板定义中是否包含该兵种,即使对应模板下没有任何实际师部队在地图上存在,只要模板里有该营/连,条件同样返回真,切勿与实际部署数量混淆。