Wiki

effect · promote_leader

Definition

  • Supported scope:CHARACTER
  • Supported target:none

Description

promotes general to field marshal

实战 · 配合 · 坑

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

实战用法

promote_leader 常用于剧情事件或国策完成时,将某位表现突出的将领(Corps Commander)自动晋升为元帅,营造军事改革或战争英雄崛起的叙事感。例如某国在完成"军队现代化"国策后,将指定角色提拔为最高统帅:

# 在国策完成的 complete 块中
complete_effect = {
    every_country_with_original_tag = {
        limit = { original_tag = GER }
    }
    GER_rommel = {
        promote_leader = yes
    }
}

配合关系

  • [is_corps_commander](/wiki/trigger/is_corps_commander) — 晋升前先确认角色当前确实是军团指挥官,避免对已是元帅或其他职位的角色重复触发。
  • [is_field_marshal](/wiki/trigger/is_field_marshal) — 用于 limit 或后续检查,确认晋升是否已生效,防止逻辑重复执行。
  • [add_field_marshal_role](/wiki/effect/add_field_marshal_role) — 若角色完全不具备元帅角色定义时可作为补充手段,与 promote_leader 配合覆盖更复杂的初始化需求。
  • [add_trait](/wiki/effect/add_trait) — 晋升后立即赋予专属元帅特质,强化角色叙事与数值,使晋升事件更有分量。

常见坑

  1. Scope 指向错误promote_leader 必须在 CHARACTER scope 下执行,新手常在 COUNTRY scope 里直接写,导致脚本报错或静默失效——需先用角色 token(如 GER_rommel = { ... })进入角色 scope 再调用。
  2. 角色本已是元帅:对已经是 Field Marshal 的角色执行此命令不会报错,但也不会产生任何效果,容易让开发者误以为逻辑正常,实际上后续依赖晋升触发的事件链并不会被激活,建议配合 [is_corps_commander](/wiki/trigger/is_corps_commander) 做前置校验。

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

promote_leader is commonly used in story events or when national focuses complete, to automatically promote an outstanding Corps Commander to Field Marshal, creating a narrative of military reform or the rise of a war hero. For example, a nation completes the "Army Modernization" focus and promotes a designated character to supreme commander:

# In the complete block of the national focus
complete_effect = {
    every_country_with_original_tag = {
        limit = { original_tag = GER }
    }
    GER_rommel = {
        promote_leader = yes
    }
}

Synergy

  • [is_corps_commander](/wiki/trigger/is_corps_commander) — Verify before promotion that the character is currently actually a Corps Commander, avoiding duplicate triggers on characters who are already Field Marshals or hold other positions.
  • [is_field_marshal](/wiki/trigger/is_field_marshal) — Used in limit or subsequent checks to confirm whether the promotion has taken effect, preventing redundant logic execution.
  • [add_field_marshal_role](/wiki/effect/add_field_marshal_role) — When a character completely lacks a Field Marshal role definition, this can serve as a supplementary measure, working alongside promote_leader to cover more complex initialization requirements.
  • [add_trait](/wiki/effect/add_trait) — Immediately grant exclusive Field Marshal traits after promotion, enhancing both character narrative and numerical values, making the promotion event more impactful.

Common Pitfalls

  1. Incorrect Scope Pointing: promote_leader must execute under CHARACTER scope. Beginners often write it directly in COUNTRY scope, causing script errors or silent failures — you must first enter character scope using a character token (such as GER_rommel = { ... }) before calling it.
  2. Character Already a Field Marshal: Executing this command on a character who is already a Field Marshal will not cause an error, but also produces no effect, easily leading developers to mistakenly believe the logic is working when in fact subsequent event chains dependent on the promotion trigger will not be activated. It is recommended to pair this with [is_corps_commander](/wiki/trigger/is_corps_commander) for preliminary validation.