CK3 DatabaseCrusader Kings III · 1.20.1.2 “Crozier” · unofficial
Silk & Silverout Tue, Nov 17What's free, what needs the DLC, price →

Scripted trigger · By God Alone files

pam_challenge_hof_join_war_trigger

pam_challenge_hof_join_war_trigger = yes

game/common/scripted_triggers/pam_antipope_triggers.txt, line 141 (38 lines). No parameters.

pam_challenge_hof_join_war_trigger is a scripted trigger in Crusader Kings III, in the By God Alone files, written at line 141 of its file. It takes no parameters: pam_challenge_hof_join_war_trigger = yes (or no). The game's script calls it in 1 place, among them Challenge Head of Faith (casus belli). Patch 1.20.1.2, from game/common/scripted_triggers/pam_antipope_triggers.txt.

What it checks

  • Is played by the AI
  • Highest held Title is at least County Rank
  • None of these

    • is_participant_in_war = scope:war
    • is_vassal_or_below_of = scope:defender
    • is_vassal_or_below_of = scope:attacker
    • Any liege or above:
      • is_participant_in_war = scope:war
  • One of these

    • Their government has the government is military holy order flag
    • or

      All of these

      • Is landed
      • One of these

        • All of these

          • Is an Independent Ruler
          • If

            • scope:defender.rite != scope:attacker.rite
            • rite = scope:attacker.rite

            Then

            • always = yes

            Otherwise

            • Ai zeal at least 75
        • or

          Government is a Theocratic-type Government

• the game's own tooltip text · ◦ our reading of the script line · code the script where neither exists

“They” is whatever it runs on (the scope it is called in). The scripted triggers and effects it calls link to their own pages; $PARAMETERS$ stay as written: each call fills them in.

The script as written (38 lines of game script)
pam_challenge_hof_join_war_trigger = {
	is_ai = yes
	highest_held_title_tier >= tier_county
	NOR = {
		is_participant_in_war = scope:war
		# Don't add vassals of targets
		is_vassal_or_below_of = scope:defender
		is_vassal_or_below_of = scope:attacker
		# Not part of an attacker's realm
		any_liege_or_above = { is_participant_in_war = scope:war }
	}
	OR = {
		# Military Holy Orders always join
		government_has_flag = government_is_military_holy_order
		AND = {
			# Landed rulers join if zealous independents or theocrats, prevent every cardinal and monastic abbot joining
			is_landed = yes
			OR = {
				AND = {
					is_independent_ruler = yes
					# Attackers always join if rite is different, to reward spreading rite
					trigger_if = {
						limit = {
							scope:defender.rite != scope:attacker.rite
							rite = scope:attacker.rite
						}
						always = yes
					}
					# Otherwise attackers/defenders join only if zealous
					trigger_else = {
						ai_zeal >= very_high_positive_ai_value
					}
				}
				government_has_flag = government_is_theocracy
			}
		}
	}
}

As written in game/common/scripted_triggers/pam_antipope_triggers.txt.

Where it is used

Every place in common/, events/ and history/ that calls pam_challenge_hof_join_war_trigger.

Source: game/common/scripted_triggers/pam_antipope_triggers.txt and every file of common/, events/ and history/ that calls it, Crusader Kings III 1.20.1.2.

Spotted a mistake on this page?