Scripted effect · Friends and Foes files
house_feud_murder_effect
house_feud_murder_effect = { MURDERER = … VICTIM = … }game/common/scripted_effects/03_bp1_scripted_effects.txt, line 1124 (108 lines). Parameters: $MURDERER$, $VICTIM$.
house_feud_murder_effect is a scripted effect in Crusader Kings III, in the Friends and Foes files, written at line 1124 of its file. A call passes 2 parameters: MURDERER and VICTIM. The game's script calls it in 4 places, among them known_murder_effect (scripted effect), known_murder_hidden_opinion_effect (scripted effect) and murder_consequences_known_or_exposed_effect (scripted effect). Patch 1.20.1.2, from game/common/scripted_effects/03_bp1_scripted_effects.txt.
What it does
If
a check the game hides
Then
scope:house_feud_victim:save_ongoing_house_relation_effect = { TARGET = scope:house_feud_attacker }
If
scope:house_feud_victim:house_has_feud_relation_with_trigger = { TARGET = scope:house_feud_attacker }
Then
scope:house_feud_attacker.house:change_house_relation_feud_score_effect = { TARGET = scope:house_feud_victim.house REASON = kill VALUE = house_feud_medium_counter_value }
If
scope:house_feud_victim.house.house_head:NOT = { has_any_bad_relationship_with_character_trigger = { CHARACTER = scope:house_feud_victim } }valid_for_feud_events_with_target_trigger = { TARGET = scope:house_feud_attacker }
Then
scope:house_feud_attacker:- scope:house_feud_victim.house.house_head › 25% chance of: Event bp1_house_feud.0005 (after 5–15 days)
scope:house_feud_attacker.house:If
- Any house relation:
has_house_relation_level = feud- Any relation house:
One of these
- House feud reason is head killed
or
House feud reason is head skull sentor
House feud reason is family killed
- House feud attacker is scope:house feud victim
Then
- Their house head: Event bp1_house_feud.7001 (after 15 days)
- Any house relation:
• 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 (108 lines of game script)
house_feud_murder_effect = {
if = {
limit = {
has_bp1_dlc_trigger = yes
exists = $VICTIM$.house.house_head
exists = $MURDERER$.house.house_head
}
$VICTIM$ = { save_scope_as = house_feud_victim }
$MURDERER$ = { save_scope_as = house_feud_attacker }
scope:house_feud_victim = {
save_ongoing_house_relation_effect = { TARGET = scope:house_feud_attacker }
}
# Notifications
# Inform victim house that they have lost score
if = {
limit = {
# Victim's House is targeted by killer's House
scope:house_feud_victim = {
house_has_feud_relation_with_trigger = { TARGET = scope:house_feud_attacker }
}
}
scope:house_feud_attacker.house = {
change_house_relation_feud_score_effect = {
TARGET = scope:house_feud_victim.house
REASON = kill
VALUE = house_feud_medium_counter_value
}
}
scope:relation ?= {
if = {
limit = {
scope:house_feud_attacker.house = var:house_feud_house_1
}
set_variable = {
name = house_feud_house_1_recent_kill
value = scope:house_feud_victim
months = 6
}
}
else = {
set_variable = {
name = house_feud_house_2_recent_kill
value = scope:house_feud_victim
months = 6
}
}
}
}
# Events
# Fire Feud start event for victim house
if = {
limit = {
scope:house_feud_victim.house.house_head ?= {
NOT = {
has_any_bad_relationship_with_character_trigger = { CHARACTER = scope:house_feud_victim }
}
valid_for_feud_events_with_target_trigger = { TARGET = scope:house_feud_attacker }
}
}
scope:house_feud_attacker = { house_feud_save_head_and_attacker_effect = yes }
scope:house_feud_victim.house.house_head = {
random = {
chance = 25
modifier = {
add = 25
has_trait = vengeful
}
modifier = {
add = -25
has_trait = forgiving
}
modifier = {
add = 25
has_any_bad_relationship_with_character_trigger = { CHARACTER = scope:house_feud_attacker }
}
trigger_event = {
id = bp1_house_feud.0005
days = { 5 15 }
}
}
}
}
# Fire Feud revenge event for killer house
scope:house_feud_attacker.house = {
if = {
limit = {
any_house_relation = {
has_house_relation_level = feud
any_relation_house = {
NOT = { this = scope:house_feud_attacker.house }
this = scope:house_feud_victim.house
}
OR = {
var:house_feud_reason ?= flag:head_killed
var:house_feud_reason ?= flag:head_skull_sent
var:house_feud_reason ?= flag:family_killed
}
var:house_feud_attacker ?= scope:house_feud_victim
NOT = { exists = var:feud_avenged }
}
}
house_head = {
trigger_event = { id = bp1_house_feud.7001 days = 15 }
}
}
}
}
}As written in game/common/scripted_effects/03_bp1_scripted_effects.txt.
Where it is used
Every place in common/, events/ and history/ that calls house_feud_murder_effect.
Source: game/common/scripted_effects/03_bp1_scripted_effects.txt and every file of common/, events/ and history/ that calls it, Crusader Kings III 1.20.1.2.