N3OW/events/mpo_misc.txt

540 lines
14 KiB
Text
Raw Normal View History

2025-12-16 13:42:24 +00:00
namespace = mpo_misc
scripted_effect leave_behind_heritage_culture_effect = {
# First, check if there's a previous culture who used to be here. We want them first.
# It's immersive to see previous cultures come back, but we don't want accidental erasure of Mongolic/Turkic heritage.
# So we only care about the previous culture if it shares the 'core heritage' of the Steppe Region they're in.
# Mongolic heritage in the east, turkic in the center and west, etc.
if = {
limit = {
scope:old_capital_county.var:migration_previous_culture ?= {
has_same_culture_heritage = $CULTURE$
}
}
scope:old_capital_county.holder = {
set_culture = scope:old_capital_county.var:migration_previous_culture
}
# If cultures are large, divergent cultures are more interesting and immersive than mega-blobs.
scope:old_capital_county.var:migration_previous_culture = {
if = {
limit = {
any_culture_county = { count >= 20 }
}
save_scope_as = large_divergence_chance
}
}
}
else_if = {
limit = {
scope:old_holder.domicile.domicile_culture ?= {
has_same_culture_heritage = $CULTURE$
}
}
scope:old_capital_county.holder = {
set_culture = scope:old_holder.domicile.domicile_culture
}
# If cultures are large, divergent cultures are more interesting and immersive than mega-blobs.
scope:old_holder.domicile.domicile_culture = {
if = {
limit = {
any_culture_county = { count >= 20 }
}
save_scope_as = large_divergence_chance
}
}
}
else = {
scope:old_capital_county.holder = {
set_culture = $CULTURE$
}
$CULTURE$ = {
if = {
limit = {
any_culture_county = { count >= 20 }
}
save_scope_as = large_divergence_chance
}
else = {
save_scope_as = small_divergence_chance
}
}
}
}
mpo_misc.0001 = {
type = character_event
hidden = yes
trigger = {
scope:old_capital_county.holder = {
government_has_flag = government_is_herder
}
}
immediate = {
# Eastern Steppe: Mongolic Heritage (Mongol)
if = {
limit = {
scope:old_capital_county.title_province = {
geographical_region = world_steppe_east
}
}
leave_behind_heritage_culture_effect = { CULTURE = culture:mongol }
}
# Western Siberian Steppe: Turkic Heritage (Kirghiz)
else_if = {
limit = {
scope:old_capital_county.title_province = {
geographical_region = dlc_mpo_steppe_central_siberia_addon
}
}
leave_behind_heritage_culture_effect = { CULTURE = culture:kirghiz }
}
# Central Steppe North: Turkic Heritage (Kipchak)
else_if = {
limit = {
scope:old_capital_county.title_province = {
geographical_region = world_steppe_central
}
}
leave_behind_heritage_culture_effect = { CULTURE = culture:kipchak }
}
# Central Steppe South: Turkic Heritage (Oghuz)
else_if = {
limit = {
scope:old_capital_county.title_province = {
geographical_region = heritage_area_turkestan
}
}
leave_behind_heritage_culture_effect = { CULTURE = culture:turkish }
}
# Kirghiz 1066 Eastern Steppe Homelands: Turkic Heritage (Kirghiz)
else_if = {
limit = {
scope:old_capital_county.title_province = {
geographical_region = kirghiz_homelands
}
}
leave_behind_heritage_culture_effect = { CULTURE = culture:kirghiz }
}
# Eastern Siberian Steppe: Mongol Heritage (Buryat)
else_if = {
limit = {
scope:old_capital_county.title_province = {
geographical_region = dlc_mpo_steppe_east_buryatia_addon
}
}
leave_behind_heritage_culture_effect = { CULTURE = culture:buryat }
}
# Perm: Ugro Permian Heritage (Permian)
else_if = {
limit = {
scope:old_capital_county.title_province = {
geographical_region = heritage_area_perm
}
}
leave_behind_heritage_culture_effect = { CULTURE = culture:komi }
}
# Sibir: Ugro Permian Heritage (Ostyak)
else_if = {
limit = {
scope:old_capital_county.title_province = {
geographical_region = dlc_mpo_steppe_siberia_further_expansion
}
}
leave_behind_heritage_culture_effect = { CULTURE = culture:khanty }
}
# Khorasan: Iranian Heritage (Tajik)
else_if = {
limit = {
scope:old_capital_county.title_province = {
geographical_region = world_khorasan
}
}
leave_behind_heritage_culture_effect = { CULTURE = culture:tajik }
}
# Persia: Iranian Heritage (Tajik)
else_if = {
limit = {
scope:old_capital_county.title_province = {
geographical_region = dlc_mpo_steppe_persia_expansion
}
}
leave_behind_heritage_culture_effect = { CULTURE = culture:tajik }
}
# Nubia: East African Heritage (Beja)
else_if = {
limit = {
scope:old_capital_county.title_province = {
geographical_region = nubia_nomad_area
}
}
leave_behind_heritage_culture_effect = { CULTURE = culture:beja }
}
# Horn of Africa: Horn African Heritage (Somali)
else_if = {
limit = {
scope:old_capital_county.title_province = {
geographical_region = horn_of_africa_nomad_area
}
}
leave_behind_heritage_culture_effect = { CULTURE = culture:somali }
}
# Volga Bulgaria: Turkic Heritage (Bolghar)
else_if = {
limit = {
scope:old_capital_county.title_province = {
geographical_region = heritage_area_volga_bulgaria
}
}
leave_behind_heritage_culture_effect = { CULTURE = culture:bolghar }
}
# Pontic Steppe: Turkic Heritage (Cuman)
else_if = {
limit = {
scope:old_capital_county.title_province = {
geographical_region = heritage_area_pontic_steppe
}
}
leave_behind_heritage_culture_effect = { CULTURE = culture:cuman }
}
# Balkans: Turkic Heritage (Pecheneg)
else_if = {
limit = {
scope:old_capital_county.title_province = {
geographical_region = custom_eastern_balkans
}
}
leave_behind_heritage_culture_effect = { CULTURE = culture:pecheneg }
}
# Balkans: Turkic Heritage (Bolghar)
else_if = {
limit = {
scope:old_capital_county.title_province = {
geographical_region = ghw_region_northern_russia
}
}
leave_behind_heritage_culture_effect = { CULTURE = culture:bolghar }
}
# Poland: Turkic Heritage (Cuman)
else_if = {
limit = {
scope:old_capital_county.title_province = {
geographical_region = ghw_region_poland
}
}
leave_behind_heritage_culture_effect = { CULTURE = culture:cuman }
}
# Southern Russia: Turkic Heritage (Cuman)
else_if = {
limit = {
scope:old_capital_county.title_province = {
geographical_region = ghw_region_southern_russia
}
}
leave_behind_heritage_culture_effect = { CULTURE = culture:cuman }
}
# Northern Russia: Turkic Heritage (Bolghar)
else_if = {
limit = {
scope:old_capital_county.title_province = {
geographical_region = ghw_region_southern_russia
}
}
leave_behind_heritage_culture_effect = { CULTURE = culture:bolghar }
}
# Baltic: Turkic Heritage (Bolghar)
else_if = {
limit = {
scope:old_capital_county.title_province = {
geographical_region = ghw_region_baltic
}
}
leave_behind_heritage_culture_effect = { CULTURE = culture:bolghar }
}
# Hungary: Magyar Heritage (Mogyer)
else_if = {
limit = {
scope:old_capital_county.title_province = {
geographical_region = custom_hungary
}
}
leave_behind_heritage_culture_effect = { CULTURE = culture:mogyer }
}
# Tarim Basin: Turkic Heritage (Uyghur)
else_if = {
limit = {
scope:old_capital_county.title_province = {
geographical_region = world_steppe_tarim
}
}
leave_behind_heritage_culture_effect = { CULTURE = culture:uyghur }
}
# Africa: Berber Heritage (Butr)
else_if = {
limit = {
scope:old_capital_county.title_province = {
geographical_region = world_africa
}
}
leave_behind_heritage_culture_effect = { CULTURE = culture:butr }
}
# Scandinavia: Sami Heritage (Sami)
else_if = {
limit = {
scope:old_capital_county.title_province = {
geographical_region = world_europe_north
}
}
leave_behind_heritage_culture_effect = { CULTURE = culture:sami }
}
# Middle East: Arab Heritage (Bedouin)
else_if = {
limit = {
scope:old_capital_county.title_province = {
geographical_region = world_middle_east
}
}
leave_behind_heritage_culture_effect = { CULTURE = culture:bedouin }
}
# Horn of Africa: Somali Heritage (Somali)
else_if = {
limit = {
scope:old_capital_county.title_province = {
geographical_region = horn_of_africa_nomad_area
}
}
leave_behind_heritage_culture_effect = { CULTURE = culture:somali }
}
# Nubia: Beja Heritage (Beja)
else_if = {
limit = {
scope:old_capital_county.title_province = {
geographical_region = nubia_nomad_area
}
}
leave_behind_heritage_culture_effect = { CULTURE = culture:beja }
}
# Karelia: Balto-Finnic Heritage (Karelian)
else_if = {
limit = {
scope:old_capital_county.title_province = {
geographical_region = karelia_nomad_area
}
}
leave_behind_heritage_culture_effect = { CULTURE = culture:karelian }
}
else_if = {
limit = {
scope:old_capital_county.title_province = {
geographical_region = world_asia_shiwei_steppe
}
}
leave_behind_heritage_culture_effect = { CULTURE = culture:shiwei }
}
else_if = {
limit = {
scope:old_capital_county.title_province = {
geographical_region = world_asia_khitan_steppe
}
}
leave_behind_heritage_culture_effect = { CULTURE = culture:khitan }
}
else_if = {
limit = {
scope:old_capital_county.title_province = {
geographical_region = dlc_mpo_steppe_east_buryatia_addon
}
}
leave_behind_heritage_culture_effect = { CULTURE = culture:buryat }
}
else_if = {
limit = {
scope:old_capital_county.title_province = {
geographical_region = dlc_mpo_steppe_east_andong_addon
}
}
leave_behind_heritage_culture_effect = { CULTURE = culture:jurchen }
}
# Everything Else: Turkic Heritage (Oghuz)
else = {
leave_behind_heritage_culture_effect = { CULTURE = culture:turkish }
}
# Divergences are interesting, and the steppe is the perfect place for them.
# But avoid tiny, tiny divergences of less than 3 Counties.
if = {
limit = {
exists = scope:large_divergence_chance
any_in_list = {
list = old_held_titles
count >= 3
}
}
random = {
chance = 0 #50 - disabled for now until we know if it feels good
scope:old_capital_county.holder = {
add_character_flag = suppress_culture_notifications_and_achievements
create_divergent_culture = yes
remove_character_flag = suppress_culture_notifications_and_achievements
}
}
}
else_if = {
limit = {
exists = scope:small_divergence_chance
any_in_list = {
list = old_held_titles
count >= 3
}
}
random = {
chance = 0 #10 - disabled for now until we know if it feels good
scope:old_capital_county.holder = {
add_character_flag = suppress_culture_notifications_and_achievements
create_divergent_culture = yes
remove_character_flag = suppress_culture_notifications_and_achievements
}
}
}
every_in_list = {
list = old_held_titles
limit = {
NOT = { culture = scope:old_capital_county.holder.culture }
}
set_county_culture = scope:old_capital_county.holder.culture
if = {
limit = {
holder ?= {
government_has_flag = government_is_herder
}
}
holder = {
set_culture = scope:old_capital_county.holder.culture
}
}
}
}
}
mpo_misc.0002 = {
scope = none
hidden = yes
orphan = yes
trigger = {
has_mpo_dlc_trigger = yes
}
immediate = {
every_independent_ruler = {
if = {
limit = {
is_ai = yes
government_has_flag = government_is_nomadic
is_at_war = no
save_temporary_scope_as = nomad_capital_ruler
primary_title.tier = tier_county
domain_size > domain_limit
this = top_liege
any_held_title = {
tier = tier_county
is_landless_type_title = no
this != scope:nomad_capital_ruler.capital_county
OR = {
any_neighboring_county = {
holder.top_liege != scope:nomad_capital_ruler.top_liege
}
is_coastal_county = yes
}
}
}
save_scope_as = nomad_capital_ruler
random_held_title = {
limit = {
tier = tier_county
is_landless_type_title = no
this != scope:nomad_capital_ruler.capital_county
OR = {
any_neighboring_county = {
holder.top_liege != scope:nomad_capital_ruler.top_liege
}
is_coastal_county = yes
}
NOT = {
any_neighboring_county = {
this = scope:nomad_capital_ruler.capital_county
}
}
}
alternative_limit = {
tier = tier_county
is_landless_type_title = no
this != scope:nomad_capital_ruler.capital_county
OR = {
any_neighboring_county = {
holder.top_liege != scope:nomad_capital_ruler.top_liege
}
is_coastal_county = yes
}
}
weight = {
base = 100
modifier = { #Less likely to pick someone you actively dislike
add = {
value = county_fertility
multiply = -1
}
uses_county_fertility = yes
}
}
save_scope_as = title_to_abandon
}
create_character = {
template = herder_character
dynasty = none
location = scope:nomad_capital_ruler.location
save_scope_as = new_herder
}
scope:title_to_abandon = {
create_title_and_vassal_change = {
type = granted
save_scope_as = change
add_claim_on_loss = no
}
change_title_holder_include_vassals = {
holder = scope:new_herder
change = scope:change
}
resolve_title_and_vassal_change = scope:change
if = {
limit = {
title_province = {
has_holding_type = nomad_holding
}
}
title_province = {
set_holding_type = herder_holding
}
}
}
scope:new_herder = {
change_government = herder_government
every_held_title = {
limit = {
is_landless_type_title = yes
}
scope:new_herder = { destroy_title = prev }
}
}
start_tributary_interaction_effect = {
TRIBUTARY = scope:new_herder
SUZERAIN = scope:nomad_capital_ruler
}
scope:nomad_capital_ruler = {
add_prestige = minor_prestige_loss
}
}
}
}
}