Interaction · Imprisonment actions
Execute
Make sure that the recipient never bothers you again
What you need
You
To see it in the menu
- If played by the AI: Is at not War
The character you target
To send it
- Does not have a Strong Hook on you
- Is imprisoned by you
To see it in the menu
- Is imprisoned by you
Execute is an imprisonment character interaction in Crusader Kings III. You need: Cannot Execute Involved Prisoners. The character you target needs: Does not have a Strong Hook on you and Is imprisoned by you. Accepted automatically. It costs Prestige (varies). Patch 1.20.1.2, from game/common/character_interactions/00_prison_interactions.txt.
Quick answers (3)
- What are the requirements for Execute in CK3?
- You: Cannot Execute Involved Prisoners. The character you target: Does not have a Strong Hook on you and Is imprisoned by you. (patch 1.20.1.2)
- Will the AI accept Execute?
- Yes: it is accepted automatically.
- How much does Execute cost?
- Prestige (varies) (patch 1.20.1.2).
Will they accept?
The other character has no choice: the game accepts it automatically.
What happens
Effects
If
One of these
All of these
has_diarchy_active_parameter = diarchy_is_co_rulershipdiarch ?= scope:recipient
or
All of these
- The character you target:
has_diarchy_active_parameter = diarchy_is_co_rulership
- Is the diarch of the target
- The character you target:
Then
If
root.diarch = scope:recipient
Then
end_diarchy = yes- Every player:
- Where:
top_liege = scope:puppet_or_actor.top_liege
- Event diarchy.8022
- Where:
Otherwise
- The character you target:
- Every held title:
- Every Vassal of …:
change_liege = { LIEGE = scope:puppet_or_actor CHANGE = scope:change }
- Every player:
- Where:
top_liege = scope:puppet_or_actor.top_liege
- Event diarchy.8023
- Where:
If
- The character you target: Is imprisoned by you
Then
If
- The option “execution public” is chosen
Then
If
Then
- You:
- Your capital county:
- The county gains the modifier “Held Public Execution” for 1850 days
- Popular Opinion +15
- The county gains the modifier “Held Public Execution” for 1850 days
- All Domain Counties gain … Control
- Your capital county:
Otherwise
- The people of your Capital will not like you more – the last public execution was not long enough ago
- You:
If
NOT = { scope:execution_devour = yes }- You:
- Is a child
- Is at least 4 years old
- Is played by a person
- The character you target: Is an Adult
Then
- You: Event bp1_yearly.9045
Else if
NOT = { scope:execution_devour = yes }- You:
One of these
- Has the target as friend
or
Has the target as lover
- Is played by a person
- The character you target: Is an Adult
Then
- You: Event bp1_yearly.9044
- You:
If
- You have a Adventurer Government
- The character you target:
- Their government is not Adventurer
- Is a ruler
Then
If
scope:recipient.highest_held_title_tier >= tier_empire
Then
- If does not have the Trait: Gallowsbait: Gains the Trait Gallowsbait
- Gallowsbait (marauder) experience changes
Else if
scope:recipient.highest_held_title_tier >= tier_kingdom
Then
- If does not have the Trait: Gallowsbait: Gains the Trait Gallowsbait
- Gallowsbait (marauder) experience changes
Else if
scope:recipient.highest_held_title_tier >= tier_duchy
Then
- If does not have the Trait: Gallowsbait: Gains the Trait Gallowsbait
- Gallowsbait (marauder) experience changes
Else if
scope:recipient.highest_held_title_tier >= tier_barony
Then
- If does not have the Trait: Gallowsbait: Gains the Trait Gallowsbait
- Gallowsbait (marauder) experience changes
Otherwise
- If does not have the Trait: Gallowsbait: Gains the Trait Gallowsbait
- Gallowsbait (marauder) experience changes
- You:
- … (more in the script below)
Options when sending
- Behead
- Behead... And Devour!
- Burn at Stake
- Sacrifice
- Public Execution
- Toss to Dogs
- Turn into Mystery Meat
Events it fires: diarchy.8022, diarchy.8023, fp1_other_decisions.0021, fp1_other_decisions.0022, artifact.7000, bp1_yearly.9045, bp1_yearly.9044, char_interaction.0170
• 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) (9 lines of game script)
is_available = trigger_if = {
limit = {
is_ai = yes
}
is_at_war = no
}
is_shown = scope:recipient = {
is_imprisoned_by = scope:puppet_or_actor
}As written in game/common/character_interactions/00_prison_interactions.txt.
Can be sent when (is_valid…) (38 lines of game script)
scope:recipient = {
NOT = {
has_strong_hook = scope:puppet_or_actor
}
}
scope:recipient = {
custom_description = {
text = currently_being_tortured
NOT = {
has_character_flag = is_being_tortured
}
}
}
custom_tooltip = {
text = struggle_parameter_struggle_cannot_execute_involved_prisoners
NOT = {
scope:puppet_or_actor = {
any_character_struggle = {
involvement = involved
has_struggle_phase_parameter = struggle_cannot_execute_involved_prisoners
is_secondary_character_involvement_involved_trigger = {
CHAR = scope:recipient
}
}
}
}
}
custom_tooltip = {
text = is_currently_being_purged_tt
scope:recipient = {
NOT = {
has_character_flag = is_currently_being_purged
}
}
}
scope:recipient = {
is_imprisoned_by = scope:puppet_or_actor
}As written in game/common/character_interactions/00_prison_interactions.txt.
Effects (on_send, on_accept, on_decline) (246 lines of game script)
on_accept = scope:puppet_or_actor = {
if = {
limit = {
OR = {
AND = {
has_diarchy_active_parameter = diarchy_is_co_rulership
diarch ?= scope:recipient
}
AND = {
scope:recipient = {
has_diarchy_active_parameter = diarchy_is_co_rulership
}
is_diarch_of_target = scope:recipient
}
}
}
if = {
limit = {
liege_can_maim_co_ruler_without_killing_them_trigger = yes
}
custom_tooltip = execute_prisoner_interaction.tt.can_maim_diarch
}
if = {
limit = {
scope:puppet_or_actor.diarch = scope:recipient
}
end_diarchy = yes
every_player = {
limit = {
NOR = {
this = scope:puppet_or_actor
this = scope:recipient
}
top_liege = scope:puppet_or_actor.top_liege
}
trigger_event = diarchy.8022
}
}
else = {
custom_description_no_bullet = {
text = execute_prisoner_interaction_tt_co_emperor_usurpation
object = scope:recipient
}
create_title_and_vassal_change = {
type = usurped
save_scope_as = change
}
scope:recipient = {
every_held_title = {
limit = {
OR = {
this = scope:recipient.capital_county
this = scope:recipient.capital_county.duchy
AND = {
tier = tier_county
this.duchy = scope:recipient.capital_county.duchy
}
tier >= scope:recipient.highest_held_title_tier
}
}
change_title_holder = {
holder = scope:puppet_or_actor
change = scope:change
}
}
every_vassal = {
custom = custom.recipient_every_vassal
change_liege = {
LIEGE = scope:puppet_or_actor
CHANGE = scope:change
}
}
hidden_effect = {
change_liege = {
LIEGE = scope:puppet_or_actor
CHANGE = scope:change
}
}
}
resolve_title_and_vassal_change = scope:change
every_player = {
limit = {
NOR = {
this = scope:puppet_or_actor
this = scope:recipient
}
top_liege = scope:puppet_or_actor.top_liege
}
trigger_event = diarchy.8023
}
}
save_scope_value_as = {
name = suppress_legitimacy_from_crime
value = yes
}
}
}
if = {
limit = {
scope:recipient = {
is_imprisoned_by = scope:puppet_or_actor
}
}
hidden_effect = {
scope:puppet_or_actor = {
humsacd_a_hof_effect = {
SACRIFICER = scope:puppet_or_actor
SACRIFICED_HOF = scope:recipient
}
}
}
if = {
limit = {
always = scope:execution_public
}
if = {
limit = {
scope:puppet_or_actor.capital_county = {
NOT = {
has_county_modifier = held_public_execution_modifier
}
}
}
custom_description_no_bullet = {
subject = scope:puppet_or_actor
text = public_execution_tooltip
}
scope:puppet_or_actor = {
capital_county = {
add_county_modifier = {
modifier = held_public_execution_modifier
days = 1850
}
}
custom_tooltip = public_execution_control_effect
hidden_effect = {
every_held_title = {
title_tier = county
change_county_control = executioner_control_value
}
}
}
}
else = {
custom_description_no_bullet = {
text = public_execution_too_soon_tooltip
}
}
}
if = {
limit = {
NOT = {
always = scope:execution_devour
}
scope:puppet_or_actor = {
has_relation_rival = scope:recipient
has_personality_malicious_trigger = yes
has_royal_court = yes
has_dlc_feature = court_artifacts
}
scope:recipient = {
is_adult = yes
}
}
scope:puppet_or_actor = {
random = {
chance = {
value = 25
if = {
limit = {
has_relation_nemesis = scope:recipient
}
add = 75
}
}
hidden_effect = {
scope:recipient = {
save_scope_as = skull_to_boil
}
trigger_event = {
id = artifact.7000
days = { 3 10 }
}
}
}
}
}
if = {
limit = {
NOT = {
always = scope:execution_devour
}
scope:puppet_or_actor = {
is_adult = no
age >= 4
is_ai = no
NOT = {
has_character_flag = witnessed_execution_flag
}
}
scope:recipient = {
is_adult = yes
}
}
scope:puppet_or_actor = {
trigger_event = bp1_yearly.9045
}
}
else_if = {
limit = {
NOT = {
always = scope:execution_devour
}
scope:puppet_or_actor = {
OR = {
has_relation_friend = scope:recipient
has_relation_lover = scope:recipient
}
is_ai = no
}
scope:recipient = {
is_adult = yes
}
}
scope:puppet_or_actor = {
trigger_event = bp1_yearly.9044
}
}
scope:puppet_or_actor = {
if = {
limit = {
has_government = landless_adventurer_government
scope:recipient = {
is_landless_adventurer = no
is_ruler = yes
}
}
if = {
limit = {
scope:recipient.highest_held_title_tier >= tier_empire
}
laamp_rewards_apply_criminal_xp_effect = {
TRACK = marauder
XP_MAX = gallowsbait_xp_massive_gain
XP_MIN = gallowsbait_xp_massive_g
# … (cut here; the rest is in the file)As written in game/common/character_interactions/00_prison_interactions.txt.
- Category
- Imprisonment actions
- Cost: Prestige
- varies
- In the menu
- main list
- ID
execute_prisoner_interaction
Source: game/common/character_interactions/00_prison_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.