Interaction · Hostile actions
Blackmail
Use a Secret you have discovered to gain a Hook
What you need
You
None of these
- You: Is at war with the target
- The target:
- Is known by you
is_shunned_or_criminal_for = scope:is_blackmailable_secret_participantcan_be_exposed_by = scope:is_blackmailable_secret_blackmailer
The character you target
- Age more than 10
- Any secret: Is known by you
Blackmail is a hostile character interaction in Crusader Kings III. The AI weighs it (the answer is partly random). Reasons the AI weighs include They wants to protect the Secret (+80), They is Brave (-20), They is Arrogant (-20) and 4 more. Patch 1.20.1.2, from game/common/character_interactions/00_blackmail_interactions.txt.
Quick answers (1)
- How do I get the AI to accept Blackmail?
- The AI weighs it (the answer is partly random). Its reasons: They wants to protect the Secret +80, They is Brave -20, They is Arrogant -20, They is Craven +10, They is Paranoid +50, Wants to decrease House Unity, They dislikes you, They distrusts you -20, It is a Major Secret +30, Intimidated by you and Terrified of you.
Will they accept?
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.
| Reason | Amount |
|---|---|
| Base | 0 |
| They wants to protect the Secret | +80 |
| They is Brave | -20 |
| They is Arrogant | -20 |
| They is Craven | +10 |
| They is Paranoid | +50 |
Wants to decrease House Unitywhen
| varies |
They dislikes youwhen
| varies |
They distrusts youwhen
| -20 |
It is a Major Secretwhen
| +30 |
Intimidated by youwhen
| intimidated_reason_value |
Terrified of youwhen
| cowed_reason_value |
Acceptance (ai_accept) (89 lines of game script)
base = 0
modifier = {
add = 80
desc = BLACKMAIL_INTERACTION_BASE_ACCEPTANCE
}
modifier = {
add = -20
scope:recipient = {
has_trait = brave
}
desc = BLACKMAIL_INTERACTION_BRAVE_ACCEPTANCE
}
modifier = {
add = -20
scope:recipient = {
has_trait = arrogant
}
desc = BLACKMAIL_INTERACTION_ARROGANT_ACCEPTANCE
}
modifier = {
add = 10
scope:recipient = {
has_trait = craven
}
desc = BLACKMAIL_INTERACTION_CRAVEN_ACCEPTANCE
}
modifier = {
add = 50
scope:recipient = {
has_trait = paranoid
}
desc = BLACKMAIL_INTERACTION_PARANOID_ACCEPTANCE
}
evaluate_action_decreasing_house_unity = {
VALUE = 25
}
opinion_modifier = {
trigger = {
scope:recipient = {
opinion = {
target = scope:puppet_or_actor
value < 0
}
}
}
opinion_target = scope:recipient
who = scope:puppet_or_actor
multiplier = 0.3
desc = BLACKMAIL_INTERACTION_OPINION_ACCEPTANCE
}
modifier = {
add = -20
scope:recipient = {
has_opinion_modifier = {
target = scope:puppet_or_actor
modifier = trust_opinion
value < 0
}
}
desc = BLACKMAIL_INTERACTION_DISTRUST_ACCEPTANCE
}
modifier = {
add = 30
any_secret = {
is_known_by = scope:puppet_or_actor
is_criminal_for = scope:recipient
}
desc = BLACKMAIL_MAJOR_SECRET_ACCEPTANCE
}
modifier = {
add = intimidated_reason_value
scope:recipient = {
has_dread_level_towards = {
target = scope:puppet_or_actor
level = 1
}
}
desc = INTIMIDATED_REASON
}
modifier = {
add = cowed_reason_value
scope:recipient = {
has_dread_level_towards = {
target = scope:puppet_or_actor
level = 2
}
}
desc = COWED_REASON
}As written in game/common/character_interactions/00_blackmail_interactions.txt.
What happens
If they accept
If
- Holds Censorate
top_participant_group:dynastic_cycle:NOT = { participant_group_type = other_rulers }
- The character you target › top_participant_group:dynastic_cycle:
NOT = { participant_group_type = other_rulers }
Then
- If your Government uses Influence:
change_influence = { value = minor_influence_gain multiply = scope:recipient.highest_held_title_tier }
- Dynastic Cycle › If the current phase counts “Imperial Censor Blackmailed a Governor”: Counts toward the situation's next phase: “Imperial Censor Blackmailed a Governor”
- You:
If
a check the game hides
Then
If
- The target:
is_criminal_for = scope:recipient
can_add_hook = { target = scope:recipient type = strong_blackmail_hook }
Then
- Gain a Blackmail on the target
Else if
- The target:
is_shunned_for = scope:recipient
can_add_hook = { target = scope:recipient type = weak_blackmail_hook }
Then
- Gain a Blackmail on the target
- The target:
- The target gains the opinion “Blackmailed Me” of them
- If has a Administrative Government:
If
- The target:
is_criminal_for = scope:recipient
Then
- Influence +60
Else if
- The target:
is_shunned_for = scope:recipient
Then
- Influence +30
Otherwise
- Influence +10
- The target:
- Stress and fulfillment impact: by trait: Compassionate +40, Trusting +40, Honest +20, Just +20, Forgiving +20
- The target › If promised not to reveal is scope:puppet or actor › The character you target: Opinion: Broke Promise
- The character you target:
If
- Does not have you as rival
- Does not have you as potential rival
Then
set_relation_potential_rival = scope:puppet_or_actor
If
Then
- Your house:
add_unity_value = { … }
- Your house:
If they refuse
If
- You: Is played by a person
Then
- The character you target: Unless … … … mind:
If a check the game hides passes: the same again (1 line)
- The secret:
expose_secret = scope:puppet_or_actor
- The secret:
If a check the game hides passes: the same again (1 line)
- The target:
expose_secret = scope:puppet_or_actor
- The target:
- Event blackmail.0001
If
Then
- Your house:
add_unity_value = { … }
- Your house:
Events it fires: blackmail.0001
• 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) (10 lines of game script)
is_shown = exists = scope:puppet_or_actor
scope:recipient = {
this != scope:puppet_or_actor
age > 10
}
scope:recipient = {
any_secret = {
is_known_by = scope:puppet_or_actor
}
}As written in game/common/character_interactions/00_blackmail_interactions.txt.
Can be sent when (is_valid…) (35 lines of game script)
NOT = {
scope:puppet_or_actor = {
is_at_war_with = scope:recipient
}
}
custom_description = {
text = already_strong_hook
subject = scope:puppet_or_actor
object = scope:recipient
NOT = {
scope:puppet_or_actor = {
has_strong_hook = scope:recipient
}
}
}
custom_description = {
scope:recipient = {
any_secret = {
is_blackmailable_secret_trigger = {
BLACKMAILER = scope:puppet_or_actor
PARTICIPANT = scope:recipient
}
}
}
text = no_blackmailable_secret
}
custom_description = {
text = has_sent_interaction_already
subject = scope:recipient
scope:puppet_or_actor = {
NOT = {
exists = var:currently_blackmailing
}
}
}As written in game/common/character_interactions/00_blackmail_interactions.txt.
Effects (on_send, on_accept, on_decline) (133 lines of game script)
on_send = hidden_effect = {
scope:puppet_or_actor = {
set_variable = {
name = currently_blackmailing
value = scope:recipient
days = 30
}
}
scope:target = {
if = {
limit = {
exists = secret_target
}
secret_target = {
save_scope_as = secret_target
}
}
if = {
limit = {
secret_type = secret_disputed_heritage
}
secret_target.father = {
save_scope_as = father
}
secret_target.real_father = {
save_scope_as = real_father
}
}
if = {
limit = {
scope:target = {
secret_type = secret_disputed_heritage
}
}
secret_target.father = {
save_scope_as = father
}
secret_target.real_father = {
save_scope_as = real_father
}
}
}
}
on_accept = scope:puppet_or_actor = {
remove_variable = currently_blackmailing
play_music_cue = mx_cue_murder
if = {
limit = {
has_title = title:e_minister_censor
top_participant_group:dynastic_cycle ?= {
NOT = {
participant_group_type = other_rulers
}
}
scope:recipient = {
top_participant_group:dynastic_cycle ?= {
NOT = {
participant_group_type = other_rulers
}
}
}
}
add_merit_if_relevant_effect = {
MERIT = minor_merit_value
}
if = {
limit = {
government_has_flag = government_has_influence
}
change_influence = {
value = minor_influence_gain
multiply = scope:recipient.highest_held_title_tier
}
}
situation:dynastic_cycle = {
if = {
limit = {
situation_top_has_catalyst = catalyst_minister_blackmailed
}
trigger_situation_catalyst = {
catalyst = catalyst_minister_blackmailed
character = scope:puppet_or_actor
}
}
}
}
}
blackmail_interaction_effect = yes
add_clan_unity_interaction_effect = {
CHARACTER = scope:puppet_or_actor
TARGET = scope:recipient
VALUE = medium_unity_loss
DESC = clan_unity_blackmail.desc
REVERSE_NON_HOUSE_TARGET = no
}
on_decline = if = {
limit = {
scope:actor = {
is_ai = no
}
}
scope:recipient = {
custom_tooltip = BLACKMAIL_INTERACTION_HUMAN_TT
}
}
show_as_tooltip = {
if = {
limit = {
exists = scope:secret
}
scope:secret = {
expose_secret = scope:puppet_or_actor
}
}
if = {
limit = {
exists = scope:target
}
scope:target = {
expose_secret = scope:puppet_or_actor
}
}
}
scope:puppet_or_actor = {
trigger_event = blackmail.0001
}
add_clan_unity_interaction_effect = {
CHARACTER = scope:puppet_or_actor
TARGET = scope:recipient
VALUE = minor_unity_loss
DESC = clan_unity_blackmail.desc
REVERSE_NON_HOUSE_TARGET = no
}As written in game/common/character_interactions/00_blackmail_interactions.txt.
- Category
- Hostile actions
- In the menu
- main list
- ID
blackmail_interaction
Source: game/common/character_interactions/00_blackmail_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.