实战用法
set_mio_policy_cost 常用于 MIO(军事工业组织)相关 mod 场景,例如当某国完成特定国策或科技后,动态降低特定 MIO 政策的政治点数消耗,以体现该国工业效率或政治影响力的提升。也可结合变量使用,让消耗值随游戏进程动态变化(例如随某项资源储量或科技等级动态调整)。
# 苏联完成某国策后,降低特定 MIO 政策的 PP 消耗
focus = {
id = SOV_streamline_mio_policy
...
completion_reward = {
SOV = {
set_mio_policy_cost = {
policy = sov_heavy_industry_focus_policy
value = 2
}
}
}
}
# 用变量动态设置消耗
SOV = {
set_mio_policy_cost = {
policy = sov_heavy_industry_focus_policy
value = var:sov_policy_cost_var
}
}
配合关系
[add_mio_policy_cost](/wiki/effect/add_mio_policy_cost) — 与 set_mio_policy_cost 搭配使用,前者是在基础值上叠加增减量,后者是直接设定基础值;组合使用可实现"先重置再微调"的精确费用控制。
[add_mio_policy_cooldown](/wiki/effect/add_mio_policy_cooldown) — MIO 政策管理的另一维度,用于控制政策的冷却时间,配合费用设置可全面调节玩家切换 MIO 政策的节奏与成本。
[add_political_power](/wiki/effect/add_political_power) — 当调整了政策费用后,常需要同步给予或扣除一定政治点数作为叙事补偿或惩罚,使数值设计更连贯。
[has_completed_focus](/wiki/trigger/has_completed_focus) — 常作为前置条件判断,确认国策完成后再触发费用设置,避免在错误的游戏阶段意外修改政策成本。
常见坑
- value 填写负数导致脚本报错:官方明确规定输入值不能为负数,若试图通过此指令"增加费用惩罚"而填入负值,脚本将无法正常执行。需要增加费用时应改用
add_mio_policy_cost 配合正数来叠加。
- 作用域写错导致静默失效:此 effect 必须在 COUNTRY scope 下执行,若误写在 STATE 或 CHARACTER scope 内,游戏通常不会报错提示但效果完全不生效,调试时需仔细核查外层 scope 是否为目标国家。