Interaction · Imprisonment actions
Ransom Yourself
Pay Gold or a Hook for your release from Prison
What you need
You
To send it
- You:
If
- Has “imprisoned by diarch” (a variable the game's script sets)
scope:puppet_or_actor.var:imprisoned_by_diarch:is_diarch_of_target = scope:puppet_or_actor.liege
Then
- Cannot take any action that would release former Regent whilst current Regent is in office
- … is currently being purged
To see it in the menu
- Is imprisoned by the target
Ransom Yourself is an imprisonment character interaction in Crusader Kings III. Accepted automatically in some cases; otherwise the AI weighs it. Reasons the AI weighs include Clergy acting towards a secular Ruler (+20), They gets paid Gold (+50), They gets paid Gold (+25) and 12 more. Patch 1.20.1.2, from game/common/character_interactions/00_prison_interactions.txt.
Quick answers (1)
- How do I get the AI to accept Ransom Yourself?
- Accepted automatically in some cases; otherwise the AI weighs it. Its reasons: Clergy acting towards a secular Ruler +20, Relative Level of Devotion, They gets paid Gold +50, They gets paid Gold +25, They gets paid Gold +25, They gets a Hook +50, They has no use for a Hook -50, They wants more Gold 0, The recipient is your Rival -55, The recipient is your Nemesis -300, You are at War -300, Weak Hook used +100, Intimidated by you, Terrified of you, The recipient's House is feuding with your -50, Spending Influence +25, Spending Herd +25 and Spending Herd +10.
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.
| Reason | Amount |
|---|---|
| Base | 0 |
| Clergy acting towards a secular Ruler | +20 |
Relative Level of Devotionwhen
| varies |
They gets paid Goldwhen
| +50 |
They gets paid Goldwhen
| +25 |
They gets paid Goldwhen
| +25 |
They gets a Hookwhen
| +50 |
They has no use for a Hookwhen
| -50 |
They wants more Goldwhen
| 0 |
The recipient is your Rivalwhen
| -55 |
The recipient is your Nemesiswhen
| -300 |
You are at Warwhen
| -300 |
Weak Hook usedwhen
| +100 |
Intimidated by youwhen
| intimidated_reason_value |
Terrified of youwhen
| cowed_reason_value |
The recipient's House is feuding with yourwhen
| -50 |
Spending Influencewhen
| +25 |
Spending Herdwhen
| +25 |
Spending Herdwhen
| +10 |
Acceptance (ai_accept) (150 lines of game script)
base = 0
celestial_hierarchy_acceptance_modifier = {
ACTOR = scope:puppet_or_actor
RECIPIENT = scope:recipient
}
modifier = {
add = 50
OR = {
scope:gold = yes
scope:extortionate_gold = yes
}
desc = GOLD_POSITIVE_REASON
}
modifier = {
add = 25
scope:current_gold = yes
AND = {
scope:puppet_or_actor = {
gold >= half_ransom_cost_value
}
NOT = {
scope:recipient.ai_greed >= medium_positive_ai_value
}
}
desc = GOLD_POSITIVE_REASON
}
modifier = {
add = 25
scope:extortionate_current_gold = yes
AND = {
scope:puppet_or_actor = {
gold >= half_increased_ransom_cost_value
}
NOT = {
scope:recipient.ai_greed >= medium_positive_ai_value
}
}
desc = GOLD_POSITIVE_REASON
}
modifier = {
add = 50
scope:favor = yes
scope:recipient.top_liege = scope:puppet_or_actor.top_liege
desc = FAVOR_POSITIVE_REASON
}
modifier = {
add = -50
scope:favor = yes
NOR = {
scope:gold = yes
scope:extortionate_gold = yes
}
OR = {
scope:recipient.top_liege != scope:puppet_or_actor.top_liege
scope:recipient.ai_greed >= medium_positive_ai_value
}
desc = NO_USE_FOR_A_FAVOR_REASON
}
modifier = {
add = 0
OR = {
scope:current_gold = yes
scope:extortionate_current_gold = yes
}
OR = {
scope:puppet_or_actor = {
gold < half_ransom_cost_value
}
scope:recipient.ai_greed >= medium_positive_ai_value
}
desc = WANTS_MORE_GOLD
}
modifier = {
add = -55
scope:recipient = {
has_relation_rival = scope:puppet_or_actor
}
desc = ACTOR_RIVAL_TO_ME_REASON
}
modifier = {
add = -300
scope:recipient = {
has_relation_nemesis = scope:puppet_or_actor
}
desc = ACTOR_NEMESIS_TO_ME_REASON
}
modifier = {
add = -300
scope:recipient = {
is_at_war_with = scope:puppet_or_actor
}
desc = IS_AT_WAR_REASON
}
modifier = {
scope:hook = yes
add = 100
desc = SCHEME_WEAK_HOOK_USED
}
modifier = {
add = intimidated_reason_value
trigger = {
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
trigger = {
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 = -50
trigger = {
scope:recipient = {
house_has_feud_relation_with_trigger = {
TARGET = scope:puppet_or_actor
}
}
}
desc = INTERACTION_FAMILY_FEUD_REVERSE_REASON
}
modifier = {
add = 25
scope:influence_send_option = yes
desc = INFLUENCE_INTERACTION_ACCEPTANCE_SEND_OPTION
}
modifier = {
add = 25
scope:herd_send_option = yes
desc = HERD_INTERACTION_ACCEPTANCE_SEND_OPTION
}
modifier = {
add = 10
scope:current_herd = yes
desc = HERD_INTERACTION_ACCEPTANCE_SEND_OPTION
}As written in game/common/character_interactions/00_prison_interactions.txt.
What happens
If they accept
If
- You: Is imprisoned by the target
Then
- You:
If
- Employs a Man-Haggler
One of these
- The option “extortionate gold” is chosen
or
The option “extortionate current gold” is chosenor
The option “gold” is chosenor
The option “current gold” is chosen
Then
- … Man-Haggler Aptitude: new ransom value
- Event char_interaction.0150
- The imprisoner:
If
- Employs a Man-Haggler
One of these
- The option “extortionate gold” is chosen
or
The option “extortionate current gold” is chosenor
The option “gold” is chosenor
The option “current gold” is chosen
Then
- You: … Man-Haggler Aptitude: +…
- The prisoner:
If
a check the game hides
Then
If
- The payer: Is played by a person
- The prisoner: Is played by the AI
Then
- Opinion: Ransomed Recently for 1 year
If
- Is played by the AI
- Ai honor at least 25
- Ai greed at most 0
Then
- The payer:
If
can_add_hook = { target = scope:prisoner type = favor_hook }
Then
- Gain a Indebted on the prisoner
Otherwise
- The payer:
progress_towards_hook_effect = { CHARACTER = scope:prisoner HOOK_TYPE = indebted_hook }
- The payer:
- Depending on always:
- When always is scope:extortionate gold:
- Pay gold to the imprisoner
- The imprisoner:
- Gain … Prestige
mandala_trickster_increment_gold_ransomed_effect = { GOLD_AMOUNT = scope:prisoner.increased_ransom_cost_value }
- When always is scope:extortionate current gold:
- Pay gold to the imprisoner
- The imprisoner:
- Gain … Prestige
mandala_trickster_increment_gold_ransomed_effect = { GOLD_AMOUNT = scope:ransom_saved_gold_value }
- When always is scope:gold:
- Pay gold to the imprisoner
- The imprisoner:
mandala_trickster_increment_gold_ransomed_effect = { GOLD_AMOUNT = scope:prisoner.normal_ransom_cost_value }
- When always is scope:current gold:
- Pay gold to the imprisoner
- The imprisoner:
mandala_trickster_increment_gold_ransomed_effect = { GOLD_AMOUNT = scope:ransom_saved_gold_value }
- When always is scope:extortionate gold:
If
- The option “influence send option” is chosen
Then
- The payer:
change_influence = { … }
- The imprisoner: Influence changes
If
- The option “herd send option” is chosen
Then
- The payer:
pay_herd = { target = scope:imprisoner value = scope:prisoner.ransom_herd_value }
Else if
- The option “current herd” is chosen
Then
- The payer:
pay_herd = { target = scope:imprisoner value = domicile.herd }
- Depending on always:
- The payer:
If
- The Personal Tenets unlock tenet philanthropia ransom captives
- Philanthropia ransom gold more than 0
Then
- Gain … Piety
- Spiritual fulfillment changes
- The prisoner:
release_from_prison = yes
If
- Any character struggle:
involvement = involvedphase_has_catalyst = catalyst_ransom_important- The prisoner › Any character struggle:
involvement = involved
Then
- Every character struggle:
- Where:
phase_has_catalyst = catalyst_ransom_important- The prisoner › Any character struggle:
involvement = involved
involvement = involvedactivate_struggle_catalyst = { catalyst = catalyst_ransom_important character = scope:imprisoner }
- Where:
- Any character struggle:
If they refuse
- Event char_interaction.0151
Options when sending
- For a Hook
- Demand Influence
- Use a Hook
Events it fires: char_interaction.0150, char_interaction.0151
• 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) (3 lines of game script)
is_shown = scope:puppet_or_actor = {
is_imprisoned_by = scope:recipient
}As written in game/common/character_interactions/00_prison_interactions.txt.
Can be sent when (is_valid…) (20 lines of game script)
scope:puppet_or_actor = {
custom_description = {
text = currently_being_tortured
NOT = {
has_character_flag = is_being_tortured
}
}
}
cannot_release_former_regent_whilst_old_regent_holds_power_trigger = {
PRISONER = scope:puppet_or_actor
REGENT = scope:puppet_or_actor.var:imprisoned_by_diarch
}
custom_tooltip = {
text = is_currently_being_purged_tt
scope:puppet_or_actor = {
NOT = {
has_character_flag = is_currently_being_purged
}
}
}As written in game/common/character_interactions/00_prison_interactions.txt.
Effects (on_send, on_accept, on_decline) (114 lines of game script)
on_accept = if = {
limit = {
scope:puppet_or_actor = {
is_imprisoned_by = scope:recipient
}
}
scope:puppet_or_actor = {
save_scope_as = prisoner
}
scope:recipient = {
save_scope_as = imprisoner
}
scope:puppet_or_actor = {
save_scope_as = payer
if = {
limit = {
employs_court_position = person_haggler_camp_officer
is_asking_for_gold_in_ransom_trigger = yes
}
random_court_position_holder = {
type = person_haggler_camp_officer
save_scope_as = haggler
}
save_scope_value_as = {
name = new_ransom_value
value = haggler_ransom_cost_modifier
}
custom_tooltip = has_person_haggler_decrease_ransom_cost
}
if = {
limit = {
OR = {
exists = scope:current_gold
exists = scope:extortionate_current_gold
}
}
save_scope_value_as = {
name = ransom_saved_gold_value
value = scope:payer.current_gold_value
}
}
trigger_event = char_interaction.0150
}
scope:imprisoner = {
if = {
limit = {
employs_court_position = person_haggler_camp_officer
is_asking_for_gold_in_ransom_trigger = yes
}
random_court_position_holder = {
type = person_haggler_camp_officer
save_scope_as = haggler
}
scope:puppet_or_actor = {
custom_tooltip = has_person_haggler_increase_ransom_cost
}
}
send_interface_message = {
type = interaction_prison_ransom
title = recipient_released_from_prison
right_icon = scope:prisoner
left_icon = scope:imprisoner
ransom_interaction_effect = yes
}
if = {
limit = {
any_character_struggle = {
involvement = involved
activate_struggle_catalyst_secondary_character_involvement_involved_trigger = {
CATALYST = catalyst_ransom_important
CHAR = scope:prisoner
}
}
}
every_character_struggle = {
involvement = involved
limit = {
activate_struggle_catalyst_secondary_character_involvement_involved_trigger = {
CATALYST = catalyst_ransom_important
CHAR = scope:prisoner
}
}
activate_struggle_catalyst = {
catalyst = catalyst_ransom_important
character = scope:imprisoner
}
}
}
}
if = {
limit = {
always = scope:hook
}
scope:puppet_or_actor = {
use_hook = scope:recipient
}
}
}
on_decline = if = {
limit = {
scope:recipient = {
is_ai = no
}
}
scope:puppet_or_actor = {
add_character_flag = {
flag = character_ransom_refused_by_player
years = 10
}
}
}
scope:puppet_or_actor = {
trigger_event = char_interaction.0151
}As written in game/common/character_interactions/00_prison_interactions.txt.
- Category
- Imprisonment actions
- In the menu
- main list
- ID
ransom_me_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.