Scripted trigger
is_blackmailable_secret_trigger
is_blackmailable_secret_trigger = { BLACKMAILER = … PARTICIPANT = … }game/common/scripted_triggers/00_secret_triggers.txt, line 36 (107 lines). Parameters: $BLACKMAILER$, $PARTICIPANT$.
is_blackmailable_secret_trigger is a scripted trigger in Crusader Kings III, written at line 36 of its file. A call passes 2 parameters: BLACKMAILER and PARTICIPANT. The game's script calls it in 23 places, among them Blackmail (interaction), Fabricate Hook (scheme) and A Heavy Crown (event learning_medicine.2030). Patch 1.20.1.2, from game/common/scripted_triggers/00_secret_triggers.txt.
What it checks
Every line of it is script with no tooltip text: the script is below.
The script as written (107 lines of game script)
is_blackmailable_secret_trigger = { #Should not include is known
$PARTICIPANT$ = { save_temporary_scope_as = is_blackmailable_secret_participant }
$BLACKMAILER$ = { save_temporary_scope_as = is_blackmailable_secret_blackmailer }
is_shunned_or_criminal_for = scope:is_blackmailable_secret_participant
can_be_exposed_by = scope:is_blackmailable_secret_blackmailer
#Can we actually add a hook of the correct type
trigger_if = {
limit = { is_shunned_for = scope:is_blackmailable_secret_participant }
custom_description = {
text = "already_has_a_superior_hook"
subject = scope:is_blackmailable_secret_blackmailer
object = scope:is_blackmailable_secret_participant
scope:is_blackmailable_secret_blackmailer = {
can_add_hook = {
type = weak_blackmail_hook
target = scope:is_blackmailable_secret_participant
}
}
}
}
trigger_if = {
limit = { is_criminal_for = scope:is_blackmailable_secret_participant }
custom_description = {
text = "already_has_a_superior_hook"
subject = scope:is_blackmailable_secret_blackmailer
object = scope:is_blackmailable_secret_participant
scope:is_blackmailable_secret_blackmailer = {
can_add_hook = {
type = strong_blackmail_hook
target = scope:is_blackmailable_secret_participant
}
}
}
}
#If an AI promised not to reveal a secret they have to be very dishonest to do it
trigger_if = {
limit = { exists = var:promised_not_to_reveal}
custom_description = {
text = "promised_not_to_reveal_secret"
var:promised_not_to_reveal = scope:is_blackmailable_secret_blackmailer
scope:is_blackmailable_secret_blackmailer = {
is_ai = yes
ai_honor <= medium_negative_ai_value
}
}
}
#Some things you can't blackmail others about
custom_description = {
text = "cant_blackmail_another_witch"
subject = scope:is_blackmailable_secret_blackmailer
NAND = {
secret_type = secret_witch
scope:is_blackmailable_secret_blackmailer = { is_witch_trigger = yes }
}
}
# Can't blackmail a crypto-religionist of the same faith
trigger_if = {
limit = { secret_type = secret_crypto_religionist }
custom_description = {
text = cannot_blackmail_crypto_religionist_of_same_faith
scope:is_blackmailable_secret_blackmailer = {
NOR = {
exists = secret_faith
secret_faith ?= scope:is_blackmailable_secret_participant.secret_faith
}
}
}
}
trigger_if = {
limit = { secret_type = secret_lover }
custom_description = {
text = cannot_blackmail_own_lover_secret
secret_target != scope:is_blackmailable_secret_blackmailer
}
}
trigger_if = {
limit = {
secret_type = secret_unmarried_illegitimate_child
}
custom_description = {
text = cannot_blackmail_over_own_bastard
secret_target = {
NOR = {
mother = scope:is_blackmailable_secret_blackmailer
real_father = scope:is_blackmailable_secret_blackmailer
}
}
}
}
trigger_if = {
limit = {
secret_type = secret_disputed_heritage
}
custom_description = {
text = cannot_blackmail_over_own_bastard
NOT = {
secret_target = {
OR = {
mother = scope:is_blackmailable_secret_blackmailer
real_father = scope:is_blackmailable_secret_blackmailer
}
}
}
}
}
}As written in game/common/scripted_triggers/00_secret_triggers.txt.
Where it is used
Every place in common/, events/ and history/ that calls is_blackmailable_secret_trigger.
Character interactions (1)
Schemes (1)
- Fabricate Hook
Events (9)
- A Heavy Crown
learning_medicine.2030 - Fabricate Hook: A Secret
fabricate_hook_outcome.0001 - Servants and Masters
intrigue_scheming.3003 - Servants and Masters
intrigue_scheming.3012 - Servants and Masters
intrigue_scheming.3013 - Servants and Masters
intrigue_scheming.3021
3 more
- Truth or Torment
prison.1001 - Unfaithful
infidelity_confrontation.1000 - What Beautiful... Stitching
intrigue_temptation.3100
Scripted triggers inside an event file (7)
- appropriate_interesting_secret
- councillor_spouse_intrigue_1004_secret_trigger
- feast_default_2008_homosexual_trigger
- feast_lifestyle_2002_secret_trigger
- intrigue_scheming_3001_relevant_secret_trigger
- valid_secret_befriend_outcome_8007_trigger
1 more
- yearly_1080_secret_trigger
On actions (the game's own hooks) (1)
- on_travel_plan_movement
Scripted triggers (3)
Scripted rules (1)
- is_secret_available_for_blackmail
Source: game/common/scripted_triggers/00_secret_triggers.txt and every file of common/, events/ and history/ that calls it, Crusader Kings III 1.20.1.2.