Wiki

trigger · has_breakthrough_points

Definition

  • Supported scope:COUNTRY
  • Supported target:none

Description

Checks if the country in scope has enough breakthroughs within a given specialization.
specialization = <specialization_token>
value = <point>
ex: GER = {
	  has_breakthrough_points = {
	    specialization = specialization_nuclear
		value = 1
      }
	}

实战 · 配合 · 坑

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

实战用法

has_breakthrough_points 常用于科技/核武器相关 mod 中,在 focus、decision 的 availabletrigger 块里检查某个国家是否已在特定专业化方向积累了足够的突破点,从而解锁特殊选项或触发事件。例如,限制只有核物理突破达到一定程度的国家才能激活某个决策:

available = {
    has_breakthrough_points = {
        specialization = specialization_nuclear
        value = 2
    }
}

配合关系

  • [add_breakthrough_points](/wiki/effect/add_breakthrough_points):用于在效果块中给国家添加突破点,与本 trigger 形成"积累-检测"的完整闭环,先用 effect 积累再用 trigger 判断是否达标。
  • [add_breakthrough_progress](/wiki/effect/add_breakthrough_progress):进度层面的推进 effect,常与本 trigger 搭配,在某阶段进度满足后检测突破点是否同步达到要求。
  • [complete_special_project](/wiki/effect/complete_special_project):完成特殊项目的 effect,往往以 has_breakthrough_points 作为前置条件,确保科研储备充足才允许触发项目完成。
  • [has_completed_track](/wiki/trigger/has_completed_track):检测科研轨道完成情况,与 has_breakthrough_points 联合使用可构建多层科技条件,避免单一突破点条件过于宽松。

常见坑

  1. specialization 填写错误specialization_token 必须使用游戏内定义的精确字符串(如 specialization_nuclear),填写大小写不符或不存在的 token 时条件会静默返回假,且不报错,极难排查。
  2. scope 混用:本 trigger 只能在 COUNTRY scope 下使用,若误写在 STATE 或 CHARACTER scope 内(例如放在 every_owned_state 的子块里),脚本不会直接报错但判断结果不可预期,需确保外层 scope 始终是国家。

Hands-On Notes

Hands-on notes are AI-generated and checked against the vanilla command vocabulary — treat them as a starting point, not authoritative reference. The definition above is the game's own documentation.

Hands-On Usage

has_breakthrough_points is commonly used in technology/nuclear weapon-related mods to check within the available or trigger blocks of focuses and decisions whether a country has accumulated sufficient breakthrough points in a specific specialization to unlock special options or trigger events. For example, to restrict a decision so that only countries with nuclear physics breakthroughs at a certain level can activate it:

available = {
    has_breakthrough_points = {
        specialization = specialization_nuclear
        value = 2
    }
}

Synergy

  • [add_breakthrough_points](/wiki/effect/add_breakthrough_points): Used in effect blocks to grant a country breakthrough points, forming a complete "accumulation-verification" loop with this trigger. First use the effect to accumulate, then use the trigger to check if the threshold is met.
  • [add_breakthrough_progress](/wiki/effect/add_breakthrough_progress): A progress-level advancement effect that pairs well with this trigger; after progress reaches a certain stage, verify whether breakthrough points have simultaneously met the requirement.
  • [complete_special_project](/wiki/effect/complete_special_project): Completes a special project effect, typically using has_breakthrough_points as a prerequisite condition to ensure sufficient research reserves before allowing the project completion to trigger.
  • [has_completed_track](/wiki/trigger/has_completed_track): Checks completion status of research tracks; when combined with has_breakthrough_points, it constructs multi-layered technology conditions and prevents a single breakthrough point condition from being too permissive.

Common Pitfalls

  1. Incorrect specialization token: The specialization_token must use the exact string defined in-game (such as specialization_nuclear). When the token contains case mismatches or references a nonexistent token, the condition silently returns false without error reporting, making it extremely difficult to debug.
  2. Scope confusion: This trigger can only be used under COUNTRY scope. If mistakenly placed in STATE or CHARACTER scope (for example, within a sub-block of every_owned_state), the script will not throw a direct error but the evaluation result becomes unpredictable. Always ensure the outer scope is a country.