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

Interaction · Diplomatic actions

Make Primary Spouse

No costAccepted automatically

Make the recipient your primary spouse. This will allow them to join your Council and help run the affairs of the realm.

What you need

You

  • If played by the AI: Spouse (at least 2):
  • Is the target’s spouse
  • root.primary_spouse != scope:recipient

The character you target

Make Primary Spouse is a diplomatic character interaction in Crusader Kings III. The character you target needs: Does not have the Trait: Incapable. Accepted automatically. Patch 1.20.1.2, from game/common/character_interactions/00_character_interactions.txt.

for a guide, post or blog
Quick answers (2)
What are the requirements for Make Primary Spouse in CK3?
The character you target: Does not have the Trait: Incapable. (patch 1.20.1.2)
Will the AI accept Make Primary Spouse?
Yes: it is accepted automatically.

Will they accept?

The other character has no choice: the game accepts it automatically.

What happens

Effects

  • Your spouse:
  • If

    • Your spouse: Not: Is Lowborn
    • The character you target: Is Lowborn

    Then

    • add_legitimacy = { value = medium_legitimacy_loss multiply = scope:actor.primary_title.tier }
    • Every Courtly Vassal (…):
    • Every Glory Hound Vassal (…):
  • set_primary_spouse = scope:recipient
  • The character you target:
    • If

      • Has the opinion “Spurned Spouse” of you

      Then

      • Loses the opinion “Spurned Spouse” of you
    • Opinion: Favored Spouse

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

Who can use it and sees it (is_available, is_shown) (12 lines of game script)
is_available = trigger_if = {
	limit = {
		is_ai = yes
	}
	any_spouse = {
		count >= 2
	}
}
is_shown = scope:actor = {
	is_spouse_of = scope:recipient
}
scope:actor.primary_spouse != scope:recipient

As written in game/common/character_interactions/00_character_interactions.txt.

Can be sent when (is_valid…) (5 lines of game script)
scope:recipient = {
	NOT = {
		has_trait = incapable
	}
}

As written in game/common/character_interactions/00_character_interactions.txt.

Effects (on_send, on_accept, on_decline) (102 lines of game script)
on_accept = scope:actor.primary_spouse = {
	if = {
		limit = {
			has_opinion_modifier = {
				target = scope:actor
				modifier = spouse_made_primary_opinion
			}
		}
		remove_opinion = {
			modifier = spouse_made_primary_opinion
			target = scope:actor
		}
	}
	add_opinion = {
		target = scope:actor
		modifier = spouse_made_secondary_opinion
	}
	hidden_effect = {
		send_interface_toast = {
			type = event_toast_effect_bad
			title = set_primary_spouse_interaction_toast
			left_icon = scope:actor
			right_icon = scope:recipient
			custom_tooltip = set_primary_spouse_interaction_toast_removed
		}
	}
}
scope:actor = {
	if = {
		limit = {
			scope:actor.primary_spouse = {
				is_lowborn = no
			}
			scope:recipient = {
				is_lowborn = yes
			}
		}
		add_legitimacy = {
			value = medium_legitimacy_loss
			multiply = scope:actor.primary_title.tier
		}
		every_vassal_or_below = {
			limit = {
				has_vassal_stance = courtly
			}
			custom = every_courtly_vassal
			add_opinion = {
				modifier = married_lowborn_opinion
				target = scope:actor
				opinion = -50
			}
		}
		every_vassal_or_below = {
			limit = {
				has_vassal_stance = glory_hound
			}
			custom = every_glory_hound_vassal
			add_opinion = {
				modifier = married_lowborn_opinion
				target = scope:actor
				opinion = -30
			}
		}
	}
	set_primary_spouse = scope:recipient
	hidden_effect = {
		send_interface_toast = {
			type = event_toast_effect_neutral
			title = set_primary_spouse_interaction_toast
			left_icon = scope:actor
			right_icon = scope:recipient
			custom_tooltip = set_primary_spouse_interaction_toast_changed
		}
	}
}
scope:recipient = {
	hidden_effect = {
		send_interface_toast = {
			type = event_toast_effect_good
			title = set_primary_spouse_interaction_toast
			left_icon = scope:actor
			right_icon = scope:recipient
			custom_tooltip = set_primary_spouse_interaction_toast_added
		}
	}
	if = {
		limit = {
			has_opinion_modifier = {
				target = scope:actor
				modifier = spouse_made_secondary_opinion
			}
		}
		remove_opinion = {
			modifier = spouse_made_secondary_opinion
			target = scope:actor
		}
	}
	add_opinion = {
		target = scope:actor
		modifier = spouse_made_primary_opinion
	}
}

As written in game/common/character_interactions/00_character_interactions.txt.

Category
Diplomatic actions
In the menu
under More…
ID
set_primary_spouse_interaction

Source: game/common/character_interactions/00_character_interactions.txt and the English localisation, Crusader Kings III 1.20.1.2. “You” is the character who sends it (scope:actor, or a puppet acting for you); “the character you target” is the recipient.

Spotted a mistake on this page?