so much event updating

This commit is contained in:
trashmasteruni 2026-04-25 13:36:44 +02:00
parent c4b6d9bdeb
commit 811167944e
135 changed files with 4885 additions and 297691 deletions

View file

@ -1,307 +0,0 @@
namespace = court_astrologer_events
#Triggered by the "Consult the Skies" decision
court_astrologer_events.0001 = {
type = character_event
title = court_astrologer_events.0001.t
desc = court_astrologer_events.0001.desc
theme = faith
override_effect_2d = {
reference = legend_glow
}
left_portrait = {
character = root
triggered_animation = {
trigger = {
has_trait = zealous
}
animation = beg
}
triggered_animation = {
trigger = {
OR = {
has_trait = craven
has_trait = paranoid
}
}
animation = worry
}
triggered_animation = {
trigger = {
OR = {
has_trait = cynical
has_trait = arrogant
}
}
animation = boredom
}
animation = prayer
}
right_portrait = {
character = scope:astrologer
animation = holding_staff
}
immediate = {
random_courtier = {
limit = { has_court_position = court_astrologer_court_position }
save_scope_as = astrologer
}
}
option = { # Tell me about my love life
name = court_astrologer_events.0001.a
random_list = {
50 = {
desc = court_astrologer_events.0001.a.success
send_interface_toast = {
title = court_astrologer_events.0001.a.success
left_icon = root
custom_tooltip = court_astrologer_events.0001.a.success.tt
if = {
limit = {
culture ?= { has_cultural_pillar = ethos_spiritual }
}
add_character_modifier = {
modifier = mpo_divination_love_spiritual_modifier
years = 5
}
}
else = {
add_character_modifier = {
modifier = mpo_divination_love_modifier
years = 5
}
}
}
}
50 = {
desc = court_astrologer_events.0001.a.failure
send_interface_toast = {
title = court_astrologer_events.0001.a.failure
left_icon = root
add_stress = minor_stress_loss
}
}
}
stress_impact = {
paranoid = miniscule_stress_impact_gain
cynical = miniscule_stress_impact_gain
}
ai_chance = {
base = 100
}
}
option = { # Tell me about war
name = court_astrologer_events.0001.b
random_list = {
50 = {
desc = court_astrologer_events.0001.b.success
send_interface_toast = {
title = court_astrologer_events.0001.b.success
left_icon = root
if = {
limit = {
culture ?= { has_cultural_pillar = ethos_spiritual }
}
add_character_modifier = {
modifier = mpo_divination_war_spiritual_modifier
years = 5
}
}
else = {
add_character_modifier = {
modifier = mpo_divination_war_modifier
years = 5
}
}
}
}
50 = {
desc = court_astrologer_events.0001.a.failure
send_interface_toast = {
title = court_astrologer_events.0001.a.failure
left_icon = root
add_stress = minor_stress_loss
}
}
}
stress_impact = {
paranoid = miniscule_stress_impact_gain
cynical = miniscule_stress_impact_gain
}
ai_chance = {
base = 100
}
}
option = { # Just tell me about life
name = court_astrologer_events.0001.c
random_list = {
50 = {
desc = court_astrologer_events.0001.c.success
send_interface_toast = {
title = court_astrologer_events.0001.c.success
left_icon = root
if = {
limit = {
culture ?= { has_cultural_pillar = ethos_spiritual }
}
add_character_modifier = {
modifier = mpo_divination_life_spiritual_modifier
years = 5
}
}
else = {
add_character_modifier = {
modifier = mpo_divination_life_modifier
years = 5
}
}
}
}
50 = {
desc = court_astrologer_events.0001.a.failure
send_interface_toast = {
title = court_astrologer_events.0001.a.failure
left_icon = root
add_stress = minor_stress_loss
}
}
}
stress_impact = {
paranoid = miniscule_stress_impact_gain
cynical = miniscule_stress_impact_gain
}
ai_chance = {
base = 100
}
}
option = { # Actually, not right now
name = court_astrologer_events.0001.d
remove_decision_cooldown = mpo_divination_decision
ai_chance = {
base = 0
}
}
}
# Migration Suggestion
scripted_trigger court_astrologer_events_0002_neighbour_trigger = {
government_has_flag = government_is_nomadic
current_domain_fertility >= root.current_domain_fertility
is_independent_ruler = yes
}
court_astrologer_events.0002 = {
type = character_event
title = court_astrologer_events.0002.t
desc = {
desc = court_astrologer_events.0002.desc.intro
first_valid = {
triggered_desc = {
trigger = {
location.county.county_fertility <= bad_county_fertility_level
}
desc = court_astrologer_events.0002.desc.bad
}
desc = court_astrologer_events.0002.desc.meh
}
desc = court_astrologer_events.0002.desc.outro
}
theme = nomads
override_background = { reference = mpo_steppe_evening }
left_portrait = {
character = root
animation = thinking
}
right_portrait = {
character = scope:astrologer
animation = holding_staff
}
lower_center_portrait = scope:target_realm_owner
cooldown = { years = 5 }
trigger = {
has_mpo_dlc_trigger = yes
government_has_flag = government_is_nomadic
is_available = yes
employs_court_position = court_astrologer_court_position
court_position:court_astrologer_court_position = { is_available = yes }
any_neighboring_realm_same_rank_owner = {
court_astrologer_events_0002_neighbour_trigger = yes
}
}
weight_multiplier = {
base = 1
modifier = {
current_domain_fertility <= bad_county_fertility_level
factor = 2
}
}
immediate = {
court_position:court_astrologer_court_position = {
save_scope_as = astrologer
get_quirk_character_effect = yes
}
ordered_neighboring_realm_same_rank_owner = {
limit = {
court_astrologer_events_0002_neighbour_trigger = yes
}
order_by = current_domain_fertility
save_scope_as = target_realm_owner
primary_title = { save_scope_as = target_realm }
}
}
option = { # Sounds like a great idea
name = court_astrologer_events.0002.a
custom_tooltip = court_astrologer_events.0002.a.tt
set_variable = {
name = astrologer_desired_area
value = scope:target_realm
years = 5
}
stress_impact = {
paranoid = medium_stress_impact_gain
gregarious = medium_stress_impact_gain
}
ai_chance = {
base = 100
}
}
option = { # Thank you for your feedback
name = court_astrologer_events.0002.b
scope:astrologer = {
add_opinion = {
target = root
modifier = respect_opinion
opinion = 20
}
}
stress_impact = {
paranoid = medium_stress_impact_gain
gregarious = medium_stress_impact_gain
}
ai_chance = {
base = 100
}
}
option = { # I'm good
name = court_astrologer_events.0002.c
add_prestige = minor_prestige_gain
stress_impact = {
paranoid = medium_stress_impact_gain
gregarious = medium_stress_impact_gain
}
ai_chance = {
base = 100
}
}
}

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -1,453 +0,0 @@
namespace = mpo_flavor_events_settled
# mpo_flavor_events_settled.0001 - You hear of a Havsarsan Zud
# mpo_flavor_events_settled.0010 - Horse Lord at your door
#######################
# You hear of a Havsarsan Zud
#######################
mpo_flavor_events_settled.0001 = {
type = character_event
title = mpo_flavor_events_settled.0001.t
desc = mpo_flavor_events_settled.0001.desc
theme = nomads
override_background = { reference = ep3_city_gate }
left_portrait = {
character = root
triggered_animation = {
trigger = {
OR = {
has_trait = callous
has_trait = sadistic
}
}
animation = schadenfreude
}
triggered_animation = {
trigger = {
OR = {
has_trait = brave
has_trait = arrogant
}
}
animation = dismissal
}
animation = worry
}
right_portrait = {
character = scope:nomad
animation = horse_exhausted
camera = camera_event_horse_right
}
widget = {
gui = "event_window_widget_vfx_snowstorm"
container = "foreground_shader_vfx_container"
}
cooldown = { years = 10 }
trigger = {
has_mpo_dlc_trigger = yes
NOT = { government_has_flag = government_is_nomadic }
OR = {
any_character_situation = { # You are a settled ruler in the Great Steppe
any_participant_group = {
participant_group_type = settled_rulers
participant_group_has_character = root
}
any_situation_sub_region = {
sub_region_current_phase = situation_steppe_havsarsan_zud_season
}
}
any_sub_realm_county = { # You are neighbouring the Great Steppe
any_neighboring_county = {
holder != root
any_county_situation = {
situation:the_great_steppe ?= this
any_situation_sub_region = {
sub_region_current_phase = situation_steppe_havsarsan_zud_season
}
}
}
}
}
}
immediate = {
if = {
limit = {
any_neighboring_top_liege_realm_owner = {
government_has_flag = government_is_nomadic
}
}
random_neighboring_top_liege_realm_owner = {
limit = { government_has_flag = government_is_nomadic }
save_scope_as = nomad_lord
}
}
else = {
random_ruler = {
limit = {
in_diplomatic_range = root
government_has_flag = government_is_nomadic
}
save_scope_as = nomad_lord
}
}
create_character = {
location = root.location
template = nomadic_hunter_template
faith = scope:nomad_lord.faith
culture = scope:nomad_lord.culture
save_scope_as = nomad
}
scope:nomad = { add_trait = nomadic_philosophy }
}
option = { # Get out
name = mpo_flavor_events_settled.0001.aa
reason = faith
add_internal_flag = special
trigger = {
faith = {
trait_is_virtue = callous
}
}
add_piety = medium_piety_gain
stress_impact = {
callous = major_stress_impact_loss
generous = medium_stress_impact_gain
paranoid = medium_stress_impact_gain
}
ai_chance = {
base = 100
modifier = {
factor = 2
has_trait = callous
}
modifier = {
factor = 0
OR = {
has_trait = generous
has_trait = paranoid
}
}
}
}
option = { # Let's prepare
name = mpo_flavor_events_settled.0001.a
remove_short_term_gold = medium_gold_value
every_sub_realm_county = {
limit = { holder = root }
add_county_modifier = {
modifier = mpo_settled_preparations_war_county_modifier
years = 15
}
}
stress_impact = {
wrathful = medium_stress_impact_loss
brave = medium_stress_impact_loss
craven = medium_stress_impact_gain
greedy = medium_stress_impact_gain
avaricious = medium_stress_impact_gain
}
ai_chance = {
base = 100
modifier = {
OR = {
has_trait = wrathful
has_trait = brave
}
factor = 0
}
modifier = {
OR = {
short_term_gold <= major_gold_value
has_trait = greedy
has_trait = avaricious
has_trait = craven
}
factor = 0
}
}
}
option = { # We should focus on building
name = mpo_flavor_events_settled.0001.b
every_sub_realm_county = {
limit = { holder = root }
add_county_modifier = {
modifier = mpo_settled_preparations_building_county_modifier
years = 10
}
}
stress_impact = {
compassionate = major_stress_impact_loss
greedy = medium_stress_impact_gain
avaricious = medium_stress_impact_gain
}
ai_chance = {
base = 100
}
}
option = { # Recruit this guy
name = mpo_flavor_events_settled.0001.c
trigger = {
NOT = {
faith = {
trait_is_virtue = callous
}
}
}
add_courtier = scope:nomad
if = {
limit = {
faith = { trait_is_virtue = compassionate }
}
add_piety = major_piety_gain
}
else = {
add_piety = medium_piety_gain
}
stress_impact = {
compassionate = major_stress_impact_loss
callous = major_stress_impact_gain
}
ai_chance = {
base = 100
}
}
after = {
custom_tooltip = mpo_flavor_events_settled.0001.tt
if = {
limit = { is_ai = yes }
scope:nomad = { silent_disappearance_effect = yes }
}
}
}
#######################
# Horse Lord at your door
#######################
scripted_trigger mpo_flavor_events_settled_0010_valid_nomad_lord_trigger = {
government_has_flag = government_is_nomadic
NOR = {
is_close_family_of = root
is_vassal_of = root
is_tributary_of = root
this = root.liege
this = root.suzerain
}
any_character_situation = {
situation:the_great_steppe ?= this
}
}
mpo_flavor_events_settled.0010 = {
type = character_event
title = mpo_flavor_events_settled.0010.t
desc = mpo_flavor_events_settled.0010.desc
theme = nomads
override_background = { reference = ep3_city_gate }
left_portrait = {
character = root
animation = anger
}
right_portrait = {
character = scope:nomad
animation = horse_conversing_left
camera = camera_event_horse_right
}
lower_right_portrait = scope:nomad_lord
cooldown = { years = 10 }
trigger = {
has_mpo_dlc_trigger = yes
NOT = { government_has_flag = government_is_nomadic }
any_neighboring_top_liege_realm_owner = {
mpo_flavor_events_settled_0010_valid_nomad_lord_trigger = yes
}
}
weight_multiplier = {
base = 1
modifier = {
any_neighboring_top_liege_realm_owner = {
government_has_flag = government_is_nomadic
highest_held_title_tier >= tier_kingdom
}
factor = 2
}
}
immediate = {
random_neighboring_top_liege_realm_owner = {
limit = { mpo_flavor_events_settled_0010_valid_nomad_lord_trigger = yes }
weight = {
base = 1
modifier = {
highest_held_title_tier >= tier_kingdom
add = 5
}
}
save_scope_as = nomad_lord
}
create_character = {
location = root.location
template = nomadic_commander_template
faith = scope:nomad_lord.faith
culture = scope:nomad_lord.culture
save_scope_as = nomad
}
hidden_effect = {
scope:nomad = { add_trait = nomadic_philosophy }
scope:nomad_lord = { add_courtier = scope:nomad }
}
}
option = { # Pay tribute
name = mpo_flavor_events_settled.0010.a
trigger = {
OR = {
scope:nomad_lord.primary_title.tier > root.primary_title.tier
scope:nomad_lord.current_military_strength > root.current_military_strength
}
}
start_tributary_interaction_effect = {
TRIBUTARY = root
SUZERAIN = scope:nomad_lord
}
scope:nomad_lord = {
add_opinion = {
target = root
modifier = pleased_opinion
opinion = 25
}
}
add_prestige = medium_prestige_gain
stress_impact = {
vengeful = major_stress_impact_loss
compassionate = medium_stress_impact_gain
}
ai_chance = {
base = 0
}
}
option = { # Pay to get truce
name = mpo_flavor_events_settled.0010.b
trigger = {
NOR = {
scope:nomad_lord.primary_title.tier > root.primary_title.tier
scope:nomad_lord.current_military_strength > root.current_military_strength
}
}
if = {
limit = {
has_perk = defensive_measures_perk
}
custom_tooltip = mpo_flavor_events_settled.0010.b_perk_tt
pay_short_term_gold = {
target = scope:nomad_lord
gold = root.purchase_truce_interaction_small_sum
}
add_truce_both_ways = {
character = scope:nomad_lord
days = purchase_truce_interaction_truce_days_medium_value
name = TRUCE_PURCHASED
}
}
else = {
pay_short_term_gold = {
target = scope:nomad_lord
gold = root.purchase_truce_interaction_medium_sum
}
add_truce_both_ways = {
character = scope:nomad_lord
days = purchase_truce_interaction_truce_days_medium_value
name = TRUCE_PURCHASED
}
}
stress_impact = {
brave = medium_stress_impact_gain
ambitious = medium_stress_impact_gain
arrogant = medium_stress_impact_gain
}
ai_chance = {
base = 50
modifier = {
OR = {
has_trait = content
has_trait = craven
}
factor = 2
}
modifier = {
OR = {
has_trait = brave
has_trait = ambitious
has_trait = arrogant
has_trait = greedy
gold <= root.purchase_truce_interaction_major_sum
}
factor = 0
}
}
}
option = { # Offend them
name = mpo_flavor_events_settled.0010.c
add_dread = medium_dread_value
scope:nomad_lord = {
progress_towards_rival_effect = {
CHARACTER = root
OPINION = -40
REASON = rival_disrespected_envoy
}
}
stress_impact = {
callous = major_stress_impact_loss
craven = major_stress_impact_gain
vengeful = major_stress_impact_gain
}
ai_chance = {
base = 0
modifier = {
add = 150
has_trait = callous
current_military_strength > scope:nomad_lord.current_military_strength
}
}
}
option = { # Let's just be friends
name = mpo_flavor_events_settled.0010.d
add_diplomacy_lifestyle_xp = minor_lifestyle_xp
scope:nomad_lord = {
add_opinion = {
target = root
modifier = pleased_opinion
opinion = 5
}
}
stress_impact = {
gregarious = medium_stress_impact_loss
}
ai_chance = {
base = 200
}
}
after = {
if = {
limit = { is_ai = yes }
scope:nomad = { silent_disappearance_effect = yes }
}
}
}

View file

@ -1,450 +0,0 @@
namespace = mpo_jamukha_flavor
#######################
# Become Blood Brothers with Temujin
#######################
mpo_jamukha_flavor.0001 = {
type = character_event
title = mpo_jamukha_flavor.0001.t
desc = mpo_jamukha_flavor.0001.desc
theme = nomads
override_background = {
reference = mpo_campfire_steppe
}
left_portrait = {
character = root
animation = happiness
camera = camera_event_very_left
}
right_portrait = {
character = scope:temujin
animation = inspect_weapon
}
trigger = {
scope:temujin = {
is_alive = yes
NOR = {
has_relation_blood_brother = root
has_relation_rival = root
}
}
is_alive = yes
}
immediate = {
play_music_cue = "mx_cue_touching_moment"
scope:temujin = {
save_scope_as = blood_bro
}
}
option = { # Yay
name = mpo_jamukha_flavor.0001.a
name = mpo_jamukha_flavor.0001.a.tt
scope:temujin = {
set_relation_blood_brother = {
target = scope:jamukha
reason = blood_brother_temujin_jamukha
}
}
if = {
limit = {
NOR = {
has_character_flag = had_warhorse_story
any_owned_story = {
story_type = story_cycle_martial_lifestyle_warhorse
exists = var:story_cycle_horse_name
}
}
scope:jamukha = {
NOR = {
has_character_flag = had_warhorse_story
any_owned_story = {
story_type = story_cycle_martial_lifestyle_warhorse
exists = var:story_cycle_horse_name
}
}
}
}
custom_tooltip = temujin_warhorse_jamukha_tt
custom_tooltip = jamukha_warhorse_jamukha_tt
hidden_effect = {
start_warhorse_story_cycle_effect = yes
scope:temujin = {
start_warhorse_story_cycle_effect = yes
}
}
}
custom_tooltip = blood_brother_gains_hook_tt
custom_tooltip = blood_brother_gains_hook_other_tt
add_character_modifier = blood_brother_warrior_modifier
scope:temujin = {
add_character_modifier = blood_brother_warrior_modifier
}
stress_impact = {
gregarious = medium_stress_impact_loss
callous = medium_stress_impact_gain
}
ai_chance = {
base = 100
}
}
option = { # Not a chance
name = mpo_jamukha_flavor.0001.b
add_dread = minor_dread_gain
add_prestige = minor_prestige_gain
scope:temujin = {
add_opinion = {
target = root
modifier = disappointed_opinion
opinion = -25
}
}
stress_impact = {
base = minor_stress_impact_gain
callous = medium_stress_impact_loss
gregarious = medium_stress_impact_gain
}
ai_chance = {
base = 0
}
}
}
#######################
# You consider breaking free from Temujin
#######################
scripted_effect mpo_jamukha_flavor_0010_jamukha_leaving_effect = {
if = {
limit = { is_vassal_of = scope:temujin }
create_title_and_vassal_change = {
type = independency
save_scope_as = change
add_claim_on_loss = no
}
becomes_independent = {
change = scope:change
}
resolve_title_and_vassal_change = scope:change
}
else = {
end_tributary = yes
}
add_truce_both_ways = {
character = scope:temujin
years = 5
name = temujin_jamukha_truce
}
if = {
limit = {
current_military_strength < scope:temujin.current_military_strength
}
domicile ?= {
change_herd = {
value = scope:temujin.domicile.herd
multiply = 0.5
}
}
}
if = {
limit = {
exists = scope:togrul
}
show_as_tooltip = {
custom_tooltip = negotiate_togrul_alliance_effect_tooltip
create_alliance = {
target = scope:togrul
allied_through_owner = root
allied_through_target = scope:togrul
}
scope:togrul = {
add_opinion = {
target = scope:jamukha
modifier = event_negotiated_alliance_opinion
}
}
}
}
custom_tooltip = jamukha_temujin_response_warning_tt
}
scripted_trigger mpo_jamukha_flavor_0010_togrul_trigger = {
is_ai = yes
is_at_war = no
is_alive = yes
is_ruler = yes
NOR = {
is_at_war_with = root
has_relation_rival = root
is_vassal_of = scope:temujin
}
in_diplomatic_range = root
NOT = {
government_has_flag = government_is_herder
}
}
mpo_jamukha_flavor.0010 = {
type = character_event
title = mpo_jamukha_flavor.0010.t
desc = {
desc = mpo_jamukha_flavor.0010.desc
triggered_desc = {
trigger = {
exists = scope:togrul
}
desc = mpo_jamukha_flavor.0010.desc_togrul
}
}
theme = nomads
override_background = {
reference = mpo_steppe_evening
}
left_portrait = {
character = root
animation = war_attacker
camera = camera_event_very_left
}
right_portrait = {
character = scope:temujin
animation = dismissal
camera = camera_event_very_right
}
lower_right_portrait = scope:togrul
trigger = {
character:125501 = {
has_variable = had_mpo_temujin_flavor_0001
}
is_alive = yes
is_ruler = yes
character:125501 = {
is_alive = yes
is_available = yes
}
OR = {
is_vassal_of = character:125501
is_tributary_of = character:125501
}
NOT = {
is_at_war_with = character:125501
}
}
immediate = {
save_scope_as = jamukha
character:125501 = {
save_scope_as = temujin
}
if = {
limit = {
character:303211 = {
mpo_jamukha_flavor_0010_togrul_trigger = yes
}
}
character:303211 = {
save_scope_as = togrul
}
}
else_if = {
limit = {
character:303211.house ?= {
any_house_member = {
mpo_jamukha_flavor_0010_togrul_trigger = yes
}
}
}
character:303211.house ?= {
ordered_house_member = {
order_by = current_military_strength
limit = {
mpo_jamukha_flavor_0010_togrul_trigger = yes
}
save_scope_as = togrul
}
}
}
else = {
capital_county.empire ?= {
ordered_de_jure_county_holder = {
order_by = current_military_strength
limit = {
highest_held_title_tier <= tier_duchy
mpo_jamukha_flavor_0010_togrul_trigger = yes
}
save_scope_as = togrul
}
}
}
}
#I want to leave Temujin and take Togrul as an ally
option = {
name = mpo_jamukha_flavor.0010.a
show_as_tooltip = {
mpo_jamukha_flavor_0010_jamukha_leaving_effect = yes
}
scope:temujin = {
trigger_event = mpo_temujin_flavor.0010
add_opinion = {
target = root
modifier = betrayal_opinion
opinion = -40
}
}
ai_chance = {
base = 100
}
}
#I want to stay with Temujin and be friends forever
option = {
name = mpo_jamukha_flavor.0010.b
add_character_modifier = {
modifier = jamukha_chose_loyalty_modifier
years = 5
}
scope:temujin = {
add_opinion = {
target = root
modifier = loyalty_opinion
opinion = 30
}
}
stress_impact = {
base = miniscule_stress_impact_gain
}
ai_chance = {
base = 0
}
}
on_trigger_fail = { # Jamukha becomes your rival anyways if you've migrated away
if = {
limit = {
is_independent_ruler = yes
NOT = { is_tributary_of = scope:temujin }
}
hidden_effect = {
scope:temujin = {
trigger_event = {
days = { 360 420 }
id = mpo_temujin_flavor.0020
}
}
}
}
}
}
#######################
# Temujin becomes your rival -- now you must kill him
#######################
mpo_jamukha_flavor.0020 = {
type = character_event
title = mpo_jamukha_flavor.0020.t
desc = mpo_jamukha_flavor.0020.desc
theme = nomads
override_background = {
reference = mpo_campfire_steppe
}
left_portrait = {
character = root
animation = threatening
camera = camera_event_very_left
}
right_portrait = {
character = scope:temujin
animation = aggressive_sword
outfit_tags = { nightgown }
camera = camera_event_very_right
}
window = scheme_successful_event_no_text
immediate = {
play_music_cue = "mx_cue_murder"
custom_tooltip = jamukha_temujin_no_more_positive_tt
custom_tooltip = jamukha_temujin_rivals_tt
custom_tooltip = mpo_temujin_flavor.0020.cb.tt
if = {
limit = {
current_military_strength < scope:temujin.current_military_strength
}
domicile ?= {
change_herd = {
value = scope:temujin.domicile.herd
multiply = 1.5
}
}
add_prestige = major_prestige_gain # For MAA maintenance, mainly
custom_tooltip = jamukha_gain_from_defectors_tt
}
}
option = { # You who I once called brother
name = mpo_jamukha_flavor.0020.a
reason = blood_brother
add_internal_flag = special
trigger = { has_character_flag = was_temujins_bro }
custom_tooltip = {
text = mpo_jamukha_flavor.0020.a_war_win
set_variable = temujin_jamukha_war_var
}
add_character_modifier = {
modifier = temujin_jamukha_war_modifier
years = 5
}
stress_impact = {
base = medium_stress_impact_gain
}
ai_chance = {
base = 100
}
}
option = { # Murderrrrrrr
name = mpo_jamukha_flavor.0020.b
custom_tooltip = {
text = mpo_jamukha_flavor.0020.b_murder
set_variable = {
name = temujin_jamukha_murder_var
value = scope:temujin
}
}
stress_impact = {
deceitful = massive_stress_impact_loss
sadistic = massive_stress_impact_loss
}
ai_chance = {
base = 0
}
}
option = { # I'm going to crush your skull
name = mpo_jamukha_flavor.0020.c
trigger = {
NOT = { has_relation_blood_brother = scope:jamukha }
}
add_character_modifier = {
modifier = temujin_jamukha_war_smaller_modifier
years = 5
}
stress_impact = {
wrathful = massive_stress_impact_loss
vengeful = massive_stress_impact_loss
}
ai_chance = {
base = 100
}
}
}

File diff suppressed because it is too large Load diff

View file

@ -916,6 +916,14 @@ mpo_migration_travel_events.0050 = {
random_courtier = {
limit = {
is_eligible_courtier_0050 = yes
save_temporary_scope_as = courtier_temp_im
location = {
any_character_in_location = {
is_eligible_local_0050 = yes
can_set_relation_lover_trigger = { CHARACTER = scope:courtier_temp_im }
is_similar_age_trigger = { CHARACTER = scope:courtier_temp_im }
}
}
}
weight = {
base = 10

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -1,835 +0,0 @@
namespace = mpo_temujin_flavor
# mpo_temujin_flavor.0001 - Become Blood Brothers with Jamukha
# mpo_temujin_flavor.0010 - Jamukha stops being your vassal
# mpo_temujin_flavor.0020 - Jamukha becomes your rival
# mpo_temujin_flavor.0030 - Borte announces she's pregnant
#######################
# Become Blood Brothers with Jamukha
#######################
mpo_temujin_flavor.0001 = {
type = character_event
title = mpo_temujin_flavor.0001.t
desc = mpo_temujin_flavor.0001.desc
theme = nomads
override_background = {
reference = mpo_campfire_steppe
}
left_portrait = {
character = root
animation = aggressive_dagger
}
right_portrait = {
character = scope:jamukha
animation = celebrate_dagger
}
trigger = {
NOR = {
has_variable = had_mpo_temujin_flavor_0001
has_variable = had_mpo_temujin_flavor_0010
has_variable = had_mpo_temujin_flavor_0020
}
is_physically_able = yes
character:mpo_mongol_1 = {
is_alive = yes
is_physically_able = yes
NOR = {
has_relation_blood_brother = root
has_relation_rival = root
}
}
}
immediate = {
play_music_cue = "mx_cue_touching_moment"
set_variable = had_mpo_temujin_flavor_0001
character:mpo_mongol_1 = {
save_scope_as = jamukha
save_scope_as = blood_bro
}
}
option = { # Yay
name = mpo_temujin_flavor.0001.a
if = {
limit = {
NOR = {
has_character_flag = had_warhorse_story
any_owned_story = {
story_type = story_cycle_martial_lifestyle_warhorse
exists = var:story_cycle_horse_name
}
}
scope:jamukha = {
NOR = {
has_character_flag = had_warhorse_story
any_owned_story = {
story_type = story_cycle_martial_lifestyle_warhorse
exists = var:story_cycle_horse_name
}
}
}
}
custom_tooltip = temujin_warhorse_tt
custom_tooltip = jamukha_warhorse_tt
if = {
limit = {
scope:jamukha = {
is_ai = yes
}
}
hidden_effect = {
start_warhorse_story_cycle_effect = yes
}
}
if = {
limit = {
scope:jamukha = {
is_ai = yes
}
}
hidden_effect = {
scope:jamukha = {
start_warhorse_story_cycle_effect = yes
}
}
}
}
if = {
limit = {
scope:jamukha = {
is_ai = yes
}
}
set_relation_blood_brother = {
target = scope:jamukha
reason = blood_brother_temujin_jamukha
}
add_character_modifier = blood_brother_warrior_modifier
scope:jamukha = {
add_character_modifier = blood_brother_warrior_modifier
}
}
else = {
custom_tooltip = jamukha_choose_blood_brother_tt
save_scope_as = temujin
scope:jamukha = {
trigger_event = mpo_jamukha_flavor.0001
}
show_as_tooltip = {
add_character_modifier = blood_brother_warrior_modifier
scope:jamukha = {
add_character_modifier = blood_brother_warrior_modifier
}
}
}
custom_tooltip = blood_brother_gains_hook_tt
custom_tooltip = blood_brother_gains_hook_other_tt
stress_impact = {
gregarious = medium_stress_impact_loss
callous = medium_stress_impact_gain
}
ai_chance = {
base = 100
}
}
option = { # Not a chance
name = mpo_temujin_flavor.0001.b
add_dread = minor_dread_gain
add_prestige = minor_prestige_gain
set_variable = rejected_jamukha_var
scope:jamukha = {
add_opinion = {
target = root
modifier = insult_opinion
opinion = -25
}
}
stress_impact = {
base = minor_stress_impact_gain
callous = medium_stress_impact_loss
gregarious = medium_stress_impact_gain
}
ai_chance = {
base = 0
}
}
after = {
hidden_effect = {
scope:jamukha = {
trigger_event = {
days = { 180 360 }
id = mpo_jamukha_flavor.0010
}
}
}
}
}
#######################
# Jamukha stops being your vassal
#######################
scripted_effect mpo_temujin_flavor_0010_jamukha_leaving_effect = {
if = {
limit = { scope:jamukha = { is_vassal_of = root } }
scope:jamukha = {
create_title_and_vassal_change = {
type = independency
save_scope_as = change
add_claim_on_loss = no
}
becomes_independent = {
change = scope:change
}
resolve_title_and_vassal_change = scope:change
}
}
else = {
scope:jamukha = { end_tributary = yes }
}
add_truce_both_ways = {
character = scope:jamukha
years = 5
name = temujin_jamukha_truce
}
hidden_effect = { # This will put him closer to Temujin
scope:jamukha = {
if = {
limit = {
current_military_strength < scope:temujin.current_military_strength
}
domicile ?= {
change_herd = {
value = scope:temujin.domicile.herd
multiply = 0.5
}
}
}
}
}
if = {
limit = {
exists = scope:togrul
}
scope:jamukha = {
custom_tooltip = negotiate_togrul_alliance_effect_tooltip
create_alliance = {
target = scope:togrul
allied_through_owner = scope:jamukha
allied_through_target = scope:togrul
}
hidden_effect = {
scope:togrul = {
add_opinion = {
target = scope:jamukha
modifier = event_negotiated_alliance_opinion
}
}
}
}
}
}
mpo_temujin_flavor.0010 = {
type = character_event
title = mpo_temujin_flavor.0010.t
desc = {
desc = mpo_temujin_flavor.0010.desc.intro
first_valid = {
triggered_desc = {
trigger = { has_variable = rejected_jamukha_var }
desc = mpo_temujin_flavor.0010.desc.rejected
}
triggered_desc = {
trigger = { has_relation_blood_brother = scope:jamukha }
desc = mpo_temujin_flavor.0010.desc.blood_brothers
}
desc = mpo_temujin_flavor.0010.desc.fallback
}
}
theme = nomads
override_background = {
reference = mpo_campfire_steppe
}
left_portrait = {
character = root
animation = personality_vengeful
}
right_portrait = {
character = scope:jamukha
animation = schadenfreude
}
lower_right_portrait = scope:togrul
trigger = {
has_variable = had_mpo_temujin_flavor_0001
NOR = {
has_variable = had_mpo_temujin_flavor_0010
has_variable = had_mpo_temujin_flavor_0020
}
is_alive = yes
is_ruler = yes
character:mpo_mongol_1 = {
is_alive = yes
OR = {
is_vassal_of = root
is_tributary_of = root
}
}
}
immediate = {
set_variable = {
name = had_mpo_temujin_flavor_0010
value = character:mpo_mongol_1
}
character:mpo_mongol_1 = {
save_scope_as = jamukha
}
mpo_temujin_flavor_0010_jamukha_leaving_effect = yes
}
option = { # I will kill you
name = mpo_temujin_flavor.0010.aa
trigger = { dread >= 100 }
if = {
limit = {
has_relation_blood_brother = scope:jamukha
}
custom_tooltip = {
text = mpo_temujin_flavor.0010.aa_remove_blood_brother
remove_relation_blood_brother = scope:jamukha
}
}
scope:jamukha = {
add_dread = major_dread_loss
add_prestige = medium_prestige_loss
}
every_vassal = {
limit = {
has_vassal_stance = belligerent
is_obedient = no
}
custom = every_belligerent_vassal
add_opinion = {
modifier = obedience_opinion
target = root
}
}
every_courtier = {
limit = {
is_obedient = no
NOR = {
has_trait = brave
has_trait = compassionate
}
}
custom = every_non_brave_compassionate_courtier
add_opinion = {
modifier = obedience_opinion
target = root
}
}
stress_impact = {
gregarious = medium_stress_impact_loss
callous = medium_stress_impact_gain
}
ai_chance = {
base = 100
}
}
option = { # Look at this clown
name = mpo_temujin_flavor.0010.a
duel = {
skill = diplomacy
target = scope:jamukha
50 = { # Your people are impressed
compare_modifier = {
value = scope:duel_value
multiplier = 3.5
min = -49
}
min = 5
desc = mpo_temujin_flavor.0010.a.tt.success
send_interface_toast = {
title = mpo_temujin_flavor.0010.a.tt.success
left_icon = root
right_icon = scope:jamukha
add_prestige = medium_prestige_gain
scope:jamukha = { add_prestige = medium_prestige_loss }
}
}
50 = { # No one is impressed
compare_modifier = {
value = scope:duel_value
multiplier = -3.5
min = -49
}
min = 5
desc = mpo_temujin_flavor.0010.a.tt.failure
send_interface_toast = {
title = mpo_temujin_flavor.0010.a.tt.failure
left_icon = root
add_prestige = minor_prestige_loss
}
}
}
stress_impact = {
gregarious = medium_stress_impact_loss
callous = medium_stress_impact_gain
}
ai_chance = {
base = 100
}
}
option = { # Try to force him to stay
name = mpo_temujin_flavor.0010.b
add_dread = minor_dread_gain
scope:jamukha = {
add_opinion = {
target = root
modifier = hurt_opinion
opinion = -30
}
}
stress_impact = {
callous = medium_stress_impact_loss
gregarious = medium_stress_impact_gain
}
ai_chance = {
base = 100
}
}
option = { # Let him go
name = mpo_temujin_flavor.0010.c
scope:jamukha = {
add_opinion = {
target = root
modifier = grateful_opinion
opinion = 20
}
}
stress_impact = {
generous = medium_stress_impact_loss
callous = major_stress_impact_gain
}
ai_chance = {
base = 100
}
}
after = {
hidden_effect = {
trigger_event = {
days = { 360 420 }
id = mpo_temujin_flavor.0020
}
}
}
}
#######################
# Jamukha becomes your rival -- now you must kill him
#######################
mpo_temujin_flavor.0020 = {
type = character_event
title = mpo_temujin_flavor.0020.t
desc = {
desc = mpo_temujin_flavor.0020.desc.intro
first_valid = {
triggered_desc = {
trigger = { has_relation_blood_brother = scope:jamukha }
desc = mpo_temujin_flavor.0020.desc.blood_brothers
}
triggered_desc = {
trigger = { has_relation_friend = scope:jamukha }
desc = mpo_temujin_flavor.0020.desc.friend
}
triggered_desc = {
trigger = { has_relation_rival = scope:jamukha }
desc = mpo_temujin_flavor.0020.desc.rival
}
desc = mpo_temujin_flavor.0020.desc.fallback
}
desc = mpo_temujin_flavor.0020.desc.outro
}
theme = nomads
override_background = {
reference = mpo_campfire_steppe
}
left_portrait = {
character = root
animation = anger
outfit_tags = { nightgown }
camera = camera_event_very_left
}
right_portrait = {
character = scope:jamukha
animation = horse_conversing_left
camera = camera_event_horse_right
}
window = scheme_successful_event_no_text
trigger = {
NOT = { has_variable = had_mpo_temujin_flavor_0020 }
OR = {
has_variable = had_mpo_temujin_flavor_0010
AND = {
NOT = { has_variable = had_mpo_temujin_flavor_0010 }
character:mpo_mongol_1 = {
NOR = {
is_vassal_of = root
is_tributary = root
}
}
}
}
is_alive = yes
is_ruler = yes
character:mpo_mongol_1 = {
is_alive = yes
in_diplomatic_range = root
is_ruler = yes
}
}
immediate = {
save_scope_as = temujin
play_music_cue = "mx_cue_murder"
set_variable = {
name = had_mpo_temujin_flavor_0020
value = character:mpo_mongol_1
}
character:mpo_mongol_1 = {
save_scope_as = jamukha
}
if = {
limit = {
current_military_strength < scope:jamukha.current_military_strength
}
domicile ?= {
change_herd = {
value = scope:jamukha.domicile.herd
multiply = 1.5
}
}
add_prestige = major_prestige_gain # For MAA maintenance, mainly
custom_tooltip = temujin_gain_from_defectors_tt
}
if = {
limit = {
has_relation_blood_brother = scope:jamukha
}
scope:jamukha = {
add_character_flag = {
flag = was_temujins_bro
years = 30
}
}
}
}
option = { # You who I once called brother
name = mpo_temujin_flavor.0020.a
reason = blood_brother
add_internal_flag = special
trigger = { has_relation_blood_brother = scope:jamukha }
custom_tooltip = {
text = mpo_temujin_flavor.0020.a_war_win
set_variable = temujin_jamukha_war_var
}
add_character_modifier = {
modifier = temujin_jamukha_war_modifier
years = 5
}
stress_impact = {
base = medium_stress_impact_gain
}
ai_chance = {
base = 100
}
}
option = { # Murderrrrrrr
name = mpo_temujin_flavor.0020.b
custom_tooltip = {
text = mpo_temujin_flavor.0020.b_murder
set_variable = {
name = temujin_jamukha_murder_var
value = scope:jamukha
}
}
stress_impact = {
deceitful = massive_stress_impact_loss
sadistic = massive_stress_impact_loss
}
ai_chance = {
base = 0
}
}
option = { # I'm going to crush your skull
name = mpo_temujin_flavor.0020.c
trigger = {
NOT = { has_relation_blood_brother = scope:jamukha }
}
add_character_modifier = {
modifier = temujin_jamukha_war_smaller_modifier
years = 5
}
stress_impact = {
wrathful = massive_stress_impact_loss
vengeful = massive_stress_impact_loss
}
ai_chance = {
base = 100
}
}
after = {
if = { # Remove hooks
limit = {
scope:jamukha = {
has_hook = root
}
}
scope:jamukha = { remove_hook = { target = root } }
}
if = {
limit = {
has_hook = scope:jamukha
}
remove_hook = { target = scope:jamukha }
}
if = { # Remove Truce
limit = {
any_truce_target = { this = scope:jamukha }
}
cancel_truce_both_ways = scope:jamukha
}
custom_tooltip = mpo_temujin_flavor.0020.jamukha_gok_requirement
if = {
limit = { has_relation_blood_brother = scope:jamukha }
custom_tooltip = {
text = mpo_temujin_flavor.0010.aa_remove_blood_brother
remove_relation_blood_brother = scope:jamukha
}
}
else_if = {
limit = { has_relation_friend = scope:jamukha }
custom_tooltip = {
text = mpo_temujin_flavor.0020.remove_friend
remove_relation_friend = scope:jamukha
}
}
if = {
limit = { NOT = { has_relation_rival = scope:jamukha } }
set_relation_rival = {
target = scope:jamukha
reason = rival_temujin_jamukha
}
}
else_if = {
limit = { has_relation_rival = scope:jamukha }
set_relation_nemesis = {
target = scope:jamukha
reason = rival_temujin_jamukha
}
}
else = {
add_opinion = {
target = root
modifier = hate_opinion
opinion = -100
}
}
custom_tooltip = {
text = mpo_temujin_flavor.0020.cb.tt
add_to_variable_list = {
name = retaliation_cb_var_list
target = scope:jamukha
}
scope:jamukha = {
add_to_variable_list = {
name = retaliation_cb_var_list
target = root
}
}
}
scope:jamukha = {
trigger_event = mpo_jamukha_flavor.0020
}
}
}
#######################
# Borte announces she's pregnant
#######################
mpo_temujin_flavor.0030 = {
type = character_event
title = mpo_temujin_flavor.0030.t
desc = mpo_temujin_flavor.0030.desc
theme = pregnancy
left_portrait = {
character = root
animation = anger
}
right_portrait = {
character = scope:borte
animation = worry
}
lower_right_portrait = scope:mergid
trigger = {
NOT = { has_variable = had_mpo_temujin_flavor_0030 } # To make sure it triggers even if you migrate straight away and lose the event time window
character:172004 = {
is_alive = yes
is_spouse_of = root
is_pregnant = no
}
any_neighboring_top_liege_realm_owner = {
NOT = { has_relation_rival = root }
}
}
immediate = {
play_music_cue = "mx_cue_personal_negative"
set_variable = had_mpo_temujin_flavor_0030
character:172004 = {
save_scope_as = borte
}
if = {
limit = {
character:303116 = {
is_alive = yes
NOT = { has_relation_rival = root }
}
}
character:303116 = {
save_scope_as = mergid
}
}
else_if = {
limit = {
any_ruler = {
dynasty = dynasty:2001144
NOT = { has_relation_rival = root }
}
}
random_ruler = {
limit = {
dynasty = dynasty:2001144
NOT = { has_relation_rival = root }
}
save_scope_as = mergid
}
}
else = {
random_neighboring_top_liege_realm_owner = {
limit = { NOT = { has_relation_rival = root } }
save_scope_as = mergid
}
}
scope:borte = {
custom_tooltip = mpo_temujin_flavor.0030.pregnancy_tt
hidden_effect = {
make_pregnant = {
father = scope:mergid
}
}
set_variable = borte_first_child_var
}
}
option = { # I hate those guys
name = mpo_temujin_flavor.0030.a
set_relation_rival = {
target = scope:mergid
reason = rival_temujin_mergid
}
custom_tooltip = {
text = mpo_temujin_flavor.0030.a.tt
add_to_variable_list = {
name = retaliation_cb_var_list
target = scope:mergid
}
}
add_dread = medium_dread_gain
stress_impact = {
vengeful = major_stress_impact_loss
compassionate = medium_stress_impact_gain
}
ai_chance = {
base = 0 # To prevent AI Temüjin from being murdered immediately
}
}
option = { # Let's forget about that, you are more important
name = mpo_temujin_flavor.0030.b
if = {
limit = {
NOT = { has_relation_lover = scope:borte }
}
set_relation_lover = {
target = scope:borte
reason = lover_temujin_borte
}
}
else = {
scope:borte = {
add_opinion = {
target = root
modifier = grateful_opinion
opinion = 20
}
}
}
set_relation_wedding_very_good_fertility = scope:borte
stress_impact = {
compassionate = major_stress_impact_loss
vengeful = medium_stress_impact_gain
}
ai_chance = {
base = 100
}
}
option = { # I could not care less
name = mpo_temujin_flavor.0030.c
scope:borte = {
add_opinion = {
target = root
modifier = upset_opinion
opinion = -25
}
}
stress_impact = {
callous = major_stress_impact_loss
compassionate = major_stress_impact_gain
vengeful = major_stress_impact_gain
}
ai_chance = {
base = 0
}
}
}