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

Request Divorce

from 100PietyAccepted automatically in some cases; otherwise the AI weighs it

What you need

You

To send it

  • If

    • You are you

    Then

    Otherwise

  • None of these

  • If

    • You are you

    Then

    • You swore to care for your family member's widow

    Otherwise

    • … swore to care for … family member's widow
  • In some cases (on a condition the game doesn't show) › You: You have 100 Piety

To see it in the menu

The other character

Request Divorce is a diplomatic character interaction in Crusader Kings III. Accepted automatically in some cases; otherwise the AI weighs it. Reasons the AI weighs include Reluctance (-50), The recipient's own Marriage (-100), Your union is divine (-100) and 19 more. It costs Piety (from 100). Patch 1.20.1.2, from game/common/character_interactions/00_marriage_interactions.txt.

for a guide, post or blog
Quick answers (2)
How do I get the AI to accept Request Divorce?
Accepted automatically in some cases; otherwise the AI weighs it. Its reasons: Reluctance -50, The recipient's own Marriage -100, … Opinion of …, … Opinion of …, Your union is divine -100, The other character is openly in an incestuous relationship +150, The other character has been unfaithful, The other character is a Eunuch or Beardless Eunuch +100, The other character's Faith does not allow Polygamous +100, The other character is of a different Religion +100, The other character is of a different Faith +10, You … a Kinslayer -50, The other character is a Kinslayer +50, You … the recipient's friend +50, You … the recipient's best friend +150, You … the recipient's lover +25, You … the recipient's rival -100, You … the recipient's nemesis -500, The other character is unlikely to give you children +20, The other character … given you several healthy children -50, The other character is of their Dynasty -10, The other character is of their House -20, The other character is family -35, Intimidated by you, Terrified of you, Intimidated by you, Terrified of you, Your Faith does not accept Same-Sex Relations +100, The other character's Faith does not accept Same-Sex Relations +100 and Wants to decrease House Unity.
How much does Request Divorce cost?
Piety (from 100) (patch 1.20.1.2).

Will they accept?

Accepted automatically when:

  • They use their Hook on …

Otherwise the AI adds these up and accepts above zero. Reasons in italics are the script's, with no label in the game.

ReasonAmount
Base0
Reluctance-50
The recipient's own Marriage
when
  • The target is the other character
-100
… Opinion of …
when
  • The target is not the other character
varies
… Opinion of …
when
  • The target is not the other character
varies
Your union is divine
when
  • Your rite: The rite has the tenet Divine Marriage
  • One of these

    • is_cousin_of = scope:secondary_recipient
    • or

      Is family of the other character
-100
The other character is openly in an incestuous relationship
when
  • The other character › Any relation:
    • One of these

      • All of these

        • The my rite: The rite has Marriage between members of the same Dynasty is forbidden
        • Not: Is Lowborn
        • scope:secondary_recipient.dynasty ?= dynasty
      • or

        All of these

      • or

        All of these

        • The my rite: The rite has Marriage between cousins is allowed
        • One of these

          • Is close family of the other character
          • or

            is_uncle_or_aunt_of = scope:secondary_recipient
          • or

            is_nibling_of = scope:secondary_recipient
      • or

        All of these

        • The my rite: The rite has Marriage between cousins, aunts/nephews and uncles/nieces is allowed
        • Is close family of the other character
+150
The other character has been unfaithful
when
  • The target is not the other character
  • The other character:
    • One of these

      • reverse_has_opinion_modifier = { modifier = unfaithful_spouse_exposed_opinion target = scope:puppet_or_actor }
      • or

        All of these

        • Has “std from unfaithfulness against” (a variable the game's script sets)
        • Std from unfaithfulness against is scope:puppet or actor
varies
The other character is a Eunuch or Beardless Eunuch
when
+100
The other character's Faith does not allow Polygamous
when
  • The target is not the other character
  • Any consort:
  • The other character’s culture: Their culture does not have the tradition Polygamous
  • The other character’s rite: Does not have the Polygamous Doctrine
+100
The other character is of a different Religion
when
  • The target is not the other character
  • scope:secondary_recipient.faith.religion != scope:puppet_or_actor.faith.religion
+100
The other character is of a different Faith
when
  • The target is not the other character
  • scope:secondary_recipient.faith.religion = scope:puppet_or_actor.faith.religion
  • The other character: Their faith is the same as that of puppet or actor
+10
You … a Kinslayer
when
  • has_trait_rank = { trait = kinslayer rank >= 1 }
-50
The other character is a Kinslayer
when
  • The target is not the other character
  • The other character:
    • has_trait_rank = { trait = kinslayer rank >= 1 }
+50
You … the recipient's friend
when
  • The character you target: Has you as friend
+50
You … the recipient's best friend
when
  • The character you target: Has you as best friend
+150
You … the recipient's lover
when
  • The character you target: Has you as lover
+25
You … the recipient's rival
when
  • The character you target: Has you as rival
-100
You … the recipient's nemesis
when
  • The character you target: Has you as nemesis
-500
A scripted reason
when
  • Your house:
    • has_house_aspiration_parameter = ceremony_marriage_acceptance
+15
The other character is unlikely to give you children
when
  • Fertility more than 0.1
  • The other character:
+20
The other character … given you several healthy children
when
  • The other character › Child (at least 3):
    • Is a child of you
    • Is of the same dynasty as you
-50
The other character is of their Dynasty
when
  • The target is not the other character
  • The character you target:
    • Not: Is Lowborn
    • NOT = { is_cousin_of = scope:secondary_recipient }
    • Is not family of the other character
    • Is of the same dynasty as the other character
    • None of these

      • Is of the same house as the other character
      • Is family of you
      • is_cousin_of = scope:puppet_or_actor
      • Is a child of you
      • All of these

        • exists = scope:puppet_or_actor.dynasty
        • The target’s dynasty is your
-10
The other character is of their House
when
  • The target is not the other character
  • The character you target:
    • Not: Is Lowborn
    • NOT = { is_cousin_of = scope:secondary_recipient }
    • Is not family of the other character
    • Is of the same house as the other character
    • Is not of the same house as you
    • Is not family of you
    • NOT = { is_cousin_of = scope:puppet_or_actor }
    • Is not a child of you
    • The target’s house is not your
-20
The other character is family
when
  • The target is not the other character
  • The character you target:
    • One of these

      • is_cousin_of = scope:secondary_recipient
      • or

        Is family of the other character
-35
Intimidated by you
when
  • The character you target:
    • Is a vassal (or below) of you
    • has_dread_level_towards = { target = scope:puppet_or_actor level = 1 }
intimidated_reason_value
Terrified of you
when
  • The character you target:
    • Is a vassal (or below) of you
    • has_dread_level_towards = { target = scope:puppet_or_actor level = 2 }
cowed_reason_value
Intimidated by you
when
  • The character you target:
    • Is not a vassal (or below) of you
    • has_dread_level_towards = { target = scope:puppet_or_actor level = 1 }
intimidated_external_reason_value
Terrified of you
when
  • The character you target:
    • Is not a vassal (or below) of you
    • has_dread_level_towards = { target = scope:puppet_or_actor level = 2 }
cowed_external_reason_value
Your Faith does not accept Same-Sex Relations
when
  • Your faith is the target’s
  • sex_same_as = scope:secondary_recipient
  • Not all of these

    • Game rule set to “Accepted”
    • Your rite: The rite has Same-sex relationships are fully accepted
+100
The other character's Faith does not accept Same-Sex Relations
when
  • The other character’s faith is the target’s
  • The other character:
    • sex_same_as = scope:puppet_or_actor
    • Not all of these

      • Game rule set to “Accepted”
      • Their rite: The rite has Same-sex relationships are fully accepted
+100
Wants to decrease House Unity
when
varies
Acceptance (ai_accept) (159 lines of game script)
base = 0
divorce_character_ai_accept_modifier = yes
modifier = {
	add = 20
	desc = DIVORCE_INFERTILE
	scope:puppet_or_actor = {
		fertility > 0.1
	}
	scope:secondary_recipient = {
		fertility < 0.1
		is_eunuch_trigger = no
		NOT = {
			any_child = {
				is_child_of = scope:puppet_or_actor
			}
		}
	}
}
modifier = {
	add = -50
	desc = DIVORCE_GIVEN_CHILDREN
	scope:secondary_recipient = {
		any_child = {
			count >= 3
			is_child_of = scope:puppet_or_actor
			dynasty ?= scope:puppet_or_actor.dynasty
		}
	}
}
modifier = {
	trigger = {
		scope:recipient != scope:secondary_recipient
	}
	add = -10
	desc = THEY_ARE_MY_DYNASTY_MEMBER
	scope:recipient = {
		is_lowborn = no
		exists = dynasty
		NOR = {
			is_cousin_of = scope:secondary_recipient
			is_close_or_extended_family_of = scope:secondary_recipient
		}
		dynasty = scope:secondary_recipient.dynasty
		NOR = {
			house = scope:secondary_recipient.house
			is_close_or_extended_family_of = scope:puppet_or_actor
			is_cousin_of = scope:puppet_or_actor
			is_child_of = scope:puppet_or_actor
			AND = {
				exists = scope:puppet_or_actor.dynasty
				scope:recipient.dynasty = scope:puppet_or_actor.dynasty
			}
		}
	}
}
modifier = {
	trigger = {
		scope:recipient != scope:secondary_recipient
	}
	add = -20
	desc = THEY_ARE_MY_HOUSE_MEMBER
	scope:recipient = {
		is_lowborn = no
		NOR = {
			is_cousin_of = scope:secondary_recipient
			is_close_or_extended_family_of = scope:secondary_recipient
		}
		house = scope:secondary_recipient.house
		NOR = {
			house = scope:puppet_or_actor.house
			is_close_or_extended_family_of = scope:puppet_or_actor
			is_cousin_of = scope:puppet_or_actor
			is_child_of = scope:puppet_or_actor
			scope:recipient.house = scope:puppet_or_actor.house
		}
	}
}
modifier = {
	trigger = {
		scope:recipient != scope:secondary_recipient
	}
	add = -35
	desc = THEY_ARE_MY_CLOSE_KIN
	scope:recipient = {
		OR = {
			is_cousin_of = scope:secondary_recipient
			is_close_or_extended_family_of = scope:secondary_recipient
		}
	}
}
modifier = {
	add = intimidated_reason_value
	scope:recipient = {
		target_is_liege_or_above = scope:puppet_or_actor
		has_dread_level_towards = {
			target = scope:puppet_or_actor
			level = 1
		}
	}
	desc = INTIMIDATED_REASON
}
modifier = {
	add = cowed_reason_value
	scope:recipient = {
		target_is_liege_or_above = scope:puppet_or_actor
		has_dread_level_towards = {
			target = scope:puppet_or_actor
			level = 2
		}
	}
	desc = COWED_REASON
}
modifier = {
	add = intimidated_external_reason_value
	scope:recipient = {
		NOT = {
			target_is_liege_or_above = scope:puppet_or_actor
		}
		has_dread_level_towards = {
			target = scope:puppet_or_actor
			level = 1
		}
	}
	desc = INTIMIDATED_REASON
}
modifier = {
	add = cowed_external_reason_value
	scope:recipient = {
		NOT = {
			target_is_liege_or_above = scope:puppet_or_actor
		}
		has_dread_level_towards = {
			target = scope:puppet_or_actor
			level = 2
		}
	}
	desc = COWED_REASON
}
modifier = {
	add = 100
	desc = SAME_SEX_MARRIAGE_FAITH_REASON_ACTOR
	scope:puppet_or_actor.faith = scope:recipient.faith
	scope:puppet_or_actor = {
		sex_same_as = scope:secondary_recipient
		allowed_to_marry_same_sex_trigger = no
	}
}
modifier = {
	add = 100
	desc = SAME_SEX_MARRIAGE_FAITH_REASON
	scope:secondary_recipient.faith = scope:recipient.faith
	scope:secondary_recipient = {
		sex_same_as = scope:puppet_or_actor
		allowed_to_marry_same_sex_trigger = no
	}
}
evaluate_action_decreasing_house_unity = {
	VALUE = 100
}

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

What happens

If they accept

  • If

    • The option “divorce hook” is chosen

    Then

    • You:
      • If

        • Has a usable Hook on the target

        Then

        • Use a Hook on the target
  • In some cases (on a condition the game doesn't show) › You:
    • add_piety = { … }
  • If

    • root = scope:puppet_or_actor.house.house_head

    Then

    • You:
      • You:
        • If any spouse:
          • divorce = scope:secondary_recipient
        • If

          • None of these

            • All of these

              • Their rite: The rite has Can always divorce a spouse of low Fertility
              • The other character: Fertility less than 0.1

          Then

          • The other character gains the opinion “Divorced Me” of them
      • If

        • You:
          • None of these

            • All of these

              • Their rite: The rite has Can always divorce a spouse of low Fertility
              • The other character: Fertility less than 0.1

        Then

      • If

        • You: Has the other character as lover

        Then

        • You:
          • remove_lover_or_soulmate_relation_effect = { CHARACTER = scope:secondary_recipient }
        • The other character: Opinion: Broke Up

    Otherwise

    • You:
      • You:
        • If any spouse:
          • divorce = scope:secondary_recipient
        • If

          • NOT = { amicable_infertile_divorce_trigger = { DIVORCEE = scope:secondary_recipient } }

          Then

          • The other character gains the opinion “Divorced Me” of them
      • If

        • You:
          • NOT = { amicable_infertile_divorce_trigger = { DIVORCEE = scope:secondary_recipient } }

        Then

      • If

        • You: Has the other character as lover

        Then

        • You:
          • remove_lover_or_soulmate_relation_effect = { CHARACTER = scope:secondary_recipient }
        • The other character: Opinion: Broke Up
    • You: Event religious_interaction.2
  • If

    • You: Government is Clan
    • The character you target: Government is Clan
    • Your house is the target’s
    • If

      • You are not the target

      Then

      • You are not the target

    Then

    • Your house:
      • add_unity_value = { … }

    Else if

    • No
    • You: Government is Clan
    • Your house: Has you as house head
    • One of these

      • All of these

        • exists = scope:recipient.house
        • Your house is not the target’s
      • or

        The character you target: Is Lowborn

    Then

    • Your house:
      • add_unity_value = { … }

If they refuse

  • If

    • You: Government is Clan
    • The character you target: Government is Clan
    • Your house is the target’s
    • If

      • You are not the target

      Then

      • You are not the target

    Then

    • Your house:
      • add_unity_value = { … }

    Else if

    • No
    • You: Government is Clan
    • Your house: Has you as house head
    • One of these

      • All of these

        • exists = scope:recipient.house
        • Your house is not the target’s
      • or

        The character you target: Is Lowborn

    Then

    • Your house:
      • add_unity_value = { … }

Options when sending

  • Use a Hook

Events it fires: lover.0202, lover.0201, lover.0203, religious_interaction.2

• 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) (22 lines of game script)
is_shown = scope:puppet_or_actor.rite ?= {
	rite_has_doctrine = doctrine_divorce_approval
}
exists = scope:puppet_or_actor.house.house_head
scope:puppet_or_actor != scope:puppet_or_actor.house.house_head
trigger_if = {
	limit = {
		scope:puppet_or_actor ?= {
			pam_grants_own_divorce_trigger = no
		}
	}
	NAND = {
		exists = scope:puppet_or_actor.faith.religious_head
		scope:puppet_or_actor.faith = {
			has_doctrine = doctrine_spiritual_head
		}
	}
}
scope:secondary_recipient ?= {
	is_spouse_of = scope:puppet_or_actor
	is_concubine = no
}

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

Can be sent when (is_valid…) (57 lines of game script)
trigger_if = {
	limit = {
		scope:actor = scope:puppet_or_actor
	}
	custom_tooltip = {
		NOT = {
			scope:puppet_or_actor.culture = {
				has_cultural_parameter = cannot_divorce
			}
		}
		text = CULTURE_FORBIDS_DIVORCE
	}
}
trigger_else = {
	custom_tooltip = {
		NOT = {
			scope:puppet_or_actor.culture = {
				has_cultural_parameter = cannot_divorce
			}
		}
		text = CULTURE_FORBIDS_DIVORCE_puppeteer
	}
}
NOT = {
	scope:secondary_recipient = {
		has_strong_hook = scope:puppet_or_actor
	}
}
scope:puppet_or_actor = {
	trigger_if = {
		limit = {
			scope:actor = scope:puppet_or_actor
		}
		custom_tooltip = {
			NOT = {
				var:family_widow_forbidden_divorce ?= scope:secondary_recipient
			}
			text = BOUND_TO_FAMILY_WIDOW
		}
	}
	trigger_else = {
		custom_tooltip = {
			NOT = {
				var:family_widow_forbidden_divorce ?= scope:secondary_recipient
			}
			text = BOUND_TO_FAMILY_WIDOW_puppeteer
		}
	}
}
trigger_if = {
	limit = {
		scope:is_puppet_action ?= yes
	}
	scope:puppet_or_actor = {
		piety >= divorce_cost
	}
}

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

Effects (on_send, on_accept, on_decline) (80 lines of game script)
on_accept = if = {
	limit = {
		always = scope:divorce_hook
	}
	scope:puppet_or_actor = {
		if = {
			limit = {
				has_usable_hook = scope:recipient
			}
			use_hook = scope:recipient
		}
	}
}
if = {
	limit = {
		scope:is_puppet_action ?= yes
	}
	scope:puppet_or_actor = {
		add_piety = {
			value = {
				add = divorce_cost
				max = piety
				multiply = -1
			}
		}
	}
	scope:actor = {
		send_interface_toast = {
			type = event_toast_effect_neutral
			title = divorce_interaction_notification_puppeteer
			left_icon = scope:puppet_or_actor
			right_icon = scope:secondary_recipient
		}
	}
}
if = {
	limit = {
		scope:puppet_or_actor = scope:puppet_or_actor.house.house_head
	}
	scope:puppet_or_actor = {
		divorce_effect = {
			DIVORCER = scope:puppet_or_actor
			DIVORCEE = scope:secondary_recipient
		}
	}
}
else = {
	show_as_tooltip = {
		scope:puppet_or_actor = {
			divorce_effect = {
				DIVORCER = scope:puppet_or_actor
				DIVORCEE = scope:secondary_recipient
			}
		}
	}
	scope:puppet_or_actor = {
		trigger_event = religious_interaction.2
	}
}
add_clan_unity_interaction_effect = {
	CHARACTER = scope:puppet_or_actor
	TARGET = scope:recipient
	VALUE = major_unity_loss
	DESC = clan_unity_divorce_grant.desc
	REVERSE_NON_HOUSE_TARGET = no
}
on_decline = scope:puppet_or_actor = {
	send_interface_toast = {
		type = event_toast_effect_bad
		title = divorce_character_rel_head_interaction_decline_notification
		right_icon = scope:puppet_or_actor.house.house_head
	}
}
add_clan_unity_interaction_effect = {
	CHARACTER = scope:puppet_or_actor
	TARGET = scope:recipient
	VALUE = minor_unity_loss
	DESC = clan_unity_divorce_grant_refusal.desc
	REVERSE_NON_HOUSE_TARGET = no
}

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

Category
Diplomatic actions
Cost: Piety
from 100
In the menu
under More…
ID
divorce_character_house_head_interaction

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