实战用法
set_autonomy 常用于 mod 中处理宗主-附庸关系的剧本事件,例如战后和约、焦点树触发的独立/吞并流程,或模拟历史上殖民地自治进程。以下示例展示宗主国通过国家焦点将附庸升格为傀儡:
# 在某国焦点完成效果中
set_autonomy = {
target = PHI
autonomy_state = autonomy_puppet
freedom_level = 0.4
end_wars = yes
end_civil_wars = yes
}
配合关系
[has_autonomy_state](/wiki/trigger/has_autonomy_state) — 在执行 set_autonomy 前用于检测目标当前的自治等级,避免重复触发或逻辑冲突。
[compare_autonomy_progress_ratio](/wiki/trigger/compare_autonomy_progress_ratio) — 用于判断自治进度比例是否达到阈值,决定是否该触发等级变更。
[add_autonomy_score](/wiki/effect/add_autonomy_score) — 与 set_autonomy 搭配时,可先用其积累自治分数再强制设定最终状态,模拟渐进式独立流程。
[end_puppet](/wiki/effect/end_puppet) — 当需要完全解除附庸关系而非仅调整等级时,与 set_autonomy 形成高低两档的处理选项,视剧本分支灵活选用。
常见坑
- target 填写错误导致无效:
target 字段必须填写真实存在的国家标签(如 ENG),不能填 scope 关键字(如 THIS、ROOT)——scope 关键字只在 set_autonomy 所在的上下文 scope 层生效,而 target 要求明确的国家标签或变量引用,混淆两者会导致效果静默失效。
- 忽略战争状态导致异常:
end_wars 和 end_civil_wars 默认均为 yes,若目标国正处于战争中且不希望强制结束战争,必须显式写明 end_wars = no,否则可能意外终止与设计无关的战争,造成难以排查的逻辑 bug。