Scripted trigger
build_murder_targets_trigger
build_murder_targets_trigger = yesgame/common/scripted_triggers/00_scheme_triggers.txt, line 226 (194 lines). No parameters.
build_murder_targets_trigger is a scripted trigger in Crusader Kings III, written at line 226 of its file. It takes no parameters: build_murder_targets_trigger = yes (or no). The game's script calls it in 1 place, among them murder_scheme_maintenance.1 (event). Patch 1.20.1.2, from game/common/scripted_triggers/00_scheme_triggers.txt.
The comment above it in the file
This trigger is a bit contrived in some way to ensure absolutely everyone gets evaluated without any early-outing It should always return true We use "count = all" and trigger_ifs to ensure that all have to be evaluated, and that all return
What it checks
- Every relation:
If
- You:
If
has_relation_nemesis = prev
Then
- Ai honor at most 35
Otherwise
- Ai honor at most 20
can_start_scheme = { target_character = prev type = murder }
Then
add_to_temporary_list = murder_targets
- You:
- If ai greed at least 20:
- Their dynasty › Every dynasty member:
- Every close or extended family member:
- Their dynasty › Every dynasty member:
If
- Ai greed at least 20
- Is an Independent Ruler
- Government is Clan
Then
- Their liege › Every tax collector:
If
- Any tax collector vassal:
tax_collector_aptitude = { target = clan_tax_slot value >= 3 }
Then
add_to_temporary_list = murder_targets
If
- Ai greed at least 0
- Ai vengefulness at least 0
- Ai compassion at most -35
- Their house’s house head:
- Is a ruler
- Government is Clan
ai_wants_low_unity = yes
Then
- Their house › Every house member › If has the Trait: Extolled by House:
add_to_temporary_list = murder_targets
- Every consort:
If
- You:
- Ai compassion at most 0
can_start_scheme = { target_character = prev type = murder }
exposed_cheating_on_spouse_trigger = { SPOUSE = root }
Then
add_to_temporary_list = murder_targets
- You:
If
- Is landed
primary_title.tier >= tier_duchy
Then
- Every targeting faction:
faction_type = claimant_factionIf
a check the game hides
Then
special_character = { add_to_temporary_list = murder_targets }
- Every spouse:
If
- Fertility less than 0.1
- Is played by the AI
- You:
- Ai compassion at most 0
- Ai honor at most 0
- Fertility more than 0.1
is_playable_character = yesNone of these
- Any child:
is_heir_of = root
- Any child:
can_start_scheme = { target_character = prev type = murder }
Then
add_to_temporary_list = murder_targets
• the game's own tooltip text · ◦ our reading of the script line · code the script where neither exists
“They” is whatever it runs on (the scope it is called in). The scripted triggers and effects it calls link to their own pages; $PARAMETERS$ stay as written: each call fills them in.
The script as written (120 lines of game script)
build_murder_targets_trigger = {
any_relation = { # Rivals are good targets for murder schemes
type = rival
count = all
trigger_if = {
limit = {
root = {
trigger_if = {
limit = {
has_relation_nemesis = prev
}
ai_honor <= medium_positive_ai_value
}
trigger_else = {
ai_honor <= low_positive_ai_value
}
can_start_scheme = {
target_character = prev
type = murder
}
}
}
add_to_temporary_list = murder_targets
}
}
trigger_if = { # Greedy people have no qualms murdering their way up the succession...
limit = {
ai_greed >= low_positive_ai_value
exists = dynasty
}
dynasty = {
any_dynasty_member = {
count = all
trigger_if = {
limit = {
is_good_familial_murder_target_trigger = yes
}
add_to_temporary_list = murder_targets
}
}
}
any_close_or_extended_family_member = {
count = all
trigger_if = {
limit = {
NOT = { is_in_list = murder_targets }
is_good_familial_murder_target_trigger = yes
}
add_to_temporary_list = murder_targets
}
}
}
trigger_if = { # Greedy people want to murder their liege's high aptitude tax collector...
limit = {
ai_greed >= low_positive_ai_value
top_liege != this
government_has_flag = government_is_clan
exists = liege
}
liege = {
any_tax_collector = {
count = all
trigger_if = {
limit = {
any_tax_collector_vassal = {
this = root
}
tax_collector_aptitude = {
target = clan_tax_slot
value >= 3
}
}
add_to_temporary_list = murder_targets
}
}
}
}
trigger_if = { # Some Clan members want to murder Extolled people out of pure spite and malice
limit = {
ai_greed >= 0
ai_vengefulness >= 0
ai_compassion <= medium_negative_ai_value
house.house_head ?= {
is_ruler = yes
government_has_flag = government_is_clan
}
ai_wants_low_unity = yes
}
house = {
any_house_member = {
count = all
trigger_if = {
limit = { has_trait = extolled }
add_to_temporary_list = murder_targets
}
}
}
}
any_consort = { # Unfaithful spouses
count = all
trigger_if = {
limit = {
root = {
ai_compassion <= 0
can_start_scheme = {
target_character = prev
type = murder
}
}
exposed_cheating_on_spouse_trigger = { SPOUSE = root }
}
add_to_temporary_list = murder_targets
}
}
trigger_if = { # Certain vassals will plot against their liege under certain conditions
limit = {
highest_held_title_tier > tier_barony
liege ?= {
tyranny >= medium_tyranny
}As written in game/common/scripted_triggers/00_scheme_triggers.txt.
The first 120 of its 194 lines; the rest is in game/common/scripted_triggers/00_scheme_triggers.txt from line 226.
Where it is used
Every place in common/, events/ and history/ that calls build_murder_targets_trigger.
Events (1)
Source: game/common/scripted_triggers/00_scheme_triggers.txt and every file of common/, events/ and history/ that calls it, Crusader Kings III 1.20.1.2.