命令百科

trigger · has_opinion

Definition

  • Supported scope:COUNTRY
  • Supported target:THIS, ROOT, PREV, FROM, OWNER, CONTROLLER, OCCUPIED, CAPITAL

Description

check what opinion the country has towards a specified country

实战 · 配合 · 坑

实战内容由 AI 生成,并已对照 vanilla 命令词表校验 —— 请当作起点而非权威依据。上方的定义节才是游戏自带文档原文。

实战用法

has_opinion 常用于外交事件或决策的可用条件中,判断某国对目标国的好感度是否达到阈值,例如限制同盟邀请、决定 AI 的外交行为或解锁特定剧情分支。比如,只有当本国对某大国好感度足够高时,才允许触发结盟事件。

# 决策 available 块示例:只有己方对 GER 好感度 ≥ 50 才能执行
available = {
    has_opinion = {
        target = GER
        value > 50
    }
}

配合关系

  • [add_opinion_modifier](/wiki/effect/add_opinion_modifier) — 在 effect 块中为指定国家添加好感度修正,与 has_opinion 搭配可形成"先检查当前关系 → 再叠加修正"的完整外交逻辑。
  • [any_allied_country](/wiki/trigger/any_allied_country) — 遍历盟友时内嵌 has_opinion 检查,可筛选出对本国好感度达标的盟友,实现精细化条件判断。
  • [has_country_flag](/wiki/trigger/has_country_flag) — 常与 has_opinion 并列使用,通过国家 flag 记录外交进展阶段,避免同一外交链条被重复触发。
  • [add_relation_modifier](/wiki/effect/add_relation_modifier) — 效果与 add_opinion_modifier 类似但更底层,配合 has_opinion 可在好感度不足时触发补偿性关系修正。

常见坑

  1. 比较运算符缺失或写错:新手常漏写 value > 50 中的 value 字段,或误用 = 做大小比较(PDX 脚本中 = 表示"等于"而非赋值),导致条件永远不成立或报错。
  2. target 填写的是非法 scopetarget 只接受白名单中列出的 scope 关键字或具体国家标签(如 GER),若误填州级 scope 或不存在的标签,游戏不会报错但条件判断结果会静默失败。