实战用法
set_keyed_oob 主要用于需要在历史文件中为某个国家注册多套不同用途的战斗序列文件的场景,例如同时存在陆军 OOB 和海军 OOB 时,通过不同的 key 加以区分而互不覆盖。在 mod 中常见于改写原版国家的初始部队编组,或为特定历史情境分支提供替换的起始兵力配置。
# 在 history/countries/ENG - Britain.txt 或对应 on_actions 初始化块中
set_keyed_oob = {
key = army
name = "ENG_1936_Army"
}
set_keyed_oob = {
key = naval
name = "ENG_1936_Naval"
}
配合关系
[has_country_flag](/wiki/trigger/has_country_flag):在条件分支中检查特定国旗,决定是否为该国注册某套 OOB 文件,从而实现按玩家选择或剧本分支加载不同兵力。
[clr_country_flag](/wiki/effect/clr_country_flag):在完成 OOB 注册后清除临时标记,避免重复触发同一套初始化逻辑。
[division_template](/wiki/effect/division_template):OOB 文件引用的师模板需要预先通过此命令定义,两者共同构成完整的初始部队建立流程。
[delete_unit](/wiki/effect/delete_unit):若需要在 OOB 加载后动态移除特定部队,可配合使用以精细控制初始兵力。
常见坑
key 相同时会覆盖而非叠加:同一国家下两次使用相同 key 值,后注册的 OOB 文件会替换前一个,而不是合并。若需同时保留多套 OOB,必须为每套使用唯一的 key,新手常误以为可以用相同 key 累加部队。
- 在非历史文件上下文中使用效果未必生效:该命令官方明确标注「只应在历史文件中使用」,若将其放入普通 event 或 focus 的
immediate 块中,行为未定义且极可能静默失败,不会报错但 OOB 也不会按预期加载。