Scripted effect · Tours and Tournaments files
disburse_xp_and_liege_prestige_effect
disburse_xp_and_liege_prestige_effect = yesgame/common/scripted_effects/04_dlc_ep2_tournament_effects.txt, line 6123 (373 lines). No parameters.
disburse_xp_and_liege_prestige_effect is a scripted effect in Crusader Kings III, in the Tours and Tournaments files, written at line 6123 of its file. It takes no parameters: disburse_xp_and_liege_prestige_effect = yes. The game's script calls it in 1 place, among them …: Conclusion (event tournament_events.0150). Patch 1.20.1.2, from game/common/scripted_effects/04_dlc_ep2_tournament_effects.txt.
The comment above it in the file
Award XP in relevant tourney trait tracks
What it does
- If has the Trait: Hastiluder:
If
One of these
exists = scope:melee_winneror
exists = scope:joust_winneror
exists = scope:horse_race_winner
Then
- Hastiluder (horse) experience changes
If
One of these
exists = scope:melee_winneror
exists = scope:duel_winneror
exists = scope:wrestling_winneror
exists = scope:joust_winner
Then
- Hastiluder (foot) experience changes
If
One of these
exists = scope:board_game_winneror
exists = scope:recital_winner
Then
- Hastiluder (wit) experience changes
If
One of these
All of these
exists = scope:archery_winnerOne of these
root.court_position:champion_court_position ?= scope:archery_winneror
scope:archery_winner:is_knight_of = root
or
All of these
exists = scope:recital_winnerOne of these
root.court_position:champion_court_position ?= scope:recital_winneror
scope:recital_winner:is_knight_of = root
or
All of these
exists = scope:joust_winnerOne of these
root.court_position:champion_court_position ?= scope:joust_winneror
scope:joust_winner:is_knight_of = root
or
All of these
exists = scope:wrestling_winnerOne of these
root.court_position:champion_court_position ?= scope:wrestling_winneror
scope:wrestling_winner:is_knight_of = root
or
All of these
exists = scope:duel_winnerOne of these
root.court_position:champion_court_position ?= scope:duel_winneror
scope:duel_winner:is_knight_of = root
or
All of these
exists = scope:board_game_winnerOne of these
root.court_position:champion_court_position ?= scope:board_game_winneror
scope:board_game_winner:is_knight_of = root
or
All of these
exists = scope:horse_race_winnerOne of these
root.court_position:champion_court_position ?= scope:horse_race_winneror
scope:horse_race_winner:is_knight_of = root
or
All of these
exists = scope:melee_winnerOne of these
root.court_position:champion_court_position ?= scope:melee_winneror
scope:melee_winner:is_knight_of = root
Then
add_prestige = { … }
• 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)
disburse_xp_and_liege_prestige_effect = {
# XP
if = {
limit = { has_trait = tourney_participant }
# Bow
if = {
limit = { exists = scope:archery_winner }
add_trait_xp = {
trait = tourney_participant
track = bow
value = {
value = 0
if = {
limit = { scope:archery_winner ?= this }
add = tournament_hastiludes_xp_gain_massive_value
}
else = { add = tournament_hastiludes_xp_gain_medium_value }
}
}
}
# Horse
if = {
limit = {
OR = {
exists = scope:melee_winner
exists = scope:joust_winner
exists = scope:horse_race_winner
}
}
add_trait_xp = {
trait = tourney_participant
track = horse
value = {
value = 0
if = { # Melee
limit = {
scope:activity = {
any_guest_subset = { name = qualified phase = tournament_phase_melee this = root }
}
}
if = {
limit = {
scope:activity = {
any_guest_subset = { name = winner phase = tournament_phase_melee this = root }
}
}
add = tournament_hastiludes_xp_gain_medium_value
}
else = { add = tournament_hastiludes_xp_gain_minor_value }
}
if = { # Joust
limit = {
scope:activity = {
any_guest_subset = { name = qualified phase = tournament_phase_joust this = root
}
}
}
if = {
limit = { scope:joust_winner ?= this }
add = tournament_hastiludes_xp_gain_massive_value
}
else = { add = tournament_hastiludes_xp_gain_medium_value }
}
if = { # Horse Race
limit = {
scope:activity = {
any_guest_subset = { name = qualified phase = tournament_phase_horse_race this = root }
}
}
if = {
limit = { scope:horse_race_winner ?= this }
add = tournament_hastiludes_xp_gain_massive_value
}
else = { add = tournament_hastiludes_xp_gain_medium_value }
}
}
}
}
# Foot
if = {
limit = {
OR = {
exists = scope:melee_winner
exists = scope:duel_winner
exists = scope:wrestling_winner
exists = scope:joust_winner
}
}
add_trait_xp = {
trait = tourney_participant
track = foot
value = {
value = 0
if = { # Melee
limit = {
scope:activity = {
any_guest_subset = { name = qualified phase = tournament_phase_melee this = root }
}
}
if = {
limit = {
scope:activity = {
any_guest_subset = { name = winner phase = tournament_phase_melee this = root }
}
}
add = tournament_hastiludes_xp_gain_medium_value
}
else = { add = tournament_hastiludes_xp_gain_minor_value }
}
if = { # Duel
limit = {
scope:activity = {
any_guest_subset = { name = qualified phase = tournament_phase_duel this = root }
}
}
if = {
limit = { scope:duel_winner ?= this }
add = tournament_hastiludes_xp_gain_massive_value
}
else = { add = tournament_hastiludes_xp_gain_medium_value }As written in game/common/scripted_effects/04_dlc_ep2_tournament_effects.txt.
The first 120 of its 373 lines; the rest is in game/common/scripted_effects/04_dlc_ep2_tournament_effects.txt from line 6123.
Where it is used
Every place in common/, events/ and history/ that calls disburse_xp_and_liege_prestige_effect.
Events (1)
- …: Conclusion
tournament_events.0150
Source: game/common/scripted_effects/04_dlc_ep2_tournament_effects.txt and every file of common/, events/ and history/ that calls it, Crusader Kings III 1.20.1.2.