Wiki

trigger · is_theorist

Definition

  • Supported scope:CHARACTER
  • Supported target:none

Description

is_theorist = yes/no - Checks if the character in scope is hired as a theorist

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

is_theorist is commonly used in mod scenarios that require distinguishing between advisor role types. For example, in a decision or event, you can trigger special effects (such as additional traits or upgrades) only for characters currently serving in the theorist position. In dynamic advisor systems, it can also be used to prevent duplicate logic triggering.

# Event option: if the character is currently serving as a theorist, add skill level
character_event = {
    id = my_mod.42
    title = "Theory Breakthrough"

    option = {
        name = "Continue Research"
        trigger = {
            FROM = {
                is_theorist = yes
            }
        }
        FROM = {
            add_skill_level = 1
        }
    }
}

Synergy

  • [is_hired_as_advisor](/wiki/trigger/is_hired_as_advisor): Combined with is_theorist, it can distinguish between "whether hired as an advisor" and "whether specifically serving as a theorist", providing dual validation to avoid logic gaps.
  • [has_advisor_role](/wiki/trigger/has_advisor_role): Used to further confirm the advisor role type that a character holds; combined with is_theorist, it constructs more precise character filtering conditions.
  • [add_trait](/wiki/effect/add_trait): After confirming the character is a theorist, grant them exclusive traits; this is the most common subsequent effect pairing.
  • [remove_advisor_role](/wiki/effect/remove_advisor_role): Remove the theorist position when specific conditions are met, typically using is_theorist = yes as a preceding limit guard to ensure no misoperation on non-theorist characters.

Common Pitfalls

  1. Scope confusion: is_theorist must be used within a CHARACTER scope. Beginners often write it directly in trigger blocks under country scope, causing script errors or silent failures. Use country_leader = { is_theorist = yes } and similar methods to switch scope first.
  2. Mixing with is_advisor: is_advisor only checks whether a character is hired as an advisor, while is_theorist specifically refers to the theorist position; the two are not equivalent. Using only is_advisor = yes does not guarantee the character serves as a theorist.