命令百科

effect · gain_xp

Definition

  • Supported scope:CHARACTER
  • Supported target:any

Description

Grant experience to the scoped in unit leader. Cannot be used to remove experience.
The unit leader is promoted to the next skill level if applicable.
Example:
gain_xp = 5

实战 · 配合 · 坑

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

实战用法

gain_xp 常用于事件奖励场景,例如将领完成特定任务(赢得战役、完成训练事件)后给予经验奖励,使其更快升级。也可在焦点树或决策中奖励玩家培养的精英将领,配合其他 buff 强化角色成长感。

# 某将领完成战役任务事件后获得经验
country_event = {
    id = my_mod.1
    option = {
        name = my_mod.1.a
        # 令该国的某位将领获得经验
        random_army_leader = {
            limit = { is_corps_commander = yes }
            gain_xp = 10
        }
    }
}

配合关系

  • [skill](/wiki/trigger/skill) — 在给予经验前用于检查将领当前技能等级,避免对已满级将领浪费事件触发条件。
  • [add_skill_level](/wiki/effect/add_skill_level) — 当需要直接跨越多个等级时与 gain_xp 分工:前者精确控制经验积累,后者直接拔升等级,两者目的相近但机制不同,按需搭配。
  • [add_trait](/wiki/effect/add_trait) — 经验增长触发升级后,同步添加特质来模拟将领因战功获得技能专长的叙事效果。
  • [is_corps_commander](/wiki/trigger/is_corps_commander) / [is_field_marshal](/wiki/trigger/is_field_marshal) — 用于 limit 块筛选正确的将领 scope,确保经验只授予预期角色类型。

常见坑

  1. 不能用于扣除经验:该指令只能增加经验值,传入负数并不会按预期减少经验,若需降低将领能力应改用 [add_skill_level](/wiki/effect/add_skill_level) 配合负值或直接替换特质。
  2. scope 必须是 CHARACTER:在国家 scope 下直接调用 gain_xp 会导致脚本报错或静默失效,必须先通过 random_army_leaderspecific_character 等方式进入正确的角色 scope 后再调用。