diff --git a/common/on_action/title_on_actions.txt b/common/on_action/title_on_actions.txt deleted file mode 100644 index b712a3a8..00000000 --- a/common/on_action/title_on_actions.txt +++ /dev/null @@ -1,4446 +0,0 @@ -#On actions about titles - -# All on-actions in this file provide scope:transfer_type unless otherwise noted -# scope:transfer_type has the following permutations: -# flag:conquest -# flag:conquest_holy_war -# flag:conquest_claim -# flag:conquest_populist -# flag:inheritance -# flag:abdication -# flag:destroyed -# flag:created -# flag:usurped -# flag:granted -# flag:revoked -# flag:election -# flag:independency -# flag:returned -# flag:leased_out -# flag:lease_revoked -# flag:faction_demand -# flag:swear_fealty -# flag:stepped_down - -# A title is destroyed -# root = the holder before destruction -# scope:landed_title = the title that is being destroyed -# Does *not* provide scope:transfer_type -on_title_destroyed = { - effect = { - # Adjust the size of the laamps tally. - else_if = { - limit = { - # Pre-filter out anything higher or lower. - scope:landed_title = { tier = tier_duchy } - has_global_variable_list = laamps_tally - } - # We don't need to check the list twice, since if they're not in it then removing them from it won't do anything. - remove_list_global_variable = { - name = laamps_tally - target = scope:landed_title - } - } - #Notify folks the latin empire has fallen - else_if = { - limit = { scope:landed_title = title:e_latin_empire } - frankokratia_latin_emp_end_msg_effect = yes - } - #Create byz collapse variable that defines anarchy period - else_if = { - limit = { - scope:landed_title = { - this = title:e_byzantium - } - } - if = { - limit = { - exists = global_var:byz_collapse_counter - } - remove_global_variable = byz_collapse_counter - } - set_global_variable = { - name = byz_collapse_counter - value = { - value = current_year - add = 100 - } - } - # Silk Road prosperity gets hit if Byzantium dies - tgp_silk_road_byzantium_destroyed_effect = yes - } - else_if = { - limit = { - scope:landed_title = title:h_china - } - situation:dynastic_cycle ?= { - if = { - limit = { - situation_top_has_catalyst = catalyst_hegemon_lost_mandate_of_heaven - } - trigger_situation_catalyst = { - catalyst = catalyst_hegemon_lost_mandate_of_heaven - character = root - } - } - } - every_vassal = { - # Because a change in liege isn't triggered when the title being destroyed - if = { - limit = { - government_has_flag = government_is_celestial - highest_held_title_tier >= tier_kingdom - primary_title = { - has_custom_title_name = no - } - tgp_capital_not_in_chinese_naming_region = no - } - if = { - limit = { - is_ai = no - } - trigger_event = { - id = tgp_dynastic_cycle.9000 - days = 1 # so the player gets to choose first - } - } - else = { - trigger_event = { - id = tgp_dynastic_cycle.9000 - days = 2 - } - } - } - } - title:h_china = { - reset_title_name = yes - } - } - else_if = { # Danelaw-England partition calc. - limit = { - # Partition must be active. - exists = global_var:partition_active_danelaw - # And the destroyed title must be one of the two partitioned entities. - OR = { - scope:landed_title = title:k_england - scope:landed_title = title:k_danelaw - } - } - # If k_england has been destroyed, set k_danelaw as the de jure inheritor. - if = { - limit = { scope:landed_title = title:k_england } - title:k_danelaw = { save_scope_as = partition_winner } - # Try to grab the old holder for down the line. - if = { - limit = { - exists = this - is_alive = yes - } - save_scope_as = loser - } - } - # If k_danelaw has been destroyed, set k_england as the de jure inheritor. - if = { - limit = { scope:landed_title = title:k_danelaw } - title:k_england = { save_scope_as = partition_winner } - if = { - limit = { - exists = this - is_alive = yes - } - save_scope_as = loser - } - } - # Either way, trigger the maintenance event. - trigger_event = british_isles.1041 - } - # Safety against invalid house bloc members - else_if = { - limit = { - scope:landed_title = { is_noble_family_title = yes } - exists = house.house_confederation - } - house = { - tgp_leave_house_bloc_effect = { - OPINION = flag:no - TRUCE = flag:no - } - } - } - } -} - -# A title is transferred to a new character -# root = the new holder -# scope:title = the title that changes hands -# scope:previous_holder = previous holder. Might be dead -on_title_gain = { - effect = { - ###################### - # COUNTY-TIER TITLES # - ###################### - if = { - limit = { - scope:title.tier = tier_county - } - - ########### - # MPO - Nomad Title Handling - ########### - if = { - limit = { - scope:title = { - is_nomad_title = yes - exists = title_domicile - } - } - scope:title = { - if = { - limit = { - root = { - any_held_title = { - is_nomad_title = yes - exists = title_domicile - NOT = { this = scope:title } - } - } - } - if = { - limit = { - root = { - any_held_title = { - is_nomad_title = yes - exists = title_domicile - NOT = { this = scope:title } - exists = var:player_domicile_title - } - } - } - root = { - random_held_title = { - limit = { - is_nomad_title = yes - exists = title_domicile - NOT = { this = scope:title } - exists = var:player_domicile_title - } - title_domicile = { - if = { - limit = { - exists = root.dynasty - scope:previous_holder.dynasty ?= root.dynasty - } - change_herd = { - value = scope:title.title_domicile.herd - } - } - } - root = { - destroy_title = scope:title - } - } - } - } - else_if = { - limit = { - exists = var:player_domicile_title - } - root = { - random_held_title = { - limit = { - is_nomad_title = yes - exists = title_domicile - NOT = { this = scope:title } - } - save_scope_as = old_nomad_title_to_clean_up - } - } - title_domicile = { - if = { - limit = { - exists = root.dynasty - scope:previous_holder.dynasty ?= root.dynasty - } - change_herd = { - value = scope:old_nomad_title_to_clean_up.title_domicile.herd - } - } - } - root = { - destroy_title = scope:old_nomad_title_to_clean_up - } - } - else_if = { - limit = { - root = { - any_held_title = { - is_nomad_title = yes - exists = title_domicile - NOT = { this = scope:title } - title_domicile.herd > scope:title.title_domicile.herd - } - } - } - root = { - random_held_title = { - limit = { - is_nomad_title = yes - exists = title_domicile - NOT = { this = scope:title } - title_domicile.herd > scope:title.title_domicile.herd - } - title_domicile = { - if = { - limit = { - exists = root.dynasty - scope:previous_holder.dynasty ?= root.dynasty - } - change_herd = { - value = scope:title.title_domicile.herd - } - } - } - } - destroy_title = scope:title - } - } - else = { - root = { - random_held_title = { - limit = { - is_nomad_title = yes - exists = title_domicile - NOT = { this = scope:title } - } - save_scope_as = old_nomad_title_to_clean_up - } - } - title_domicile = { - if = { - limit = { - exists = root.dynasty - scope:previous_holder.dynasty ?= root.dynasty - } - change_herd = { - value = scope:old_nomad_title_to_clean_up.title_domicile.herd - } - } - } - root = { - destroy_title = scope:old_nomad_title_to_clean_up - } - } - } - if = { - limit = { - exists = global_var:game_has_started - NOT = { - exists = previous_holder - } - } - if = { - limit = { - root = { - OR = { - house.house_head ?= { - this != root - any_held_title = { - is_nomad_title = yes - } - } - dynasty.dynast ?= { - this != root - any_held_title = { - is_nomad_title = yes - } - } - any_close_family_member = { - this != root - any_held_title = { - is_nomad_title = yes - } - } - } - } - } - generate_coa = yes # To lessen confusion thinking titles are the same - } - if = { - limit = { - current_year >= 1300 - } - title_domicile = { - add_domicile_building = yurt_main_02 - add_domicile_building = yurt_main_03 - add_domicile_building = yurt_main_04 - add_random_yurt_external_building_effect = yes - add_random_yurt_external_building_effect = yes - add_random_yurt_external_building_effect = yes - add_random_yurt_external_building_effect = yes - add_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - } - } - else_if = { - limit = { - current_year >= 1200 - } - title_domicile = { - add_domicile_building = yurt_main_02 - add_domicile_building = yurt_main_03 - add_domicile_building = yurt_main_04 - add_random_yurt_external_building_effect = yes - add_random_yurt_external_building_effect = yes - add_random_yurt_external_building_effect = yes - add_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - } - } - else_if = { - limit = { - current_year >= 1100 - } - title_domicile = { - add_domicile_building = yurt_main_02 - if = { - limit = { - has_domicile_building = yurt_main_02 - owner ?= { - OR = { - has_realm_law = nomadic_authority_2 - has_realm_law = nomadic_authority_3 - has_realm_law = nomadic_authority_4 - has_realm_law = nomadic_authority_5 - } - } - } - add_domicile_building = yurt_main_03 - } - add_random_yurt_external_building_effect = yes - add_random_yurt_external_building_effect = yes - add_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - } - } - else_if = { - limit = { - current_year >= 900 - } - title_domicile = { - add_domicile_building = yurt_main_02 - add_random_yurt_external_building_effect = yes - add_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - upgrade_random_yurt_external_building_effect = yes - } - } - } - } - - ########### - # MPO - Edge case Nomadic Philosophy handover - ########### - if = { - limit = { - government_has_flag = government_is_nomadic - NOT = { - has_trait = nomadic_philosophy - } - exists = situation:the_great_steppe - any_character_situation = { - this = situation:the_great_steppe - } - } - add_trait = nomadic_philosophy - every_heir = { - limit = { - top_liege ?= root - NOT = { - has_trait = nomadic_philosophy - } - } - add_trait = nomadic_philosophy - } - } - } - ########### - # Nomads switch faith/culture of conquered nomadic counties - ########### - else_if = { - limit = { - scope:title.title_province ?= { - OR = { - has_holding_type = nomad_holding - has_holding_type = herder_holding - } - } - government_has_flag = government_is_nomadic - exists = domicile - } - if = { - limit = { - has_character_flag = domicile_culture_and_faith_check - OR = { - domicile.domicile_culture != scope:title.culture - domicile.domicile_faith != scope:title.faith - } - } - domicile = { - set_domicile_culture = scope:title.culture - set_domicile_faith = scope:title.faith - } - remove_character_flag = domicile_culture_and_faith_check - } - else = { - if = { - limit = { domicile.domicile_culture != scope:title.culture } - scope:title ?= { - set_variable = { - name = migration_previous_culture - value = culture - } - set_county_culture = root.domicile.domicile_culture - } - } - if = { - limit = { domicile.domicile_faith != scope:title.faith } - scope:title = { set_county_faith = root.domicile.domicile_faith } - } - } - } - else = { - ########### - # Apply Law of the Land title succession law if appropriate - ########### - scope:title = { - add_law_of_the_land_title_succession_law_if_appropriate_effect = yes - } - } - - ########### - # MPO - Siberian permafrost modifier switcharoo - ########### - if = { - limit = { - scope:title.title_province = { - geographical_region = geographical_region:mpo_region_permafrost - } - } - if = { - limit = { - scope:title = { - has_county_modifier = mpo_siberian_permafrost_modifier_bad - } - culture ?= { has_cultural_parameter = permafrost_modifier_mechanic } - } - scope:title = { - remove_county_modifier = mpo_siberian_permafrost_modifier_bad - add_county_modifier = mpo_siberian_permafrost_modifier - } - } - else_if = { - limit = { - scope:title = { - has_county_modifier = mpo_siberian_permafrost_modifier - } - NOR = { - culture ?= { has_cultural_parameter = permafrost_modifier_mechanic } - } - } - scope:title = { - remove_county_modifier = mpo_siberian_permafrost_modifier - add_county_modifier = mpo_siberian_permafrost_modifier_bad - } - } - } - else_if = { - limit = { - OR = { - scope:title = title:c_antiocheia - scope:title = title:c_jerusalem - scope:title = title:c_alexandria - scope:title = title:c_roma - } - } - if = { - limit = { - OR = { - AND = { - is_roman_emperor_trigger = yes - faith = faith:orthodox - faith = { has_doctrine = special_doctrine_ecumenical_christian } - } - any_liege_or_above = { - is_roman_emperor_trigger = yes - faith = faith:orthodox - faith = { has_doctrine = special_doctrine_ecumenical_christian } - } - } - } - trigger_event = roman_restoration.0199 - } - ########### - # Transfer the Samaritan HoF to the realm that holds Jerusalem - ########### - if = { - limit = { - scope:title = title:c_jerusalem - title:d_samaritan.holder ?= { - # Samaritan HoF is not independent - # Samaritan liege is not Samaritan - top_liege.faith != faith:samaritan - top_liege != root - } - # root is at least a king, or their liege is, or their liege's liege is - OR = { - highest_held_title_tier >= tier_kingdom - any_liege_or_above = { - highest_held_title_tier >= tier_kingdom - } - } - } - create_title_and_vassal_change = { - type = created - save_scope_as = title_change - add_claim_on_loss = no - } - if = { - limit = { - highest_held_title_tier >= tier_kingdom - } - title:d_samaritan.holder = { - change_liege = { - liege = root - change = scope:title_change - } - } - } - else = { - title:d_samaritan.holder = { - change_liege = { - liege = root.top_liege - change = scope:title_change - } - } - } - resolve_title_and_vassal_change = scope:title_change - } - } - - ########### - # FP1 - New holder for a county with a stele. - ########### - if = { - limit = { - # Using a scripted effect here so we can look at the same trigger in the grant title interaction - fp1_remove_stele_new_holder_trigger = { - TITLE = scope:title - PREVIOUS_HOLDER = scope:previous_holder - NEW_HOLDER = root - } - has_fp1_dlc_trigger = yes - } - scope:title = { - remove_variable = stele_scope_type - remove_variable = stele_container - remove_variable = stele_carver - remove_variable = stele_commissioner - remove_variable = stele_slot_occupied - remove_county_modifier = fp1_stele_ancestors_strong - remove_county_modifier = fp1_stele_ancestors_weak - remove_county_modifier = fp1_stele_conquest_strong - remove_county_modifier = fp1_stele_conquest_weak - remove_county_modifier = fp1_stele_promotion_strong - remove_county_modifier = fp1_stele_promotion_weak - } - } - ########### - # Non-FP1 - New holder of the county with a runestone - ########### - else_if = { - limit = { - scope:title = { - exists = var:ancestor_to_bury - } - dynasty != scope:previous_holder.dynasty #We only have to change something if the new holder is of a different dynasty - scope:title = { - NOT = { var:ancestor_to_bury.dynasty = root.dynasty } - } - } - scope:title = { - remove_county_modifier = county_raised_runestone_modifier - remove_variable = ancestor_to_bury - } - } - - ########### - # EP3 ADVENTURERS BECOMING LANDED - ########### - if = { - limit = { - scope:title = { is_landless_type_title = no } - any_held_title = { - title_tier = duchy - has_variable = adventurer_creation_reason - } - } - save_scope_as = adventurer - if = { - limit = { - NOR = { - has_trait = adventurer - government_has_flag = government_is_nomadic - } - } - add_trait = adventurer - } - every_courtier = { - set_variable = { - name = former_camp_leader - value = scope:adventurer - } - add_trait = adventurer_follower - } - if = { - limit = { - house = { - has_house_modifier = legacy_adventurer_house_modifier - } - } - add_legitimacy = massive_legitimacy_gain - set_variable = { - name = legacy_adventurers_to_levies - value = 0 - } - every_courtier = { - root = { - change_variable = { name = legacy_adventurers_to_levies add = 25 } - } - } - every_held_title = { - limit = { has_variable = adventurer_creation_reason } - save_scope_as = prev_title - } - spawn_army = { - levies = var:legacy_adventurers_to_levies - location = capital_province - name = remnants_adventurer_army - } - remove_variable = legacy_adventurers_to_levies - } - destroy_laamp_effect = { ADVENTURER = scope:adventurer } - # EP3 - Ensure NF holders are Admin - if = { - limit = { - scope:title = { is_noble_family_title = yes } - NOT = { government_has_flag = government_is_administrative } - } - change_government = administrative_government - } - } - } - ##################### - # DUCHY-TIER TITLES # - ##################### - else_if = { - limit = { - scope:title.tier = tier_duchy - } - - # Special Legitimacy gain for being elected (This is present in two places in this on_action) - if = { - limit = { - scope:title = { - has_order_of_succession = election - } - has_legitimacy = yes - } - save_scope_value_as = { - name = title_tier_minus_2 - value = { - value = scope:title.tier - subtract = 2 - } - } - send_interface_toast = { - type = msg_legitimacy_gain - title = legitimacy_gain_toast - left_icon = root - right_icon = scope:title - add_legitimacy = { - value = { - value = major_legitimacy_gain - multiply = scope:title_tier_minus_2 - } - } - } - } - - # Transfer title-bound artifacts with the title it's associated with (This is present in two places in this on_action) - if = { - limit = { - scope:previous_holder ?= { - any_character_artifact = { - has_variable = artifact_succession_title #Is this an artifact that should follow a title? - var:artifact_succession_title = { is_title_created = yes } #Does the title the artifact should follow exist? - var:artifact_succession_title = scope:title #Scope title is the artifact title - } - } - } - scope:previous_holder = { - every_character_artifact = { - limit = { - has_variable = artifact_succession_title #Is this an artifact that should follow a title? - var:artifact_succession_title = { is_title_created = yes } #Does the title the artifact should follow exist? - var:artifact_succession_title = scope:title #Scope title is the artifact title - } - if = { - limit = { - OR = { - scope:transfer_type = flag:conquest - scope:transfer_type = flag:conquest_holy_war - scope:transfer_type = flag:conquest_claim - scope:transfer_type = flag:conquest_populist - scope:transfer_type = flag:abdication - scope:transfer_type = flag:usurped - scope:transfer_type = flag:revoked - scope:transfer_type = flag:faction_demand - } - } - set_owner = { - target = root - history = { - type = conquest - actor = scope:previous_holder - recipient = root - location = scope:previous_holder.location - } - } - } - else = { - set_owner = { - target = root - history = { - type = inherited - recipient = root - } - } - } - } - } - } - - if = { - limit = { - government_has_flag = government_is_landless_adventurer - } - # EP3 ADVENTURERS TELEPORT TO THEIR CAMP - trigger_event = { - id = title_event.9911 - days = 1 - } - } - - # EP3 ADVENTURER TITLE BEING INHERITED BY A LANDED RULER - if = { - limit = { - scope:title = { - has_variable = adventurer_creation_reason - } - any_held_title = { - NOT = { has_variable = adventurer_creation_reason } - } - } - every_held_title = { - limit = { has_variable = adventurer_creation_reason } - save_scope_as = landless_adventurer_title - root = { destroy_title = scope:landless_adventurer_title } - } - } - # Have we been given a fair shake as a laamp, but we're sucking? - else_if = { - limit = { - has_government = landless_adventurer_government - is_ai = yes - scope:previous_holder = { is_ai = yes } - primary_title = { - any_past_holder = { count >= 4 } - } - NOR = { - # If the heir is sufficiently impressive, then we'll keep 'em around. - prestige_level >= 2 - # Legitimists are always worthwhile. - has_realm_law = camp_purpose_legitimists - # Reserve successful mercenary outfits. - AND = { - max_military_strength >= 1500 - # Allow absolute decimations to destroy mercs from time to time. - current_military_strength <= 150 - } - # Or those currently fighting alongside/against players. - AND = { - is_at_war = yes - OR = { - any_war_ally = { is_ai = no } - any_war_enemy = { is_ai = no } - } - } - # Depending on camp purpose, we want various skills. - AND = { - has_realm_law = camp_purpose_wanderers - OR = { - highest_skill_value >= very_high_skill_rating - prowess >= very_high_skill_rating - } - } - AND = { - has_realm_law = camp_purpose_mercenaries - OR = { - martial >= high_skill_rating - prowess >= high_skill_rating - } - } - AND = { - has_realm_law = camp_purpose_scholars - OR = { - learning >= high_skill_rating - diplomacy >= high_skill_rating - } - } - AND = { - has_realm_law = camp_purpose_explorers - OR = { - diplomacy >= high_skill_rating - stewardship >= high_skill_rating - } - } - AND = { - has_realm_law = camp_purpose_brigands - OR = { - intrigue >= high_skill_rating - prowess >= high_skill_rating - } - } - # Finally, keep anyone who's important to the player. - any_player = { - OR = { - root.dynasty ?= dynasty - is_consort_of = root - has_important_relationship_with_character_trigger = { CHARACTER = root } - any_pinned_character = { this = root } - any_pinned_character = { this = scope:previous_holder } - } - } - } - } - destroy_laamp_effect = { ADVENTURER = root } - } - # Holy Order Trait - else_if = { - limit = { - scope:title = { is_holy_order = yes } - NOT = { has_trait = order_member } - government_has_flag = government_is_holy_order - } - add_trait = order_member - } - - # Apply Created Title opinion to Courtly Vassals (This is present in two places in this on_action) - if = { - limit = { - scope:transfer_type = flag:created - is_alive = yes - } - every_vassal = { - vassal_stance = courtly - if = { - limit = { - scope:title.tier = tier_duchy - } - add_opinion = { - target = root - modifier = courtly_title_creation_opinion - opinion = 10 - } - } - else = { - add_opinion = { - target = root - modifier = courtly_title_creation_opinion - opinion = 30 - } - } - } - } - # Lil Johnny Lackland changes his nickname. - if = { - limit = { - has_nickname = nick_lackland_young - } - give_nickname = nick_lackland_ironic - } - } - ##################### - # KING+ TIER TITLES # - ##################### - else = { - # Newly formed Hegemon of China should spruce up their council - if = { - limit = { scope:title = title:h_china } - save_scope_as = councillor_liege - fill_the_ministry_effect = yes - } - # Hegemonies cannot have Ceremonial Regents - if = { - limit = { - exists = this - any_held_title = { exists = var:administrative_ui_special_title } - scope:title.tier = tier_hegemony - } - tgp_destroy_ceremonial_throne_effect = yes - if = { - limit = { has_trait = former_emperor } - remove_trait = former_emperor - } - } - # Ceremonial Liege - if = { - limit = { - OR = { - exists = scope:title.var:ceremonial_title - top_liege.primary_title.var:administrative_ui_special_title ?= scope:title - } - } - if = { - limit = { - exists = house - exists = scope:previous_holder.house - scope:previous_holder.house != house - } - scope:title = { set_coa = root.house } - } - remove_character_flag = ceremonial_regent_flag - } - if = { - limit = { exists = scope:title.var:ceremonial_title } - add_character_flag = ceremonial_liege_flag - } - # Reset raid remit - if = { - limit = { - this = top_liege - any_noble_family = { } - } - every_noble_family = { - holder = { remove_variable = raid_estate_permission } - } - } - # Special Legitimacy gain for being elected (This is present in two places in this on_action) - if = { - limit = { - scope:title = { - has_order_of_succession = election - } - has_legitimacy = yes - } - save_scope_value_as = { - name = title_tier_minus_2 - value = { - value = scope:title.tier - subtract = 2 - } - } - send_interface_toast = { - type = msg_legitimacy_gain - title = legitimacy_gain_toast - left_icon = root - right_icon = scope:title - add_legitimacy = { - value = { - value = major_legitimacy_gain - multiply = scope:title_tier_minus_2 - } - } - } - } - # Transfer title-bound artifacts with the title it's associated with (This is present in two places in this on_action) - if = { - limit = { - scope:previous_holder ?= { - any_character_artifact = { - has_variable = artifact_succession_title #Is this an artifact that should follow a title? - var:artifact_succession_title = { is_title_created = yes } #Does the title the artifact should follow exist? - var:artifact_succession_title = scope:title #Scope title is the artifact title - } - } - } - scope:previous_holder = { - every_character_artifact = { - limit = { - has_variable = artifact_succession_title #Is this an artifact that should follow a title? - var:artifact_succession_title = { is_title_created = yes } #Does the title the artifact should follow exist? - var:artifact_succession_title = scope:title #Scope title is the artifact title - } - if = { - limit = { - OR = { - scope:transfer_type = flag:conquest - scope:transfer_type = flag:conquest_holy_war - scope:transfer_type = flag:conquest_claim - scope:transfer_type = flag:conquest_populist - scope:transfer_type = flag:abdication - scope:transfer_type = flag:usurped - scope:transfer_type = flag:revoked - scope:transfer_type = flag:faction_demand - } - } - set_owner = { - target = root - history = { - type = conquest - actor = scope:previous_holder - recipient = root - location = scope:previous_holder.location - } - } - } - else = { - set_owner = { - target = root - history = { - type = inherited - recipient = root - } - } - } - } - } - } - # Grandeur in elective realms - if = { - limit = { - exists = var:previous_holder_grandeur_value - has_royal_court = yes - has_dlc_feature = royal_court - } - hidden_effect = { - change_current_court_grandeur = -100 # Reset to 0 - change_current_court_grandeur = var:previous_holder_grandeur_value - remove_variable = previous_holder_grandeur_value - } - } - # Apply Created Title opinion to Courtly Vassals (This is present in two places in this on_action) - if = { - limit = { - scope:transfer_type = flag:created - is_alive = yes - } - every_vassal = { - vassal_stance = courtly - if = { - limit = { - scope:title.tier = tier_duchy - } - add_opinion = { - target = root - modifier = courtly_title_creation_opinion - opinion = 10 - } - } - else = { - add_opinion = { - target = root - modifier = courtly_title_creation_opinion - opinion = 30 - } - } - } - } - # Empire and Hegemony stuff - if = { - limit = { - scope:title = { - tier >= tier_empire - } - } - # Byzantine-only: The Patriarch refuses to crown you as new emperor because you have a criminal trait (e.g. kinslayer) - if = { - limit = { - valid_for_byz_emperor_content_trigger = yes - has_ep3_dlc_trigger = yes - exists = root.faith.religious_head - this != faith.religious_head - faith.religious_head = { - opinion = { - target = root - value <= 0 - } - location = root.location - } - has_any_criminal_trait_in_faith_trigger = { - CHARACTER = root - FAITH = root.faith - } - NOT = { has_character_flag = has_had_ep3_2020 } - } - trigger_event = { - id = ep3_emperor_yearly.2020 - days = 1 - } - } - ### EP3 Admin Emperor Flavor ### - if = { - limit = { - # Not for meritocratic - NOT = { government_has_flag = government_has_merit } - # Admin only - government_allows = administrative - has_ep3_dlc_trigger = yes - # Independent rulers only - this = top_liege - # New title is higher or equal to your primary tier - highest_held_title_tier >= scope:title.tier - # You didn't just create the title - scope:title = { - any_past_holder = { } - # Your predecessor wasn't from your same house - not much to celebrate if you got the title from dad! - previous_holder ?= { - house != root.house - } - } - # Handled separately - tgp_realm_has_ceremonial_liege_trigger = no - } - trigger_event = { - id = ep3_emperor_yearly.2050 - days = 5 - } - } - #Byzantium is reborn! - if = { - limit = { - scope:title = { - this = title:e_byzantium - } - exists = global_var:byz_collapse_counter - } - save_scope_as = byz_emperor - title:e_byzantium = { - every_in_de_jure_hierarchy = { - limit = { - tier <= tier_kingdom - tier >= tier_county - is_title_created = yes - exists = holder - } - if = { - limit = { - holder ?= { - is_alive = yes - NOR = { - is_in_list = byz_return_notify - any_held_title = { - this = title:e_byzantium - } - } - } - } - holder = { - add_to_list = byz_return_notify - } - } - } - } - title:e_latin_empire = { - every_in_de_jure_hierarchy = { - limit = { - tier <= tier_kingdom - tier >= tier_county - is_title_created = yes - exists = holder - } - if = { - limit = { - holder = { - is_alive = yes - NOR = { - is_in_list = byz_return_notify - any_held_title = { - this = title:e_byzantium - } - } - } - } - holder = { - add_to_list = byz_return_notify - } - } - } - } - every_in_list = { - list = byz_return_notify - trigger_event = ep3_frankokratia_events.0130 - } - remove_global_variable = byz_collapse_counter - } - # TGP CHINA - else_if = { - limit = { - scope:title = title:h_china - } - # When conquering China - Change to conquest phase - if = { - limit = { - root.dynasty != scope:previous_holder.dynasty - } - if = { - limit = { - is_valid_celestial_dynasty = no - } - situation:dynastic_cycle = { - situation_top_sub_region = { - change_phase = { phase = situation_dynastic_cycle_phase_instability_conquest } - } - } - } - else_if = { - limit = { - situation:dynastic_cycle ?= { - situation_current_phase = situation_dynastic_cycle_phase_instability_conquest - } - } - situation:dynastic_cycle = { - situation_top_sub_region = { - change_phase = { phase = situation_dynastic_cycle_phase_instability } - } - } - } - } - # When inheriting China - Move towards instability/chaotic phase - if = { - limit = { - root.house != scope:previous_holder.house - current_date_is_start_date_trigger = no # We check this to avoid potentially triggering this immediately on game start - } - situation:dynastic_cycle = { - if = { - limit = { - situation_top_has_catalyst = catalyst_new_dynasty_inherits - } - trigger_situation_catalyst = catalyst_new_dynasty_inherits - } - } - } - # Clear the Strengthen Capital great project cooldown - situation:dynastic_cycle ?= { - if = { - limit = { has_variable = gp_strengthen_capital_cooldown } - remove_variable = gp_strengthen_capital_cooldown - } - } - #setup Grand Secretariat - if = { - limit = { - has_dlc_feature = all_under_heaven - NOT = { has_diarchy_type = grand_secretariat } - } - if = { - limit = { - has_realm_law = grand_chancellor_law - exists = title:h_china.holder.cp:councillor_chancellor - } - try_start_diarchy = grand_secretariat - set_diarch = title:h_china.holder.cp:councillor_chancellor - } - else_if = { - limit = { - has_realm_law = grand_marshal_law - exists = title:h_china.holder.cp:minister_grand_marshal - } - try_start_diarchy = grand_secretariat - set_diarch = title:h_china.holder.cp:minister_grand_marshal - } - else_if = { - limit = { - exists = title:h_china.holder.cp:councillor_spymaster - } - try_start_diarchy = grand_secretariat - set_diarch = title:h_china.holder.cp:councillor_spymaster - } - } - root.house.house_head.domicile ?= { - set_family_accomplishment_effect = { ACCOMPLISHMENT = family_accomplishment_dynasty } - } - } - else_if = { - limit = { - OR = { - scope:title = title:e_minister_chancellor - scope:title = title:e_minister_censor - scope:title = title:e_minister_grand_marshal - scope:title = title:e_minister_of_personnel - scope:title = title:e_minister_of_revenue - scope:title = title:e_minister_of_rites - scope:title = title:e_minister_of_war - scope:title = title:e_minister_of_justice - scope:title = title:e_minister_of_works - } - } - # set up the council holder as dejure liege of the ministry title, as this effect is not called with the same scope as council onactions - scope:title.de_jure_liege.holder = { - save_scope_as = councillor_liege - } - # If we get a minister title, make sure we set things up correctly - switch = { - trigger = scope:title - title:e_minister_chancellor = { - got_minister_position_effect = { MINISTER_TITLE = e_minister_chancellor MINISTER_POSITION = councillor_chancellor } - } - title:e_minister_censor = { - got_minister_position_effect = { MINISTER_TITLE = e_minister_censor MINISTER_POSITION = councillor_spymaster } - } - title:e_minister_grand_marshal = { - got_minister_position_effect = { MINISTER_TITLE = e_minister_grand_marshal MINISTER_POSITION = minister_grand_marshal } - } - title:e_minister_of_personnel = { - got_minister_position_effect = { MINISTER_TITLE = e_minister_of_personnel MINISTER_POSITION = minister_personnel } - } - title:e_minister_of_revenue = { - got_minister_position_effect = { MINISTER_TITLE = e_minister_of_revenue MINISTER_POSITION = councillor_steward } - } - title:e_minister_of_rites = { - got_minister_position_effect = { MINISTER_TITLE = e_minister_of_rites MINISTER_POSITION = councillor_court_chaplain } - } - title:e_minister_of_war = { - got_minister_position_effect = { MINISTER_TITLE = e_minister_of_war MINISTER_POSITION = councillor_marshal } - } - title:e_minister_of_justice = { - got_minister_position_effect = { MINISTER_TITLE = e_minister_of_justice MINISTER_POSITION = minister_justice } - } - title:e_minister_of_works = { - got_minister_position_effect = { MINISTER_TITLE = e_minister_of_works MINISTER_POSITION = minister_works } - } - } - } - # TGP JAPAN - else_if = { - limit = { scope:title = title:e_japan } - # TGP RETIRED EMPEROR - if = { - limit = { - exists = title:e_japan.var:administrative_ui_special_title - has_title = title:e_japan.var:administrative_ui_special_title - } - # Flavourization setup - title:e_japan = { remove_variable = shogun_flag } - remove_character_flag = shogun_flag - if = { # Flavourization setup - limit = { has_global_variable = tenno_restored } - title:e_japan = { set_variable = ceremonial_liege_flag } - add_character_flag = ceremonial_liege_flag - trigger_event = { - id = tgp_japan_general.9100 - days = 1 - } - } - else = { # Event to abdicate and become Joko - trigger_event = { - id = tgp_japan_general.9120 - days = 1 - } - } - } - # TGP SHOGUN - else_if = { - limit = { - has_government = japan_feudal_government - has_global_variable = shogunate_established - } - title:e_japan = { remove_variable = ceremonial_liege_flag } - remove_character_flag = ceremonial_liege_flag - title:e_japan = { set_variable = shogun_flag } - add_character_flag = shogun_flag - } - # TGP KAMPAKU - else = { - title:e_japan = { remove_variable = ceremonial_liege_flag } - remove_character_flag = ceremonial_liege_flag - title:e_japan = { remove_variable = shogun_flag } - remove_character_flag = shogun_flag - } - # Japanese regent laws - if = { - limit = { - tgp_realm_has_ceremonial_liege_trigger = yes - government_is_japanese_trigger = yes - NOR = { - has_global_variable = shogunate_established - has_global_variable = tenno_restored - } - } - if = { - limit = { - government_has_flag = government_is_japan_administrative - NOT = { has_realm_law = japanese_regency_succession_law } - } - add_realm_law_skip_effects = japanese_regency_succession_law - } - else_if = { - limit = { - government_has_flag = government_is_japan_feudal - has_realm_law = japanese_regency_succession_law - } - remove_realm_law = japanese_regency_succession_law - } - } - } - # ROME - else_if = { - limit = { - OR = { - scope:title = title:h_roman_empire - scope:title = title:h_eastern_roman_empire - } - NOT = { has_trait = augustus } - } - trigger_event = roman_restoration.0005 - } - #Mongol empire and GoK should lose other empires - if = { - limit = { - primary_title ?= { - OR = { - this = title:e_mongol_empire - AND = { - exists = global_var:greatest_of_khans_title - this = global_var:greatest_of_khans_title - } - } - } - scope:title = { - NOR = { - this = title:e_mongol_empire - AND = { - exists = global_var:greatest_of_khans_title - this = global_var:greatest_of_khans_title - } - } - } - is_ai = yes - } - destroy_title = scope:title - } - # You just inherited an Emperor title!! - if = { - limit = { - primary_title = scope:title - exists = scope:previous_holder - NOT = { #You don't already have an empire tier title - any_held_title = { - title_tier = empire - this != scope:title - } - } - # That isn't a part of the ministry - NOR = { - scope:title = title:e_minister_chancellor - scope:title = title:e_minister_censor - scope:title = title:e_minister_grand_marshal - scope:title = title:e_minister_of_personnel - scope:title = title:e_minister_of_revenue - scope:title = title:e_minister_of_rites - scope:title = title:e_minister_of_war - scope:title = title:e_minister_of_justice - scope:title = title:e_minister_of_works - } - } - trigger_event = { - id = realm_maintenance.2001 - days = 1 - } - } - if = { - limit = { - is_independent_ruler = yes - tgp_realm_has_ceremonial_liege_trigger = no - government_has_flag = government_is_meritocratic - } - trigger_event = { - id = tgp_korea_decision.9203 - days = 1 - } - } - # TGP CEREMONIAL FLAVOR - scope:previous_holder ?= { - if = { - limit = { is_alive = yes } - remove_character_flag = ceremonial_liege_flag - remove_character_flag = ceremonial_regent_flag - } - } - if = { - limit = { is_alive = yes } - remove_character_flag = ceremonial_liege_flag - remove_character_flag = ceremonial_regent_flag - } - top_liege.primary_title.var:administrative_ui_special_title.holder ?= { - remove_character_flag = ceremonial_liege_flag - remove_character_flag = ceremonial_regent_flag - } - if = { - limit = { tgp_is_ceremonial_regent_trigger = yes } # Not 'actual' ruler - add_character_flag = ceremonial_regent_flag - top_liege.primary_title.var:administrative_ui_special_title.holder ?= { add_character_flag = ceremonial_liege_flag } - } - } - # West Francia becomes France when no longer controlled by a Karling - else_if = { - limit = { - scope:title = { - this = title:k_france - } - NOR = { - dynasty = { this = dynasty:25061 } # Not held by a Karling - any_liege_or_above = { - dynasty = { this = dynasty:25061 } # And does not have a liege that is a Karling - } - has_global_variable = west_francia_renamed - } - } - trigger_event = { - id = title_event.0001 - days = 1 - } - } - # East Francia becomes Germany when no longer controlled by a Karling - else_if = { - limit = { - scope:title = { - this = title:k_east_francia - } - NOR = { - dynasty = { this = dynasty:25061 } # Not held by a Karling - any_liege_or_above = { - dynasty = { this = dynasty:25061 } # And does not have a liege that is a Karling - } - has_global_variable = east_francia_renamed - } - } - trigger_event = { - id = title_event.0002 - days = 1 - } - } - # Hidden management event to determine if we need to axe Asturias &, if we do, what notification events to send out afterwards. - else_if = { - limit = { - scope:title = title:k_castille - title:k_asturias = { - # Leon must be de jure part of Asturias, or else there's no reason to ever stop calling it Asturias. - any_in_de_jure_hierarchy = { this = title:d_leon } - } - } - trigger_event = { - id = title_event.0011 - days = 1 - } - } - # FP2 El Cid Achievement - else_if = { - limit = { - scope:title = title:k_valencia - has_character_flag = fp2_el_cid_blood_relation_legacy - } - set_global_variable = { # DO. NOT. USE. add_achievement_global_variable_effect. IT BREAKS THE ACHIEVEMENT. - name = fp2_el_cid_achievement_unlocked - value = yes - } - } - # TGP CEREMONIAL RULER - # IMPERIAL INHERITANCE - else_if = { - limit = { - exists = scope:title.var:ceremonial_title - } - add_character_flag = ceremonial_liege_flag - trigger_event = { - id = tgp_japan_general.9100 - days = 1 - } - } - # Norway stuff - else_if = { - limit = { - # The title they've acquired is Norway. - scope:title = title:k_norway - } - # Tanglehair becomes Fairhair. - if = { - limit = { - # This character is Harald Fairhair. - exists = character:144000 - this = character:144000 - # Norway has been created by them. - scope:transfer_type = flag:created - # Norway has not been created previously. - NOT = { exists = global_var:norway_created } - } - trigger_event = { - id = fp1_major_decisions.1011 - days = 1 - } - } - # Check Norway's creation status. - if = { - limit = { - scope:transfer_type = flag:created - NOT = { exists = global_var:norway_created } - } - trigger_event = { - id = fp1_major_decisions.1012 - days = 1 - } - } - } - # English Partition Result - Gained Both - else_if = { - limit = { - # Partition must be active. - exists = global_var:partition_active_danelaw - # The gained title must be one of the two partitioned entities. - OR = { - scope:title = title:k_england - scope:title = title:k_danelaw - } - # And you must now hold both titles. - this = title:k_england.holder - this = title:k_danelaw.holder - } - trigger_event = { - id = british_isles.1032 - days = 1 - } - } - # Lil Johnny Lackland changes his nickname. - if = { - limit = { - has_nickname = nick_lackland_young - } - give_nickname = nick_lackland_ironic - } - } - - ############# - # STRUGGLES # - ############# - if = { - limit = { - exists = struggle:persian_struggle - } - #Struggle Catalysts - if = { - limit = { - scope:title.empire ?= title:e_persia - scope:title = { - tier >= tier_county - is_landless_type_title = no - } - NOR = { - scope:transfer_type = flag:created - scope:transfer_type = flag:inheritance - } - } - if = { - limit = { - fp3_character_uninvolved_in_struggle_trigger = yes - scope:previous_holder ?= { - fp3_character_involved_in_struggle_trigger = yes - any_character_struggle = { - phase_has_catalyst = catalyst_interloper_uninvolved_gain_struggle_titles - } - } - } - scope:previous_holder ?= { - every_character_struggle = { - limit = { phase_has_catalyst = catalyst_interloper_uninvolved_gain_struggle_titles } - activate_struggle_catalyst = { - catalyst = catalyst_interloper_uninvolved_gain_struggle_titles - character = root - } - log_debug_variable_for_persian_struggle_effect = { VAR = concession_catalyst_interloper_uninvolved_gain_struggle_titles } - } - } - } - if = { - limit = { - fp3_character_involved_in_struggle_trigger = yes - any_character_struggle = { - phase_has_catalyst = catalyst_gain_struggle_titles_from_interlopers_uninvolved - # Stop catalyst from affecting those who are only just now uninvolved due to losing this title - OR = { - NOT = { is_culture_involved_in_struggle = scope:previous_holder.culture } - NOT = { is_faith_involved_in_struggle = scope:previous_holder.faith } - } - } - scope:previous_holder ?= { - OR = { - fp3_character_uninvolved_in_struggle_trigger = yes - fp3_character_interloper_in_struggle_trigger = yes - } - } - } - every_character_struggle = { - limit = { phase_has_catalyst = catalyst_gain_struggle_titles_from_interlopers_uninvolved } - activate_struggle_catalyst = { - catalyst = catalyst_gain_struggle_titles_from_interlopers_uninvolved - character = root - } - log_debug_variable_for_persian_struggle_effect = { VAR = stabil_catalyst_gain_struggle_titles_from_interlopers_uninvolved } - } - } - } - # FP3 Struggle special cases - if = { - limit = { - scope:title = { - OR = { - this = title:d_sunni - this = title:e_arabia - } - } - } - ## Convert detractors to supporters if they inherit either of the titles they're detracting against. - if = { - limit = { - NOT = { has_trait = fp3_struggle_supporter } - } - if = { - limit = { has_trait = fp3_struggle_detractor } - remove_trait = fp3_struggle_detractor - } - add_trait = fp3_struggle_supporter - } - # FP3 Title Transfer Notification - struggle:persian_struggle = { # Wet script - every_involved_ruler = { - send_interface_toast = { - type = event_toast_effect_bad - title = persian_struggle_central_title_transfer.t - left_icon = scope:previous_holder - right_icon = scope:title.holder - - custom_tooltip = persian_struggle_central_title_transfer.desc - } - } - every_interloper_ruler = { - send_interface_toast = { - type = event_toast_effect_bad - title = persian_struggle_central_title_transfer.t - left_icon = scope:previous_holder - right_icon = scope:title.holder - - custom_tooltip = persian_struggle_central_title_transfer.desc - } - } - } - } - } - - ############### - # GOVERNMENTS # - ############### - - # TGP bloc joining - if = { - limit = { - government_is_japanese_trigger = yes - tgp_house_bloc_interaction_valid_trigger = yes - is_house_head = no - NOT = { exists = confederation } - exists = house.house_head.confederation - liege = house.house_head.liege - is_at_war = no - } - save_scope_as = bloc_joiner - house.house_head.confederation = { add_confederation_member = scope:bloc_joiner } - } - # Challenged as house head in Japan - if = { - limit = { - government_is_japanese_trigger = yes - is_house_head = yes - } - trigger_event = { - weeks = { 2 4 } - id = tgp_japan_yearly_events.1210 - } - } - # TGP Catalysts - if = { - limit = { - scope:previous_holder ?= { - has_title = title:h_china - } - OR = { - scope:transfer_type = flag:granted - scope:transfer_type = flag:appointment - } - NOT = { has_appointment_level_for_title = scope:title } - } - situation:dynastic_cycle ?= { - if = { - limit = { situation_top_has_catalyst = catalyst_hegemon_appointing_low_merit_governor } - trigger_situation_catalyst = { - catalyst = catalyst_hegemon_appointing_low_merit_governor - character = scope:previous_holder - } - } - } - } - # If the minister's merit rank is too low, it will affect the dynastic cycle - if = { - limit = { - scope:title = { - OR = { - this = title:e_minister_chancellor - this = title:e_minister_censor - this = title:e_minister_grand_marshal - this = title:e_minister_of_personnel - this = title:e_minister_of_revenue - this = title:e_minister_of_rites - this = title:e_minister_of_war - this = title:e_minister_of_justice - this = title:e_minister_of_works - } - } - NOT = { has_appointment_level_for_title = scope:title } - } - situation:dynastic_cycle ?= { - if = { - limit = { situation_top_has_catalyst = catalyst_hegemon_appointing_low_merit_councillor } - trigger_situation_catalyst = { - catalyst = catalyst_hegemon_appointing_low_merit_councillor - character = root - } - } - } - } - # Admin Stuff - if = { - limit = { - OR = { - government_allows = administrative - government_has_flag = government_is_japan_feudal - } - } - # Note: anything that should be run after creation can go in on_noble_family_title_created - if = { - limit = { - is_house_head = yes - trigger_if = { - limit = { - government_has_flag = government_is_japan_feudal - } - highest_held_title_tier >= tier_county - } - trigger_else_if = { - # To avoid noble family spam, we only create family titles for county tier if that is also the primary governor tier. - limit = { main_administrative_tier = tier_county } - highest_held_title_tier >= tier_county - } - trigger_else = { highest_held_title_tier >= tier_duchy } - liege = { - OR = { - government_allows = administrative - government_has_flag = government_is_japan_feudal - } - } - NOR = { - any_held_title = { is_noble_family_title = yes } - house = { - any_house_member = { - any_held_title = { is_noble_family_title = yes } - } - } - } - } - create_noble_family_effect = { GOVERNMENT_GIVER = this } - domicile ?= { set_up_domicile_estate_effect = yes } - } - # EP3 - Ensure Emperor keeps old realm capital in admin realms & apply unique domicile building bonus if appropriate - if = { - limit = { - top_liege = this - highest_held_title_tier >= tier_empire - } - if = { # Ensure we keep the old realm capital - limit = { - scope:title = { - tier = tier_empire - title_capital_county != root.capital_county - # Constantinople must have been inherited - title_capital_county.holder = root - } - } - set_realm_capital = scope:title.title_capital_county - } - if = { # Get legitimacy from Reception Hall House Bonus - limit = { - house = { has_variable = ep3_legacy_legitimacy_counter } - primary_title = scope:title - } - trigger_event = { - id = ep3_admin_events.0010 - days = 1 - } - } - } - # EP3 - Fire a became governor event - else_if = { - limit = { - top_liege != this - trigger_if = { - limit = { government_allows = merit } - is_governor_or_admin_count = yes - } - trigger_else = { - is_governor = yes - } - any_held_title = { - count < 1 - this != scope:title - tier >= scope:title.tier - is_landless_type_title = no - is_noble_family_title = no - } - } - trigger_event = { - id = ep3_admin_events.0002 - delayed = yes - } - } - # Admin vassals get the Governor trait when they first become a governor - if = { - limit = { - is_governor = yes - NOT = { has_trait = governor } - scope:title = { - tier >= root.main_administrative_tier - } - } - add_trait = governor - } - #Admin imperial succession notification event (it's a big deal) - if = { - limit = { - top_liege = this - highest_held_title_tier >= tier_kingdom - scope:title = root.primary_title - has_ep3_dlc_trigger = yes - #Checks so this event doesn't fire after character creation, although it's not really a problem if it does - trigger_if = { - limit = { - game_start_date = 867.1.1 - } - current_date >= 867.1.4 - } - trigger_if = { - limit = { - game_start_date = 1066.9.15 - } - current_date >= 1066.9.18 - } - trigger_if = { - limit = { - game_start_date = 1178.10.1 - } - current_date >= 1178.10.4 - } - } - save_scope_as = emperor - #Should trigger special event during fourth crusade! - if = { - limit = { - exists = global_var:byz_claimant_champion - global_var:byz_claimant_champion = { - any_owned_story = { - type = frankokratia_story - exists = var:byz_claimant - var:byz_claimant = { - this = root - } - } - } - } - every_vassal_or_below = { - limit = { - is_playable_character = yes - } - trigger_event = ep3_frankokratia_events.0110 - } - } - else = { - if = { - limit = { - exists = root.house - } - #normal triggering - every_vassal_or_below = { - limit = { - is_playable_character = yes - exists = scope:previous_holder - has_government = administrative_government - OR = { - highest_held_title_tier >= main_administrative_tier # All governors - liege = root - } - } - trigger_event = { - id = ep3_governor_yearly.3060 - days = 1 - } - } - } - } - } - #Admin event about rewarding person who helped you get title - if = { - limit = { - has_succession_appointment_investors = scope:title - has_ep3_dlc_trigger = yes - scope:title = { - any_succession_appointment_investors = { - count >= 1 - candidate = root - value >= 20 - NOT = { - house ?= root.house - } - is_alive = yes - is_imprisoned = no - NOR = { - has_relation_rival = root - is_at_war_with = root - } - } - } - } - save_scope_as = new_landed_admin - trigger_event = { - id = ep3_interactions_events.0600 - days = { 5 10 } - } - } - #Notification for house members of title holder - if = { - limit = { - scope:title.tier > tier_barony - primary_title.tier <= scope:title.tier - NOT = { has_character_flag = admin_title_gain_notification_sent } - exists = house - any_player = { - house ?= root.house - top_liege = root.top_liege - government_allows = administrative - this != root - } - } - add_character_flag = { - flag = admin_title_gain_notification_sent - days = 10 - } - save_scope_as = title_gainer - every_player = { - limit = { - house ?= root.house - top_liege = root.top_liege - government_allows = administrative - this != scope:title_gainer - scope:title != title:k_chrysanthemum_throne - } - send_interface_message = { - type = msg_admin_title_gained - title = msg_admin_title_gained_house.tt - desc = msg_admin_title_gained.desc - left_icon = scope:title_gainer - right_icon = scope:title - } - } - } - #Notification for admin investors in new title holder - if = { - limit = { - NOT = { has_character_flag = admin_title_gain_notification_sent } - scope:title = { - tier > tier_barony - any_succession_appointment_investors = { - is_ai = no - candidate = root - trigger_if = { - limit = { exists = root.house } - NOT = { house ?= root.house } - } - } - } - } - add_character_flag = { - flag = admin_title_gain_notification_sent - days = 10 - } - save_scope_as = title_gainer - scope:title = { - every_succession_appointment_investors = { - candidate = root - value > 0 - limit = { - is_ai = no - trigger_if = { - limit = { exists = root.house } - NOT = { house ?= root.house } - } - } - send_interface_message = { - type = msg_admin_title_gained - title = msg_admin_title_gained_investor.tt - desc = msg_admin_title_gained.desc - left_icon = scope:title_gainer - right_icon = scope:title - } - } - every_succession_appointment_investors = { - candidate = root - value < 0 - limit = { - is_ai = no - trigger_if = { - limit = { exists = root.house } - NOT = { house ?= root.house } - } - } - send_interface_message = { - type = msg_admin_title_gained_foe - title = msg_admin_title_gained_foe.tt - desc = msg_admin_title_gained.desc - left_icon = scope:title_gainer - right_icon = scope:title - } - } - } - } - - # Merit based candidate score bonus is removed when successfully getting a new governorship - if = { - limit = { - OR = { - has_variable = merit_civilian_career_score_bonus - has_variable = merit_military_career_score_bonus - } - is_landed = yes - scope:title.tier >= primary_title.tier - } - if = { - limit = { has_variable = merit_civilian_career_score_bonus } - remove_variable = merit_civilian_career_score_bonus - } - else_if = { - limit = { has_variable = merit_military_career_score_bonus } - remove_variable = merit_military_career_score_bonus - } - } - } - - ######## - # MISC # - ######## - - # TGP, bow before liege mandated - if = { - limit = { - culture = { has_cultural_parameter = must_pledge_loyalty_to_liege } - } - if = { # if you are now the top liege, all your direct vassals with the same parameter who have not yet sworn fealty to you must swear fealty - limit = { - this = top_liege - primary_title.tier <= scope:title.tier - } - every_vassal = { - if = { - limit = { - culture = { has_cultural_parameter = must_pledge_loyalty_to_liege } - OR = { - government_has_flag = government_is_feudal - government_has_flag = government_is_clan - government_has_flag = government_is_japan_feudal - } - NOT = { var:pledge_loyalty_to_liege_grace ?= liege } - NOT = { owns_story_of_type = story_cycle_pledge_loyalty_to_liege_overdue } - } - create_story = story_cycle_pledge_loyalty_to_liege_overdue - story:story_cycle_pledge_loyalty_to_liege_overdue = { - set_variable = new_liege_variant - } - } - } - } - else_if = { # if you now have a new liege, and they also follow a culture with the Pay Homage requirement, you must swear continued fealty - limit = { - liege.culture = { has_cultural_parameter = must_pledge_loyalty_to_liege } - OR = { - government_has_flag = government_is_feudal - government_has_flag = government_is_clan - government_has_flag = government_is_japan_feudal - } - NOT = { var:pledge_loyalty_to_liege_grace ?= liege } - NOT = { owns_story_of_type = story_cycle_pledge_loyalty_to_liege_overdue } - } - create_story = story_cycle_pledge_loyalty_to_liege_overdue - random_owned_story = { - type = story_cycle_pledge_loyalty_to_liege_overdue - set_variable = new_title_variant - } - } - } - - # Did I conquer a place with holy order leases not of my faith? - if = { - limit = { - scope:title = { - any_in_de_jure_hierarchy = { - tier = tier_barony - is_under_holy_order_lease = yes - county.holder = { - any_liege_or_above = { this = root } - } - lessee = { - NAND = { # Only for leases of people who are not of your faith or the holder's faith - faith = root.faith - faith = prev.county.holder.faith - } - } - } - } - } - scope:title = { - every_in_de_jure_hierarchy = { - limit = { - tier = tier_barony - is_under_holy_order_lease = yes - county.holder = { - any_liege_or_above = { this = root } - } - lessee = { - NAND = { # Only for leases of people who are not of your faith or the holder's faith - faith = root.faith - faith = prev.county.holder.faith - } - } - } - revoke_lease = yes - } - } - } - - # Everything that requires a previous_holder - if = { - limit = { - exists = scope:previous_holder - } - # If a player is on their way to pay homage, invalidate. - if = { - limit = { - any_player = { var:homage_liege_scope ?= scope:previous_holder } - } - every_player = { - limit = { - var:homage_liege_scope ?= scope:previous_holder - NOT = { has_character_flag = currently_invalidating_petition_liege_travel } - } - current_travel_plan = { - if = { - limit = { can_cancel = yes } - cancel_travel_plan = yes - } - } - trigger_event = pay_homage.0601 - add_character_flag = { - flag = currently_invalidating_petition_liege_travel - days = 1 - } - } - } - # If a player is on their way to bow before liege, invalidate. - else_if = { - limit = { - any_player = { var:pledge_loyalty_to_liege_scope ?= scope:previous_holder } - } - every_player = { - limit = { - var:pledge_loyalty_to_liege_scope ?= scope:previous_holder - NOT = { has_character_flag = currently_invalidating_petition_liege_travel } - } - current_travel_plan = { - if = { - limit = { can_cancel = yes } - cancel_travel_plan = yes - } - } - trigger_event = pledge_loyalty_to_liege.0601 - add_character_flag = { - flag = currently_invalidating_petition_liege_travel - days = 1 - } - } - } - - # Feud - if = { - limit = { - scope:previous_holder = { - house_has_feud_relation_with_trigger = { TARGET = root } - house = { - any_house_relation = { - any_relation_house = { - this = root.house - NOT = { this = scope:previous_holder.house } - } - var:house_feud_reason ?= flag:competing_claim - var:house_feud_attacker.house ?= scope:previous_holder.house - var:house_feud_victim.house ?= root.house - var:house_feud_title ?= scope:title - NOT = { exists = var:feud_avenged } - } - } - } - } - scope:previous_holder.house_head = { save_scope_as = house_feud_rival } - trigger_event = bp1_house_feud.7000 - } - } - - # EP3 LAAMP SUPPORTER INVALIDATION - if = { - limit = { - exists = var:adventurer_invasion_supporter - NOT = { government_has_flag = government_is_landless_adventurer } - } - ep3_laamp_supporter_invalidated_effect = yes - } - - # Natural Disaster Recovery project invalidation - great_projects_ensure_unique_disaster_recovery_projects_effect = yes - - ########### - # Nomads/Tribals leaving confederacies - ########### - if = { - limit = { - is_confederation_member = yes - scope:title.tier >= tier_kingdom - government_is_japanese_trigger = no - } - confederation = { - remove_confederation_member = root - } - } - - # Peasants dress like nobles if landed - if = { - limit = { - has_character_flag = peasant_outfit - NOT = { government_has_flag = government_is_herder } - } - remove_character_flag = peasant_outfit - } - - # Petition allowed again - if = { - limit = { has_variable = petition_title_cooldown } - remove_variable = petition_title_cooldown - } - - # Cancel Domicile travels - current_travel_plan ?= { - if = { - limit = { is_travel_with_domicile = yes } - abort_travel_plan = yes - } - } - - # BP3 - Inspector perks cleanup effect - landless_inspector_cleanup_modifier = yes - - # Update flavorful titles (Margrave, Tenno, etc.) - additional_flavor_check_effect = yes - - # Update CoAs - scope:title = { update_dynamic_coa = yes } - - ### MEMORIES - SHOULD STAY AT BOTTOM ### - # Ascended to the throne - if = { - limit = { - OR = { - is_ruler = no - highest_held_title_tier <= scope:title.tier - government_has_flag = government_is_landless_adventurer - government_allows = administrative - } - } - if = { - limit = { exists = scope:title.var:adventurer_flavor_char } - create_character_memory = { - type = became_landless_adventurer_memory - participants = { - flavor_character = scope:title.var:adventurer_flavor_char - } - } - #Only children should get childhood memories - if = { - limit = { is_adult = no } - scope:new_memory = { set_variable = childhood_memory } - } - scope:new_memory = { - save_scope_as = became_landless_adventurer_memory - set_variable = { - name = landless_title - value = scope:title - } - set_variable = { - name = reason - value = scope:transfer_type - } - set_variable = { - name = adventurer_creation_reason - value = scope:title.var:adventurer_creation_reason - } - if = { - limit = { exists = scope:lost_primary_title } - set_variable = { - name = old_primary_title - value = scope:lost_primary_title - } - } - if = { # Error suppression - limit = { exists = var:landless_title } - } - } - } - else = { - # Overwrite if there is a more specific Reason - if = { - limit = { exists = root.var:ascended_throne_reason } - root.var:ascended_throne_reason = { save_scope_as = real_transfer_type } - root = { remove_variable = ascended_throne_reason } - } - else = { - scope:transfer_type = { save_scope_as = real_transfer_type } - } - root = { - add_to_variable_list = { - name = new_titles - target = scope:title - } - trigger_event = { - id = title_event.9900 - delayed = yes - } - } - } - } - - # If we weren't already in a diarchy but should be, put us in one. - if = { - limit = { - scope:title.tier >= tier_county - } - trigger_event = { - id = diarchy.0011 - days = 1 - } - } - #Confederation titles being re-created... get confederation law bb - if = { - limit = { - scope:transfer_type = flag:created - scope:title = { - has_variable = confederation_culture - NOT = { - has_title_law = confederation_elective_succession_law - } - } - } - scope:bloc = { add_confederation_member = scope:bloc_joiner } - } - #Coronation modifier is lost - if = { - limit = { - scope:title = { - tier = tier_county - OR = { - has_county_modifier = major_coronation_approval_unsettled_modifier - has_county_modifier = medium_coronation_approval_unsettled_modifier - has_county_modifier = minor_coronation_approval_unsettled_modifier - has_county_modifier = major_coronation_approval_modifier - has_county_modifier = medium_coronation_approval_modifier - has_county_modifier = minor_coronation_approval_modifier - } - } - NOR = { - scope:transfer_type = flag:inheritance - scope:transfer_type = flag:leased_out - scope:transfer_type = flag:abdication - scope:transfer_type = flag:granted - scope:transfer_type = flag:election - scope:transfer_type = flag:abdication - scope:transfer_type = flag:stepped_down - scope:transfer_type = flag:swear_fealty - scope:transfer_type = flag:created - } - } - #Add negative modifiers if stolen - scope:title = { - switch = { - trigger = has_county_modifier - major_coronation_approval_modifier = { - scope:title = { - remove_county_modifier = major_coronation_approval_modifier - add_county_modifier = { - modifier = major_coronation_approval_malus_modifier - years = 5 - } - } - } - major_coronation_approval_unsettled_modifier = { - scope:title = { - remove_county_modifier = major_coronation_approval_unsettled_modifier - add_county_modifier = { - modifier = major_coronation_approval_malus_unsettled_modifier - years = 5 - } - } - } - medium_coronation_approval_modifier = { - scope:title = { - remove_county_modifier = medium_coronation_approval_modifier - add_county_modifier = { - modifier = medium_coronation_approval_malus_modifier - years = 5 - } - } - } - medium_coronation_approval_unsettled_modifier = { - scope:title = { - remove_county_modifier = medium_coronation_approval_unsettled_modifier - add_county_modifier = { - modifier = medium_coronation_approval_malus_unsettled_modifier - years = 5 - } - } - } - minor_coronation_approval_modifier = { - scope:title = { - remove_county_modifier = minor_coronation_approval_modifier - add_county_modifier = { - modifier = minor_coronation_approval_malus_modifier - years = 5 - } - } - } - minor_coronation_approval_unsettled_modifier = { - scope:title = { - remove_county_modifier = minor_coronation_approval_unsettled_modifier - add_county_modifier = { - modifier = minor_coronation_approval_malus_unsettled_modifier - years = 5 - } - } - } - } - } - } - - # House head goes to independent ruler for Japanese AI - if = { - limit = { - is_house_head = no - is_ai = yes - government_is_japanese_trigger = yes - scope:previous_holder = { - is_ai = yes - player_heir = { is_ai = yes } - } - scope:new_holder = { - is_ai = yes - player_heir = { is_ai = yes } - } - house.house_head = { - is_ai = yes - player_heir = { is_ai = yes } - is_vassal_or_below_of = root - } - is_independent_ruler = yes - } - house = { set_house_head = root } - } - - if = { # If courtiers get lost between governorship assignments, move them home - limit = { - is_ai = no - government_allows = merit - } - if = { - limit = { - is_landed = yes - } - every_courtier = { - limit = { - location != root.capital_province - is_imprisoned = no - is_travelling = no - is_commanding_army = no - NOR = { - exists = involved_activity - exists = knight_army - } - } - set_location_to_default = yes - } - } - else_if = { - limit = { - exists = domicile.domicile_location - } - every_courtier = { - limit = { - location != root.domicile.domicile_location - is_imprisoned = no - is_travelling = no - is_commanding_army = no - NOR = { - exists = involved_activity - exists = knight_army - } - } - set_location_to_default = yes - } - } - } - # If you take another realm's dynasty-named title, reset its name - if = { - limit = { - is_independent_ruler = yes - government_has_flag = government_is_celestial - scope:title ?= { - tier >= tier_kingdom - has_custom_title_name = yes - this != root.primary_title - } - } - scope:title = { - reset_title_name = yes - } - } - } - events = { - roman_restoration.0005 #New Roman Emperor gets Augustus trait. (old holder, if still alive, loses it) - roman_restoration.0199 #Restoring the Pentarchy. - delay = { days = 1 } - realm_maintenance.2001 #Big notification about inheriting emperor tier title - british_isles.1032 # Danelaw-England partition calc. - fp1_major_decisions.1011 # Harald Tanglehair becomes Harald Fairhair. - fp1_major_decisions.1012 # If Norway has just been created for the first time, flag that. - title_event.0001 # Rename West Francia to France - title_event.0002 # Rename East Francia to Germany - title_event.0011 # Asturias becomes Leon upon emergence of Castille - # If we weren't already in a diarchy but should be, put us in one. - diarchy.0011 - ep3_emperor_yearly.2020 # EP3: The Patriarch refuses to crown you as new emperor because you have a criminal trait - } -} - -# A title is inherited by a character -# root = the new holder -# scope:title = the title that changes hands -# scope:previous_holder = previous holder. Should be dead -on_title_gain_inheritance = { - events = { - delay = { days = 1 } - # Try to end inherited entrenched regencies automatically — we need to launder this by a day to make sure the AI realises they've inherited a diarchy. - diarchy.0113 - } - effect = { - if = { - limit = { - scope:title = { - OR = { - this = title:e_mongol_empire - AND = { - exists = global_var:greatest_of_khans_title - this = global_var:greatest_of_khans_title - } - } - } - has_character_flag = gain_mongol_succession_dread - } - add_dread = 50 - } - else_if = { - limit = { - OR = { - scope:title = title:h_roman_empire - scope:title = title:h_eastern_roman_empire - } - } - set_variable = uses_custom_caesar_flavourization - } - } -} - -# A title is usurped by a character -# root = the new holder -# scope:title = the title that changes hands -# scope:previous_holder = previous holder. Shouldn't be dead -on_title_gain_usurpation = { - events = { - } - effect = { - # Struggle Catalysts - if = { - limit = { # FP2 - # We are only interested in the title within the Struggle Region - scope:title.empire ?= title:e_spain - # Only for usurpation - scope:transfer_type = flag:usurped - - root = { - any_character_struggle = { - involvement = involved - activate_struggle_catalyst_secondary_character_involvement_involved_trigger = { - CATALYST = catalyst_usurp_title_fp2 - CHAR = root - } - } - } - } - root = { - every_character_struggle = { - involvement = involved - limit = { - activate_struggle_catalyst_secondary_character_involvement_involved_trigger = { - CATALYST = catalyst_usurp_title_fp2 - CHAR = root - } - } - activate_struggle_catalyst = { - catalyst = catalyst_usurp_title_fp2 - character = root - } - } - } - } - else_if = { - limit = { # FP3 - scope:title.empire ?= title:e_persia - scope:transfer_type = flag:usurped - - root = { - any_character_struggle = { - involvement = involved - activate_struggle_catalyst_secondary_character_involvement_involved_trigger = { - CATALYST = catalyst_usurp_title_fp3 - CHAR = root - } - } - } - } - root = { - every_character_struggle = { - involvement = involved - limit = { - activate_struggle_catalyst_secondary_character_involvement_involved_trigger = { - CATALYST = catalyst_usurp_title_fp3 - CHAR = root - } - } - activate_struggle_catalyst = { - catalyst = catalyst_usurp_title_fp3 - character = root - } - log_debug_variable_for_persian_struggle_effect = { VAR = unrest_catalyst_usurp_title_fp3 } - } - } - } - } -} - -# A title is lost by a character -# root = the old holder -# scope:title = the title that changes hands -# scope:new_holder = new holder. -on_title_lost = { - events = { - british_isles.1033 # Danelaw-England partition calc. - } - - effect = { - #Make sure nobody ever has only the Kingdom of Fashion - if = { - limit = { - scope:title = { tier = tier_kingdom } - has_title = title:k_fashion - NOT = { - any_held_title = { # Only trigger if you don't have any kingdom titles other than Fashion and the kingdom you just lost. Double negative is confusing but it's the only way I could think to script it - title_tier = kingdom - NOT = { this = title:k_fashion } - this != scope:title - } - } - } - destroy_title = title:k_fashion - } - #Earmark landless Scandinavians for adventuring. - if = { - limit = { - #We only want to grab tribal cultures. - culture = { - NOT = { has_cultural_era_or_later = culture_era_early_medieval } - } - #Must have lost their last piece of land. - is_playable_character = no - #If they've ventured far outside Europe, they're unlikely to come back, so we don't #want them. - scope:title = { - tier = tier_county - title_province = { - OR = { - geographical_region = world_europe - geographical_region = world_asia_minor - } - } - } - } - #Norse, Norwegians, & Danes go into the western adventurer list. - if = { - limit = { - OR = { - has_culture = culture:norse - has_culture = culture:norwegian - has_culture = culture:danish - } - } - add_to_global_variable_list = { - name = western_scandinavian_adventurer_list - target = this - } - } - #Norse & Swedes go into the eastern adventurer list. - if = { - limit = { - OR = { - has_culture = culture:norse - has_culture = culture:swedish - } - } - add_to_global_variable_list = { - name = eastern_scandinavian_adventurer_list - target = this - } - } - } - - #To remove concubines if a character becomes unlanded - if = { - limit = { - is_playable_character = no - any_concubine = { } - } - every_concubine = { root = { remove_concubine = prev } } - } - - # Transfer co-monarchies. - if = { - limit = { - OR = { - scope:transfer_type = flag:inheritance - scope:transfer_type = flag:abdication - scope:transfer_type = flag:usurped - scope:transfer_type = flag:election - scope:transfer_type = flag:faction_demand - scope:transfer_type = flag:stepped_down - } - } - save_scope_as = old_holder - trigger_event = { - id = diarchy.0025 - days = 1 - } - } - - #Apply loss of stress to the Rivals - if = { - limit = { - scope:title.tier >= tier_county - scope:title = { is_landless_type_title = no } - OR = { - scope:transfer_type = flag:conquest - scope:transfer_type = flag:conquest_holy_war - scope:transfer_type = flag:conquest_claim - scope:transfer_type = flag:conquest_populist - scope:transfer_type = flag:abdication - scope:transfer_type = flag:usurped - scope:transfer_type = flag:revoked - scope:transfer_type = flag:faction_demand - } - } - root = { - save_scope_as = actor - } - every_relation ={ - type = rival - - send_interface_message = { - type = event_generic_neutral - title = msg_rival_dethroned - left_icon = scope:actor - right_icon = scope:title - - custom_tooltip = msg_rival_dethroned_desc - - stress_impact = { - base = medium_stress_loss - vengeful = medium_stress_loss - } - } - } - } - - # Struggle catalyst - if = { - limit = { - any_character_struggle = { - involvement = involved - phase_has_catalyst = catalyst_revoke_title - } - OR = { - scope:transfer_type = flag:revoked - scope:transfer_type = flag:lease_revoked - } - } - every_character_struggle = { - activate_struggle_catalyst = { - catalyst = catalyst_revoke_title - character = scope:new_holder - } - } - } - - # Memories - # Lost a significant title - if = { - limit = { - scope:title.tier >= highest_held_title_tier - exists = scope:new_holder - } - if = { - limit = { exists = root.var:lost_title_reason } - root.var:lost_title_reason = { save_scope_as = real_transfer_type } - root = { remove_variable = lost_title_reason } - } - else = { - scope:transfer_type = { save_scope_as = real_transfer_type } - } - root = { - add_to_variable_list = { - name = lost_titles - target = scope:title - } - trigger_event = { - id = title_event.9901 - delayed = yes - } - } - } - - # LEGITIMACY LOSS FROM USURPATION - if = { - limit = { - scope:transfer_type ?= flag:usurped - has_legitimacy = yes - NOT = { exists = scope:suppress_legitimacy_loss } - } - # Minus 2, since we want Duchy to be 1, and it's normally 3 - save_scope_value_as = { - name = title_tier_minus_2 - value = { - value = scope:title.tier - subtract = 2 - } - } - send_interface_toast = { - type = msg_legitimacy_loss - title = legitimacy_loss_toast - left_icon = root - right_icon = scope:title - custom_tooltip = legitimacy_loss_usurpation_tt - add_legitimacy = { - value = { - value = miniscule_legitimacy_loss - multiply = scope:title_tier_minus_2 - } - } - } - } - - # EP3 LAAMP SUPPORTER INVALIDATION - ep3_laamp_supporter_invalidated_effect = yes - - # EP3 - Handle admin estates when they end up outside the realm - if = { - limit = { - scope:new_holder = { - any_sub_realm_barony = { - title_province = { - any_province_domicile = { - is_domicile_type = estate - owner ?= { - top_liege != scope:new_holder.top_liege - } - } - } - } - } - } - scope:new_holder = { - every_sub_realm_barony = { - limit = { - title_province = { - any_province_domicile = { - is_domicile_type = estate - owner ?= { - top_liege != scope:new_holder.top_liege - } - } - } - } - title_province = { - every_province_domicile = { - limit = { - is_domicile_type = estate - owner ?= { - top_liege != scope:new_holder.top_liege - } - } - - # First, let's do some damage to the estate - We randomize the level of damage taken - random_list = { - 40 = { # Damage 1 - trigger = { - num_domicile_buildings <= 6 - } - set_variable = { - name = domicile_damage_count - value = 1 - } - } - 35 = { # Damage 2 - trigger = { - num_domicile_buildings > 2 - } - set_variable = { - name = domicile_damage_count - value = 2 - } - } - 30 = { # Damage 3 - trigger = { - num_domicile_buildings > 4 - } - set_variable = { - name = domicile_damage_count - value = 3 - } - } - 25 = { # Damage 4 - trigger = { - num_domicile_buildings > 6 - } - set_variable = { - name = domicile_damage_count - value = 4 - } - } - 20 = { # Damage 5 - trigger = { - num_domicile_buildings > 8 - } - set_variable = { - name = domicile_damage_count - value = 5 - } - } - 15 = { # Damage 6 - trigger = { - num_domicile_buildings > 10 - } - set_variable = { - name = domicile_damage_count - value = 6 - } - } - } - while = { - count = var:domicile_damage_count - destroy_random_estate_building_variable_effect = yes - destroy_random_estate_building_effect = yes - } - - # Clear the variable - if = { - limit = { has_variable = domicile_damage_count } - remove_variable = domicile_damage_count - } - - # Then we'll move the estate to keep it within the realm's borders - if = { # If you have a capital (i.e. you are a governor) let's move the estate there - limit = { - owner = { - is_landed = yes - exists = capital_province - } - } - move_domicile = owner.capital_province - } - else_if = { # If not, let's move it to a landed house member in the realm, if you have one - limit = { - owner = { - top_liege ?= { save_temporary_scope_as = owner_top_liege } - house ?= { - any_house_member = { - is_governor = yes - top_liege = scope:owner_top_liege - } - } - } - } - owner = { - house = { - random_house_member = { - limit = { - is_governor = yes - exists = capital_province - top_liege = scope:owner_top_liege - } - capital_province = { save_temporary_scope_as = house_member_location } - } - } - } - move_domicile = scope:house_member_location - } - else_if = { # Otherwise move it to the realm capital - limit = { - exists = owner.top_liege.capital_province - } - move_domicile = owner.top_liege.capital_province - } - - # Save the new estate location for msg - domicile_location.barony = { - save_scope_as = new_estate_location - } - - # Finally, let's make sure the owner moves to the new estate location - owner = { - if = { - limit = { - is_alive = yes - is_imprisoned = no - is_travelling = no - NOT = { - exists = involved_activity - } - is_commanding_army = no - } - set_location_to_default = yes - } - - # And notify the owner that all of this just happened - if = { - limit = { is_ai = no } - send_interface_message = { - type = msg_domicile_damaged - title = msg_estate_damaged.title - desc = msg_estate_damaged.desc - right_icon = scope:new_estate_location - } - } - } - } - } - } - } - } - - # Additional Flavor Title - additional_flavor_check_effect = yes - - if = { - limit = { - OR = { - scope:title = title:h_roman_empire - scope:title = title:h_eastern_roman_empire - } - } - remove_variable = uses_custom_caesar_flavourization - } - #Notification for house members of loser - if = { - limit = { - scope:title.tier > tier_barony - trigger_if = { # Prevent msg spam when rulers give away or lose lower tier titles - limit = { - is_landed = yes - } - primary_title.tier <= scope:title.tier - } - is_alive = yes - NOT = { has_character_flag = admin_title_loss_notification_sent } - government_allows = administrative - house ?= { - any_house_member = { - is_ai = no - trigger_if = { - limit = { exists = root.top_liege } - top_liege = root.top_liege - } - government_allows = administrative - this != root - } - } - } - add_character_flag = { - flag = admin_title_loss_notification_sent - days = 10 - } - save_scope_as = title_loser - house = { - every_house_member = { - limit = { - is_ai = no - trigger_if = { - limit = { exists = root.top_liege } - top_liege = root.top_liege - } - government_allows = administrative - this != scope:title_loser - } - send_interface_message = { - type = msg_admin_title_lost - title = msg_admin_title_lost_house.tt - desc = msg_admin_title_lost.desc - left_icon = scope:title_loser - right_icon = scope:title - } - } - } - } - #Notification for admin investors in loser - if = { - limit = { - is_alive = yes - NOT = { has_character_flag = admin_title_loss_notification_sent } - scope:title = { - tier > tier_barony - any_succession_appointment_investors = { - candidate = root - is_ai = no - trigger_if = { - limit = { exists = root.house } - NOT = { house ?= root.house } - } - } - } - } - add_character_flag = { - flag = admin_title_loss_notification_sent - days = 10 - } - save_scope_as = title_loser - scope:title = { - every_succession_appointment_investors = { - candidate = root - value > 0 - limit = { - is_ai = no - trigger_if = { - limit = { exists = root.house } - NOT = { house ?= root.house } - } - } - send_interface_message = { - type = msg_admin_title_lost - title = msg_admin_title_lost_investor.tt - desc = msg_admin_title_lost.desc - left_icon = scope:title_loser - right_icon = scope:title - } - } - every_succession_appointment_investors = { - candidate = root - value < 0 - limit = { - is_ai = no - trigger_if = { - limit = { exists = root.house } - NOT = { house ?= root.house } - } - } - send_interface_message = { - type = msg_admin_title_lost_foe - title = msg_admin_title_lost_foe.tt - desc = msg_admin_title_lost.desc - left_icon = scope:title_loser - right_icon = scope:title - } - } - } - } - - # Lil Johnny Lackland changes his nickname. - if = { - limit = { - has_nickname = nick_lackland_ironic - scope:title.tier >= tier_duchy - } - give_nickname = nick_lackland_old - } - - # BP3 - Inspector perks cleanup effect - landless_inspector_cleanup_modifier = yes - - #End Greatest of Khans story if title was lost - if = { - limit = { - any_owned_story = { - story_type = story_greatest_of_khans - } - global_var:greatest_of_khans_title ?= { - this = scope:title - } - OR = { - NOT = { - exists = scope:new_holder - } - scope:new_holder = { - NOR = { - AND = { - exists = dynasty - dynasty ?= root.dynasty - } - is_grandchild_of = root - is_child_of = root - } - } - } - } - if = { - limit = { - is_alive = yes - } - trigger_event = { - id = mpo_greatest_of_khans.0040 - days = 1 - } - } - else_if = { - limit = { - exists = root.player_heir - exists = root.dynasty - player_heir = { - dynasty ?= story_owner.dynasty - } - } - player_heir ?= { - trigger_event = { - id = mpo_greatest_of_khans.0040 - days = 1 - } - } - } - else = { - every_owned_story = { - limit = { story_type = story_greatest_of_khans } - end_story = yes - } - remove_character_modifier = the_great_khan_modifier - } - } - #Coronation loyalty modifier - if = { - limit = { - scope:title = { - has_variable = coronation_loyal_to_title - var:coronation_loyal_to_title = { - NOT = { - this = scope:new_holder.primary_title - } - } - } - } - scope:title = { - remove_county_modifier = coronation_loyal_to_the_crown_modifier - remove_variable = coronation_loyal_to_title - add_county_modifier = { - modifier = coronation_still_loyal_modifier - years = 5 - } - } - } - - if = { # If courtiers get lost between governorship assignments, move them home - limit = { - is_ai = no - government_allows = merit - } - if = { - limit = { - is_landed = yes - } - every_courtier = { - limit = { - location != root.capital_province - is_imprisoned = no - is_travelling = no - is_commanding_army = no - NOR = { - exists = involved_activity - exists = knight_army - } - } - set_location_to_default = yes - } - } - else_if = { - limit = { - is_landed = no - exists = domicile.domicile_location - } - every_courtier = { - limit = { - location != root.domicile.domicile_location - is_imprisoned = no - is_travelling = no - is_commanding_army = no - NOR = { - exists = involved_activity - exists = knight_army - } - } - set_location_to_default = yes - } - } - } - - # Remove manually added Ministers if they're not ministers anymore - if = { - limit = { - NOR = { - primary_title = title:e_minister_chancellor - primary_title = title:e_minister_censor - primary_title = title:e_minister_grand_marshal - primary_title = title:e_minister_of_personnel - primary_title = title:e_minister_of_revenue - primary_title = title:e_minister_of_rites - primary_title = title:e_minister_of_war - primary_title = title:e_minister_of_justice - primary_title = title:e_minister_of_works - } - } - situation:dynastic_cycle = { - remove_manual_participant = prev - } - } - } -} - -# A claim is gained by a character -# root = the claimant -# scope:title = the title that is claimed -# scope:transfer_type = flag:inheritance or none -on_explicit_claim_gain = { - effect = { - if = { - limit = { - title:k_england.holder = root - } - title:k_england = { - update_dynamic_coa = yes - } - } - # Struggle Catalyst - if = { # FP2 - limit = { - NOT = { scope:transfer_type = flag:inheritance } - - root = { - any_character_struggle = { - is_struggle_type = iberian_struggle - involvement = involved - } - } - title:e_spain = { any_in_de_jure_hierarchy = { this = scope:title } } - } - root = { - every_character_struggle = { - involvement = involved - limit = { - activate_struggle_catalyst_secondary_character_involvement_involved_trigger = { - CATALYST = catalyst_gain_claim_on_title_fp2 - CHAR = root - } - } - activate_struggle_catalyst = { - catalyst = catalyst_gain_claim_on_title_fp2 - character = root - } - } - } - } - else_if = { # FP3 - limit = { - NOT = { scope:transfer_type = flag:inheritance } - - root = { - any_character_struggle = { - is_struggle_type = persian_struggle - involvement = involved - } - } - title:e_persia = { any_in_de_jure_hierarchy = { this = scope:title } } - } - root = { - every_character_struggle = { - involvement = involved - limit = { - activate_struggle_catalyst_secondary_character_involvement_involved_trigger = { - CATALYST = catalyst_gain_claim_on_title_fp3 - CHAR = root - } - } - activate_struggle_catalyst = { - catalyst = catalyst_gain_claim_on_title_fp3 - character = root - } - log_debug_variable_for_persian_struggle_effect = { VAR = unrest_catalyst_gain_claim_on_title_fp3 } - } - } - } - } -} - -# A claim is lost by a character -# root = the claimant -# scope:title = the title that was claimed -on_explicit_claim_lost = { - effect = { - if = { - limit = { - title:k_england.holder = root - } - title:k_england = { - update_dynamic_coa = yes - } - } - } -} - -# A title change makes the character rank up in the landed tiers (eg Duke -> King) -# root = character ranking up -# scope:title = old primary title -on_rank_up = { # Will not fire during history execution or for dying characters - events = { - } - effect = { - if = { # ACH call to coronation reminder - limit = { - coronation_trigger = yes - NOT = { - has_game_rule = coronation_laws_off - } - is_ai = no - primary_title.tier >= tier_kingdom - has_realm_law = uncrowned - NOR = { - has_variable = crowned_king_var - has_variable = crowned_emperor_var - } - NOR = { - has_character_flag = had_coronation_reminder - any_sponsored_inspiration = { has_inspiration_type = smith_inspiration } - } - is_available_adult = yes - } - trigger_event = { - id = ach_yearly_events.1005 - months = 4 - } - } - #ACH new emperors losing their crowned status - else_if = { - limit = { - coronation_trigger = yes - NOR = { - has_game_rule = coronation_laws_no_imperial_uncrowned - has_game_rule = coronation_laws_off - has_character_flag = claimed_the_mandate_of_heaven - } - highest_held_title_tier >= tier_empire - exists = scope:title - scope:title = { - tier >= tier_kingdom - #Just double checking - tier < root.highest_held_title_tier - } - OR = { - has_realm_law = crowned_king - has_realm_law = crowned_emperor - has_variable = crowned_king_var - has_variable = crowned_emperor_var - } - } - if = { - limit = { - has_variable = crowned_emperor_var - } - remove_variable = crowned_emperor_var - } - if = { - limit = { - has_variable = crowned_king_var - } - remove_variable = crowned_king_var - } - add_realm_law_skip_effects = uncrowned - trigger_event = ach_yearly_events.1010 - } - if = { - limit = { is_landed = yes } - add_achievement_flag_effect = { FLAG = achievement_moving_up_in_the_world_flag } - } - if = { - limit = { - is_ai = no - is_landed = yes - highest_held_title_tier = tier_empire - } - add_achievement_global_variable_effect = { - VARIABLE = rags_to_riches_to_rags_to_riches_first_empire - VALUE = yes - } - } - if = { - limit = { - is_ai = no - is_landed = yes - highest_held_title_tier = tier_empire - exists = global_var:rags_to_riches_to_rags_to_riches_adventurer - } - add_achievement_global_variable_effect = { - VARIABLE = finished_rags_to_riches_to_rags_to_riches_achievement - VALUE = yes - } - } - update_embassies_effect = yes - every_ally = { - update_embassies_effect = yes - } - if = { - limit = { top_liege = this } - remove_variable = use_co_ruler_title - } - # Make a note of ranking up for stele purposes. - if = { - limit = { - # DLC check. - has_fp1_dlc_trigger = yes - # Is the culture eligible? - fp1_can_raise_stele_trigger = yes - # Aaaaand, for balance reasons, were they landed already? - exists = scope:title - } - set_variable = { - name = recent_rank_increase - value = root.primary_title - years = 5 - } - } - # Remove any rank-inappropriate modifiers (e.g., baron buffs). - remove_character_modifier = mandate_baronial_troops_trained_modifier - remove_character_modifier = mandate_baronial_troops_half_trained_modifier - - # Additional Flavor Title - additional_flavor_check_effect = yes - - #Admin kings becoming emperors need their MAA transferred to new primary title - if = { - limit = { - is_independent_ruler = yes - government_allows = administrative - scope:title ?= { - any_title_maa_regiment = { - count >= 1 - } - } - } - scope:title = { - transfer_title_maa_ownership = root.primary_title - } - } - - if = { - limit = { - is_independent_ruler = yes - government_has_flag = government_is_celestial - scope:title ?= { - tier >= tier_kingdom - has_custom_title_name = yes - } - primary_title = { - has_custom_title_name = no - } - } - scope:title = { - move_title_name_to = root.primary_title - reset_title_name = yes - } - } - if = { - limit = { - is_independent_ruler = yes - government_has_flag = government_is_celestial - highest_held_title_tier >= tier_kingdom - OR = { - primary_title ?= { - has_custom_title_name = no - } - primary_title.previous_holder.dynasty != root.dynasty - } - trigger_if = { - limit = { - tgp_capital_not_in_chinese_naming_region = yes - } - primary_title ?= title:h_china - } - } - if = { - limit = { - is_ai = no - } - trigger_event = { - id = tgp_dynastic_cycle.9000 - days = 1 # so the player gets to choose first - } - } - else = { - trigger_event = { - id = tgp_dynastic_cycle.9000 - days = 2 - } - } - } - else_if = { # Make sure non-Celestials get to rename/recolor china - limit = { - is_independent_ruler = yes - has_tgp_dlc_trigger = yes - NOT = { government_has_flag = government_is_celestial } - exists = var:claimed_mandate_var - primary_title ?= title:h_china - OR = { - primary_title ?= { - has_custom_title_name = no - } - primary_title.previous_holder.dynasty != root.dynasty - } - } - if = { - limit = { - is_ai = no - } - trigger_event = { - id = tgp_dynastic_cycle.9000 - days = 1 # so the player gets to choose first - } - } - else = { - trigger_event = { - id = tgp_dynastic_cycle.9000 - days = 2 - } - } - } - - # ACH - Remove Coronated laws when titles are passed onto a new character - coronation_reset_realm_law_effect = yes - } -} - -# A title change makes the character rank down in the landed tiers (eg King -> Duke) -# root = character ranking down -# scope:title = old primary title -on_rank_down = { # Will not fire during history execution or for dying characters - events = { - } - effect = { - if = { - limit = { - NOR = { - has_trait = humble - has_trait = content - has_trait = generous - } - } - add_character_flag = { - flag = make_suicide_available - years = 5 - } - set_variable = { - name = rank_demoted - value = yes - } - } - update_embassies_effect = yes - every_ally = { - update_embassies_effect = yes - } - # Inform hostage havers - if = { - limit = { - any_home_court_hostage = { } - } - save_scope_as = home_court - every_home_court_hostage = { - save_scope_as = hostage - warden = { - save_scope_as = warden - trigger_event = { id = bp2_hostage_system.0410 days = 5 } - } - } - } - - # Additional Flavor Title - additional_flavor_check_effect = yes - - # ACH - Remove variables if they are going below certain ranks - coronation_reset_realm_law_variable_effect = yes - - # ACH - if you are below king tier, remove all oaths - if = { - limit = { - highest_held_title_tier < tier_kingdom - } - ach_remove_oaths_on_king_minus_effect = yes - } - } -} - -# A character gains a vassal -# root = character gaining vassal -# scope:vassal = vassal being gained -# scope:old_liege = the previous liege of the vassal. Might be the null character (vassal used to be a non-ruler or independent), so make sure to use "exists" checks where relevant -on_vassal_gained = { - events = { - realm_maintenance.1000 # Notify vassals of new liege - } - effect = { - #Nomadic Confederation members must be independent - if = { - limit = { - scope:vassal = { - is_confederation_member = yes - scope:vassal.confederation = { has_leading_house = no } - } - } - scope:vassal.confederation = { - remove_confederation_member = scope:vassal - } - } - # EP3 LANDLESS CANNOT HAVE VASSALS - if = { - limit = { has_any_landed_title_trigger = no } - save_scope_as = new_liege - if = { - limit = { top_liege != this } - create_title_and_vassal_change = { - type = swear_fealty - save_scope_as = change - add_claim_on_loss = no - } - change_liege = { - liege = scope:new_liege.liege - change = scope:change - } - resolve_title_and_vassal_change = scope:change - } - else = { - create_title_and_vassal_change = { - type = independency - save_scope_as = change - add_claim_on_loss = no - } - scope:vassal = { - becomes_independent = { change = scope:change } - } - resolve_title_and_vassal_change = scope:change - } - } - - # Additional Flavor Title - scope:vassal = { - additional_flavor_check_effect = yes - } - - # Destroy ceremonial titles of vassalized realms - if = { - limit = { - # The necessary checks are baked into the effect below - scope:vassal = { - highest_held_title_tier >= tier_empire - any_held_title = { - OR = { - exists = var:ceremonial_title - exists = var:administrative_ui_special_title - } - } - } - } - # TGP end the ceremonial liege - tgp_destroy_ceremonial_throne_effect = yes - } - } -} - -# A vassal changes their liege -# root = vassal changing their status -# scope:old_liege = the previous liege of the vassal -# It is also fired for rulers gaining independence, those can be identified by checking current liege -on_vassal_change = { - effect = { - ### If a admin duke-tier character becomes the top-liege's direct vassal, ensure that they have a noble family title - if = { - limit = { - government_allows = administrative - is_house_head = yes - trigger_if = { - # This trigger is intentionally different from the similar effecy in on_title_gain up above. We want all direct vassals of the top liege to have a family title if they can - limit = { government_has_flag = government_has_county_tier_noble_families } - highest_held_title_tier >= tier_county - } - trigger_else = { highest_held_title_tier >= tier_duchy } - liege = { - top_liege = this - government_allows = administrative - } - NOR = { - any_held_title = { is_noble_family_title = yes } - house = { - any_house_member = { - any_held_title = { is_noble_family_title = yes } - } - } - } - } - create_noble_family_effect = { GOVERNMENT_GIVER = this } - domicile ?= { set_up_domicile_estate_effect = yes } - } - ### If an admin ruler becomes independent... - if = { - limit = { - liege = root # I.e. root is independent - government_has_flag = government_is_administrative - NOT = { - government_has_flag = government_is_republic - } - } - # And is not of a high enough rank, change government - if = { - limit = { - NOT = { - government_has_flag = government_is_republic - } - administrative_tier_allows_independence = no - } - admin_change_government_effect = yes - } - # If they can be independent, make sure they have a noble family title - else_if = { - limit = { - NOT = { - any_held_title = { - is_noble_family_title = yes - } - } - } - create_noble_family_effect = { GOVERNMENT_GIVER = this } - domicile ?= { set_up_domicile_estate_effect = yes } - } - } - ### Independent Celestial rulers who become direct vassals of a top liege adopt Military obligations if they have title troops - Everyone else will default to Standard. - if = { - limit = { - government_has_flag = government_is_celestial - scope:old_liege = this # I.e. they were independent - liege != this - liege = top_liege - primary_title = { - any_title_maa_regiment = { count >= 1 } - } - } - vassal_contract_set_obligation_level = { type = celestial_provinces level = 3 } - } - - ### If a minister becomes independent we destroy the ministry title - if = { - limit = { - # independent title - OR = { - liege ?= { tgp_has_access_to_ministry_trigger = no } - this = top_liege - } - - any_held_title = { - # has a ministry title that is not being swapped - OR = { - this = title:e_minister_chancellor - this = title:e_minister_censor - this = title:e_minister_grand_marshal - this = title:e_minister_of_personnel - this = title:e_minister_of_revenue - this = title:e_minister_of_rites - this = title:e_minister_of_war - this = title:e_minister_of_justice - this = title:e_minister_of_works - } - } - } - every_held_title = { - switch = { - trigger = this - title:e_minister_chancellor = { - root = { destroy_title = title:e_minister_chancellor } - } - title:e_minister_censor = { - root = { destroy_title = title:e_minister_censor } - } - title:e_minister_grand_marshal = { - root = { destroy_title = title:e_minister_grand_marshal } - } - title:e_minister_of_personnel = { - root = { destroy_title = title:e_minister_of_personnel } - } - title:e_minister_of_revenue = { - root = { destroy_title = title:e_minister_of_revenue } - } - title:e_minister_of_rites = { - root = { destroy_title = title:e_minister_of_rites } - } - title:e_minister_of_war = { - root = { destroy_title = title:e_minister_of_war } - } - title:e_minister_of_justice = { - root = { destroy_title = title:e_minister_of_justice } - } - title:e_minister_of_works = { - root = { destroy_title = title:e_minister_of_works } - } - } - } - } - - # Additional Flavor Title - additional_flavor_check_effect = yes - - if = { - limit = { - # We have become independent! - NOT = { - scope:old_liege = root - } - liege = root - government_has_flag = government_is_celestial - highest_held_title_tier >= tier_kingdom - primary_title = { - has_custom_title_name = no # sanity check - } - OR = { - tgp_capital_not_in_chinese_naming_region = no - primary_title = title:h_china # failsafe, in case this somehow ends up here - } - } - if = { - limit = { - is_ai = no - } - trigger_event = { - id = tgp_dynastic_cycle.9000 - days = 1 # so the player gets to choose first - } - } - else = { - trigger_event = { - id = tgp_dynastic_cycle.9000 - days = 2 - } - } - } - if = { - limit = { - scope:old_liege = root - NOT = { - liege = root - } - primary_title ?= { - has_custom_title_name = yes - } - } - primary_title = { - reset_title_name = yes - } - } - - # Destroy ceremonial titles of vassalized realms - if = { - limit = { - # The necessary checks are baked into the effect below - highest_held_title_tier >= tier_empire - any_held_title = { - OR = { - exists = var:ceremonial_title - exists = var:administrative_ui_special_title - } - } - } - # TGP end the ceremonial liege - tgp_destroy_ceremonial_throne_effect = yes - if = { - limit = { has_trait = former_emperor } - remove_trait = former_emperor - } - } - - # Bloc - if = { - # Let code trigger this if this is due to succession - limit = { - scope:old_liege ?= { - is_alive = yes - } - } - tgp_liege_change_bloc_management_effect = { VASSAL = root } - } - } -} - -# A baron is found or created for a title, E.G., due to the player using the "Give to Low Noble" action -# No transfer type here; it's always a grant -# root = the baron -# scope:liege = the person who wanted them created -# scope:title = the barony -on_baron_found_or_created_for_title = { - effect = { - add_opinion = { - target = scope:liege - modifier = received_title_barony - } - } -} - -# Called when realm capital changes. It can be manual move, loss in conquest, move after inheritance, -# move when granted a better title, becoming landed for the first time -# root: New realm capital barony -# scope:old_capital - previous capital barony. Can be empty, can be owned by someone else -on_realm_capital_change = { - effect = { - holder ?= { - # Do we need to refresh their vizier's modifiers? - if = { - limit = { has_diarchy_parameter = diarchy_is_vizierate } - diarch = { - # What we're doing here is regenerating loc on the diarchs that might refer to a specific place which they no longer have access to. - ## This is gonna get real gross, folks, so my apologies. - if = { - limit = { has_character_modifier = vizier_extravagance_t1_treasure_modifier } - remove_character_modifier = vizier_extravagance_t1_treasure_modifier - add_character_modifier = { - modifier = vizier_extravagance_t1_treasure_modifier - desc = vizier_extravagance_t1_treasure_modifier_custom_desc.on_action - } - } - if = { - limit = { has_character_modifier = vizier_extravagance_t1_activities_modifier } - remove_character_modifier = vizier_extravagance_t1_activities_modifier - add_character_modifier = { - modifier = vizier_extravagance_t1_activities_modifier - desc = vizier_extravagance_t1_activities_modifier_custom_desc.on_action - } - } - if = { - limit = { has_character_modifier = vizier_extravagance_t1_property_modifier } - remove_character_modifier = vizier_extravagance_t1_property_modifier - add_character_modifier = { - modifier = vizier_extravagance_t1_property_modifier - desc = vizier_extravagance_t1_property_modifier_custom_desc.on_action - } - } - if = { - limit = { has_character_modifier = vizier_extravagance_t1_charity_modifier } - remove_character_modifier = vizier_extravagance_t1_charity_modifier - add_character_modifier = { - modifier = vizier_extravagance_t1_charity_modifier - desc = vizier_extravagance_t1_charity_modifier_custom_desc.on_action - } - } - if = { - limit = { has_character_modifier = vizier_extravagance_t2_treasure_modifier } - remove_character_modifier = vizier_extravagance_t2_treasure_modifier - add_character_modifier = { - modifier = vizier_extravagance_t2_treasure_modifier - desc = vizier_extravagance_t2_treasure_modifier_custom_desc.on_action - } - } - if = { - limit = { has_character_modifier = vizier_extravagance_t2_activities_modifier } - remove_character_modifier = vizier_extravagance_t2_activities_modifier - add_character_modifier = { - modifier = vizier_extravagance_t2_activities_modifier - desc = vizier_extravagance_t2_activities_modifier_custom_desc.on_action - } - } - if = { - limit = { has_character_modifier = vizier_extravagance_t2_property_modifier } - remove_character_modifier = vizier_extravagance_t2_property_modifier - add_character_modifier = { - modifier = vizier_extravagance_t2_property_modifier - desc = vizier_extravagance_t2_property_modifier_custom_desc.on_action - } - } - if = { - limit = { has_character_modifier = vizier_extravagance_t2_charity_modifier } - remove_character_modifier = vizier_extravagance_t2_charity_modifier - add_character_modifier = { - modifier = vizier_extravagance_t2_charity_modifier - desc = vizier_extravagance_t2_charity_modifier_custom_desc.on_action - } - } - if = { - limit = { has_character_modifier = vizier_extravagance_t3_treasure_modifier } - remove_character_modifier = vizier_extravagance_t3_treasure_modifier - add_character_modifier = { - modifier = vizier_extravagance_t3_treasure_modifier - desc = vizier_extravagance_t3_treasure_modifier_custom_desc.on_action - } - } - if = { - limit = { has_character_modifier = vizier_extravagance_t3_activities_modifier } - remove_character_modifier = vizier_extravagance_t3_activities_modifier - add_character_modifier = { - modifier = vizier_extravagance_t3_activities_modifier - desc = vizier_extravagance_t3_activities_modifier_custom_desc.on_action - } - } - if = { - limit = { has_character_modifier = vizier_extravagance_t3_property_modifier } - remove_character_modifier = vizier_extravagance_t3_property_modifier - add_character_modifier = { - modifier = vizier_extravagance_t3_property_modifier - desc = vizier_extravagance_t3_property_modifier_custom_desc.on_action - } - } - if = { - limit = { has_character_modifier = vizier_extravagance_t3_charity_modifier } - remove_character_modifier = vizier_extravagance_t3_charity_modifier - add_character_modifier = { - modifier = vizier_extravagance_t3_charity_modifier - desc = vizier_extravagance_t3_charity_modifier_custom_desc.on_action - } - } - if = { - limit = { has_character_modifier = vizier_extravagance_t4_treasure_modifier } - remove_character_modifier = vizier_extravagance_t4_treasure_modifier - add_character_modifier = { - modifier = vizier_extravagance_t4_treasure_modifier - desc = vizier_extravagance_t4_treasure_modifier_custom_desc.on_action - } - } - if = { - limit = { has_character_modifier = vizier_extravagance_t4_activities_modifier } - remove_character_modifier = vizier_extravagance_t4_activities_modifier - add_character_modifier = { - modifier = vizier_extravagance_t4_activities_modifier - desc = vizier_extravagance_t4_activities_modifier_custom_desc.on_action - } - } - if = { - limit = { has_character_modifier = vizier_extravagance_t4_property_modifier } - remove_character_modifier = vizier_extravagance_t4_property_modifier - add_character_modifier = { - modifier = vizier_extravagance_t4_property_modifier - desc = vizier_extravagance_t4_property_modifier_custom_desc.on_action - } - } - if = { - limit = { has_character_modifier = vizier_extravagance_t4_charity_modifier } - remove_character_modifier = vizier_extravagance_t4_charity_modifier - add_character_modifier = { - modifier = vizier_extravagance_t4_charity_modifier - desc = vizier_extravagance_t4_charity_modifier_custom_desc.on_action - } - } - } - } - } - } -} - -# Primary Title has changed -# root = character -# scope:previous_title = previous primary title held by character -# Not called if new primary title is the same as the previous primary title -on_primary_title_change = { -}