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

Scripted trigger

petition_liege_title_vassal_trigger

petition_liege_title_vassal_trigger = yes

game/common/scripted_triggers/00_activity_triggers.txt, line 269 (26 lines). No parameters.

petition_liege_title_vassal_trigger is a scripted trigger in Crusader Kings III, written at line 269 of its file. It takes no parameters: petition_liege_title_vassal_trigger = yes (or no). The game's script calls it in 3 places, among them Petition the … (decision), petition_liege.9000 (event) and Petition: Switching Tactics (event petition_liege.9001). Patch 1.20.1.2, from game/common/scripted_triggers/00_activity_triggers.txt.

The comment above it in the file

Vassal Title

What it checks

  • Their holder:
    • Any liege or above:
    • Is at not War
    • NOT = { joined_faction.faction_target ?= scope:claimant_temp.liege }
    • Does not have “petition title cooldown” (a variable the game's script sets)
    • NOT = { vassal_contract_has_flag = vassal_contract_cannot_revoke_titles }
  • If title tier exactly County › scope:second_temp › Held title (more than 1): Title tier exactly County

• 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 (26 lines of game script)
petition_liege_title_vassal_trigger = {
	prev = { save_temporary_scope_as = claimant_temp }
	holder ?= {
		save_temporary_scope_as = second_temp
		any_liege_or_above = { this = scope:claimant_temp.liege }
		is_at_war = no
		NOR = {
			joined_faction.faction_target ?= scope:claimant_temp.liege
			has_variable = petition_title_cooldown
			vassal_contract_has_flag = vassal_contract_cannot_revoke_titles
		}
	}
	#trigger_if = {
	#	limit =  { exists = county }
	#	county != holder.capital_county
	#}
	trigger_if = {
		limit = { tier = tier_county }
		scope:second_temp ?= {
			any_held_title = {
				count > 1
				title_tier = county
			}
		}
	}
}

As written in game/common/scripted_triggers/00_activity_triggers.txt.

Where it is used

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

Decisions (1)

Source: game/common/scripted_triggers/00_activity_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?