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

Interaction · Candidacy

Force Abdication

No costAccepted automatically in some cases; otherwise the AI weighs it

Leverage Influence, a Hook, or Gold to force the Ceremonial Monarch to abdicate the throne

What you need

You

To send it

  • Is not incapable
  • Is an Independent Ruler
  • Is not in a Civil War
  • scope:target = scope:recipient.top_liege.primary_title.var:administrative_ui_special_title
  • Also needed: available (an adult, not in an army, not imprisoned, not incapable) · none of the traits Consumption, Typhus, Bubonic Plague, Smallpox, Measles, Bloody Flux · not busy in an Activity · not planning another Activity

To see it in the menu

The character you target

To send it

  • Is an Adult
  • If imprisoned:
    • imprisoner ?= scope:actor
  • Is not in a Civil War
  • Does not have a usable Hook on you

To see it in the menu

Which title you can pick

  • scope:target = scope:recipient.top_liege.primary_title.var:administrative_ui_special_title

Force Abdication is a candidacy character interaction in Crusader Kings III. You need: Is available (an adult, not in an army, not imprisoned, not incapable), Has none of the traits: Consumption, Typhus, Bubonic Plague, Smallpox, Measles, Bloody Flux, You are currently busy … and 4 more. The character you target needs: Is an Adult, Is not in a Civil War and Does not have a usable Hook on you. Accepted automatically in some cases; otherwise the AI weighs it. Reasons the AI weighs include Weak Hook used (+30), Gold is Good (+30), Using the recipient's Secret (+50) and 16 more. Patch 1.20.1.2, from game/common/character_interactions/10_tgp_interactions.txt.

for a guide, post or blog
Quick answers (2)
What are the requirements for Force Abdication in CK3?
You: Is available (an adult, not in an army, not imprisoned, not incapable), Has none of the traits: Consumption, Typhus, Bubonic Plague, Smallpox, Measles, Bloody Flux, You are currently busy …, You are already planning another Activity, Is not incapable, Is an Independent Ruler and Is not in a Civil War. The character you target: Is an Adult, Is not in a Civil War and Does not have a usable Hook on you. (patch 1.20.1.2)
How do I get the AI to accept Force Abdication?
Accepted automatically in some cases; otherwise the AI weighs it. Its reasons: Weak Hook used +30, Exerting Influence (based on your Level of Influence), Gold is Good +30, Using the recipient's Secret +50, Craven +10, Trusting +5, Generous +5, Lazy +10, Paranoid -20, Patient -5, Brave -10, Greedy -10, Ambitious -20, Your Intrigue, The recipient's Intrigue, Poor Health +50, Ruler is still young -50, Their Age, Their Age, Heir not the recipient's descendant -50, Heir is still young -25, Poor relationship -25, Poor relationship -50 and Poor relationship -100.

Will they accept?

Accepted automatically when:

  • If

    Then

    • They use their Hook on …

    Else if

    • The character you target:
      • Is imprisoned
      • imprisoner ?= scope:actor

    Then

    • imprisonment

    Otherwise

    • Never

Otherwise the AI adds these up and accepts above zero; near zero the answer is partly random (ai_maybe). Reasons in italics are the script's, with no label in the game.

ReasonAmount
Base0
Weak Hook used
when
+30
Exerting Influence (based on your Level of Influence)
when
  • The option “influence” is chosen
varies
Gold is Good
when
  • The option “gold” is chosen
+30
Using the recipient's Secret
when
  • The option “criminal secret recipient” is chosen
+50
Their opinion of you × 0.25varies
Craven
when
+10
Trusting
when
+5
Generous
when
+5
Lazy
when
  • The character you target: Has the Trait: Lazy
+10
Paranoid
when
-20
Patient
when
-5
Brave
when
-10
Greedy
when
-10
Ambitious
when
-20
Your Intrigueyour intrigue × 2
The recipient's Intriguetheir intrigue × -2
Poor Health
when
  • One of these

    • Not all of these

      • Health is Poor or lower
      • Has none of the traits: Ill, Severely Injured, Brutally Mauled, Infirm, Withering Mind, Clouded Eyes, Faltering Heart, Fragile Bones, Incapable
      • Has none of the traits: Consumption, Typhus, Bubonic Plague, Smallpox, Measles, Bloody Flux
    • or

      Has the Trait: Injured
    • or

      Has the Trait: Ill
+50
Ruler is still young
when
  • Is under 6 years old
-50
Their Age
when
  • Age more than 30
varies
Their Age
when
  • Age more than 30
varies
Heir not the recipient's descendant
when
  • None of these

    • Your heir:
      • One of these

        • Is a child of the target
        • or

          Is a grandchild of the target
        • or

          is_great_grandchild_of = scope:recipient
-50
Heir is still young
when
  • If

    a check the game hides

    Then

    • player_heir.age < 6
-25
Poor relationship
when
  • One of these

    • Has you as potential rival
    • or

      Has you as victim
    • or

      Has you as bully
-25
Poor relationship
when
  • Has you as rival
-50
Poor relationship
when
  • Has you as nemesis
-100
Acceptance (ai_accept) (180 lines of game script)
base = 0
modifier = {
	scope:hook = yes
	add = 30
	desc = SCHEME_WEAK_HOOK_USED
}
modifier = {
	desc = INFLUENCE_REASON
	scope:influence = yes
	add = {
		value = 20
		multiply = scope:actor.influence_level
		min = 5
	}
}
modifier = {
	desc = GOLD_REASON
	scope:gold = yes
	add = 30
}
modifier = {
	desc = RECIPIENT_SECRET
	scope:criminal_secret_recipient = yes
	add = 50
}
opinion_modifier = {
	opinion_target = scope:actor
	multiplier = 0.25
}
modifier = {
	scope:recipient = {
		has_trait = craven
	}
	add = 10
	desc = INTERACTION_CRAVEN
}
modifier = {
	scope:recipient = {
		has_trait = trusting
	}
	add = 5
	desc = INTERACTION_TRUSTING
}
modifier = {
	scope:recipient = {
		has_trait = generous
	}
	add = 5
	desc = INTERACTION_GENEROUS
}
modifier = {
	scope:recipient = {
		has_trait = lazy
	}
	add = 10
	desc = INTERACTION_LAZY
}
modifier = {
	scope:recipient = {
		has_trait = paranoid
	}
	add = -20
	desc = INTERACTION_PARANOID
}
modifier = {
	scope:recipient = {
		has_trait = patient
	}
	add = -5
	desc = INTERACTION_PATIENT
}
modifier = {
	scope:recipient = {
		has_trait = brave
	}
	add = -10
	desc = INTERACTION_BRAVE
}
modifier = {
	scope:recipient = {
		has_trait = greedy
	}
	add = -10
	desc = INTERACTION_GREEDY
}
modifier = {
	scope:recipient = {
		has_trait = ambitious
	}
	add = -20
	desc = INTERACTION_AMBITIOUS
}
modifier = {
	add = {
		value = scope:actor.intrigue
		multiply = 2
	}
	desc = INTERACTION_ACTOR_INTRIGUE
}
modifier = {
	add = {
		value = scope:recipient.intrigue
		multiply = -2
	}
	desc = INTERACTION_RECIPIENT_INTRIGUE
}
modifier = {
	OR = {
		is_healthy = no
		has_trait = wounded
		has_trait = ill
	}
	add = 50
	desc = INTERACTION_POOR_HEALTH
}
modifier = {
	age < 6
	add = -50
	desc = INTERACTION_RULER_TOO_YOUNG
}
modifier = {
	age > 30
	add = {
		value = age
		subtract = 30
	}
	desc = THEIR_AGE_REASON
}
modifier = {
	age > 30
	add = {
		value = age
		subtract = 30
	}
	desc = THEIR_AGE_REASON
}
modifier = {
	NOT = {
		player_heir ?= {
			OR = {
				is_child_of = scope:recipient
				is_grandchild_of = scope:recipient
				is_great_grandchild_of = scope:recipient
			}
		}
	}
	add = -50
	desc = INTERACTION_HEIR_NOT_MY_DESCENDENT
}
modifier = {
	trigger_if = {
		limit = {
			exists = player_heir
		}
		player_heir.age < 6
	}
	add = -25
	desc = INTERACTION_HEIR_TOO_YOUNG
}
modifier = {
	add = -25
	has_any_mild_bad_relationship_with_character_trigger = {
		CHARACTER = scope:actor
	}
	desc = INTERACTION_BAD_RELATIONSHIP_WITH_ACTOR
}
modifier = {
	add = -50
	has_any_moderate_bad_relationship_with_character_trigger = {
		CHARACTER = scope:actor
	}
	desc = INTERACTION_BAD_RELATIONSHIP_WITH_ACTOR
}
modifier = {
	add = -100
	has_any_worst_bad_relationship_with_character_trigger = {
		CHARACTER = scope:actor
	}
	desc = INTERACTION_BAD_RELATIONSHIP_WITH_ACTOR
}

As written in game/common/character_interactions/10_tgp_interactions.txt.

What happens

If they accept

  • If

    Then

    • Use a Hook on the target
  • If

    • The option “influence” is chosen

    Then

    • change_influence = { value = massive_influence_loss multiply = 2 }
  • If

    • The option “gold” is chosen

    Then

    • pay_short_term_gold = { … }
  • If

    • The option “criminal secret recipient” is chosen

    Then

    • You › One random known secret:
      • Where:
        • secret_owner = scope:recipient
        • is_criminal_for = scope:recipient
        • can_be_exposed_by = scope:actor
      • disable_exposure_by = scope:actor
  • Tyranny +20
  • The character you target:
    • Relinquishes … to … …, …
    • If played by the AI: Opinion: Forced My Abdication
    • If

      • Is an Adult
      • You: Is an Adult
      • Does not have you as friend
      • Does not have you as best friend
      • Does not have you as rival
      • Does not have you as nemesis

      Then

  • The character you target:

If they refuse

  • Influence -100
  • Gain -150 Prestige
  • The character you target:
    • Opinion: Wants Me to Step Down
    • If

      • Is an Adult
      • You: Is an Adult
      • Does not have you as friend
      • Does not have you as best friend
      • Does not have you as rival
      • Does not have you as nemesis

      Then

  • If

    • The option “criminal secret recipient” is chosen

    Then

    • You › One random known secret:
      • Where:
        • secret_owner = scope:recipient
        • is_criminal_for = scope:recipient
        • can_be_exposed_by = scope:actor
      • expose_secret = scope:actor
  • The target’s house:
    • If

      a check the game hides

      Then

      • Every member of House …:
        • Where: Is played by the AI
        • Opinion: Deposed House Member

Options when sending

  • Use a Hook
  • Use Influence
  • Use Gold
  • Threaten to reveal recipient's Secret

• 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) (11 lines of game script)
is_available = trigger_if = {
	limit = {
		is_ai = yes
	}
	is_independent_ruler = yes
}
is_shown = scope:actor != scope:recipient
scope:recipient = {
	tgp_is_ceremonial_liege_trigger = yes
	top_liege ?= scope:actor.top_liege
}

As written in game/common/character_interactions/10_tgp_interactions.txt.

Can be sent when (is_valid…) (20 lines of game script)
scope:actor = {
	is_available_adult = yes
	is_incapable = no
	is_independent_ruler = yes
	is_in_civil_war = no
}
scope:recipient = {
	is_adult = yes
	trigger_if = {
		limit = {
			is_imprisoned = yes
		}
		imprisoner ?= scope:actor
	}
	is_in_civil_war = no
	exists = player_heir
	NOT = {
		has_usable_hook = scope:actor
	}
}

As written in game/common/character_interactions/10_tgp_interactions.txt.

Effects (on_send, on_accept, on_decline) (179 lines of game script)
on_accept = scope:recipient.player_heir = {
	save_scope_as = heir
}
scope:actor = {
	if = {
		limit = {
			scope:hook = yes
		}
		use_hook = scope:recipient
	}
	if = {
		limit = {
			scope:influence = yes
		}
		change_influence = {
			value = massive_influence_loss
			multiply = 2
		}
	}
	if = {
		limit = {
			scope:gold = yes
		}
		pay_short_term_gold = {
			target = scope:recipient
			gold = {
				value = massive_gold_value
				multiply = 2
			}
		}
	}
	if = {
		limit = {
			scope:criminal_secret_recipient = yes
		}
		scope:actor = {
			random_known_secret = {
				limit = {
					secret_owner = scope:recipient
					is_criminal_for = scope:recipient
					can_be_exposed_by = scope:actor
				}
				disable_exposure_by = scope:actor
			}
		}
	}
	add_tyranny = major_tyranny_gain
	send_interface_toast = {
		type = event_toast_effect_good
		title = force_governor_resignation_accepted_toast
		left_icon = scope:target
		right_icon = scope:recipient
		scope:recipient = {
			custom_tooltip = abdicate_target_title_tt
			if = {
				limit = {
					is_ai = yes
				}
				add_opinion = {
					target = scope:actor
					modifier = forced_my_abdication_opinion
				}
			}
			if = {
				limit = {
					can_set_relation_rival_trigger = {
						CHARACTER = scope:actor
					}
				}
				set_relation_rival = {
					target = scope:actor
					reason = rival_forced_my_abdication_reason
				}
			}
			hidden_effect = {
				create_title_and_vassal_change = {
					type = conquest
					save_scope_as = change
					add_claim_on_loss = yes
				}
				scope:recipient.top_liege.primary_title.var:administrative_ui_special_title = {
					change_title_holder_include_vassals = {
						holder = scope:recipient.primary_heir
						change = scope:change
					}
				}
				resolve_title_and_vassal_change = scope:change
			}
		}
	}
	scope:recipient = {
		if = {
			limit = {
				NOT = {
					has_trait = former_emperor
				}
			}
			add_trait = former_emperor
		}
		house ?= {
			if = {
				limit = {
					this != scope:actor.house
				}
				every_house_member = {
					custom = custom.every_house_member_recipient
					limit = {
						is_ai = yes
						this != scope:secondary_recipient
					}
					add_opinion = {
						target = scope:actor
						modifier = forced_my_house_members_abdication_opinion
					}
				}
			}
		}
	}
}
on_decline = scope:actor = {
	send_interface_toast = {
		type = event_toast_effect_bad
		title = force_abdication_declined_toast
		left_icon = scope:target
		right_icon = scope:recipient
		change_influence = major_influence_loss
		add_prestige = medium_prestige_loss
		scope:recipient = {
			add_opinion = {
				target = scope:actor
				modifier = attempted_force_step_down_opinion
			}
			if = {
				limit = {
					can_set_relation_rival_trigger = {
						CHARACTER = scope:actor
					}
				}
				set_relation_rival = {
					target = scope:actor
					reason = rival_attempted_to_force_my_abdication_reason
				}
			}
		}
		if = {
			limit = {
				scope:criminal_secret_recipient = yes
			}
			scope:actor = {
				random_known_secret = {
					limit = {
						secret_owner = scope:recipient
						is_criminal_for = scope:recipient
						can_be_exposed_by = scope:actor
					}
					expose_secret = scope:actor
				}
			}
		}
	}
	scope:recipient.house ?= {
		if = {
			limit = {
				this != scope:actor.house
			}
			every_house_member = {
				custom = custom.every_house_member_recipient
				limit = {
					is_ai = yes
					this != scope:secondary_recipient
				}
				add_opinion = {
					target = scope:actor
					modifier = demanded_my_house_members_abdication_opinion
				}
			}
		}
	}
}

As written in game/common/character_interactions/10_tgp_interactions.txt.

Category
Candidacy
Cooldown
5 years
In the menu
under More…
ID
force_abdication_interaction

Source: game/common/character_interactions/10_tgp_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?