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

Scripted trigger · The Fate of Iberia files

fp2_struggle_ending_compromise_independent_duchy_trigger

fp2_struggle_ending_compromise_independent_duchy_trigger = yes

game/common/scripted_triggers/03_fp2_scripted_triggers.txt, line 283 (35 lines). No parameters.

fp2_struggle_ending_compromise_independent_duchy_trigger is a scripted trigger in Crusader Kings III, in the The Fate of Iberia files, written at line 283 of its file. It takes no parameters: fp2_struggle_ending_compromise_independent_duchy_trigger = yes (or no). The game's script calls it in 3 places, among them Status Quo (decision), Status Quo (event fp2_struggle.0901) and fp2_struggle_compromise_duchies_to_kingdoms_effect (scripted effect). Patch 1.20.1.2, from game/common/scripted_triggers/03_fp2_scripted_triggers.txt.

The comment above it in the file

Checks duchy is held by an independent ruler who owns at least half of it

What it checks

  • Title tier exactly Duchy
  • One of these

    • title_capital_county != de_jure_liege.title_capital_county
    • or

      All of these

      • exists = de_jure_liege.holder
      • holder != de_jure_liege.holder
  • Their holder:
  • One of these

    • this = holder.primary_title
    • or

      holder.primary_title.tier = tier_kingdom
  • Direct de jure vassal title (at least 50%):
    • holder.top_liege = scope:duchy_holder

• 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 (35 lines of game script)
fp2_struggle_ending_compromise_independent_duchy_trigger = {
	tier = tier_duchy
	# Is created
	exists = holder
	OR = {
		# Is not the heartland of an existing kingdom
		title_capital_county != de_jure_liege.title_capital_county
		# Capital duke doesn't control kingdom, edge case
		AND = {
			exists = de_jure_liege.holder
			holder != de_jure_liege.holder
		}
	}
	# Is ruled by an independent duke
	holder = {
		top_liege = this
		save_temporary_scope_as = duchy_holder
		primary_title = {
			is_mercenary_company = no
			OR = {
				tier = tier_duchy
				tier = tier_kingdom
			}
		}
	}
	OR = {
		this = holder.primary_title
		holder.primary_title.tier = tier_kingdom
	} 
	# Duke rules at least half the de jure duchy
	any_direct_de_jure_vassal_title = {
		percent >= 0.5
		holder.top_liege = scope:duchy_holder
	}
}

As written in game/common/scripted_triggers/03_fp2_scripted_triggers.txt.

Where it is used

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

Decisions (1)

Events (1)

Source: game/common/scripted_triggers/03_fp2_scripted_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?