Scripted effect · Khans of the Steppe files
mpo_decisions_events_friend_fail_effect
mpo_decisions_events_friend_fail_effect = yesgame/common/scripted_effects/09_dlc_mpo_scripted_effects.txt, line 2247 (271 lines). No parameters.
mpo_decisions_events_friend_fail_effect is a scripted effect in Crusader Kings III, in the Khans of the Steppe files, written at line 2247 of its file. It takes no parameters: mpo_decisions_events_friend_fail_effect = yes. The game's script calls it in 1 place, among them Beyond the Customs (event mpo_decisions_events.0023). Patch 1.20.1.2, from game/common/scripted_effects/09_dlc_mpo_scripted_effects.txt.
What it does
- 1 of 12 things will happen:
- 24% › scope:friendship_target: Gains a Friend
- 12% › scope:friendship_target: Gains a Friend
- 6% › scope:friendship_target: Opinion: Charmed (+30)
- 12%:
- Their culture:
change_cultural_acceptance = { target = scope:friendship_target.culture value = minor_cultural_acceptance_gain desc = cultural_acceptance_friendly_visit }
If
scope:heir.culture:cultural_acceptance = { target = scope:friendship_target.culture value < 100 }
Then
scope:heir.culture:change_cultural_acceptance = { target = scope:friendship_target.culture value = minor_cultural_acceptance_gain desc = cultural_acceptance_friendly_visit }
- Their culture:
- 6%:
scope:friendship_target:pay_short_term_gold = { target = scope:heir gold = minor_gold_value }
- scope:heir: Opinion: Received Gift (+25)
- 6%:
pay_herd = { target = root value = domicile.minor_herd_value }- Opinion: Received Gift (+25)
- 6% › scope:heir:
add_diplomacy_skill = 1add_diplomacy_lifestyle_xp = minor_lifestyle_xp
- 6% › scope:heir:
add_martial_skill = 1add_martial_lifestyle_xp = minor_lifestyle_xp
- 6% › scope:heir:
add_stewardship_skill = 1add_stewardship_lifestyle_xp = minor_lifestyle_xp
- 6% › scope:heir:
add_intrigue_skill = 1add_intrigue_lifestyle_xp = minor_lifestyle_xp
- 6% › scope:heir:
add_learning_skill = 1add_learning_lifestyle_xp = minor_lifestyle_xp
- 6%:
• 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)
mpo_decisions_events_friend_fail_effect = {
random_list = {
4 = {
trigger = {
scope:friendship_target = {
is_ai = yes
}
OR = {
any_child = {
NOR = {
this = scope:friendship_target
this = scope:heir
has_relation_friend = scope:friendship_target
has_relation_best_friend = scope:friendship_target
has_any_bad_relationship_with_character_trigger = { CHARACTER = scope:friendship_target }
is_at_war_with = scope:friendship_target
}
is_imprisoned = no
is_incapable = no
is_courtier_of = root
age >= 6
}
any_sibling = {
NOR = {
this = scope:friendship_target
this = scope:heir
has_relation_friend = scope:friendship_target
has_relation_best_friend = scope:friendship_target
has_any_bad_relationship_with_character_trigger = { CHARACTER = scope:friendship_target }
is_at_war_with = scope:friendship_target
}
is_imprisoned = no
is_incapable = no
is_courtier_of = root
age >= 6
}
}
}
random_child = {
limit = {
NOR = {
this = scope:friendship_target
this = scope:heir
has_relation_friend = scope:friendship_target
has_relation_best_friend = scope:friendship_target
has_any_bad_relationship_with_character_trigger = { CHARACTER = scope:friendship_target }
is_at_war_with = scope:friendship_target
}
is_imprisoned = no
is_incapable = no
is_courtier_of = root
age >= 6
}
save_scope_as = accidental_friend
}
if = {
limit = {
NOT = {
exists = scope:accidental_friend
}
}
random_sibling = {
limit = {
NOR = {
this = scope:friendship_target
this = scope:heir
has_relation_friend = scope:friendship_target
has_relation_best_friend = scope:friendship_target
has_any_bad_relationship_with_character_trigger = { CHARACTER = scope:friendship_target }
is_at_war_with = scope:friendship_target
}
is_imprisoned = no
is_incapable = no
is_courtier_of = root
age >= 6
}
save_scope_as = accidental_friend
}
}
scope:friendship_target = {
set_relation_friend = {
target = root
reason = friend_accidental_introduction
}
}
}
2 = {
trigger = {
scope:friendship_target = {
is_ai = yes
}
scope:friendship_target = {
NOR = {
has_relation_friend = scope:friendship_target
has_relation_best_friend = scope:friendship_target
has_any_bad_relationship_with_character_trigger = { CHARACTER = root }
}
}
}
scope:friendship_target = {
set_relation_friend = {
target = root
reason = friend_accidental_introduction
}
}
}
1 = {
scope:friendship_target = {
add_opinion = {
modifier = charmed_opinion
target = root
opinion = 30
}
}
}
2 = {
trigger = {
culture = {
NOT = {
this = scope:friendship_target.cultureAs written in game/common/scripted_effects/09_dlc_mpo_scripted_effects.txt.
The first 120 of its 271 lines; the rest is in game/common/scripted_effects/09_dlc_mpo_scripted_effects.txt from line 2247.
Where it is used
Every place in common/, events/ and history/ that calls mpo_decisions_events_friend_fail_effect.
Events (1)
- Beyond the Customs
mpo_decisions_events.0023
Source: game/common/scripted_effects/09_dlc_mpo_scripted_effects.txt and every file of common/, events/ and history/ that calls it, Crusader Kings III 1.20.1.2.