Scripted effect
education_point_acquisition_support_effect
education_point_acquisition_support_effect = { SKILL = … }game/common/scripted_effects/00_education_effects.txt, line 249 (190 lines). Parameters: $SKILL$.
education_point_acquisition_support_effect is a scripted effect in Crusader Kings III, written at line 249 of its file. A call passes 1 parameter: SKILL. The game's script calls it in 1 place, among them education_point_acquisition_effect (scripted effect). Patch 1.20.1.2, from game/common/scripted_effects/00_education_effects.txt.
What it does
- 1 of 2 things will happen:
- 60% (base chance; changed in play): Nothing else happens
- 40% (base chance; changed in play): Nothing else happens
• 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)
education_point_acquisition_support_effect = {
#Save educator
if = {
limit = {
any_relation = {
type = guardian
always = yes
}
}
random_relation = {
type = guardian
save_scope_as = educator
}
}
else_if = {
limit = {
court_owner ?= { employs_court_position = court_tutor_court_position }
}
court_owner = {
random_court_position_holder = {
type = court_tutor_court_position
save_scope_as = educator
}
}
}
else_if = {
limit = {
court_owner ?= { employs_court_position = court_guru_court_position }
}
court_owner = {
random_court_position_holder = {
type = court_guru_court_position
save_scope_as = educator
}
}
}
#Set variables if they don't exist
if = {
limit = {
NOT = { has_variable = education_$SKILL$_variable }
}
set_variable = {
name = education_$SKILL$_variable
value = 0
}
}
#Randomize success or failure
random_list = {
#Success
60 = {
#Child intelligence
modifier = {
has_trait = intellect_good_3
add = 20
}
modifier = {
has_trait = intellect_good_2
add = 15
}
modifier = {
OR = {
has_trait = intellect_good_1
has_trait = shrewd
}
add = 10
}
#Educator intelligence & skill
modifier = {
exists = scope:educator
add = {
scope:educator = {
#Intelligence
if = {
limit = { has_trait = intellect_good_3 }
value = 15
}
else_if = {
limit = { has_trait = intellect_good_2 }
value = 10
}
else_if = {
limit = {
OR = {
has_trait = intellect_good_1
has_trait = shrewd
}
}
value = 5
}
#Specific skill
add = {
value = $SKILL$
multiply = educator_skill_modifier_factor
}
#Learning skill
add = {
value = learning
multiply = educator_learning_skill_modifier_factor
}
#Storyteller tradition
if = {
limit = { culture = { has_cultural_parameter = better_ward_education } }
value = 10
}
}
}
}
#Affinity
modifier = {
has_$SKILL$_education_affinity_childhood_trait_trigger = yes
add = matching_childhood_trait_modifier_value
}
#Disaffinity
modifier = {
has_$SKILL$_education_disaffinity_childhood_trait_trigger = yes
add = mismatching_childhood_trait_modifier_valueAs written in game/common/scripted_effects/00_education_effects.txt.
The first 120 of its 190 lines; the rest is in game/common/scripted_effects/00_education_effects.txt from line 249.
Where it is used
Every place in common/, events/ and history/ that calls education_point_acquisition_support_effect.
Scripted effects (1)
Source: game/common/scripted_effects/00_education_effects.txt and every file of common/, events/ and history/ that calls it, Crusader Kings III 1.20.1.2.