feudalize_holding_interaction = { category = interaction_category_uncategorized hidden = yes special_interaction = feudalize_holding desc = feudalize_holding_interaction_desc target_type = title target_filter = actor_domain_titles auto_accept = yes is_shown = { scope:actor = { this = scope:recipient NOR = { government_has_flag = government_is_tribal government_has_flag = government_is_nomadic government_has_flag = government_is_true_herder } } } can_be_picked_title = { scope:target = { holder = scope:actor is_capital_barony = no # we'll use the county in that case trigger_if = { limit = { tier <= tier_county } title_province = { OR = { has_holding_type = tribal_holding has_holding_type = nomad_holding has_holding_type = herder_holding } } } trigger_else = { custom_description = { text = "feudalize_holding_interaction_title_not_county_or_below" always = no } } } } has_valid_target_showing_failures_only = { scope:target = { trigger_if = { limit = { tier <= tier_county } title_province = { barony_controller = scope:actor has_ongoing_construction = no } } } } cost = { treasury_or_gold = { scope:actor = { if = { limit = { scope:target.county = { has_variable = was_razed } } add = { value = 50 desc = BASE } } else_if = { limit = { scope:target.county = { culture = scope:actor.culture } } add = { value = 200 desc = BASE } } else = { add = { value = feudalize_holding_interaction_cost desc = BASE } } if = { limit = { # More expensive for admin to make barbarians civilized... government_has_flag = government_is_administrative } add = { value = feudalize_holding_interaction_cost multiply = 0.25 desc = has_admin_government } if = { limit = { # Admin get a bonus for high bureaucracy levels OR = { has_realm_law = imperial_bureaucracy_2 has_realm_law = imperial_bureaucracy_3 } } subtract = { value = feudalize_holding_interaction_cost multiply = { value = 0.1 if = { limit = { has_realm_law = imperial_bureaucracy_3 } add = 0.15 } } desc = imperial_bureaucracy } } } } } } on_accept = { scope:actor = { send_interface_toast = { type = event_toast_effect_good title = feudalize_holding_interaction_notification right_icon = scope:actor if = { limit = { scope:target.title_province = { OR = { has_holding_type = nomad_holding has_holding_type = herder_holding } } } if = { limit = { OR = { scope:target.county.culture = scope:actor.culture scope:target.county = { has_variable = was_razed } } } } else_if = { limit = { OR = { government_has_flag = government_is_tribal scope:target.county.culture = { has_same_culture_heritage = scope:actor.culture } } } scope:target.county = { add_county_modifier = { modifier = mpo_feudalize_nomadic_land_modifier years = 5 } } } else = { scope:target.county = { add_county_modifier = { modifier = mpo_feudalize_nomadic_land_modifier years = 30 } } } # SILK ROAD scope:target = { tgp_silk_road_feudalize_holding_effect = yes } } if = { limit = { exists = scope:target.title_province } scope:target.title_province = { set_holding_type = castle_holding } } if = { limit = { scope:target = { title_province = { geographical_region = geographical_region:mpo_region_permafrost } } } if = { limit = { scope:target = { has_county_modifier = mpo_siberian_permafrost_modifier } } scope:target = { remove_county_modifier = mpo_siberian_permafrost_modifier } } else_if = { limit = { scope:target = { has_county_modifier = mpo_siberian_permafrost_modifier_bad } } scope:target = { remove_county_modifier = mpo_siberian_permafrost_modifier_bad } } } } } } # Interaction frequency determined by code, do not change ai_frequency = 0 # Used to determine which holding should be feudalized over another AND how important this AI goal is compared to others, like creating titles and constructing new holdings ai_will_do = { base = 1500 } } tribalize_holding_interaction = { category = interaction_category_uncategorized hidden = yes special_interaction = tribalize_holding desc = tribalize_holding_interaction_desc target_type = title target_filter = actor_domain_titles auto_accept = yes is_shown = { scope:actor = { this = scope:recipient government_has_flag = government_is_tribal } } can_be_picked_title = { scope:target = { holder = scope:actor is_capital_barony = no # we'll use the county in that case trigger_if = { limit = { tier <= tier_county } title_province = { OR = { has_holding_type = nomad_holding has_holding_type = herder_holding } } } trigger_else = { custom_description = { text = "feudalize_holding_interaction_title_not_county_or_below" always = no } } } } has_valid_target_showing_failures_only = { scope:target = { trigger_if = { limit = { tier <= tier_county } title_province = { barony_controller = scope:actor has_ongoing_construction = no } } } } cost = { gold = { scope:actor = { if = { limit = { scope:target.county = { has_variable = was_razed } } add = { value = 15 desc = BASE } } else = { add = { value = 50 desc = BASE } } } } prestige = { scope:actor = { if = { limit = { scope:target.county = { has_variable = was_razed } } add = { value = 25 desc = BASE } } else_if = { limit = { scope:target.county.culture = scope:actor.culture } add = { value = 50 desc = BASE } } else_if = { limit = { scope:target.county.culture = { has_same_culture_heritage = scope:actor.culture } } add = { value = 100 desc = BASE } } else = { add = { value = 300 desc = BASE } } } } } on_accept = { scope:actor = { send_interface_toast = { type = event_toast_effect_good title = feudalize_holding_interaction_notification right_icon = scope:actor if = { limit = { OR = { scope:target.county.culture = scope:actor.culture scope:target.county = { has_variable = was_razed } } } } else = { scope:target.county = { add_county_modifier = { modifier = mpo_feudalize_nomadic_land_modifier years = 5 } } } if = { limit = { exists = scope:target.title_province } scope:target.title_province = { set_holding_type = tribal_holding } } if = { limit = { scope:target = { title_province = { geographical_region = geographical_region:mpo_region_permafrost } } } if = { limit = { scope:target = { has_county_modifier = mpo_siberian_permafrost_modifier } } scope:target = { remove_county_modifier = mpo_siberian_permafrost_modifier } } else_if = { limit = { scope:target = { has_county_modifier = mpo_siberian_permafrost_modifier_bad } } scope:target = { remove_county_modifier = mpo_siberian_permafrost_modifier_bad } } } } } } # Interaction frequency determined by code, do not change ai_frequency = 0 # Used to determine which holding should be feudalized over another AND how important this AI goal is compared to others, like creating titles and constructing new holdings ai_will_do = { base = 1500 } } support_feudalize_tribal_holding_interaction = { category = interaction_category_vassal icon = request_funding_interaction desc = support_feudalize_tribal_holding_interaction_desc target_type = title target_filter = recipient_domain_titles auto_accept = yes is_shown = { scope:actor = { NOR = { government_has_flag = government_is_tribal government_has_flag = government_is_nomadic } } scope:recipient = { target_is_liege_or_above = scope:actor NOR = { government_has_flag = government_is_tribal government_has_flag = government_is_nomadic } this != scope:actor any_held_title = { tier <= tier_county title_province = { OR = { has_holding_type = tribal_holding has_holding_type = nomad_holding has_holding_type = herder_holding } } } } } can_be_picked_title = { scope:target = { is_capital_barony = no # we'll use the county in that case trigger_if = { limit = { tier <= tier_county } title_province = { barony_controller = scope:recipient has_ongoing_construction = no } } } } has_valid_target_showing_failures_only = { scope:target = { trigger_if = { limit = { tier <= tier_county } title_province = { OR = { has_holding_type = tribal_holding has_holding_type = nomad_holding has_holding_type = herder_holding } } } trigger_else = { custom_description = { text = "feudalize_holding_interaction_title_not_county_or_below" always = no } } } } cost = { gold = { value = 0 scope:actor = { if = { limit = { has_treasury = no } add = { value = feudalize_holding_interaction_cost desc = BASE } if = { limit = { # More expensive for admin to make these barbarians civilized... government_has_flag = government_is_administrative } add = { value = feudalize_holding_interaction_cost multiply = 0.25 desc = has_admin_government } if = { limit = { # Admin get a bonus for high bureaucracy levels OR = { has_realm_law = imperial_bureaucracy_2 has_realm_law = imperial_bureaucracy_3 } } subtract = { value = feudalize_holding_interaction_cost multiply = { value = 0.1 if = { limit = { has_realm_law = imperial_bureaucracy_3 } add = 0.15 } } desc = imperial_bureaucracy } } } } } } treasury = { value = 0 scope:actor = { if = { limit = { has_treasury = yes } add = { value = feudalize_holding_interaction_cost desc = BASE } if = { limit = { # More expensive for admin to make these barbarians civilized... government_has_flag = government_is_administrative } add = { value = feudalize_holding_interaction_cost multiply = 0.25 desc = has_admin_government } if = { limit = { # Admin get a bonus for high bureaucracy levels OR = { has_realm_law = imperial_bureaucracy_2 has_realm_law = imperial_bureaucracy_3 } } subtract = { value = feudalize_holding_interaction_cost multiply = { value = 0.1 if = { limit = { has_realm_law = imperial_bureaucracy_3 } add = 0.15 } } desc = imperial_bureaucracy } } } } } } } is_highlighted = { # Highlight the interaction if we have the gold to spare scope:actor = { gold >= { value = feudalize_holding_interaction_cost if = { limit = { # More expensive for admin to convert these... Barbarians... government_has_flag = government_is_administrative } multiply = { value = 1.25 desc = has_admin_government } } } } } on_accept = { scope:recipient = { # Add some opinion to make it worthwhile add_opinion = { target = scope:actor modifier = grateful_opinion opinion = 30 } if = { limit = { scope:target.title_province = { OR = { has_holding_type = nomad_holding has_holding_type = herder_holding } } } if = { limit = { OR = { scope:target.culture = scope:recipient.culture scope:target = { has_variable = was_razed } } } } else_if = { limit = { OR = { government_has_flag = government_is_tribal scope:target.culture = { has_same_culture_heritage = scope:recipient.culture } } } scope:target = { add_county_modifier = { modifier = mpo_feudalize_nomadic_land_modifier years = 5 } } } else = { scope:target = { add_county_modifier = { modifier = mpo_feudalize_nomadic_land_modifier years = 30 } } } # SILK ROAD scope:target = { tgp_silk_road_feudalize_holding_effect = yes } } # Notify actor and recipient scope:actor = { if = { #Temple Citadel limit = { government_has_flag = government_is_mandala } send_interface_toast = { type = event_toast_effect_good title = sanctified_holding_interaction_notification left_icon = scope:actor right_icon = scope:target if = { limit = { exists = scope:target.title_province } scope:target.title_province = { set_holding_type = temple_citadel_holding } } mandala_piety_gain_effect = { PIETY_AMOUNT = massive_piety_gain } add_legitimacy_effect = { LEGITIMACY = medium_legitimacy_gain } } hidden_effect = { scope:recipient = { send_interface_toast = { type = event_toast_effect_good title = liege_sanctified_holding_interaction_notification left_icon = scope:actor right_icon = scope:target show_as_tooltip = { if = { limit = { exists = scope:target.title_province } scope:target.title_province = { set_holding_type = temple_citadel_holding } } } } } } } else = { #Castle send_interface_toast = { type = event_toast_effect_good title = feudalize_holding_interaction_notification left_icon = scope:actor right_icon = scope:target if = { limit = { exists = scope:target.title_province } scope:target.title_province = { set_holding_type = castle_holding } } add_legitimacy_effect = { LEGITIMACY = medium_legitimacy_gain } } hidden_effect = { scope:recipient = { send_interface_toast = { type = event_toast_effect_good title = liege_feudalized_holding_interaction_notification left_icon = scope:actor right_icon = scope:target show_as_tooltip = { if = { limit = { exists = scope:target.title_province } scope:target.title_province = { set_holding_type = castle_holding } } } } } } } } } scope:actor = { # If you are admin, you get some influence for your efforts if = { limit = { government_has_flag = government_is_administrative } change_influence = medium_influence_gain } } } # The AI doesn't check this very often - So if they have more important expenses, they will put their gold to better use first. ai_frequency_by_tier = { barony = 0 county = 0 duchy = 72 kingdom = 72 empire = 72 hegemony = 72 } ai_targets = { ai_recipients = vassals max = 10 } ai_potential = { # Some basic triggers is_at_war = no is_adult = yes # The AI only does this if they have plenty of gold to spare gold >= { value = feudalize_holding_interaction_cost multiply = 4 } # Warring AI don't do this - They want to spend their gold on war! ai_has_warlike_personality = no # Piety and Legitimacy, you say... ? ai_has_pious_builder_personality = yes NOT = { has_variable = conqueror } } ai_will_do = { base = 25 modifier = { scope:actor = { ai_has_economical_boom_personality = yes } add = 50 } modifier = { scope:actor = { ai_has_pious_builder_personality = yes } add = 100 } } } turn_subject_into_mandala_interaction = { category = interaction_category_vassal icon = icon_scheme_coerce_tributary ai_maybe = yes ai_min_reply_days = 4 ai_max_reply_days = 9 can_send_despite_rejection = yes ai_accept_negotiation = yes popup_on_receive = yes common_interaction = no interface_priority = 4 ai_targets = { ai_recipients = vassals } ai_target_quick_trigger = { adult = yes } ai_frequency_by_tier = { barony = 0 county = 0 duchy = 12 kingdom = 12 empire = 12 hegemony = 12 } desc = turn_subject_into_mandala_interaction_desc is_shown = { scope:actor = { government_has_flag = government_is_mandala } scope:recipient = { NOT = { government_has_flag = government_is_mandala } is_ai = yes highest_held_title_tier >= tier_county is_landed = yes is_ruler = yes OR = { liege = scope:actor AND = { overlord = scope:actor scope:actor = { has_realm_law_flag = can_convert_all_subjects_to_mandalas } } } } } cooldown_against_recipient = { years = 10 } is_valid_showing_failures_only = { #Dharmic Mandalas require Dharmic converts #Reformed Pagan Mandalas require reformed faiths scope:actor.religion = { switch = { trigger = is_in_family rf_eastern = { scope:recipient.religion = { is_in_family = rf_eastern } } rf_pagan = { scope:recipient.faith = { NOT = { has_doctrine_parameter = unreformed } } scope:recipient.religion = { is_in_family = rf_pagan } } } } scope:recipient = { NOT = { has_strong_hook = scope:actor } is_at_war = no } scope:actor = { is_at_war = no } custom_tooltip = { text = cannot_take_overt_hostile_actions_against_diarch.tt NOT = { scope:recipient ?= scope:actor.diarch } } custom_tooltip = { text = head_of_faith_unable_to_change_government_desc NOT = { scope:recipient = { faith.religious_head ?= this } } } } #Spend piety send_option = { flag = piety is_valid = { scope:actor.piety >= piety_bribe_value } localization = PAY_PIETY current_description = { # Triggered desc so that we don't get a weird double tooltip. triggered_desc = { trigger = { scope:actor.piety >= piety_bribe_value } desc = SCHEME_AGENT_PIETY_VALID } } } #Use hook send_option = { is_valid = { scope:actor = { has_usable_hook = scope:recipient } } flag = hook localization = SCHEME_HOOK } should_use_extra_icon = { scope:actor = { has_usable_hook = scope:recipient } } extra_icon = "gfx/interface/icons/character_interactions/hook_icon.dds" send_options_exclusive = no auto_accept = { custom_description = { text = "spending_hook" subject = scope:actor object = scope:recipient scope:hook = yes } } on_send = { scope:recipient = { primary_title = { save_scope_as = demanded_mandala } trigger_event = { id = tgp_east_asia_interaction_events.1002 days = 5 } } } on_accept = { show_as_tooltip = { change_to_mandala_interaction_effect = yes } } on_decline = { scope:recipient = { custom_tooltip = demand_mandala_interaction_vassal_refuses } } ai_potential = { government_has_flag = government_is_mandala is_adult = yes } ai_will_do = { base = 100 modifier = { factor = 0 scope:recipient = { highest_held_title_tier >= tier_county } gold >= 300 } modifier = { factor = 0 scope:recipient = { highest_held_title_tier >= tier_duchy } gold >= 600 } modifier = { factor = 0 scope:recipient = { highest_held_title_tier >= tier_kingdom } gold >= 2000 } } ai_accept = { base = -50 turn_subject_into_mandala_acceptance_modifier = yes } }