实战用法
add_mines 常用于海战 mod 中模拟某国在特定战略海域布设水雷封锁线,例如在某事件触发后让玩家或 AI 国家在关键海峡区域增加雷区密度,迫使对手减慢海军推进速度。也适用于剧本式 mod 中,在战争爆发事件里自动为防守方布置初始水雷防线,营造真实的海防态势。
country_event = {
id = my_mod.42
# ...
option = {
name = my_mod.42.a
# 本国在战略区域 42 布设 100 枚水雷
add_mines = {
region = 42
amount = 100
}
}
}
配合关系
[has_country_flag](/wiki/trigger/has_country_flag):先检查国家是否已触发过布雷事件,避免水雷数量被重复叠加,常放在触发条件中做幂等保护。
[clr_country_flag](/wiki/effect/clr_country_flag) / [set_country_flag](/wiki/effect/set_country_flag)(此处用 [clr_country_flag](/wiki/effect/clr_country_flag)):布雷后清除或设置标记,配合 flag 机制控制布雷事件只执行一次或记录状态。
[create_wargoal](/wiki/effect/create_wargoal):在宣战或布雷封锁的同一事件选项中一并使用,让水雷布设与战争状态同步生效,符合战争开幕的叙事逻辑。
[convoy_threat](/wiki/trigger/convoy_threat):布雷后用此触发器持续检测该海域的护航威胁值变化,验证水雷对敌方补给线的实际压制效果,常用于 AI 策略判断。
常见坑
- region 填的是战略区域 ID 而非州 ID:新手容易把普通州(state)的编号直接填入
region 字段,导致效果无法生效或指向错误区域;需在 /map/strategicregions/ 目录下确认正确的战略海域 ID,且该区域必须是海洋战略区域,对陆地区域使用无实际意义。
- scope 必须是 COUNTRY 而非 STATE:
add_mines 挂在国家 scope 下执行,若误写在 every_owned_state 或 any_controlled_state 等州级 scope 内部,脚本会报错或静默失败,应确保外层 scope 指向具体国家标签或通过 OWNER/ROOT 等合法 target 回溯到国家 scope。