实战用法
num_owned_neighbour_states 常用于判断某个州是否被某国大量包围,适合在占领、决策或事件中检测战略包围圈。例如在"孤立飞地"决策里,判断某州四周邻接州是否全归同一敌国所有,从而触发特殊外交或投降选项。
# 决策 available 示例:当某州被目标国包围时才可用
available = {
ROOT = { # ROOT 为当前州
num_owned_neighbour_states = {
count > 3
owner = FROM # FROM 为触发决策的国家
}
}
}
配合关系
[any_neighbor_state](/wiki/trigger/any_neighbor_state):先用 any_neighbor_state 遍历逐一检查邻州属性,再用本 trigger 统计数量,两者组合可实现"邻州满足特定条件的数量"逻辑。
[is_owned_by](/wiki/trigger/is_owned_by):在 any_neighbor_state 或 all_neighbor_state 内搭配 is_owned_by,与本 trigger 互相印证,确认具体归属关系。
[every_neighbor_state](/wiki/effect/every_neighbor_state):当本 trigger 判断为真后,使用 every_neighbor_state 对所有满足条件的邻州批量施加效果,形成"检测→执行"的完整流程。
[is_core_of](/wiki/trigger/is_core_of):与本 trigger 并列使用,在判断包围数量的同时额外限定邻州必须是某国核心州,用于更精确的领土主张场景。
常见坑
- scope 位置写错:本 trigger 必须置于
STATE scope 下才能生效,直接写在国家 scope 里会静默失败或报错,新手常忘记先用 capital_scope 或具体州 scope 切换进去。
- target 字段误用:
owner 字段所填的 target(如 ROOT、FROM)是相对于调用该 trigger 时所在的上下文解析的,若嵌套层级较深,ROOT/FROM 指向的国家可能并非预期目标,需仔细追踪 scope 链。