Scripted effect
hunt_animal_bow_kill_effect
hunt_animal_bow_kill_effect = { DEATH = … VAR = … }game/common/scripted_effects/00_hunt_effects.txt, line 1866 (198 lines). Parameters: $DEATH$, $VAR$.
hunt_animal_bow_kill_effect is a scripted effect in Crusader Kings III, written at line 1866 of its file. A call passes 2 parameters: DEATH and VAR. The game's script calls it in 6 places, among them Cornering the … (event hunt.1003), Laying in Wait (event hunt.1032) and The … … (event hunt.4017). Its body carries 2 texts of the game's own for the player. Patch 1.20.1.2, from game/common/scripted_effects/00_hunt_effects.txt.
What it does
hunt_animal_kill_effect = { DEATH = $DEATH$ VAR = $VAR$ }- If has the Trait: Hastiluder:
- Hastiluder (bow) experience changes
hunter_progress_point_gain_effect = { CHANGE = 1 RANDOM_CHANGE = 1 }
- Otherwise:
hunter_progress_point_gain_effect = { CHANGE = 2 RANDOM_CHANGE = 1 }
- scope:activity › One random attending character:
hunt_wound_select_effect = yes
If
scope:hunt_kill_death_chance = flag:noscope:activity:hunt_story_trigger = { STORY = chase }
Then
- scope:activity › Activity log entry › scope:animal_slayer:
If
has_activity_intent = slay_beast_intent
Then
complete_activity_intent = yes
hunt_complete_slay_beast_intent_effect = yes- Gain 12.5–75 Prestige
Otherwise
duel = { … }
- scope:activity › Every attending character:
- Where: Is played by a person
- Event hunt.1200
• 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)
hunt_animal_bow_kill_effect = {
save_scope_as = bow_kill
hunt_animal_kill_effect = { DEATH = $DEATH$ VAR = $VAR$ }
if = {
limit = { has_trait = tourney_participant }
add_trait_xp = {
trait = tourney_participant
track = bow
value = { 1 3 }
}
hunter_progress_point_gain_effect = { CHANGE = 1 RANDOM_CHANGE = 1 } #Gives Hunter Lifestyle XP
}
else = {
hunter_progress_point_gain_effect = { CHANGE = 2 RANDOM_CHANGE = 1 } #Gives Hunter Lifestyle XP
}
# Determine who could be wounded
scope:activity ?= {
random_attending_character = {
limit = { is_alive = yes }
save_scope_as = injury_target
hunt_wound_select_effect = yes
}
}
if = { # Separate win option to avoid Duel tooltips if very easy
limit = {
scope:hunt_kill_death_chance = flag:no
exists = scope:hunt_ending
scope:activity = {
hunt_story_trigger = { STORY = chase }
}
}
scope:activity ?= {
add_activity_log_entry = {
key = hunt_bow_log
score = 75
tags = { kill }
character = scope:animal_slayer
# Effect
scope:animal_slayer = {
# Complete activity intent if relevant
if = {
limit = { has_activity_intent = slay_beast_intent }
show_as_tooltip = { complete_activity_intent = yes }
}
hunt_complete_slay_beast_intent_effect = yes
add_prestige = hunt_prestige_bow_value
}
}
}
save_scope_as = bow_success
play_sound_effect = "event:/DLC/EP2/SFX/Events/Grand_Activities/Hunts/ConstructionKits/ep2_event_grand_hunt_ck_arrow_shoot"
}
else = {
duel = {
skill = prowess
value = hunt_melee_kill_prowess_value
50 = { # Success
desc = hunt_kill_success_bow_tt
hunt_kill_bow_modifiers = yes # BOW
hunt_kill_hunter_modifiers = yes # HUNTER
compare_modifier = {
value = scope:duel_value
multiplier = 3.5
min = -25
}
scope:activity ?= {
add_activity_log_entry = {
key = hunt_bow_log
score = 75
tags = { kill }
character = scope:animal_slayer
# Effect
scope:animal_slayer = {
add_prestige = hunt_prestige_bow_value
# Complete activity intent if relevant
if = {
limit = { has_activity_intent = slay_beast_intent }
show_as_tooltip = { complete_activity_intent = yes }
}
hunt_complete_slay_beast_intent_effect = yes
if = {
limit = {
has_activity_intent = impose_obedience_intent
scope:host.intent_target = {
NOT = { is_obedient_to = scope:host }
}
}
scope:host.intent_target = {
add_opinion = {
target = scope:host
modifier = obedience_opinion
}
}
}
hunt_animal_slayer_memory_effect = yes
if = { #chance_to_gain_prowess_during_bear_hunts parameter check
limit = {
rite = { rite_has_parameter = chance_to_gain_prowess_during_bear_hunts }
scope:activity.var:animal_type = flag:bear
}
random = {
chance = 10
add_prowess_skill = 1
}
}
}
}
}
save_scope_as = bow_success
play_sound_effect = "event:/DLC/EP2/SFX/Events/Grand_Activities/Hunts/ConstructionKits/ep2_event_grand_hunt_ck_arrow_impact_hit"
}
5 = { # Failure
desc = hunt_kill_failure_melee_group
trigger = { scope:hunt_kill_death_chance = flag:yes }
compare_modifier = {
value = scope:duel_value
multiplier = -1.5
min = 1As written in game/common/scripted_effects/00_hunt_effects.txt.
The first 120 of its 198 lines; the rest is in game/common/scripted_effects/00_hunt_effects.txt from line 1866.
Where it is used
Every place in common/, events/ and history/ that calls hunt_animal_bow_kill_effect.
Events (6)
- Cornering the …
hunt.1003 - Laying in Wait
hunt.1032 - The … …
hunt.4017 - The … …
hunt.4019 - The … …
hunt_mystical_animal.9001 - The Shot
hunt.4001
Source: game/common/scripted_effects/00_hunt_effects.txt and every file of common/, events/ and history/ that calls it, Crusader Kings III 1.20.1.2.