crash fixed

This commit is contained in:
Magpie490 2025-10-30 10:25:39 +00:00
parent 0db68fc164
commit 908308c1b9
3 changed files with 1543 additions and 0 deletions

View file

@ -0,0 +1,880 @@
should_use_tribal_realm_palace_graphics_trigger = {
government_has_flag = government_is_tribal
culture = {
has_graphical_india_culture_group_trigger = no
has_graphical_mena_culture_group_trigger = no
has_graphical_steppe_culture_group_trigger = no
has_graphical_african_culture_group_trigger = no
}
}
has_graphical_mena_culture_group_trigger = {
has_building_gfx = mena_building_gfx
}
has_graphical_india_culture_group_trigger = {
OR = {
has_building_gfx = indian_building_gfx
has_building_gfx = southeast_asian_building_gfx
}
}
has_graphical_east_asia_culture_group_trigger = {
OR = {
has_building_gfx = chinese_building_gfx
has_building_gfx = japanese_building_gfx
}
}
has_graphical_east_asia_or_southeast_asia_group_trigger = {
OR = {
has_building_gfx = chinese_building_gfx
has_building_gfx = japanese_building_gfx
has_building_gfx = southeast_asian_building_gfx
}
}
has_graphical_mediterranean_culture_group_trigger = {
OR = {
has_building_gfx = mediterranean_building_gfx
has_building_gfx = byzantine_building_gfx
}
}
has_graphical_western_culture_group_trigger = {
has_building_gfx = western_building_gfx
}
has_graphical_norse_culture_group_trigger = {
has_building_gfx = norse_building_gfx
}
has_graphical_african_culture_group_trigger = {
has_building_gfx = african_building_gfx
}
has_graphical_steppe_culture_group_trigger = {
has_building_gfx = steppe_building_gfx
}
has_graphical_iberian_culture_group_trigger = {
has_building_gfx = iberian_building_gfx
}
has_graphical_iranian_culture_group_trigger = {
has_building_gfx = iranian_building_gfx
}
has_graphical_chinese_culture_group_trigger = {
has_building_gfx = chinese_building_gfx
}
has_graphical_japanese_culture_group_trigger = {
has_building_gfx = japanese_building_gfx
}
graphical_wilderness_desert_trigger = {
OR = {
terrain = desert
terrain = desert_mountains
terrain = oasis
AND = {
terrain = hills
OR = {
geographical_region = world_africa
geographical_region = world_middle_east_arabia
}
}
}
}
graphical_wilderness_forest_pine_trigger = {
OR = {
terrain = taiga
AND = {
terrain = forest
OR = {
geographical_region = world_europe_north
geographical_region = world_steppe
}
}
}
}
graphical_wilderness_forest_trigger = {
OR = {
terrain = forest
terrain = farmlands
}
}
graphical_wilderness_mountains_trigger = {
terrain = mountains
}
graphical_wilderness_steppe_trigger = {
OR = {
terrain = steppe
AND = {
terrain = hills
OR = {
geographical_region = world_steppe
geographical_region = world_middle_east_persia
geographical_region = world_middle_east_jerusalem
}
}
}
}
graphical_drylands_trigger = {
terrain = drylands
}
graphical_wilderness_wetlands_trigger = {
OR = {
terrain = wetlands
terrain = floodplains
}
}
graphical_wilderness_jungle_trigger = {
OR = {
terrain = jungle
AND = {
terrain = hills
geographical_region = graphical_india
NOT = { geographical_region = world_tibet }
}
}
}
graphical_plains_trigger = {
terrain = plains
}
graphical_wilderness_ocean_trigger = {
is_sea_province = yes
}
graphical_hills_trigger = {
terrain = hills
}
### Scripted illustrations
# This doesn't really evaluate anything, it just saves the scope out for later things to use
title_illustration_save_province_temporary = {
trigger_if = {
limit = { tier = tier_barony }
title_province = {
save_temporary_scope_as = province
}
}
trigger_else_if = {
limit = {
tier > tier_county
NOT = {
any_in_de_jure_hierarchy = { tier = tier_county }
}
}
}
trigger_else = {
title_capital_county.title_province = {
save_temporary_scope_as = province
}
}
always = yes
}
#has_indian_culture_trigger = {
has_graphical_india_region_trigger = {
trigger_if = {
limit = {
exists = capital_province
}
capital_province = {
geographical_region = graphical_india
}
}
trigger_else_if = {
limit = {
NOT = { exists = capital_province }
}
trigger_if = {
limit = { exists = host.capital_province }
host.capital_province = {
geographical_region = graphical_india
}
}
trigger_else_if = {
limit = {
exists = liege.capital_province
}
liege.capital_province = {
geographical_region = graphical_india
}
}
trigger_else_if = {
limit = {
exists = location.province_owner.capital_province
}
location.province_owner.capital_province = {
geographical_region = graphical_india
}
}
trigger_else = { always = yes }
}
trigger_else = { always = yes }
}
has_graphical_east_asia_region_trigger = {
trigger_if = {
limit = {
exists = capital_province
}
capital_province = {
OR = {
geographical_region = graphical_east_asia
geographical_region = world_steppe_east
}
}
}
trigger_else_if = {
limit = {
NOT = { exists = capital_province }
}
trigger_if = {
limit = { exists = host.capital_province }
host.capital_province = {
OR = {
geographical_region = graphical_east_asia
geographical_region = world_steppe_east
}
}
}
trigger_else_if = {
limit = {
exists = liege.capital_province
}
liege.capital_province = {
OR = {
geographical_region = graphical_east_asia
geographical_region = world_steppe_east
}
}
}
trigger_else_if = {
limit = {
exists = location.province_owner.capital_province
}
location.province_owner.capital_province = {
OR = {
geographical_region = graphical_east_asia
geographical_region = world_steppe_east
}
}
}
trigger_else = { always = yes }
}
trigger_else = { always = yes }
}
#has_mediterranean_culture_trigger = {
has_graphical_mediterranean_region_trigger = {
trigger_if = {
limit = {
exists = capital_province
}
capital_province = {
geographical_region = graphical_mediterranean
}
}
trigger_else_if = {
limit = {
NOT = { exists = capital_province }
}
trigger_if = {
limit = { exists = host.capital_province }
host.capital_province = {
geographical_region = graphical_mediterranean
}
}
trigger_else_if = {
limit = {
exists = liege.capital_province
}
liege.capital_province = {
geographical_region = graphical_mediterranean
}
}
trigger_else_if = {
limit = {
exists = location.province_owner.capital_province
}
location.province_owner.capital_province = {
geographical_region = graphical_mediterranean
}
}
trigger_else = { always = yes }
}
trigger_else = { always = yes }
}
#has_mena_culture_trigger = {
has_graphical_mena_region_trigger = {
trigger_if = {
limit = {
exists = capital_province
}
capital_province = {
OR = {
geographical_region = graphical_mena
geographical_region = world_steppe_tarim
geographical_region = world_steppe_central
AND = {
prev = {
government_has_flag = government_is_clan
}
OR = {
geographical_region = world_steppe_west
geographical_region = world_siberia
}
}
}
}
}
trigger_else_if = {
limit = {
NOT = { exists = capital_province }
}
trigger_if = {
limit = { exists = host.capital_province }
host.capital_province = {
OR = {
geographical_region = graphical_mena
geographical_region = world_steppe_tarim
geographical_region = world_steppe_central
AND = {
province_owner = {
government_has_flag = government_is_clan
}
OR = {
geographical_region = world_steppe_west
geographical_region = world_siberia
}
}
}
}
}
trigger_else_if = {
limit = {
exists = liege.capital_province
}
liege.capital_province = {
OR = {
geographical_region = graphical_mena
geographical_region = world_steppe_tarim
geographical_region = world_steppe_central
AND = {
province_owner = {
government_has_flag = government_is_clan
}
OR = {
geographical_region = world_steppe_west
geographical_region = world_siberia
}
}
}
}
}
trigger_else_if = {
limit = {
exists = location.province_owner.capital_province
}
location.province_owner.capital_province = {
OR = {
geographical_region = graphical_mena
geographical_region = world_steppe_tarim
geographical_region = world_steppe_central
AND = {
province_owner = {
government_has_flag = government_is_clan
}
OR = {
geographical_region = world_steppe_west
geographical_region = world_siberia
}
}
}
}
}
trigger_else = { always = yes }
}
trigger_else = { always = yes }
}
has_graphical_scandinavia_region_trigger = {
trigger_if = {
limit = {
exists = capital_province
}
capital_province = {
geographical_region = world_europe_north
}
}
trigger_else_if = {
limit = {
NOT = { exists = capital_province }
}
trigger_if = {
limit = { exists = host.capital_province }
host.capital_province = {
geographical_region = world_europe_north
}
}
trigger_else_if = {
limit = {
exists = liege.capital_province
}
liege.capital_province = {
geographical_region = world_europe_north
}
}
trigger_else_if = {
limit = {
exists = location.province_owner.capital_province
}
location.province_owner.capital_province = {
geographical_region = world_europe_north
}
}
trigger_else = { always = yes }
}
trigger_else = { always = yes }
}
#has_western_culture_trigger = {
has_graphical_western_region_trigger = {
trigger_if = {
limit = {
exists = capital_province
}
capital_province = {
NOR = {
geographical_region = graphical_india
geographical_region = graphical_mediterranean
geographical_region = graphical_mena
geographical_region = world_steppe_tarim
geographical_region = world_steppe_central
geographical_region = world_steppe_east
geographical_region = world_asia
}
}
}
trigger_else_if = {
limit = {
NOT = { exists = capital_province }
}
trigger_if = {
limit = { exists = host.capital_province }
host.capital_province = {
NOR = {
geographical_region = graphical_india
geographical_region = graphical_mediterranean
geographical_region = graphical_mena
geographical_region = world_steppe_tarim
geographical_region = world_steppe_central
geographical_region = world_steppe_east
geographical_region = world_asia
}
}
}
trigger_else_if = {
limit = {
exists = liege.capital_province
}
liege.capital_province = {
NOR = {
geographical_region = graphical_india
geographical_region = graphical_mediterranean
geographical_region = graphical_mena
geographical_region = world_steppe_tarim
geographical_region = world_steppe_central
geographical_region = world_steppe_east
geographical_region = world_asia
}
}
}
trigger_else_if = {
limit = {
exists = location.province_owner.capital_province
}
location.province_owner.capital_province = {
NOR = {
geographical_region = graphical_india
geographical_region = graphical_mediterranean
geographical_region = graphical_mena
geographical_region = world_steppe_tarim
geographical_region = world_steppe_central
geographical_region = world_steppe_east
geographical_region = world_asia
}
}
}
trigger_else = { always = yes }
}
trigger_else = { always = yes }
}
#Has graphical region Iberia trigger
has_graphical_iberia_region_trigger = {
trigger_if = {
limit = {
exists = capital_province
}
capital_province = {
geographical_region = world_europe_west_iberia
}
}
trigger_else_if = {
limit = {
NOT = { exists = capital_province }
}
trigger_if = {
limit = { exists = host.capital_province }
host.capital_province = {
geographical_region = world_europe_west_iberia
}
}
trigger_else_if = {
limit = {
exists = liege.capital_province
}
liege.capital_province = {
geographical_region = world_europe_west_iberia
}
}
trigger_else_if = {
limit = {
exists = location.province_owner.capital_province
}
location.province_owner.capital_province = {
geographical_region = world_europe_west_iberia
}
}
trigger_else = { always = yes }
}
trigger_else = { always = yes }
}
#Has graphical region Iran trigger
has_graphical_iran_region_trigger = {
trigger_if = {
limit = {
exists = capital_province
}
capital_province = {
OR = {
geographical_region = world_middle_east_persia
geographical_region = world_steppe_tarim
geographical_region = world_steppe_central
}
}
}
trigger_else_if = {
limit = {
NOT = { exists = capital_province }
}
trigger_if = {
limit = { exists = host.capital_province }
host.capital_province = {
OR = {
geographical_region = world_middle_east_persia
geographical_region = world_steppe_tarim
geographical_region = world_steppe_central
}
}
}
trigger_else_if = {
limit = {
exists = liege.capital_province
}
liege.capital_province = {
OR = {
geographical_region = world_middle_east_persia
geographical_region = world_steppe_tarim
geographical_region = world_steppe_central
}
}
}
trigger_else_if = {
limit = {
exists = location.province_owner.capital_province
}
location.province_owner.capital_province = {
OR = {
geographical_region = world_middle_east_persia
geographical_region = world_steppe_tarim
geographical_region = world_steppe_central
}
}
}
trigger_else = { always = yes }
}
trigger_else = { always = yes }
}
steppe_building_gfx_use_mena_trigger = {
AND = {
culture ?= { has_building_gfx = steppe_building_gfx }
OR = {
#western steppe should only be mena if you are clan
NOR = {
geographical_region = world_steppe_west
geographical_region = world_europe
geographical_region = world_asia_minor
geographical_region = world_india
geographical_region = world_burma
geographical_region = world_tibet
geographical_region = world_asia
geographical_region = world_steppe_east
}
AND = {
faith.religion = religion:islam_religion
OR = {
geographical_region = world_steppe_west
geographical_region = world_asia_minor
}
}
}
}
}
steppe_building_gfx_use_indian_trigger = {
AND = {
culture ?= { has_building_gfx = steppe_building_gfx }
OR = {
#western steppe should only be mena if you are clan
geographical_region = world_india
geographical_region = world_burma
geographical_region = world_tibet
geographical_region = world_asia_southeast
}
}
}
steppe_building_gfx_use_mediterranean_trigger = {
AND = {
culture ?= { has_building_gfx = steppe_building_gfx }
OR = {
geographical_region = world_europe_south_east
geographical_region = world_europe_south_italy
geographical_region = world_europe_west_iberia
geographical_region = world_asia_minor
}
}
}
steppe_building_gfx_use_iranian_trigger = {
AND = {
OR = {
geographical_region = world_steppe_central
geographical_region = world_middle_east_persia
}
culture ?= { has_building_gfx = steppe_building_gfx }
}
}
steppe_building_gfx_use_western_trigger = {
AND = {
OR = {
geographical_region = world_europe_north
geographical_region = world_europe_west
}
culture ?= { has_building_gfx = steppe_building_gfx }
}
}
steppe_building_gfx_use_east_asian_trigger = {
AND = {
culture ?= { has_building_gfx = steppe_building_gfx }
OR = {
geographical_region = world_asia
geographical_region = world_steppe_east
}
NOT = { geographical_region = world_asia_southeast }
}
}
steppe_building_gfx_use_japanese_trigger = {
AND = {
culture ?= { has_building_gfx = steppe_building_gfx }
geographical_region = world_asia_japan
}
}
steppe_building_gfx_use_southeast_asian_trigger = {
AND = {
culture ?= { has_building_gfx = steppe_building_gfx }
geographical_region = world_asia_southeast
}
}
high_tier_throne_room_trigger = {
OR = {
AND = {
tgp_is_ceremonial_regent_trigger = no # Not 'actual' ruler
primary_title ?= { tier >= tier_kingdom }
}
tgp_is_ceremonial_liege_trigger = yes
}
has_graphical_$REGION$_region_trigger = yes
}
high_tier_throne_room_spouse_trigger = {
OR = {
primary_spouse ?= {
high_tier_throne_room_trigger = { REGION = $REGION$ }
has_graphical_$REGION$_region_trigger = yes
}
AND = {
betrothed ?= {
high_tier_throne_room_trigger = { REGION = $REGION$ }
has_graphical_$REGION$_region_trigger = yes
}
}
AND = {
liege.diarch ?= this
liege ?= {
high_tier_throne_room_trigger = { REGION = $REGION$ }
has_graphical_$REGION$_region_trigger = yes
}
}
}
}
byzantine_governor_trigger = {
is_landed = yes
government_allows = administrative
liege ?= {
OR = {
is_roman_emperor_primary_title_trigger = yes
AND = {
culture = {
OR = {
has_cultural_pillar = heritage_byzantine
has_cultural_pillar = heritage_caucasian
}
}
primary_title.tier >= tier_empire
}
}
}
}
byzantine_governor_close_family_trigger = {
location = prev.location
is_landed = yes
government_has_flag = government_is_special_administrative
exists = top_liege
top_liege = {
OR = {
is_roman_emperor_primary_title_trigger = yes
AND = {
culture = {
OR = {
has_cultural_pillar = heritage_byzantine
has_cultural_pillar = heritage_caucasian
}
}
primary_title.tier >= tier_empire
}
}
}
}
east_asian_governor_trigger = {
is_landed = yes
government_allows = administrative
top_liege ?= {
OR = {
primary_title = title:h_china
primary_title.de_jure_liege = title:h_china
AND = {
culture_has_east_asian_heritage_pillar_trigger = yes
primary_title.tier >= tier_empire
}
}
}
}
east_asian_governor_close_family_trigger = {
location = prev.location
is_landed = yes
government_has_flag = government_is_special_administrative
top_liege ?= {
OR = {
primary_title = title:h_china
primary_title.de_jure_liege = title:h_china
AND = {
culture_has_east_asian_heritage_pillar_trigger = yes
primary_title.tier >= tier_empire
}
}
}
}
has_graphical_chinese_region_trigger = {
trigger_if = {
limit = { exists = capital_province }
capital_province = { geographical_region = world_asia_china }
}
trigger_else_if = {
limit = { exists = host.capital_province }
host.capital_province = { geographical_region = world_asia_china }
}
trigger_else_if = {
limit = { exists = liege.capital_province }
liege.capital_province = { geographical_region = world_asia_china }
}
trigger_else_if = {
limit = { exists = location.province_owner.capital_province }
location.province_owner.capital_province = { geographical_region = world_asia_china }
}
trigger_else = { always = yes }
}
has_graphical_japanese_region_trigger = {
trigger_if = {
limit = { exists = capital_province }
capital_province = { geographical_region = world_asia_japan }
}
trigger_else_if = {
limit = { exists = host.capital_province }
host.capital_province = { geographical_region = world_asia_japan }
}
trigger_else_if = {
limit = { exists = liege.capital_province }
liege.capital_province = { geographical_region = world_asia_japan }
}
trigger_else_if = {
limit = { exists = location.province_owner.capital_province }
location.province_owner.capital_province = { geographical_region = world_asia_japan }
}
trigger_else = { always = yes }
}
has_graphical_korean_region_trigger = {
trigger_if = {
limit = { exists = capital_province }
capital_province = { geographical_region = world_asia_korea }
}
trigger_else_if = {
limit = { exists = host.capital_province }
host.capital_province = { geographical_region = world_asia_korea }
}
trigger_else_if = {
limit = { exists = liege.capital_province }
liege.capital_province = { geographical_region = world_asia_korea }
}
trigger_else_if = {
limit = { exists = location.province_owner.capital_province }
location.province_owner.capital_province = { geographical_region = world_asia_korea }
}
trigger_else = { always = yes }
}

View file

@ -0,0 +1,160 @@

#########################
# Triggers for Titles
#########################
# has_mythical_founder_trigger - Does the title have a mythical or semi-mythical founder?
has_mythical_founder_trigger = {
OR = {
AND = { # Charles Martell (?)
OR = {
this = title:k_france
this = title:e_france
}
current_date > 1000.1.1
}
OR = { # Alexander
this = title:k_thessalonika
this = title:k_hellas
this = title:k_egypt
AND = {
OR = {
this = title:k_persia
this = title:e_persia
}
NOR = {
root.faith.religion = religion:islam_religion
root.faith.religion = religion:zoroastrianism_religion
}
}
this = title:k_anatolia
}
this = title:k_poland # Lech
this = title:k_bohemia # Czech
OR = { # Rus
this = title:k_white_rus
this = title:k_ruthenia
this = title:e_russia
}
OR = { # Arthur
this = title:k_england
this = title:e_britannia
}
AND = {
OR = { # Belisarius
this = title:k_italy
this = title:k_romagna
this = title:k_sardinia
this = title:k_naples
this = title:e_italy
}
root.faith = faith:orthodox
}
OR = { # Romulus
this = title:k_italy
this = title:k_romagna
this = title:k_sardinia
this = title:e_italy
this = title:h_roman_empire
this = title:h_eastern_roman_empire
}
OR = { # Ardashir
this = title:k_persia
this = title:e_persia
}
AND = { # Pharaohs
this = title:k_egypt
NOT = { root.faith.religion = religion:islam_religion }
}
AND = { # Visigothic Kings
OR = {
this = title:k_castille
this = title:k_aragon
this = title:k_navarra
this = title:k_andalusia
this = title:k_portugal
this = title:e_spain
}
NOT = { root.faith.religion = religion:islam_religion }
}
AND = { # Abd al-Rahman
OR = {
this = title:k_castille
this = title:k_aragon
this = title:k_navarra
this = title:k_andalusia
this = title:k_portugal
this = title:e_spain
}
root.faith.religion = religion:islam_religion
}
AND = { # Zenobia
OR = {
this = title:k_syria
this = title:k_mesopotamia
}
NOT = { root.faith.religion = religion:islam_religion }
}
}
}
has_too_many_held_duchies_trigger = {
highest_held_title_tier >= tier_kingdom
any_held_title = {
count >= 3
title_counts_towards_too_many_duchies_trigger = yes
}
}
title_counts_towards_too_many_duchies_trigger = {
tier = tier_duchy
is_titular = no
}
# this = title
# VASSAL = Vassal to check tier against
# LIEGE = Liege of vassal
title_lost_from_realm_on_foreign_ruler_succession_trigger = {
tier > $VASSAL$.highest_held_title_tier
exists = holder # Ignoring titles that will be created by confederate partition, cause that be magic and unlikely to make a warning anyway
holder = {
NOR = {
this = $LIEGE$
target_is_liege_or_above = $LIEGE$
government_has_flag = government_is_special_administrative # Ignoring because admin counts do not take it with them, but immediately resign it when they inherit a governorship
}
}
}
# Would this character ever be travelling outside of their palace walls at random for the purposes of events?
## We don't care about personality, only whether it'd be immersion breaking in principle to run into this person at random/to have an event trigger where you are randomly wandering.
character_title_allows_off_screen_wandering_trigger = {
NOR = {
# No administrative or clan emperors.
AND = {
highest_held_title_tier >= tier_empire
OR = {
government_has_flag = government_is_special_administrative
government_has_flag = government_is_clan
}
}
# No administrative kings.
AND = {
highest_held_title_tier = tier_kingdom
government_has_flag = government_is_special_administrative
}
# No religious heads.
faith.religious_head ?= this
}
}
county_held_or_vassal_to_target_trigger = {
holder ?= {
OR = {
this = $TARGET$
target_is_liege_or_above = $TARGET$
}
}
}

View file

@ -0,0 +1,503 @@
#################################################
# TRIGGER LIST #
#################################################
mpo_has_greatest_of_khans_nickname_trigger = {
OR = {
has_nickname = nick_genghis_khan
has_nickname = nick_cengiz_khan
has_nickname = nick_yekhe_khagan
has_nickname = nick_dort_yonlug_khagan
has_nickname = nick_tengri_khagan
has_nickname = nick_cihangir
has_nickname = nick_culture_khagan
}
}
mpo_has_gok_mongol_empire_trigger = {
OR = {
has_title = title:e_mongol_empire
custom_tooltip = {
text = gok_title_trigger
exists = global_var:greatest_of_khans_title
any_held_title = {
this = global_var:greatest_of_khans_title
}
}
}
}
mpo_gok_coalition_member_trigger = {
save_temporary_scope_as = foe
in_diplomatic_range = root
is_ai = yes
OR = {
is_landless_nomad = yes
is_landless_adventurer = yes
is_landed = yes
}
NOR = {
this = root
top_liege = root
is_allied_to = root
is_tributary_of_suzerain_or_above = root
top_liege = {
is_tributary_of_suzerain_or_above = root
}
has_relation_friend = root
has_relation_blood_brother = root
opinion = {
target = root
value >= 100
}
highest_held_title_tier < tier_county
government_has_flag = government_is_herder
is_imprisoned_by = root
is_obedient_to = root
}
##Only relatively strong non-nomads will mess with you
trigger_if = {
limit = {
NOT = {
government_has_flag = government_is_nomadic
}
}
OR = {
AND = {
highest_held_title_tier >= tier_duchy
sub_realm_size >= 8
}
is_confederation_member = yes
}
}
##Only house members who dislike you will oppose you
trigger_if = {
limit = {
OR = {
AND = {
exists = house
exists = root.house
house = {
this = root.house
}
}
#also those with direct alliances to root
is_allied_to = root
}
}
opinion = {
target = root
value < 0
}
}
#Lower tier rulers
trigger_if = {
limit = {
highest_held_title_tier < tier_duchy
}
OR = {
NOT = {
has_dread_level_towards = {
target = root
level >= 2
}
}
faith = {
faith_hostility_level = {
target = root.faith
value > faith_astray_level
}
}
opinion = {
target = root
value <= -40
}
is_confederation_member = yes
root = {
any_land_neighboring_realm_with_tributaries_owner = {
this = scope:foe
}
}
}
}
}
mpo_gok_submitting_coward_trigger = {
is_ai = yes
is_confederation_member = no
OR = {
is_tributary_of = root
is_tributary = no
}
is_landed = yes
highest_held_title_tier < tier_duchy
NOT = {
has_relation_rival = root
}
OR = {
is_imprisoned_by = root
government_has_flag = government_is_herder
has_relation_friend = root
AND = {
exists = root.house
house ?= root.house
NOT = {
is_in_list = anti_gok_coalition_members
}
}
opinion = {
target = root
value >= 100
}
ai_boldness <= medium_negative_ai_value
has_dread_level_towards = {
target = root
level >= 2
}
is_tributary_of = root
AND = {
exists = house
exists = root.house
house = {
this = root.house
}
opinion = {
target = root
value >= 0
}
}
}
trigger_if = {
limit = {
current_military_strength > 0
root.current_military_strength > 0
}
current_military_strength < root.current_military_strength
}
NOT = {
any_character_war = {
OR = {
primary_defender = prev
AND = {
primary_attacker = prev
primary_defender = {
top_liege = root
}
}
primary_defender = {
is_ai = no
}
}
}
}
}
mpo_war_of_defiance_notified_player_trigger = {
NOT = {
this = root
}
OR = {
top_liege = root
top_suzerain = root
any_character_situation = {
this = situation:the_great_steppe
}
any_relation = {
type = rival
this = root
}
#Those within same de jure empire
capital_county ?= {
empire = {
any_de_jure_county = {
holder.top_liege = {
this = root
}
}
}
}
capital_county ?= {
empire = {
any_de_jure_county = {
holder.top_suzerain = {
this = root
}
}
}
}
AND = {
exists = root.capital_county
realm_to_title_distance_squared = {
target = root.capital_county
value <= squared_distance_almost_massive
}
}
}
}
gok_desirable_vassal_trigger = {
OR = {
ai_boldness <= low_negative_ai_value
has_trait = loyal
is_obedient_to = scope:gok
has_any_good_relationship_with_character_trigger = { CHARACTER = scope:gok }
AND = {
exists = scope:gok.dynasty
dynasty ?= scope:gok.dynasty
}
is_allied_to = scope:gok
opinion = {
target = scope:gok
value > 20
}
#Dukes from pliant cultures are cool
AND = {
highest_held_title_tier < tier_kingdom
culture = {
OR = {
has_cultural_tradition = tradition_loyal_soldiers
has_cultural_tradition = tradition_pacifism
has_cultural_tradition = tradition_xenophilic
has_cultural_tradition = tradition_modest
has_cultural_tradition = tradition_fp2_malleable_subjects
}
}
}
trigger_if = {
limit = {
faith = scope:gok.faith
}
opinion = {
target = scope:gok
value >= -20
}
}
}
}
mpo_greatest_of_khans_0030_willing_nomad_vassal = {
OR = {
government_has_flag = government_is_nomadic
government_has_flag = government_is_herder
}
OR = {
is_obedient = yes
opinion = {
target = liege
value >= 0
}
has_dread_level_towards = {
target = liege
level >= 1
}
}
NOR = {
is_at_war_with = liege
has_trait = stubborn
culture = {
has_cultural_tradition = tradition_staunch_traditionalists
}
}
}
mpo_greatest_of_khans_0030_dominated_nomad_vassal = {
OR = {
government_has_flag = government_is_nomadic
government_has_flag = government_is_herder
}
OR = {
is_obedient = yes
opinion = {
target = liege
value >= 60
}
has_dread_level_towards = {
target = liege
level >= 2
}
}
NOR = {
is_at_war_with = liege
has_trait = stubborn
culture = {
OR ={
has_cultural_tradition = tradition_staunch_traditionalists
has_cultural_tradition = tradition_quarrelsome
has_cultural_tradition = tradition_isolationist
}
}
}
}
mpo_greatest_of_khans_0030_willing_sedentary_vassal = {
NOR = {
government_has_flag = government_is_nomadic
government_has_flag = government_is_herder
government_has_flag = government_is_theocracy
government_has_flag = government_is_landless_adventurer
}
OR = {
is_obedient = yes
opinion = {
target = liege
value >= 0
}
has_dread_level_towards = {
target = liege
level >= 1
}
}
NOR = {
is_at_war_with = liege
has_trait = stubborn
culture = {
has_cultural_tradition = tradition_staunch_traditionalists
}
}
}
mpo_greatest_of_khans_0030_dominated_sedentary_vassal = {
NOR = {
government_has_flag = government_is_nomadic
government_has_flag = government_is_herder
government_has_flag = government_is_theocracy
government_has_flag = government_is_landless_adventurer
}
OR = {
is_obedient = yes
opinion = {
target = liege
value >= 50
}
has_dread_level_towards = {
target = liege
level >= 2
}
}
NOR = {
is_at_war_with = liege
has_trait = stubborn
culture = {
has_cultural_tradition = tradition_staunch_traditionalists
}
culture = {
has_cultural_tradition = tradition_legalistic
}
}
}
gok_gov_switch_valid_vassal_trigger = {
highest_held_title_tier >= tier_county
is_landed = yes
is_ai = yes
NOT = {
is_at_war_with = root
}
NOT = {
any_liege_or_above = {
is_ai = no
NOT = {
this = root
}
}
}
NOR = {
government_has_flag = government_is_theocracy
government_has_flag = government_is_landless_adventurer
}
}
gok_willing_new_admin_vassal_trigger = {
gok_gov_switch_valid_vassal_trigger = yes
OR = {
mpo_greatest_of_khans_0030_dominated_nomad_vassal = yes
mpo_greatest_of_khans_0030_willing_sedentary_vassal = yes
culture = culture:greek
culture = {
any_parent_culture_or_above = {
this = culture:greek
}
}
culture = culture:han
culture = {
any_parent_culture_or_above = {
this = culture:han
}
}
}
NOR = {
government_has_flag = government_is_special_administrative
government_has_flag = government_is_administrative
government_has_flag = government_is_tribal
}
}
mpo_offer_submission_or_ruin_shown_actor_trigger = {
has_mpo_dlc_trigger = yes
is_landed = yes
any_owned_story = {
OR = {
story_type = story_greatest_of_khans
story_type = story_mongol_invasion
}
}
}
mpo_offer_submission_or_ruin_shown_recipient_trigger = {
NOT = { this = scope:actor }
is_landed = yes
NOT = { government_has_flag = cannot_be_vassal_or_liege }
}
mpo_offer_submission_or_ruin_valid_actor_trigger = {
prestige_level >= 1
trigger_if = {
limit = {
exists = scope:recipient
}
custom_description = {
text = truce_on_recipient_tt
NOT = {
any_truce_target = {
this = scope:recipient
}
}
}
}
}
mpo_offer_submission_or_ruin_valid_recipient_trigger = {
is_independent_ruler = yes
NOT = {
is_at_war_with = scope:actor
}
custom_description = {
text = was_recently_granted_independence
NOT = {
has_opinion_modifier = {
modifier = granted_independence_opinion
target = scope:actor
}
}
}
custom_description = {
text = not_recently_offered_submission
NOT = {
has_character_flag = accepted_gok_submission
}
}
}
#Basically just checking they are tribal (and shouldn't provide siege) or have a unique maa that's interesting to have
#I think this will balance how much siege vs. military strength AI take as GoK
mpo_gok_auto_cultural_maa_trigger = {
OR = {
government_has_flag = government_is_tribal
government_has_flag = government_is_nomadic
culture = {
OR = {
culture_has_archer_cavalry_maa = yes
has_cultural_parameter = unlock_maa_cataphract_archers
}
}
}
}