实战用法
add_region_efficiency 常用于战略区域动态经济系统 mod 中,比如为某国占领或控制特定战略区域后给予生产效率加成,模拟资源开发或基础设施建设效果。通常在事件或决策的执行块中,以战略区域为 scope 触发,并通过 FROM 指向受益国家。
# 在战略区域事件中执行
strategic_region_event = {
id = my_mod.1
hidden = yes
immediate = {
add_region_efficiency = {
target = FROM # FROM 为触发该事件的国家
}
}
}
配合关系
[hidden_trigger](/wiki/trigger/hidden_trigger):在执行 add_region_efficiency 前,用 hidden_trigger 隐式检查目标国家是否满足条件(如是否实际控制该区域内的省份),避免效率加成被不符合预期的国家获得。
[meta_trigger](/wiki/trigger/meta_trigger):在需要动态构建触发条件(例如根据变量判断目标国 tag)时,用 meta_trigger 包裹逻辑,配合 add_region_efficiency 实现更灵活的多国适配场景。
常见坑
- scope 层级错误:
add_region_efficiency 必须在 STRATEGIC_REGION scope 下调用,新手常在国家 scope 或省份 scope 中直接写该命令,导致脚本静默失败或报错,需用 strategic_region = { ... } 块先切换到正确 scope。
- target 指向混淆:
target 决定哪个国家获得效率加成,若 FROM 在当前事件链中并非预期国家(例如多层事件嵌套后 FROM 已发生变化),应先用临时变量或 ROOT/PREV 明确指向正确的受益方。