Scripted effect
elope_success_effect
elope_success_effect = { OWNER = … TARGET = … }game/common/scripted_effects/00_scheme_scripted_effects.txt, line 14998 (92 lines). Parameters: $OWNER$, $TARGET$.
elope_success_effect is a scripted effect in Crusader Kings III, written at line 14998 of its file. A call passes 2 parameters: OWNER and TARGET. The game's script calls it in 3 places, among them Elope (Scheme) (interaction), Elope: Protected by Shadows (event elope.0001) and elope_1001_outcome_execution_or_tooltip_effect (local effect). Patch 1.20.1.2, from game/common/scripted_effects/00_scheme_scripted_effects.txt.
What it does
elope_opinion_list_builder_effect = { OWNER = $OWNER$ TARGET = $TARGET$ LIST_NAME = elope_opinion_list }$TARGET$ = { … }$OWNER$ = { … }- One in list, picked in order:
If
One of these
scope:root_scope = $OWNER$or
scope:root_scope = this
Then
elope_success_opinion_rivalry_effect = { CHARACTER = $OWNER$ }
• 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 (92 lines of game script)
elope_success_effect = {
elope_opinion_list_builder_effect = { OWNER = $OWNER$ TARGET = $TARGET$ LIST_NAME = elope_opinion_list }
#Because this can be used in events or interaction window, we save root_scope here
if = {
limit = { exists = scope:actor }
scope:actor = { save_temporary_scope_as = root_scope }
}
else = {
root = { save_temporary_scope_as = root_scope }
}
#Target prisoner release
$TARGET$ = {
if = {
limit = { is_imprisoned = yes }
release_from_prison = yes
}
}
$OWNER$ = {
#Tooltip for marriage
show_as_tooltip = {
if = {
limit = { is_female = yes }
marry_matrilineal = $TARGET$
}
else = {
marry = $TARGET$
}
}
#Owner's personal consequences (hidden or not), divorce happens here
if = {
limit = {
scope:root_scope = $OWNER$
}
elope_success_personal_consequences_effect = { CHARACTER = $OWNER$ }
}
else = {
hidden_effect = { elope_success_personal_consequences_effect = { CHARACTER = $OWNER$ } }
}
}
#Opinions
ordered_in_list = {
list = elope_opinion_list
max = 10 #To make sure we include all
check_range_bounds = no
order_by = ai_vengefulness
#Towards owner
if = {
limit = {
OR = { #Owner wants to see everything, root wants to see their own
scope:root_scope = $OWNER$
scope:root_scope = this
}
}
elope_success_opinion_rivalry_effect = { CHARACTER = $OWNER$ }
}
else = {
hidden_effect = { elope_success_opinion_rivalry_effect = { CHARACTER = $OWNER$ } }
}
#Towards target
if = {
limit = { scope:root_scope = this } #Root wants to see their own
elope_success_opinion_rivalry_effect = { CHARACTER = $TARGET$ }
}
else = {
hidden_effect = { elope_success_opinion_rivalry_effect = { CHARACTER = $TARGET$ } }
}
}
hidden_effect = {
#Target's personal consequences, divorce happens here
elope_success_personal_consequences_effect = { CHARACTER = $TARGET$ }
#Marriage
$OWNER$ = { #We do this last so old spouses remain when we run personal consequences effect
if = {
limit = { is_female = yes }
marry_matrilineal = $TARGET$
}
else = {
marry = $TARGET$
}
}
}
}As written in game/common/scripted_effects/00_scheme_scripted_effects.txt.
Where it is used
Every place in common/, events/ and history/ that calls elope_success_effect.
Character interactions (1)
Events (1)
- Elope: Protected by Shadows
elope.0001
Scripted effects inside an event file (1)
- elope_1001_outcome_execution_or_tooltip_effect
Source: game/common/scripted_effects/00_scheme_scripted_effects.txt and every file of common/, events/ and history/ that calls it, Crusader Kings III 1.20.1.2.