trigger · has_tech
Definition
- Supported scope:
COUNTRY - Supported target:
none
Description
check if country has technology
has_techCOUNTRYnonecheck if country has technology
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.
has_tech is commonly used in the available/trigger blocks of focuses, decisions, or events to check whether a nation has researched a specific technology in order to unlock further options—for example, restricting a naval focus to only be selectable after researching carrier aircraft technology, or presenting different event options depending on whether the player possesses nuclear physics technology.
# Example: This decision is only available if the nation has researched basic artillery technology
available = {
has_tech = gw_artillery
}
[can_research](/wiki/trigger/can_research): First use has_tech to confirm that prerequisite technologies exist, then use can_research to determine whether the next-tier technology can begin research. Together, these two triggers can precisely describe the "learned/learnable" status of technology tree progression.[add_tech_bonus](/wiki/effect/add_tech_bonus): Typically after has_tech verifies the existence of a prerequisite technology, use the effect to grant acceleration bonuses to the next technology, forming a complete chain of "detect existing tech → reward further research".[has_completed_focus](/wiki/trigger/has_completed_focus): Place alongside has_tech within the trigger block to simultaneously require completion of a specific focus and possession of a specific technology, useful for setting stricter unlock conditions.[has_doctrine](/wiki/trigger/has_doctrine): Similar to has_tech for technology-level condition checks. Together they can distinguish between "generic technologies" and "doctrine technologies", providing more comprehensive military technology assessment.has_tech must be a technology token defined in the script (such as basic_tank_design), not the localization display name of the technology or a guessed name. It is recommended to look up the exact token directly in the corresponding .txt file within the technologies/ folder.has_tech only functions within country scope. If written in the trigger block of a subscope like owned_state or unit_leader without switching back to country scope, the condition will fail to evaluate correctly. Use scope-switching commands like owner, ROOT, or FROM to return to COUNTRY scope before invoking the trigger.