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

Scripted trigger

could_marry_character_trigger

could_marry_character_trigger = { CHARACTER = … }

game/common/scripted_triggers/00_marriage_triggers.txt, line 81 (50 lines). Parameters: $CHARACTER$.

could_marry_character_trigger is a scripted trigger in Crusader Kings III, written at line 81 of its file. A call passes 1 parameter: CHARACTER. The game's script calls it in 18 places, among them Demand Concubine (interaction), Elope (Scheme) (interaction) and Elope (scheme). Patch 1.20.1.2, from game/common/scripted_triggers/00_marriage_triggers.txt.

The comment above it in the file

two characters could potentially marry (does NOT check that they're unmarried)

What it checks

  • can_marry_common_trigger = yes
  • $CHARACTER$ = { can_marry_common_trigger = yes }
  • If

    • $CHARACTER$ = { allowed_to_marry_same_sex_trigger = no }

    Then

    • sex_opposite_of = $CHARACTER$
  • NOT = { has_opinion_modifier = { modifier = divorced_me_opinion target = $CHARACTER$ } }
  • If

    • NOT = { is_courtier_of = $CHARACTER$ }

    Then

  • If

    • $CHARACTER$ = { … }

    Then

    • $CHARACTER$.rite = { … }
  • None of these

    • scope:can_marry_check:
      • is_spouse_of = $CHARACTER$

• 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 (50 lines of game script)
could_marry_character_trigger = {
	save_temporary_scope_as = can_marry_check
	can_marry_common_trigger = yes
	$CHARACTER$ = { can_marry_common_trigger = yes }
	#Opposite genders if you don't have accepted same-sex marriage game rule enabled and your faith supports it
	trigger_if = {
		limit = {
			$CHARACTER$ = { allowed_to_marry_same_sex_trigger = no }
		}
		sex_opposite_of = $CHARACTER$
	}
	#Have you recently divorced this character?
	NOT = {
		has_opinion_modifier = {
			modifier = divorced_me_opinion
			target = $CHARACTER$
		}
	}
	#Faith hostility & consanguinity
	trigger_if = {
		limit = { NOT = { is_courtier_of = $CHARACTER$ } } #If you're someone's courtier, your liege can marry you anyway
		rite = {
			rite_allows_marriage_consanguinity_trigger = {
				CHARACTER_1 = scope:can_marry_check
				CHARACTER_2 = $CHARACTER$
			}
			#faith_hostility_level = {
			#	target = $CHARACTER$.faith
			#	value < faith_hostility_prevents_marriage_level
			#}
		}
	}
	trigger_if = {
		limit = { $CHARACTER$ = { NOT = { is_courtier_of = scope:can_marry_check } } } #If you're someone's courtier, your liege can marry you anyway
		$CHARACTER$.rite = {
			rite_allows_marriage_consanguinity_trigger = {
				CHARACTER_1 = scope:can_marry_check
				CHARACTER_2 = $CHARACTER$
			}
			#faith_hostility_level = {
			#	target = scope:can_marry_check.faith
			#	value < faith_hostility_prevents_marriage_level
			#}
		}
	}
	# Cannot marry self
	NOT = {
		scope:can_marry_check = { is_spouse_of = $CHARACTER$ }
	}
}

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

Where it is used

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

Character interactions (2)

Schemes (1)

  • Elope

Story cycles (1)

  • story_adventurer_ai

Events (5)

Scripted effects inside an event file (1)

  • yearly_1010_abductee_taken_effect

Scripted triggers inside an event file (5)

  • appopriate_vassal_trigger
  • ep3_laamp_flavour_ewan_2021_valid_courtier_for_own_marriage_precise_trigger
  • ep3_travel_8000_valid_prince
  • fp1_trade_events_1171_child_can_marry_trigger
  • hold_court_6070_valid_betrothed_trigger

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