2518 lines
60 KiB
Text
2518 lines
60 KiB
Text
# As a Supporter, demand that a Muslim ruler recognize your authority
|
|
# Success makes the Strengthen the Caliphate struggle decision easier to take
|
|
#fp3_demand_submission_interaction = {
|
|
# icon = demand_submission
|
|
# category = interaction_category_religion
|
|
# popup_on_receive = yes
|
|
# pause_on_receive = yes
|
|
# can_send_despite_rejection = yes
|
|
# ai_maybe = yes
|
|
# desc = fp3_demand_submission_interaction_desc
|
|
#
|
|
# greeting = positive
|
|
# notification_text = DEMAND_SUBMISSION_NOTIFICATION
|
|
#
|
|
# is_available = {
|
|
# trigger_if = {
|
|
# limit = { is_ai = yes }
|
|
# is_physically_able = yes
|
|
# }
|
|
# }
|
|
#
|
|
# is_shown = {
|
|
# scope:actor != scope:recipient
|
|
# struggle:persian_struggle ?= { has_struggle_phase_parameter = demand_submission_interaction_unlocked }
|
|
# scope:actor = { has_title = title:d_sunni }
|
|
# scope:recipient = {
|
|
# faith.religious_head ?= scope:actor
|
|
# has_trait = fp3_struggle_supporter
|
|
# any_character_struggle = { this = struggle:persian_struggle }
|
|
# }
|
|
# }
|
|
#
|
|
# cooldown_against_recipient = { years = 10 }
|
|
#
|
|
# ai_min_reply_days = 2
|
|
# ai_max_reply_days = 7
|
|
#
|
|
# ai_accept = {
|
|
# base = 0
|
|
# # This is more flavorful than "base acceptance"
|
|
# modifier = {
|
|
# desc = DEMAND_SUBMISSION_I_AM_HEAD_OF_FAITH
|
|
# add = 50
|
|
# }
|
|
# ## Piety
|
|
# # How pious are you?
|
|
# modifier = {
|
|
# # (Stolen shamelessly from piety_level_affects_vassalage_acceptance)
|
|
# add = {
|
|
# value = {
|
|
# value = -1
|
|
# add = scope:actor.piety_level
|
|
# }
|
|
# multiply = 10
|
|
# }
|
|
# desc = I_AM_PIOUS
|
|
# # Only matters if they aren't cynical
|
|
# NOT = { scope:recipient = { has_trait = cynical } }
|
|
# }
|
|
# # Are they cynical/zealous?
|
|
# modifier = {
|
|
# desc = ASK_FOR_CONVERSION_RECIPIENT_IS_CYNICAL
|
|
# add = -30
|
|
# scope:recipient = {
|
|
# has_trait = cynical
|
|
# }
|
|
# }
|
|
# modifier = {
|
|
# desc = ASK_FOR_CONVERSION_RECIPIENT_IS_ZEALOUS
|
|
# add = 20
|
|
# scope:recipient = { has_trait = zealous }
|
|
# }
|
|
# # Are you giving them extra piety?
|
|
# modifier = {
|
|
# add = 30
|
|
# desc = STRUGGLE_MARRIAGE_ACCEPTANCE_USING_PIETY_AS_CURRENCY
|
|
# scope:piety_cost_reduction ?= yes
|
|
# }
|
|
# ## Opinion
|
|
# # Do they like you?
|
|
# opinion_modifier = {
|
|
# who = scope:recipient
|
|
# opinion_target = scope:actor
|
|
# multiplier = 0.25
|
|
# desc = AI_OPINION_REASON
|
|
# }
|
|
# ## Personality
|
|
# # Are they ambitious?
|
|
# modifier = {
|
|
# desc = DEMAND_SUBMISSION_RECIPIENT_IS_AMBITIOUS
|
|
# add = -30
|
|
# scope:recipient = { has_trait = ambitious }
|
|
# }
|
|
# # Are they content?
|
|
# modifier = {
|
|
# desc = DEMAND_SUBMISSION_RECIPIENT_IS_CONTENT
|
|
# add = 10
|
|
# scope:recipient = { has_trait = content }
|
|
# }
|
|
# # Are they stubborn?
|
|
# modifier = {
|
|
# desc = DEMAND_SUBMISSION_RECIPIENT_IS_STUBBORN
|
|
# add = -10
|
|
# scope:recipient = { has_trait = stubborn }
|
|
# }
|
|
# # Are they arrogant?
|
|
# modifier = {
|
|
# desc = DEMAND_SUBMISSION_RECIPIENT_IS_ARROGANT
|
|
# add = -10
|
|
# scope:recipient = { has_trait = arrogant }
|
|
# }
|
|
# # Are they humble?
|
|
# modifier = {
|
|
# desc = DEMAND_SUBMISSION_RECIPIENT_IS_HUMBLE
|
|
# add = 10
|
|
# scope:recipient = { has_trait = humble }
|
|
# }
|
|
# # Are they trusting?
|
|
# modifier = {
|
|
# desc = DEMAND_SUBMISSION_RECIPIENT_IS_TRUSTING
|
|
# add = 10
|
|
# scope:recipient = { has_trait = trusting }
|
|
# }
|
|
# # Are they paranoid?
|
|
# modifier = {
|
|
# desc = DEMAND_SUBMISSION_RECIPIENT_IS_PARANOID
|
|
# add = -20
|
|
# scope:recipient = { has_trait = paranoid }
|
|
# }
|
|
# # Are they loyal?
|
|
# # Independent rulers should rarely have this trait, but if your predecessor installed a puppet and died, then this makes it easier to demand submission from the puppet
|
|
# modifier = {
|
|
# desc = DEMAND_SUBMISSION_RECIPIENT_IS_LOYAL
|
|
# add = 20
|
|
# scope:recipient = { has_trait = loyal }
|
|
# }
|
|
# ## Realm
|
|
# # Are you stronger/weaker than them?
|
|
# modifier = {
|
|
# add = {
|
|
# value = 1
|
|
# subtract = {
|
|
# value = scope:recipient.max_military_strength # For foreign diplomacy, consider recipients max
|
|
# divide = { value = scope:actor.current_military_strength min = 1 }
|
|
# }
|
|
# multiply = 10
|
|
# }
|
|
# desc = offer_vassalization_interaction_aibehavior_power_tt
|
|
# }
|
|
# # Reign duration
|
|
# modifier = {
|
|
# add = {
|
|
# value = scope:actor.primary_title.title_held_years
|
|
# subtract = 21
|
|
# max = 20
|
|
# }
|
|
# desc = DEMAND_SUBMISSION_SHORT_REIGN
|
|
# }
|
|
# ## Dread
|
|
# modifier = {
|
|
# add = intimidated_halved_reason_value
|
|
# scope:recipient = {
|
|
# has_dread_level_towards = {
|
|
# target = scope:actor
|
|
# level = 1
|
|
# }
|
|
# }
|
|
# desc = INTIMIDATED_REASON
|
|
# }
|
|
# modifier = {
|
|
# add = cowed_halved_reason_value
|
|
# scope:recipient = {
|
|
# has_dread_level_towards = {
|
|
# target = scope:actor
|
|
# level = 2
|
|
# }
|
|
# }
|
|
# desc = COWED_REASON
|
|
# }
|
|
# }
|
|
#
|
|
# on_accept = {
|
|
# scope:actor = {
|
|
# if = {
|
|
# limit = { scope:piety_cost_reduction ?= yes }
|
|
# add_piety = massive_piety_loss
|
|
# }
|
|
# add_hook = {
|
|
# target = scope:recipient
|
|
# type = caliphal_submission_hook
|
|
# }
|
|
# if = {
|
|
# limit = { has_variable = last_explicit_defied_caliph }
|
|
# remove_variable = last_explicit_defied_caliph
|
|
# }
|
|
# trigger_event = fp3_misc_decisions.0010 # Letter event informing player of success
|
|
# }
|
|
# scope:recipient = {
|
|
# if = {
|
|
# limit = { scope:piety_cost_reduction ?= yes }
|
|
# add_piety = massive_piety_gain
|
|
# }
|
|
# }
|
|
#
|
|
# # If we're a clan this interaction affects unity
|
|
# add_clan_unity_interaction_effect = {
|
|
# CHARACTER = scope:actor
|
|
# TARGET = scope:recipient
|
|
# VALUE = medium_unity_gain
|
|
# DESC = clan_unity_forment_revolt.desc
|
|
# REVERSE_NON_HOUSE_TARGET = no
|
|
# }
|
|
# }
|
|
#
|
|
# on_decline = {
|
|
# scope:recipient = {
|
|
# custom_tooltip = DEMAND_SUBMISSION_INSTALL_LOYALIST_WARNING
|
|
# add_piety = medium_piety_loss
|
|
# remove_trait = fp3_struggle_supporter
|
|
# add_trait_force_tooltip = fp3_struggle_detractor
|
|
# # This is for the install loyalist CB discount
|
|
# set_variable = {
|
|
# name = last_explicit_defied_caliph
|
|
# value = scope:actor
|
|
# years = 30
|
|
# }
|
|
# }
|
|
# scope:actor = {
|
|
# trigger_event = fp3_misc_decisions.0011 # Letter event informing player of failure
|
|
# }
|
|
#
|
|
# # If we're a clan this interaction affects unity
|
|
# add_clan_unity_interaction_effect = {
|
|
# CHARACTER = scope:actor
|
|
# TARGET = scope:recipient
|
|
# VALUE = medium_unity_loss
|
|
# DESC = clan_unity_forment_revolt.desc
|
|
# REVERSE_NON_HOUSE_TARGET = no
|
|
# }
|
|
# }
|
|
#
|
|
# # Use piety to increase acceptance
|
|
# send_option = {
|
|
# flag = piety_cost_reduction
|
|
# localization = TRADE_PIETY_FOR_BETTER_AI_ACCEPTANCE
|
|
# }
|
|
# send_options_exclusive = no
|
|
#
|
|
# ai_targets = {
|
|
# ai_recipients = neighboring_rulers
|
|
# }
|
|
#
|
|
# ai_frequency_by_tier = {
|
|
# barony = 0
|
|
# county = 0
|
|
# duchy = 0
|
|
# kingdom = 12
|
|
# empire = 12
|
|
# hegemony = 12
|
|
# }
|
|
#
|
|
# # Very similar to ai_accept, but ignores effects that are < 10 in value for brevity's sake
|
|
# ai_will_do = {
|
|
# # The caliph generally _wants_ to be chucking these out all over the place.
|
|
# ## Basically, the more rulers submit to their authority, the better.
|
|
# ### Subs over drubs, as it were.
|
|
# base = 100
|
|
# # Will demand rulers who were installed via the puppet CB
|
|
# modifier = {
|
|
# add = 200
|
|
# scope:recipient = {
|
|
# has_trait = loyal
|
|
# scope:actor = { has_hook = prev }
|
|
# }
|
|
# }
|
|
# modifier = {
|
|
# add = {
|
|
# value = {
|
|
# value = -1
|
|
# add = scope:actor.piety_level
|
|
# }
|
|
# multiply = 10
|
|
# }
|
|
# NOT = { scope:recipient = { has_trait = cynical } }
|
|
# }
|
|
# modifier = {
|
|
# add = -30
|
|
# scope:recipient = {
|
|
# has_trait = cynical
|
|
# }
|
|
# }
|
|
# modifier = {
|
|
# add = 20
|
|
# scope:recipient = { has_trait = zealous }
|
|
# }
|
|
# opinion_modifier = {
|
|
# who = scope:recipient
|
|
# opinion_target = scope:actor
|
|
# multiplier = 0.25
|
|
# }
|
|
# modifier = {
|
|
# add = -30
|
|
# scope:recipient = { has_trait = ambitious }
|
|
# }
|
|
# modifier = {
|
|
# add = {
|
|
# value = 1
|
|
# subtract = {
|
|
# value = scope:recipient.max_military_strength
|
|
# divide = { value = scope:actor.current_military_strength min = 1 }
|
|
# }
|
|
# multiply = 10
|
|
# }
|
|
# }
|
|
# # Reign duration
|
|
# modifier = {
|
|
# add = {
|
|
# value = scope:actor.primary_title.title_held_years
|
|
# subtract = 21
|
|
# max = 20
|
|
# }
|
|
# }
|
|
# ## Dread
|
|
# modifier = {
|
|
# add = intimidated_halved_reason_value
|
|
# scope:recipient = {
|
|
# has_dread_level_towards = {
|
|
# target = scope:actor
|
|
# level = 1
|
|
# }
|
|
# }
|
|
# }
|
|
# modifier = {
|
|
# add = cowed_halved_reason_value
|
|
# scope:recipient = {
|
|
# has_dread_level_towards = {
|
|
# target = scope:actor
|
|
# level = 2
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
#}
|
|
#
|
|
####################################
|
|
## Request Turkic invasion (can_request_incursion_interaction)
|
|
## By Hugo Cortell
|
|
####################################
|
|
#fp3_request_turkic_invasion_interaction = {
|
|
# interface_priority = 100
|
|
# common_interaction = yes
|
|
# category = interaction_category_hostile
|
|
# cooldown_against_recipient = { years = 2 }
|
|
#
|
|
# icon = request_mercenary
|
|
# desc = fp3_request_turkic_invasion_interaction_desc
|
|
#
|
|
# is_available = {
|
|
# OR = {
|
|
# AND = {
|
|
# has_trait = fp3_struggle_detractor
|
|
# any_character_struggle = { is_struggle_type = persian_struggle }
|
|
# }
|
|
# top_participant_group:dynastic_cycle ?= {
|
|
# participant_group_type = expansion_movement
|
|
# }
|
|
# }
|
|
# trigger_if = {
|
|
# limit = { is_ai = yes }
|
|
# ai_greed <= 25
|
|
# OR = {
|
|
# has_trait = fp3_struggle_detractor
|
|
# AND = {
|
|
# vassal_contract_has_flag = celestial_military_appointment
|
|
# top_participant_group:dynastic_cycle ?= {
|
|
# participant_group_type = expansion_movement
|
|
# }
|
|
# }
|
|
# }
|
|
# NOT = { culture = { has_cultural_pillar = heritage_turkic } }
|
|
# ai_has_builder_or_pious_builder_personality = no
|
|
# is_at_war = no
|
|
# }
|
|
# }
|
|
#
|
|
# is_shown = {
|
|
# scope:recipient = {
|
|
# is_playable_character = yes
|
|
# is_landed = yes
|
|
# trigger_if = {
|
|
# limit = {
|
|
# scope:actor = {
|
|
# top_participant_group:dynastic_cycle ?= {
|
|
# participant_group_type = expansion_movement
|
|
# }
|
|
# }
|
|
# }
|
|
# top_liege = scope:actor.top_liege
|
|
# }
|
|
# trigger_else = {
|
|
# OR = {
|
|
# any_character_struggle = { is_struggle_type = persian_struggle }
|
|
# title:d_sunni.holder ?= this
|
|
# }
|
|
# top_liege ?= this
|
|
#
|
|
# }
|
|
# is_ai = yes
|
|
# }
|
|
# scope:actor != scope:recipient
|
|
# }
|
|
#
|
|
# is_valid_showing_failures_only = {
|
|
# }
|
|
#
|
|
# populate_recipient_list = {
|
|
# scope:actor.top_liege = {
|
|
# every_independent_ruler = {
|
|
# limit = {
|
|
# is_ai = yes
|
|
# is_landed = yes
|
|
# is_physically_able = yes
|
|
# has_raised_armies = no
|
|
# is_at_war = no
|
|
# in_diplomatic_range = scope:actor
|
|
# highest_held_title_tier >= tier_county
|
|
# NOR = {
|
|
# is_allied_to = scope:recipient
|
|
# has_truce = scope:recipient
|
|
# this = scope:actor
|
|
# this = scope:recipient
|
|
# is_tributary_of = scope:recipient.top_liege
|
|
# }
|
|
# OR = {
|
|
# trigger_if = {
|
|
# limit = {
|
|
# NOT = {
|
|
# scope:actor = {
|
|
# top_participant_group:dynastic_cycle ?= {
|
|
# participant_group_type = expansion_movement
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
# government_has_flag = government_is_clan
|
|
# }
|
|
# government_has_flag = government_is_tribal
|
|
# government_has_flag = government_is_nomadic
|
|
# government_has_flag = government_is_wanua
|
|
# government_has_flag = government_is_landless_adventurer
|
|
# }
|
|
# trigger_if = {
|
|
# limit = {
|
|
# scope:actor = {
|
|
# top_participant_group:dynastic_cycle ?= {
|
|
# participant_group_type = expansion_movement
|
|
# }
|
|
# }
|
|
# }
|
|
# any_neighboring_top_liege_realm = {
|
|
# OR = {
|
|
# title:h_china ?= this
|
|
# any_title_to_title_neighboring_empire = {
|
|
# title:h_china ?= hegemony
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
# trigger_else = {
|
|
# culture = {
|
|
# OR = {
|
|
# has_cultural_pillar = heritage_turkic
|
|
# has_cultural_pillar = heritage_mongolic
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
# add_to_list = characters
|
|
# }
|
|
# }
|
|
# }
|
|
#
|
|
# send_options_exclusive = no
|
|
#
|
|
# send_option = {
|
|
# flag = war_support
|
|
# localization = fp3_request_turkic_invasion_interaction_option_join_war
|
|
# current_description = fp3_request_turkic_invasion_interaction_option_join_war_desc
|
|
# is_shown = { exists = scope:secondary_recipient }
|
|
# is_valid = {
|
|
# scope:actor = {
|
|
# NOR = {
|
|
# is_at_war_with = scope:recipient
|
|
# is_allied_to = scope:recipient
|
|
# has_truce = scope:recipient
|
|
# }
|
|
# tgp_is_hegemon_or_below_in_dynastic_cycle_trigger = no
|
|
# }
|
|
# }
|
|
# }
|
|
#
|
|
# send_option = {
|
|
# flag = financial_support
|
|
# localization = fp3_request_turkic_invasion_interaction_option_more_gold
|
|
# current_description = fp3_request_turkic_invasion_interaction_option_more_gold_desc
|
|
# is_shown = { exists = scope:secondary_recipient }
|
|
# is_valid = {
|
|
# custom_description = {
|
|
# text = fp3_please_dont_give_me_negative_gold
|
|
# fp3_request_invasion_troop_value_estimate > 0
|
|
# }
|
|
# }
|
|
# }
|
|
#
|
|
# cost = {
|
|
# gold = {
|
|
# value = {
|
|
# value = scope:secondary_recipient.max_military_strength
|
|
# divide = 20
|
|
# round = yes
|
|
# }
|
|
# add = {
|
|
# if = {
|
|
# limit = { scope:financial_support = yes }
|
|
# add = fp3_request_invasion_troop_value_estimate
|
|
# }
|
|
# }
|
|
# if = {
|
|
# limit = {
|
|
# scope:recipient = { has_title = title:d_sunni }
|
|
# struggle:persian_struggle = { has_struggle_phase_parameter = cheaper_incursions_vs_caliph }
|
|
# }
|
|
# divide = 2
|
|
# }
|
|
# }
|
|
# }
|
|
#
|
|
# on_accept = {
|
|
# if = {
|
|
# limit = { exists = scope:secondary_recipient }
|
|
#
|
|
# scope:recipient = {
|
|
# if = {
|
|
# limit = {
|
|
# scope:actor = {
|
|
# top_participant_group:dynastic_cycle ?= {
|
|
# participant_group_type = expansion_movement
|
|
# }
|
|
# }
|
|
# }
|
|
# capital_county = {
|
|
# save_scope_as = invasion_target_title
|
|
# }
|
|
# }
|
|
# else = {
|
|
# if = {
|
|
# limit = {
|
|
# any_realm_county = {
|
|
# this != scope:recipient.capital_county
|
|
# any_neighboring_county = { holder.top_liege = scope:secondary_recipient.top_liege }
|
|
# any_county_province = { geographical_region = world_persian_empire }
|
|
# NOR = {
|
|
# holder = scope:actor
|
|
# holder = { is_vassal_or_below_of = scope:actor }
|
|
# }
|
|
# }
|
|
# }
|
|
# random_realm_county = {
|
|
# limit = {
|
|
# this != scope:recipient.capital_county
|
|
# any_neighboring_county = { holder.top_liege = scope:secondary_recipient.top_liege }
|
|
# any_county_province = { geographical_region = world_persian_empire }
|
|
# NOR = {
|
|
# holder = scope:actor
|
|
# holder = { is_vassal_or_below_of = scope:actor }
|
|
# }
|
|
# }
|
|
# save_scope_as = invasion_target_title
|
|
# }
|
|
# }
|
|
# else_if = {
|
|
# limit = {
|
|
# any_realm_county = {
|
|
# this != scope:recipient.capital_county
|
|
# any_neighboring_county = {
|
|
# any_county_province = { geographical_region = world_persian_empire }
|
|
# holder.top_liege != prev.holder.top_liege
|
|
# }
|
|
# NOR = {
|
|
# holder = scope:actor
|
|
# holder = { is_vassal_or_below_of = scope:actor }
|
|
# }
|
|
# }
|
|
# }
|
|
# random_realm_county = {
|
|
# limit = {
|
|
# this != scope:recipient.capital_county
|
|
# any_neighboring_county = {
|
|
# any_county_province = { geographical_region = world_persian_empire }
|
|
# holder.top_liege != prev.holder.top_liege
|
|
# }
|
|
# NOR = {
|
|
# holder = scope:actor
|
|
# holder = { is_vassal_or_below_of = scope:actor }
|
|
# }
|
|
# }
|
|
# save_scope_as = invasion_target_title
|
|
# }
|
|
# }
|
|
# else_if = {
|
|
# limit = {
|
|
# any_realm_county = {
|
|
# this != scope:recipient.capital_county
|
|
# NOR = {
|
|
# holder = scope:actor
|
|
# holder = { is_vassal_or_below_of = scope:actor }
|
|
# }
|
|
# }
|
|
# }
|
|
# random_realm_county = {
|
|
# limit = {
|
|
# this != scope:recipient.capital_county
|
|
# NOR = {
|
|
# holder = scope:actor
|
|
# holder = { is_vassal_or_below_of = scope:actor }
|
|
# }
|
|
# }
|
|
# save_scope_as = invasion_target_title
|
|
# }
|
|
# }
|
|
# else_if = {
|
|
# limit = {
|
|
# any_realm_county = {
|
|
# NOR = {
|
|
# holder = scope:actor
|
|
# holder = { is_vassal_or_below_of = scope:actor }
|
|
# }
|
|
# }
|
|
# }
|
|
# random_realm_county = {
|
|
# limit = {
|
|
# NOR = {
|
|
# holder = scope:actor
|
|
# holder = { is_vassal_or_below_of = scope:actor }
|
|
# }
|
|
# }
|
|
# save_scope_as = invasion_target_title
|
|
# }
|
|
# }
|
|
# else = {
|
|
# random_realm_county = { save_scope_as = invasion_target_title }
|
|
# }
|
|
# }
|
|
#
|
|
# scope:invasion_target_title.duchy = { save_scope_as = text_title }
|
|
#
|
|
# hidden_effect = { # Not worth cluttering the UI with
|
|
# add_opinion = {
|
|
# modifier = fp3_incited_conflict
|
|
# target = scope:actor
|
|
# }
|
|
# add_opinion = {
|
|
# modifier = declared_war
|
|
# target = scope:secondary_recipient
|
|
# }
|
|
# }
|
|
# }
|
|
#
|
|
# scope:secondary_recipient = {
|
|
# add_gold = {
|
|
# value = {
|
|
# value = scope:secondary_recipient.max_military_strength
|
|
# divide = 20
|
|
# round = yes
|
|
# }
|
|
# add = {
|
|
# if = {
|
|
# limit = { scope:financial_support = yes }
|
|
# add = fp3_request_invasion_troop_value_estimate
|
|
# }
|
|
# }
|
|
# if = {
|
|
# limit = {
|
|
# scope:recipient = { has_title = title:d_sunni }
|
|
# struggle:persian_struggle = { has_struggle_phase_parameter = cheaper_incursions_vs_caliph }
|
|
# }
|
|
# divide = 2
|
|
# }
|
|
# }
|
|
# start_war = {
|
|
# casus_belli = fp3_turkic_invasion_cb
|
|
# target = scope:recipient
|
|
# target_title = scope:invasion_target_title.duchy
|
|
# }
|
|
# custom_tooltip = fp3_turkic_invasion_cb_result_tt
|
|
# if = {
|
|
# limit = {
|
|
# scope:financial_support = yes
|
|
# }
|
|
# trigger_event = fp3_misc_decisions.0006
|
|
# if = {
|
|
# limit = {
|
|
# has_mpo_dlc_trigger = yes
|
|
# }
|
|
# show_as_tooltip = {
|
|
# spawn_army = {
|
|
# men_at_arms = {
|
|
# type = horse_archers
|
|
# stacks = fp3_request_invasion_troop_value_bonus_troops
|
|
# }
|
|
# men_at_arms = {
|
|
# type = steppe_raiders
|
|
# stacks = fp3_request_invasion_troop_value_bonus_troops
|
|
# }
|
|
# men_at_arms = {
|
|
# type = light_horsemen
|
|
# stacks = fp3_request_invasion_troop_value_bonus_troops
|
|
# }
|
|
# men_at_arms = {
|
|
# type = nomadic_riders
|
|
# stacks = fp3_request_invasion_troop_value_bonus_levy_nomads
|
|
# }
|
|
# location = capital_province
|
|
# uses_supply = yes
|
|
# inheritable = no
|
|
# name = turkic_tribal_event_troops
|
|
# }
|
|
# }
|
|
# }
|
|
# else = {
|
|
# show_as_tooltip = {
|
|
# spawn_army = {
|
|
# men_at_arms = {
|
|
# type = horse_archers
|
|
# stacks = fp3_request_invasion_troop_value_bonus_troops
|
|
# }
|
|
# men_at_arms = {
|
|
# type = light_horsemen
|
|
# stacks = fp3_request_invasion_troop_value_bonus_troops
|
|
# }
|
|
# levies = fp3_request_invasion_troop_value_bonus_levy_troops
|
|
# location = capital_province
|
|
# uses_supply = yes
|
|
# inheritable = no
|
|
# name = turkic_tribal_event_troops
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
# if = {
|
|
# limit = { scope:war_support = yes }
|
|
# custom_tooltip = fp3_request_turkic_invasion_interaction_option_join_war_outcome_tooltip
|
|
# trigger_event = fp3_misc_decisions.0005
|
|
# }
|
|
# }
|
|
#
|
|
# scope:actor = {
|
|
# hidden_effect = {
|
|
# send_interface_toast = {
|
|
# type = event_toast_effect_good
|
|
# title = fp3_request_turkic_invasion_interaction_accept_notification.t
|
|
# left_icon = scope:secondary_recipient
|
|
# right_icon = scope:recipient
|
|
#
|
|
# show_as_tooltip = {
|
|
# custom_tooltip = fp3_request_turkic_invasion_interaction_accept_notification.desc
|
|
# }
|
|
# }
|
|
# }
|
|
# if = {
|
|
# limit = {
|
|
# top_participant_group:dynastic_cycle ?= {
|
|
# participant_group_type = expansion_movement
|
|
# }
|
|
# }
|
|
# add_secret = {
|
|
# target = scope:recipient
|
|
# type = secret_request_incursion
|
|
# }
|
|
# scope:secondary_recipient = {
|
|
# add_secret = {
|
|
# target = scope:recipient
|
|
# type = secret_request_incursion
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
#
|
|
# scope:recipient = {
|
|
# add_character_flag = {
|
|
# flag = incursion_ai_pacing
|
|
# years = 5
|
|
# }
|
|
# hidden_effect = {
|
|
# send_interface_toast = {
|
|
# type = event_toast_effect_bad
|
|
# title = fp3_request_turkic_invasion_interaction_accept_notification.t
|
|
# left_icon = scope:secondary_recipient
|
|
# right_icon = scope:actor
|
|
#
|
|
# show_as_tooltip = {
|
|
# custom_tooltip = fp3_request_turkic_invasion_interaction_accept_target_notification.desc
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
#
|
|
# use_diplomatic_range = yes
|
|
#
|
|
# ai_accept = {
|
|
# base = 0
|
|
#
|
|
# # Relationships: actor -> recipient / We avoid more relationship checks for balance reasons (and because important decisions tend to care little for relationships)
|
|
# modifier = { # Rivalry modifier.
|
|
# desc = offer_vassalization_interaction_aibehavior_rival_tt_2
|
|
# trigger = {
|
|
# scope:secondary_recipient = {
|
|
# has_relation_rival = scope:actor
|
|
# NOT = { has_relation_nemesis = scope:actor }
|
|
# }
|
|
# }
|
|
# add = -10
|
|
# }
|
|
# modifier = { # Nemesis modifier.
|
|
# desc = offer_vassalization_interaction_aibehavior_nemesis_tt_2
|
|
# trigger = {
|
|
# scope:secondary_recipient = {
|
|
# has_relation_nemesis = scope:actor
|
|
# }
|
|
# }
|
|
# add = -100
|
|
# }
|
|
# modifier = { # Same Dynasty modifier.
|
|
# desc = offer_vassalization_interaction_aibehavior_dynasty_tt_2
|
|
# trigger = {
|
|
# scope:secondary_recipient = {
|
|
# dynasty = scope:actor.dynasty
|
|
# }
|
|
# }
|
|
# add = 10
|
|
# }
|
|
#
|
|
# # Compare Opinion modifier
|
|
# opinion_modifier = {
|
|
# who = scope:secondary_recipient
|
|
# opinion_target = scope:actor
|
|
# multiplier = 0.25
|
|
# }
|
|
#
|
|
# # Pledged to help in invasion
|
|
# modifier = {
|
|
# add = {
|
|
# value = scope:actor.max_military_strength
|
|
# divide = 70
|
|
# round = yes
|
|
# }
|
|
# desc = HAS_YOUR_SUPPORT_REASON
|
|
# scope:war_support = yes
|
|
# }
|
|
#
|
|
# # Relative power (taken from PT interaction)
|
|
# modifier = { # A lot less levies than scope:secondary_recipient
|
|
# add = -100
|
|
# scope:secondary_recipient.max_military_strength <= scope:recipient.purchase_truce_interaction_recipient_far_weaker_value
|
|
# desc = fp3_RTI_AI_RECIPIENT_IS_MUCH_WEAKER
|
|
# }
|
|
# modifier = { # Few less levies than scope:secondary_recipient
|
|
# add = -75
|
|
# scope:secondary_recipient.max_military_strength > scope:recipient.purchase_truce_interaction_recipient_far_weaker_value
|
|
# scope:secondary_recipient.max_military_strength <= scope:recipient.purchase_truce_interaction_recipient_somewhat_weaker_value
|
|
# desc = fp3_RTI_AI_RECIPIENT_IS_SOMEWHAT_WEAKER
|
|
# }
|
|
# modifier = { # Roughly equal levies with scope:secondary_recipient
|
|
# add = 10
|
|
# scope:secondary_recipient.max_military_strength > scope:recipient.purchase_truce_interaction_recipient_somewhat_weaker_value
|
|
# scope:secondary_recipient.max_military_strength <= scope:recipient.purchase_truce_interaction_recipient_somewhat_stronger_value
|
|
# desc = fp3_RTI_AI_RECIPIENT_IS_ROUGHLY_EQUAL
|
|
# }
|
|
# modifier = { # More levies than scope:secondary_recipient
|
|
# add = 50
|
|
# scope:secondary_recipient.max_military_strength > scope:recipient.purchase_truce_interaction_recipient_somewhat_stronger_value
|
|
# scope:secondary_recipient.max_military_strength <= scope:recipient.purchase_truce_interaction_recipient_far_stronger_value
|
|
# desc = fp3_RTI_AI_RECIPIENT_IS_SOMEWHAT_STRONGER
|
|
# }
|
|
# modifier = { # Many more levies than scope:secondary_recipient
|
|
# add = 75
|
|
# scope:secondary_recipient.max_military_strength > scope:recipient.purchase_truce_interaction_recipient_far_stronger_value
|
|
# desc = fp3_RTI_AI_RECIPIENT_IS_MUCH_STRONGER
|
|
# }
|
|
#
|
|
# # AI who are in debt will take whatever windfalls they can.
|
|
# modifier = {
|
|
# add = {
|
|
# value = scope:secondary_recipient.debt_level
|
|
# add = 1 # Our first level is 0, so we add one to always get a positive number.
|
|
# multiply = 10
|
|
# }
|
|
# debt_level >= 0
|
|
# desc = PT_AI_IS_IN_DEBT
|
|
# }
|
|
#
|
|
# # Pacifist AI don't like raiding
|
|
# modifier = {
|
|
# add = -25
|
|
# scope:secondary_recipient.faith = { has_doctrine_parameter = pacifist }
|
|
# desc = PT_AI_IS_PACIFIST_FAITH_2
|
|
# }
|
|
# modifier = {
|
|
# add = -25
|
|
# scope:secondary_recipient.culture = { has_cultural_parameter = reduced_cost_for_conversion_to_pacifist_faith }
|
|
# desc = PT_AI_IS_PACIFIST_CULTURE_2
|
|
# }
|
|
# # Distance
|
|
# modifier = {
|
|
# add = -25
|
|
# "scope:secondary_recipient.capital_province.squared_distance(scope:recipient.capital_province)" >= squared_distance_medium
|
|
# "scope:secondary_recipient.capital_province.squared_distance(scope:recipient.capital_province)" < squared_distance_almost_massive
|
|
# desc = PT_AI_IS_FAR_AWAY
|
|
# }
|
|
# modifier = {
|
|
# add = -75
|
|
# "scope:secondary_recipient.capital_province.squared_distance(scope:recipient.capital_province)" >= squared_distance_almost_massive
|
|
# desc = PT_AI_IS_VERY_FAR_AWAY
|
|
# }
|
|
# modifier = {
|
|
# add = 20
|
|
# exists = scope:actor.var:movement_power
|
|
# scope:actor.var:movement_power >= very_high_movement_power_value
|
|
# desc = ACTOR_HIGH_MOVEMENT_POWER
|
|
# }
|
|
#
|
|
# # Offered proportional gold
|
|
# modifier = {
|
|
# add = 85
|
|
# scope:financial_support = yes
|
|
# desc = GOLD_REASON
|
|
# }
|
|
#
|
|
# # AI value mod
|
|
# ai_value_modifier = {
|
|
# ai_greed = 0.5
|
|
# ai_boldness = 0.25
|
|
# min = 0
|
|
# max = 25
|
|
# }
|
|
# }
|
|
# can_send_despite_rejection = no
|
|
# ai_frequency_by_tier = {
|
|
# barony = 0
|
|
# county = 72
|
|
# duchy = 72
|
|
# kingdom = 36
|
|
# empire = 24
|
|
# hegemony = 24
|
|
# }
|
|
# ai_targets = {
|
|
# ai_recipients = neighboring_rulers
|
|
# ai_recipients = liege
|
|
# }
|
|
# ai_will_do = {
|
|
# base = 0
|
|
#
|
|
# modifier = {
|
|
# add = 50
|
|
# scope:recipient = {
|
|
# has_trait = fp3_struggle_supporter
|
|
# scope:recipient.max_military_strength >= scope:actor.max_military_strength
|
|
# }
|
|
# }
|
|
#
|
|
# modifier = {
|
|
# add = 50
|
|
# title:d_sunni.holder ?= scope:recipient
|
|
# }
|
|
#
|
|
# modifier = {
|
|
# add = 100
|
|
# scope:recipient = {
|
|
# has_relation_rival = scope:actor
|
|
# }
|
|
# }
|
|
#
|
|
# modifier = {
|
|
# factor = 0.1
|
|
# scope:actor.liege ?= scope:recipient
|
|
# }
|
|
#
|
|
# modifier = {
|
|
# factor = 0
|
|
# scope:recipient = {
|
|
# has_character_flag = incursion_ai_pacing
|
|
# }
|
|
# }
|
|
#
|
|
# modifier = {
|
|
# factor = 0
|
|
# scope:recipient = {
|
|
# is_at_war = yes
|
|
# is_ai = no
|
|
# }
|
|
# }
|
|
#
|
|
# modifier = {
|
|
# factor = 0
|
|
# scope:recipient = {
|
|
# is_ai = no
|
|
# is_liege_or_above_of = scope:actor
|
|
# }
|
|
# }
|
|
#
|
|
# modifier = {
|
|
# factor = 0
|
|
# scope:recipient = {
|
|
# OR = {
|
|
# has_relation_friend = scope:actor
|
|
# has_relation_lover = scope:actor
|
|
# opinion = {
|
|
# target = scope:actor
|
|
# value >= 45
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
#}
|
|
#
|
|
####################################
|
|
## Challenge House Head
|
|
## By Hugo Cortell
|
|
## Reworked by Joe Parkin
|
|
####################################
|
|
#fp3_challenge_house_head_interaction = {
|
|
# icon = house_unity_sword
|
|
# category = interaction_category_hostile
|
|
# common_interaction = no
|
|
# ai_min_reply_days = 4
|
|
# ai_max_reply_days = 9
|
|
# popup_on_receive = yes
|
|
# pause_on_receive = yes
|
|
# use_diplomatic_range = no
|
|
#
|
|
# interface_priority = 107
|
|
#
|
|
# desc = fp3_challenge_house_head_interaction_desc
|
|
#
|
|
# notification_text = {
|
|
# first_valid = {
|
|
# triggered_desc = {
|
|
# trigger = { scope:diplomacy = yes }
|
|
# desc = fp3_challenge_house_head_interaction_notification_diplomacy
|
|
# }
|
|
# desc = fp3_challenge_house_head_interaction_notification
|
|
# }
|
|
# }
|
|
#
|
|
# greeting = positive
|
|
#
|
|
# ai_maybe = yes
|
|
#
|
|
# cooldown_against_recipient = { years = 10 }
|
|
#
|
|
# is_available = {
|
|
# OR = {
|
|
# government_has_flag = government_is_clan
|
|
# government_is_japanese_trigger = yes
|
|
# }
|
|
# trigger_if = {
|
|
# limit = { is_ai = yes }
|
|
# is_house_head = no
|
|
# is_physically_able = yes
|
|
# }
|
|
# }
|
|
#
|
|
# is_shown = {
|
|
# has_fp3_dlc_trigger = yes
|
|
# scope:actor = {
|
|
# this != scope:recipient
|
|
# house ?= {
|
|
# house_head ?= scope:recipient
|
|
# OR = {
|
|
# has_house_unity_parameter = unity_can_challenge_house_head
|
|
# house_head ?= { government_is_japanese_trigger = yes }
|
|
# scope:actor = {
|
|
# any_character_struggle = { has_struggle_phase_parameter = unlocks_challenge_house_head_for_clans }
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
#
|
|
# is_valid_showing_failures_only = {
|
|
# scope:actor = {
|
|
# is_at_war = no
|
|
# is_available_adult = yes
|
|
# }
|
|
# scope:recipient = {
|
|
# is_at_war = no
|
|
# is_available_adult = yes
|
|
# # Stop challenges from barons and counts against kings
|
|
# custom_tooltip = {
|
|
# text = fp3_challenge_house_head_interaction_tier_tt
|
|
# tier_difference = {
|
|
# target = scope:actor
|
|
# value <= 1
|
|
# }
|
|
# }
|
|
# # Give some respite after a recent challenge
|
|
# custom_tooltip = {
|
|
# text = fp3_challenge_house_head_interaction_recent_tt
|
|
# NOT = { has_character_flag = fp3_challenge_house_head_recent_flag }
|
|
# }
|
|
# tgp_is_ceremonial_liege_trigger = no
|
|
# }
|
|
# }
|
|
#
|
|
# auto_accept = {
|
|
# trigger_if = {
|
|
# limit = {
|
|
# scope:recipient = { is_ruler = no }
|
|
# }
|
|
# scope:recipient = { is_ruler = no }
|
|
# }
|
|
# trigger_else_if = {
|
|
# limit = { scope:hook = yes }
|
|
# custom_description = {
|
|
# text = "spending_hook"
|
|
# subject = scope:actor
|
|
# object = scope:recipient
|
|
# scope:hook = yes
|
|
# }
|
|
# }
|
|
# trigger_else_if = {
|
|
# limit = {
|
|
# scope:recipient = { is_vassal_or_below_of = scope:actor }
|
|
# }
|
|
# scope:recipient = { is_vassal_or_below_of = scope:actor }
|
|
# }
|
|
# trigger_else_if = {
|
|
# limit = {
|
|
# scope:actor = { is_heir_of = scope:recipient }
|
|
# }
|
|
# custom_tooltip = {
|
|
# text = fp3_challenge_house_head_interaction_heir_bonus_desc
|
|
# scope:actor = { is_heir_of = scope:recipient }
|
|
# }
|
|
# }
|
|
# trigger_else = { always = no }
|
|
# }
|
|
#
|
|
# can_send = {
|
|
# scope:actor = {
|
|
# # Do not allow house heads who accepted a challenge to ping pong back and forth
|
|
# custom_tooltip = {
|
|
# text = fp3_challenge_house_head_interaction_accepted_tt
|
|
# NOT = { has_character_flag = accepted_house_head_challenge_flag }
|
|
# }
|
|
# }
|
|
# scope:recipient = {
|
|
# # Do not allow multiple challenges at the same time
|
|
# custom_tooltip = {
|
|
# text = fp3_challenge_house_head_interaction_ongoing_tt
|
|
# NOT = { has_character_flag = ongoing_house_head_challenge_flag }
|
|
# }
|
|
# }
|
|
# }
|
|
#
|
|
# on_send = {
|
|
# scope:recipient = {
|
|
# add_character_flag = { # stop multiple challenges at same time
|
|
# flag = ongoing_house_head_challenge_flag
|
|
# months = 1
|
|
# }
|
|
# add_character_flag = { # stop AI constantly challenging players
|
|
# flag = ai_cooldown_house_head_challenge_flag
|
|
# years = 5
|
|
# }
|
|
# }
|
|
# }
|
|
#
|
|
# on_accept = {
|
|
# scope:recipient = { save_scope_as = house_head }
|
|
# if = {
|
|
# limit = {
|
|
# OR = {
|
|
# scope:recipient = { is_vassal_or_below_of = scope:actor }
|
|
# scope:recipient = { is_ruler = no }
|
|
# }
|
|
# }
|
|
# scope:actor.house = { set_house_head = scope:actor }
|
|
# }
|
|
# else = {
|
|
# scope:actor = {
|
|
# save_scope_as = house_challenger
|
|
# if = { # Hook consumption
|
|
# limit = { scope:hook = yes }
|
|
# use_hook = scope:house_head
|
|
# }
|
|
# if = {
|
|
# limit = { scope:diplomacy = yes }
|
|
# custom_tooltip = fp3_challenge_house_head_interaction_tooltip_actor.diplomacy
|
|
# trigger_event = fp3_misc_decisions.0026
|
|
# scope:house_head = { custom_tooltip = fp3_challenge_house_head_interaction_tooltip_recipient.diplomacy }
|
|
# house = {
|
|
# add_clan_unity_interaction_effect = {
|
|
# CHARACTER = scope:house_challenger
|
|
# TARGET = scope:house_head
|
|
# VALUE = minor_unity_loss
|
|
# DESC = clan_unity_challenged_to_duel.desc
|
|
# REVERSE_NON_HOUSE_TARGET = yes
|
|
# }
|
|
# }
|
|
# }
|
|
# else = {
|
|
# if = {
|
|
# limit = { scope:lethal = no }
|
|
# custom_tooltip = fp3_challenge_house_head_interaction_tooltip_actor.a
|
|
# scope:house_head = { custom_tooltip = fp3_challenge_house_head_interaction_tooltip_recipient.b }
|
|
# house = {
|
|
# add_clan_unity_interaction_effect = {
|
|
# CHARACTER = scope:house_challenger
|
|
# TARGET = scope:house_head
|
|
# VALUE = minor_unity_loss
|
|
# DESC = clan_unity_challenged_to_duel.desc
|
|
# REVERSE_NON_HOUSE_TARGET = yes
|
|
# }
|
|
# }
|
|
# }
|
|
# else = {
|
|
# custom_tooltip = fp3_challenge_house_head_interaction_tooltip_actor.a.lethal
|
|
# scope:house_head = { custom_tooltip = fp3_challenge_house_head_interaction_tooltip_recipient.b.lethal }
|
|
# house = {
|
|
# add_clan_unity_interaction_effect = {
|
|
# CHARACTER = scope:house_challenger
|
|
# TARGET = scope:house_head
|
|
# VALUE = major_unity_loss
|
|
# DESC = clan_unity_challenged_to_duel.desc
|
|
# REVERSE_NON_HOUSE_TARGET = yes
|
|
# }
|
|
# }
|
|
# }
|
|
# # Admin Japanese can duel, but it is frowned upon
|
|
# scope:actor = {
|
|
# custom_description_no_bullet = {
|
|
# text = challenge_house_head_japanese_admin
|
|
# }
|
|
# if = {
|
|
# limit = {
|
|
# government_is_japanese_trigger = yes
|
|
# tgp_soryo_or_bushido_trigger = no
|
|
# }
|
|
# if = {
|
|
# limit = { scope:lethal = no }
|
|
# add_prestige = medium_prestige_loss
|
|
# }
|
|
# else = {
|
|
# add_prestige = major_prestige_loss
|
|
# add_prestige_level = -1
|
|
# }
|
|
# }
|
|
# }
|
|
# trigger_event = fp3_misc_decisions.0022
|
|
# }
|
|
# }
|
|
# if = {
|
|
# limit = { scope:diplomacy = no }
|
|
# if = {
|
|
# limit = { scope:lethal = no }
|
|
# custom_tooltip = fp3_challenge_house_head_interaction_duel_tooltip_warning
|
|
# }
|
|
# else = { custom_tooltip = fp3_challenge_house_head_interaction_duel_tooltip_warning_lethal }
|
|
# }
|
|
# }
|
|
# }
|
|
#
|
|
# on_decline = { # Get letter of rejection, to further escalate the situation if the player wills it
|
|
# scope:actor = { trigger_event = fp3_misc_decisions.0025 }
|
|
# scope:recipient = {
|
|
# add_prestige = major_prestige_loss
|
|
# remove_character_flag = ongoing_house_head_challenge_flag
|
|
# }
|
|
# }
|
|
#
|
|
# send_option = {
|
|
# flag = diplomacy
|
|
# localization = CHALLENGE_HOUSE_HEAD_DIPLOMACY_DUEL
|
|
# starts_enabled = {
|
|
# scope:actor = { tgp_soryo_or_bushido_trigger = no }
|
|
# }
|
|
# is_valid = {
|
|
# custom_tooltip = {
|
|
# text = CHALLENGE_HOUSE_HEAD_LETHAL_DUEL_INVALID_TT
|
|
# NOT = { scope:lethal = yes }
|
|
# }
|
|
# }
|
|
# }
|
|
# send_option = {
|
|
# flag = lethal
|
|
# localization = CHALLENGE_HOUSE_HEAD_LETHAL_DUEL
|
|
# is_valid = {
|
|
# scope:actor = {
|
|
# has_relation_rival = scope:recipient
|
|
# trigger_if = {
|
|
# limit = { government_is_japanese_trigger = yes }
|
|
# tgp_soryo_or_bushido_trigger = yes
|
|
# scope:recipient = { tgp_soryo_or_bushido_trigger = yes }
|
|
# }
|
|
# }
|
|
# custom_tooltip = {
|
|
# text = CHALLENGE_HOUSE_HEAD_LETHAL_DUEL_INVALID_TT
|
|
# NOT = { scope:diplomacy = yes }
|
|
# }
|
|
# }
|
|
# }
|
|
# send_option = {
|
|
# flag = hook
|
|
# localization = GENERIC_SPEND_A_HOOK
|
|
# is_valid = {
|
|
# scope:actor = { has_usable_hook = scope:recipient }
|
|
# }
|
|
# }
|
|
# 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
|
|
#
|
|
# # AI
|
|
# ai_accept = {
|
|
# base = 25
|
|
# modifier = {
|
|
# add = -50
|
|
# scope:lethal = yes
|
|
# desc = AI_AVOID_LETHAL_DUEL
|
|
# }
|
|
# modifier = {
|
|
# add = 15
|
|
# scope:recipient = { has_trait = ambitious }
|
|
# desc = INTERACTION_AMBITIOUS
|
|
# }
|
|
# modifier = {
|
|
# add = 25
|
|
# scope:recipient = { has_trait = brave }
|
|
# desc = INTERACTION_BRAVE
|
|
# }
|
|
# modifier = {
|
|
# add = {
|
|
# value = -25
|
|
# if = {
|
|
# limit = { scope:lethal = yes }
|
|
# multiply = 2
|
|
# }
|
|
# }
|
|
# scope:recipient = { has_trait = craven }
|
|
# desc = INTERACTION_CRAVEN
|
|
# }
|
|
# modifier = {
|
|
# scope:recipient.ai_greed != 0
|
|
# add = { # Greedy people won't risk a position of power, even if their prestige suffers
|
|
# value = scope:recipient.ai_greed
|
|
# multiply = -1
|
|
# max = 35
|
|
# min = -35
|
|
# }
|
|
# desc = AI_VALUE_MODIFIER_GREED
|
|
# }
|
|
# modifier = {
|
|
# scope:recipient.ai_honor != 0
|
|
# add = {
|
|
# value = scope:recipient.ai_honor
|
|
# max = 75
|
|
# min = -35
|
|
# }
|
|
# desc = AI_VALUE_MODIFIER_HONOR
|
|
# }
|
|
# modifier = {
|
|
# scope:recipient.ai_energy != 0
|
|
# add = {
|
|
# value = scope:recipient.ai_energy
|
|
# max = 10
|
|
# min = -10
|
|
# }
|
|
# desc = AI_VALUE_MODIFIER_ENERGY
|
|
# }
|
|
# modifier = {
|
|
# NOT = { scope:diplomacy = yes }
|
|
# add = {
|
|
# value = scope:recipient.prowess
|
|
# subtract = scope:actor.prowess
|
|
# multiply = 2
|
|
# }
|
|
# desc = CTSC_RELATIVE_PROWESS
|
|
# }
|
|
# modifier = {
|
|
# scope:lethal = yes
|
|
# scope:recipient = {
|
|
# OR = {
|
|
# is_parent_of = scope:actor
|
|
# is_child_of = scope:actor
|
|
# }
|
|
# NOT = { has_relation_rival = scope:actor }
|
|
# }
|
|
# factor = 0.5
|
|
# desc = AI_AVOID_LETHAL_DUEL_WITH_FAMILY
|
|
# }
|
|
# modifier = {
|
|
# NOT = { scope:diplomacy = yes }
|
|
# scope:recipient = {
|
|
# government_is_japanese_trigger = yes
|
|
# tgp_soryo_or_bushido_trigger = no
|
|
# }
|
|
# factor = 0.5
|
|
# desc = AI_NOT_SORYO_OR_BUSHIDO
|
|
# }
|
|
# opinion_modifier = {
|
|
# opinion_target = scope:actor
|
|
# multiplier = 0.5
|
|
# }
|
|
# }
|
|
#
|
|
# ai_frequency_by_tier = {
|
|
# barony = 0
|
|
# county = 36
|
|
# duchy = 24
|
|
# kingdom = 6
|
|
# empire = 1
|
|
# hegemony = 1
|
|
# }
|
|
#
|
|
# ai_target_quick_trigger = {
|
|
# adult = yes
|
|
# }
|
|
#
|
|
# ai_targets = {
|
|
# ai_recipients = dynasty
|
|
# ai_recipients = family
|
|
# max = 10
|
|
# }
|
|
#
|
|
# ai_targets = {
|
|
# ai_recipients = liege
|
|
# ai_recipients = head_of_faith
|
|
# ai_recipients = hooked_characters
|
|
# ai_recipients = scripted_relations
|
|
# }
|
|
#
|
|
# ai_targets = {
|
|
# ai_recipients = peer_vassals
|
|
# ai_recipients = vassals
|
|
# ai_recipients = neighboring_rulers
|
|
# max = 30
|
|
# }
|
|
#
|
|
# ai_will_do = {
|
|
# base = 5
|
|
# # Base requirements for AI
|
|
# modifier = {
|
|
# add = -1000
|
|
# AND = {
|
|
# NOT = {
|
|
# scope:recipient = { is_vassal_or_below_of = scope:actor }
|
|
# }
|
|
# OR = {
|
|
# AND = {
|
|
# top_liege = this
|
|
# highest_held_title_tier >= scope:recipient.highest_held_title_tier
|
|
# }
|
|
# is_powerful_vassal = yes
|
|
# is_close_or_extended_family_of = scope:recipient
|
|
# opinion = {
|
|
# target = scope:recipient
|
|
# value >= 25
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
# # Tiers
|
|
# modifier = {
|
|
# add = 10
|
|
# piety_level >= scope:recipient.piety_level
|
|
# }
|
|
# modifier = {
|
|
# add = 10
|
|
# prestige_level >= scope:recipient.prestige_level
|
|
# }
|
|
# modifier = {
|
|
# add = 10
|
|
# highest_held_title_tier >= scope:recipient.highest_held_title_tier
|
|
# }
|
|
# # Traits
|
|
# modifier = {
|
|
# add = 30
|
|
# has_trait = ambitious
|
|
# }
|
|
# modifier = {
|
|
# add = 30
|
|
# has_trait = brave
|
|
# }
|
|
# modifier = {
|
|
# add = -30
|
|
# has_trait = craven
|
|
# }
|
|
# # Dread
|
|
# modifier = {
|
|
# add = -25
|
|
# has_dread_level_towards = {
|
|
# target = scope:recipient
|
|
# level >= 1
|
|
# }
|
|
# }
|
|
# modifier = {
|
|
# add = -25
|
|
# has_dread_level_towards = {
|
|
# target = scope:recipient
|
|
# level >= 2
|
|
# }
|
|
# }
|
|
# # Personality
|
|
# modifier = {
|
|
# ai_boldness > 0
|
|
# add = {
|
|
# value = ai_boldness
|
|
# divide = 2
|
|
# min = 1
|
|
# }
|
|
# }
|
|
# modifier = {
|
|
# ai_greed >= 50
|
|
# add = {
|
|
# value = ai_greed
|
|
# divide = 2
|
|
# }
|
|
# }
|
|
# modifier = {
|
|
# ai_sociability = 100
|
|
# add = 10
|
|
# }
|
|
# # Higher in stature
|
|
# modifier = {
|
|
# is_independent_ruler = yes
|
|
# scope:recipient = { is_independent_ruler = no }
|
|
# add = 1000
|
|
# }
|
|
# modifier = {
|
|
# highest_held_title_tier > scope:recipient.highest_held_title_tier
|
|
# scope:recipient = { is_independent_ruler = no }
|
|
# add = {
|
|
# value = highest_held_title_tier
|
|
# add = scope:recipient.highest_held_title_tier
|
|
# multiply = 10
|
|
# }
|
|
# }
|
|
# modifier = {
|
|
# scope:recipient = { is_vassal_or_below_of = scope:actor }
|
|
# add = 500
|
|
# }
|
|
# # Remove non dominant gender
|
|
# modifier = {
|
|
# scope:actor = { is_faith_dominant_gender = yes }
|
|
# scope:recipient = { is_faith_dominant_gender = no }
|
|
# factor = 2
|
|
# }
|
|
# # Stop AI constantly challenging players
|
|
# modifier = {
|
|
# scope:recipient = { has_character_flag = ai_cooldown_house_head_challenge_flag }
|
|
# factor = 0
|
|
# }
|
|
# # Stop AI game-overing players
|
|
# modifier = {
|
|
# scope:recipient = {
|
|
# trigger_if = {
|
|
# limit = { is_ai = no }
|
|
# is_landed = no
|
|
# any_held_title = { is_noble_family_title = yes }
|
|
# }
|
|
# }
|
|
# factor = 0
|
|
# }
|
|
# }
|
|
#}
|
|
#
|
|
#
|
|
####################################
|
|
## Change struggle allegiance
|
|
####################################
|
|
#fp3_change_allegiance = {
|
|
# interface_priority = 30
|
|
# category = interaction_category_diplomacy
|
|
# common_interaction = yes
|
|
# desc = {
|
|
# first_valid = {
|
|
# # Become a supporter.
|
|
# triggered_desc = {
|
|
# trigger = {
|
|
# scope:actor = { has_trait = fp3_struggle_supporter }
|
|
# }
|
|
# desc = fp3_change_allegiance.desc.actor_is_supporter
|
|
# }
|
|
# # Become a detractor.
|
|
# triggered_desc = {
|
|
# trigger = {
|
|
# scope:actor = { has_trait = fp3_struggle_detractor }
|
|
# }
|
|
# desc = fp3_change_allegiance.desc.actor_is_detractor
|
|
# }
|
|
# desc = fp3_change_allegiance.desc.fallback
|
|
# }
|
|
# }
|
|
# icon = change_allegiance
|
|
#
|
|
# greeting = positive
|
|
# notification_text = fp3_change_allegiance_notification
|
|
#
|
|
# 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
|
|
#
|
|
# ai_maybe = yes
|
|
#
|
|
# is_available = {
|
|
# any_character_struggle = { is_struggle_type = persian_struggle }
|
|
# trigger_if = {
|
|
# limit = { is_ai = yes }
|
|
# OR = {
|
|
# has_trait = fp3_struggle_detractor
|
|
# has_trait = fp3_struggle_supporter
|
|
# }
|
|
# primary_title.tier >= tier_duchy
|
|
# }
|
|
# }
|
|
#
|
|
# is_shown = {
|
|
# has_fp3_dlc_trigger = yes
|
|
# # There has to be a caliph around to sway on.
|
|
# ## Arguably narratively not, but mechanically, everything will break if we don't.
|
|
# exists = title:d_sunni.holder
|
|
# scope:recipient != scope:actor
|
|
# scope:actor = {
|
|
# OR = {
|
|
# # Detractors are made from supporters.
|
|
# AND = {
|
|
# has_trait = fp3_struggle_detractor
|
|
# scope:recipient = { has_trait = fp3_struggle_supporter }
|
|
# }
|
|
# # Supporters are made from detractors.
|
|
# AND = {
|
|
# has_trait = fp3_struggle_supporter
|
|
# scope:recipient = { has_trait = fp3_struggle_detractor }
|
|
# }
|
|
# # Neutrals can be asked either way, should they exist.
|
|
# AND = {
|
|
# OR = {
|
|
# has_trait = fp3_struggle_detractor
|
|
# has_trait = fp3_struggle_supporter
|
|
# }
|
|
# scope:recipient = {
|
|
# NOR = {
|
|
# has_trait = fp3_struggle_detractor
|
|
# has_trait = fp3_struggle_supporter
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
# scope:recipient = {
|
|
# any_character_struggle = { is_struggle_type = persian_struggle }
|
|
# # You cannot ask the Caliph!
|
|
# NOT = { this = title:d_sunni.holder }
|
|
# }
|
|
# }
|
|
#
|
|
# is_valid_showing_failures_only = {
|
|
# scope:recipient = {
|
|
# # We want to disable some stuff for supporters who can't be persuaded away from the caliph.
|
|
# trigger_if = {
|
|
# limit = { has_trait = fp3_struggle_supporter }
|
|
# # Can't be allied to the caliph.
|
|
# NOT = { is_allied_to = title:d_sunni.holder }
|
|
# # Can't be strong hooked _by_ the caliph.
|
|
# NOT = {
|
|
# title:d_sunni.holder = { has_strong_hook = prev }
|
|
# }
|
|
# # Can't have only recently changed to become a supporter.
|
|
# custom_tooltip = {
|
|
# text = fp3_change_allegiance.tt.recently_voluntarily_became_supporter
|
|
# OR = {
|
|
# NOT = { has_variable = last_explicit_friday_prayer_caliph }
|
|
# NOT = { var:last_explicit_friday_prayer_caliph = title:d_sunni.holder }
|
|
# }
|
|
# }
|
|
# }
|
|
# # Likewise, some circumstances can force them to stay as a detractor.
|
|
# trigger_if = {
|
|
# limit = { has_trait = fp3_struggle_detractor }
|
|
# # Can't have only recently changed to become a detractor.
|
|
# custom_tooltip = {
|
|
# text = fp3_change_allegiance.tt.recently_voluntarily_became_detractor
|
|
# OR = {
|
|
# NOT = { has_variable = last_explicit_friday_prayer_caliph }
|
|
# NOT = { var:last_explicit_friday_prayer_caliph = title:d_sunni.holder }
|
|
# }
|
|
# }
|
|
# # Can't have been forced into becoming a detractor by the caliph overstepping.
|
|
# custom_tooltip = {
|
|
# text = fp3_change_allegiance.tt.recently_forced_to_detractor
|
|
# OR = {
|
|
# NOT = { has_variable = last_explicit_defied_caliph }
|
|
# NOT = { var:last_explicit_defied_caliph = title:d_sunni.holder }
|
|
# }
|
|
# }
|
|
# }
|
|
# # Plus some general stuff.
|
|
# is_at_war = no
|
|
# # Can't have recently been convinced to change their minds.
|
|
# custom_tooltip = {
|
|
# text = fp3_change_allegiance.tt.recently_changed_mind
|
|
# NOT = { has_character_flag = fp3_change_allegiance_recipient_cooldown }
|
|
# }
|
|
# custom_tooltip = {
|
|
# text = fp3_change_allegiance.tt.recently_refused
|
|
# NOT = { has_character_flag = fp3_change_allegiance_refused_cooldown }
|
|
# }
|
|
# # They must be an orthodox Sunni.
|
|
# custom_tooltip = {
|
|
# text = fp3_change_allegiance.tt.hof_is_d_sunni
|
|
# faith.religious_head ?= title:d_sunni.holder
|
|
# }
|
|
# }
|
|
# scope:actor = { is_available_adult = yes }
|
|
# }
|
|
#
|
|
# auto_accept = {
|
|
# custom_description = {
|
|
# text = "spending_hook"
|
|
# subject = scope:actor
|
|
# object = scope:recipient
|
|
# scope:hook = yes
|
|
# }
|
|
# }
|
|
#
|
|
# ai_accept = {
|
|
# base = 0
|
|
#
|
|
# # Those who already have a stance are more set in their ways.
|
|
# ## Detractors
|
|
# modifier = {
|
|
# add = -25
|
|
# scope:actor = { has_trait = fp3_struggle_supporter }
|
|
# scope:recipient = { has_trait = fp3_struggle_detractor }
|
|
# desc = INTERACTION_DETRACTOR
|
|
# }
|
|
# ## Supporters
|
|
# modifier = {
|
|
# add = -25
|
|
# scope:actor = { has_trait = fp3_struggle_detractor }
|
|
# scope:recipient = { has_trait = fp3_struggle_supporter }
|
|
# desc = INTERACTION_SUPPORTER
|
|
# }
|
|
#
|
|
# # Opinions
|
|
# ## Opinion of you
|
|
# opinion_modifier = {
|
|
# who = scope:recipient
|
|
# opinion_target = scope:actor
|
|
# multiplier = {
|
|
# value = 1
|
|
# # Despawn this if you're not the caliph.
|
|
# if = {
|
|
# limit = { scope:actor = title:d_sunni.holder }
|
|
# multiply = 0
|
|
# }
|
|
# }
|
|
# }
|
|
# ## Opinion of the caliph
|
|
# opinion_modifier = {
|
|
# who = scope:recipient
|
|
# opinion_target = title:d_sunni.holder
|
|
# multiplier = {
|
|
# value = 0.5
|
|
# # If you're the caliph, you can take the full amount.
|
|
# if = {
|
|
# limit = { scope:actor = title:d_sunni.holder }
|
|
# add = 0.5
|
|
# }
|
|
# }
|
|
# }
|
|
# # Traits.
|
|
# ## Become supporter.
|
|
# ### ++ Zealous.
|
|
# modifier = {
|
|
# add = 25
|
|
# desc = ASK_FOR_CONVERSION_RECIPIENT_IS_ZEALOUS
|
|
# scope:actor = { has_trait = fp3_struggle_supporter }
|
|
# scope:recipient = { has_trait = zealous }
|
|
# }
|
|
# ## Become detractor.
|
|
# ### -- Cynical.
|
|
# modifier = {
|
|
# add = 25
|
|
# desc = ASK_FOR_CONVERSION_RECIPIENT_IS_CYNICAL
|
|
# scope:actor = { has_trait = fp3_struggle_detractor }
|
|
# scope:recipient = { has_trait = cynical }
|
|
# }
|
|
# ## Neutral.
|
|
# ### ++ Fickle.
|
|
# modifier = {
|
|
# add = 25
|
|
# desc = ASK_FOR_CONVERSION_RECIPIENT_IS_FICKLE
|
|
# scope:recipient = { has_trait = fickle }
|
|
# }
|
|
# ### + Disloyal.
|
|
# modifier = {
|
|
# add = 15
|
|
# desc = HAS_LOYAL_TRAIT
|
|
# scope:recipient = { has_trait = disloyal }
|
|
# }
|
|
# ### - Loyal.
|
|
# modifier = {
|
|
# add = 15
|
|
# desc = HAS_DISLOYAL_TRAIT
|
|
# scope:recipient = { has_trait = loyal }
|
|
# }
|
|
# ### -- Stubborn.
|
|
# modifier = {
|
|
# add = 25
|
|
# desc = ASK_FOR_CONVERSION_RECIPIENT_IS_STUBBORN
|
|
# scope:recipient = { has_trait = stubborn }
|
|
# }
|
|
# # Diplomacy
|
|
# ## Scope:actor's for convincing
|
|
# modifier = {
|
|
# add = {
|
|
# value = scope:actor.diplomacy
|
|
# multiply = 5
|
|
# }
|
|
# desc = INTERACTION_DIPLOMACY_ACTOR
|
|
# }
|
|
# ## Scope:recipient's for resisting
|
|
# modifier = {
|
|
# add = {
|
|
# value = scope:recipient.diplomacy
|
|
# multiply = -3
|
|
# }
|
|
# desc = INTERACTION_DIPLOMACY_RECIPIENT
|
|
# }
|
|
# }
|
|
#
|
|
# cost = {
|
|
# prestige = medium_prestige_value
|
|
# }
|
|
#
|
|
# # Use hook
|
|
# send_option = {
|
|
# flag = hook
|
|
# is_valid = {
|
|
# scope:actor = {
|
|
# has_usable_hook = scope:recipient
|
|
# }
|
|
# }
|
|
# localization = GENERIC_SPEND_A_HOOK
|
|
# }
|
|
#
|
|
# on_accept = {
|
|
# # Use our hook if we have to.
|
|
# if = {
|
|
# limit = { always = scope:hook }
|
|
# scope:actor = {
|
|
# use_hook = scope:recipient
|
|
# }
|
|
# }
|
|
# # If we're a clan this interaction affects unity
|
|
# add_clan_unity_interaction_effect = {
|
|
# CHARACTER = scope:actor
|
|
# TARGET = scope:recipient
|
|
# VALUE = medium_unity_gain
|
|
# DESC = clan_unity_changed_alignment.desc
|
|
# REVERSE_NON_HOUSE_TARGET = no
|
|
# }
|
|
# # Run the actual effects.
|
|
# scope:actor = {
|
|
# send_interface_toast = {
|
|
# type = event_toast_effect_good
|
|
# title = recipient_joined_your_side_title
|
|
# left_icon = scope:recipient
|
|
#
|
|
# scope:recipient = {
|
|
# if = {
|
|
# limit = { scope:actor = { has_trait = fp3_struggle_detractor } }
|
|
# if = {
|
|
# limit = { has_trait = fp3_struggle_supporter }
|
|
# remove_trait = fp3_struggle_supporter
|
|
# }
|
|
# add_trait_force_tooltip = fp3_struggle_detractor
|
|
#
|
|
# # Catalyst
|
|
# hidden_effect = {
|
|
# if = {
|
|
# limit = {
|
|
# scope:actor = {
|
|
# any_character_struggle = {
|
|
# involvement = involved
|
|
# phase_has_catalyst = catalyst_turn_supporter_into_detractor
|
|
# }
|
|
# }
|
|
# }
|
|
# every_character_struggle = {
|
|
# involvement = involved
|
|
# activate_struggle_catalyst = {
|
|
# catalyst = catalyst_turn_supporter_into_detractor
|
|
# character = scope:actor
|
|
# }
|
|
# log_debug_variable_for_persian_struggle_effect = { VAR = unrest_catalyst_turn_supporter_into_detractor }
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
# else = {
|
|
# if = {
|
|
# limit = { has_trait = fp3_struggle_detractor }
|
|
# remove_trait = fp3_struggle_detractor
|
|
# }
|
|
# add_trait_force_tooltip = fp3_struggle_supporter
|
|
#
|
|
# # Catalyst
|
|
# hidden_effect = {
|
|
# if = {
|
|
# limit = {
|
|
# scope:actor = {
|
|
# any_character_struggle = {
|
|
# involvement = involved
|
|
# phase_has_catalyst = catalyst_turn_detractor_into_supporter
|
|
# }
|
|
# }
|
|
# }
|
|
# every_character_struggle = {
|
|
# involvement = involved
|
|
# activate_struggle_catalyst = {
|
|
# catalyst = catalyst_turn_detractor_into_supporter
|
|
# character = scope:actor
|
|
# }
|
|
# log_debug_variable_for_persian_struggle_effect = { VAR = stabil_catalyst_turn_detractor_into_supporter }
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
# # Aaaaand flag scope:recipient as on cooldown for a while.
|
|
# scope:recipient = {
|
|
# set_variable = {
|
|
# name = fp3_change_allegiance_recipient_cooldown
|
|
# years = 20
|
|
# }
|
|
# }
|
|
# }
|
|
#
|
|
# on_decline = {
|
|
# add_clan_unity_interaction_effect = {
|
|
# CHARACTER = scope:actor
|
|
# TARGET = scope:recipient
|
|
# VALUE = medium_unity_loss
|
|
# DESC = clan_unity_refused_alignment.desc
|
|
# REVERSE_NON_HOUSE_TARGET = no
|
|
# }
|
|
# scope:actor = {
|
|
# if = {
|
|
# limit = {
|
|
# scope:actor = { has_trait = fp3_struggle_detractor }
|
|
# }
|
|
# send_interface_toast = {
|
|
# type = event_toast_effect_bad
|
|
# title = recipient_refused_to_join_your_side_title
|
|
# left_icon = scope:recipient
|
|
# progress_towards_rival_effect = {
|
|
# REASON = rival_rejected_switching_to_struggle_detractor
|
|
# CHARACTER = scope:recipient
|
|
# OPINION = default_rival_opinion
|
|
# }
|
|
# }
|
|
# }
|
|
# else = {
|
|
# send_interface_toast = {
|
|
# type = event_toast_effect_bad
|
|
# title = recipient_refused_to_join_your_side_title
|
|
# left_icon = scope:recipient
|
|
# progress_towards_rival_effect = {
|
|
# REASON = rival_rejected_switching_to_struggle_supporter
|
|
# CHARACTER = scope:recipient
|
|
# OPINION = default_rival_opinion
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
# scope:recipient = {
|
|
# set_variable = {
|
|
# name = fp3_change_allegiance_refused_cooldown
|
|
# years = 20
|
|
# }
|
|
# }
|
|
# }
|
|
# ai_frequency_by_tier = {
|
|
# barony = 0
|
|
# county = 0
|
|
# duchy = 120
|
|
# kingdom = 120
|
|
# empire = 120
|
|
# hegemony = 120
|
|
# }
|
|
#
|
|
# ai_targets = {
|
|
# ai_recipients = liege
|
|
# ai_recipients = neighboring_rulers
|
|
# ai_recipients = peer_vassals
|
|
# ai_recipients = vassals
|
|
# ai_recipients = top_realm_domicile_owners
|
|
# max = 10
|
|
# }
|
|
#
|
|
# ai_will_do = {
|
|
# base = -50 # Let's limit it to specific character to avoid pure chaos
|
|
#
|
|
# ###############
|
|
# ## BASE
|
|
# ###############
|
|
#
|
|
# # AI Values
|
|
# ## Detractors run off of lacking zeal
|
|
# modifier = {
|
|
# add = {
|
|
# value = ai_zeal
|
|
# multiply = -2
|
|
# }
|
|
# has_trait = fp3_struggle_detractor
|
|
# ai_zeal <= -1
|
|
# }
|
|
# ## Supporters run off of turbo-charged zeal
|
|
# modifier = {
|
|
# add = {
|
|
# value = ai_zeal
|
|
# multiply = 2
|
|
# }
|
|
# has_trait = fp3_struggle_supporter
|
|
# ai_zeal >= 1
|
|
# }
|
|
#
|
|
# # The caliph wants to use this all the time.
|
|
# modifier = {
|
|
# has_title = title:d_sunni
|
|
# add = 200
|
|
# }
|
|
#
|
|
# ###############
|
|
# ## TRAITS
|
|
# ###############
|
|
#
|
|
# # schemer
|
|
# modifier = {
|
|
# add = 15
|
|
# has_trait = schemer
|
|
# }
|
|
#
|
|
# # theologian
|
|
# modifier = {
|
|
# add = 25
|
|
# has_trait = theologian
|
|
# }
|
|
#
|
|
# # intrigue education
|
|
# modifier = {
|
|
# add = 15
|
|
# has_trait = education_intrigue
|
|
# }
|
|
#
|
|
# # learning education
|
|
# modifier = {
|
|
# add = 25
|
|
# has_trait = education_learning
|
|
# }
|
|
#
|
|
# ################
|
|
# ## RELATIONSHIP
|
|
# ################
|
|
#
|
|
# # more likely to do it against friend and lover
|
|
# modifier = {
|
|
# add = 50
|
|
# scope:recipient = {
|
|
# OR = {
|
|
# has_relation_friend = scope:actor
|
|
# has_relation_lover = scope:actor
|
|
# has_relation_soulmate = scope:actor
|
|
# has_relation_best_friend = scope:actor
|
|
# }
|
|
# }
|
|
# }
|
|
#
|
|
# # boost against liege for Ambitious
|
|
# modifier = {
|
|
# add = 50
|
|
# scope:actor = {
|
|
# has_trait = ambitious
|
|
# is_vassal_of = scope:recipient
|
|
# }
|
|
# }
|
|
#
|
|
# # never target your rivals
|
|
# modifier = {
|
|
# add = -1000
|
|
# scope:recipient = {
|
|
# OR = {
|
|
# has_relation_rival = scope:actor
|
|
# has_relation_nemesis = scope:actor
|
|
# }
|
|
# }
|
|
# }
|
|
#
|
|
# ################
|
|
# ## STRUGGLE
|
|
# ################
|
|
#
|
|
# modifier = {
|
|
# add = 100
|
|
# OR = {
|
|
# AND = {
|
|
# scope:recipient = { has_trait = fp3_struggle_supporter }
|
|
# scope:actor = {
|
|
# has_trait = fp3_struggle_detractor
|
|
# any_character_struggle = {
|
|
# involvement = involved
|
|
# phase_has_catalyst = catalyst_turn_supporter_into_detractor
|
|
# }
|
|
# }
|
|
# }
|
|
# AND = {
|
|
# scope:recipient = { has_trait = fp3_struggle_detractor }
|
|
# scope:actor = {
|
|
# has_trait = fp3_struggle_supporter
|
|
# any_character_struggle = {
|
|
# involvement = involved
|
|
# phase_has_catalyst = catalyst_turn_detractor_into_supporter
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
#}
|
|
#
|
|
#
|
|
####################################
|
|
## Request honorary titles
|
|
####################################
|
|
#fp3_request_honorary_titles_interaction = {
|
|
# interface_priority = 30
|
|
# category = interaction_category_religion
|
|
# common_interaction = yes
|
|
# desc = fp3_request_honorary_titles_interaction_desc
|
|
# icon = honorary_titles
|
|
#
|
|
# greeting = positive
|
|
#
|
|
# auto_accept = yes
|
|
#
|
|
# cooldown = { years = 10 }
|
|
#
|
|
# cost = {
|
|
# piety = {
|
|
# value = major_piety_value
|
|
# if = {
|
|
# limit = { # cheaper for the actual liege
|
|
# scope:actor = {
|
|
# any_vassal = {
|
|
# any_held_title = {
|
|
# this = title:d_sunni
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
# subtract = medium_piety_value
|
|
# }
|
|
# }
|
|
# }
|
|
#
|
|
# is_available = {
|
|
# trigger_if = {
|
|
# limit = { is_ai = yes }
|
|
# any_vassal = {
|
|
# any_held_title = {
|
|
# this = title:d_sunni
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
#
|
|
# is_shown = {
|
|
# fp3_reward_from_vassalization_ending = yes
|
|
# }
|
|
#
|
|
# is_valid = {
|
|
# # honorary titles should be unique
|
|
# custom_tooltip = {
|
|
# text = one_of_the_title_is_available_tt
|
|
# scope:actor = {
|
|
# house ?= {
|
|
# NAND = {
|
|
# any_house_member = {
|
|
# has_character_modifier = fp3_honorary_title_intrigue_modifier
|
|
# }
|
|
# any_house_member = {
|
|
# has_character_modifier = fp3_honorary_title_scholarship_modifier
|
|
# }
|
|
#
|
|
# any_house_member = {
|
|
# has_character_modifier = fp3_honorary_title_stewardship_modifier
|
|
# }
|
|
# any_house_member = {
|
|
# has_character_modifier = fp3_honorary_title_diplomacy_modifier
|
|
# }
|
|
# any_house_member = {
|
|
# has_character_modifier = fp3_honorary_title_piety_modifier
|
|
# }
|
|
# any_house_member = {
|
|
# has_character_modifier = fp3_honorary_title_prestige_modifier
|
|
# }
|
|
# any_house_member = {
|
|
# has_character_modifier = fp3_honorary_title_martial_modifier
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
#
|
|
# send_option = {
|
|
# flag = intrigue_option
|
|
# localization = fp3_honorary_title_intrigue_modifier
|
|
# is_valid = {
|
|
# NOT = {
|
|
# scope:actor = {
|
|
# house ?= {
|
|
# any_house_member = {
|
|
# has_character_modifier = fp3_honorary_title_intrigue_modifier
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
#
|
|
# send_option = {
|
|
# flag = scholarship_option
|
|
# localization = fp3_honorary_title_scholarship_modifier
|
|
# is_valid = {
|
|
# NOT = {
|
|
# scope:actor = {
|
|
# house ?= {
|
|
# any_house_member = {
|
|
# has_character_modifier = fp3_honorary_title_scholarship_modifier
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
#
|
|
# send_option = {
|
|
# flag = stewardship_option
|
|
# localization = fp3_honorary_title_stewardship_modifier
|
|
# is_valid = {
|
|
# NOT = {
|
|
# scope:actor = {
|
|
# house ?= {
|
|
# any_house_member = {
|
|
# has_character_modifier = fp3_honorary_title_stewardship_modifier
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
#
|
|
# send_option = {
|
|
# flag = diplomacy_option
|
|
# localization = fp3_honorary_title_diplomacy_modifier
|
|
# is_valid = {
|
|
# NOT = {
|
|
# scope:actor = {
|
|
# house ?= {
|
|
# any_house_member = {
|
|
# has_character_modifier = fp3_honorary_title_diplomacy_modifier
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
#
|
|
# send_option = {
|
|
# flag = piety_option
|
|
# localization = fp3_honorary_title_piety_modifier
|
|
# is_valid = {
|
|
# NOT = {
|
|
# scope:actor = {
|
|
# house ?= {
|
|
# any_house_member = {
|
|
# has_character_modifier = fp3_honorary_title_piety_modifier
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
#
|
|
# send_option = {
|
|
# flag = prestige_option
|
|
# localization = fp3_honorary_title_prestige_modifier
|
|
# is_valid = {
|
|
# NOT = {
|
|
# scope:actor = {
|
|
# house ?= {
|
|
# any_house_member = {
|
|
# has_character_modifier = fp3_honorary_title_prestige_modifier
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
#
|
|
# send_option = {
|
|
# flag = martial_option
|
|
# localization = fp3_honorary_title_martial_modifier
|
|
# is_valid = {
|
|
# NOT = {
|
|
# scope:actor = {
|
|
# house ?= {
|
|
# any_house_member = {
|
|
# has_character_modifier = fp3_honorary_title_martial_modifier
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
#
|
|
# on_accept = {
|
|
# scope:actor = {
|
|
# send_interface_toast = {
|
|
# type = event_toast_effect_good
|
|
# title = new_honorary_title_acquired_title
|
|
# left_icon = scope:recipient
|
|
#
|
|
# switch = {
|
|
# trigger = yes
|
|
# scope:intrigue_option = {
|
|
# add_character_modifier = {
|
|
# modifier = fp3_honorary_title_intrigue_modifier
|
|
# }
|
|
# }
|
|
# scope:scholarship_option = {
|
|
# add_character_modifier = {
|
|
# modifier = fp3_honorary_title_scholarship_modifier
|
|
# }
|
|
# }
|
|
# scope:stewardship_option = {
|
|
# add_character_modifier = {
|
|
# modifier = fp3_honorary_title_stewardship_modifier
|
|
# }
|
|
# }
|
|
# scope:diplomacy_option = {
|
|
# add_character_modifier = {
|
|
# modifier = fp3_honorary_title_diplomacy_modifier
|
|
# }
|
|
# }
|
|
# scope:piety_option = {
|
|
# add_character_modifier = {
|
|
# modifier = fp3_honorary_title_piety_modifier
|
|
# }
|
|
# }
|
|
# scope:prestige_option = {
|
|
# add_character_modifier = {
|
|
# modifier = fp3_honorary_title_prestige_modifier
|
|
# }
|
|
# }
|
|
# scope:martial_option = {
|
|
# add_character_modifier = {
|
|
# modifier = fp3_honorary_title_martial_modifier
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
#
|
|
# ai_frequency_by_tier = {
|
|
# barony = 0
|
|
# county = 0
|
|
# duchy = 0
|
|
# kingdom = 60
|
|
# empire = 60
|
|
# hegemony = 60
|
|
# }
|
|
#
|
|
# ai_targets = {
|
|
# ai_recipients = vassals
|
|
# }
|
|
#
|
|
# ai_will_do = {
|
|
# base = 100
|
|
# }
|
|
#}
|
|
#
|
|
#
|
|
####################################
|
|
## Request house unity interference
|
|
####################################
|
|
#fp3_request_house_unity_change_interaction = {
|
|
# interface_priority = 30
|
|
# category = interaction_category_religion
|
|
# common_interaction = yes
|
|
# desc = fp3_request_house_unity_change_interaction_desc
|
|
# icon = unity_harmonious
|
|
#
|
|
# greeting = positive
|
|
#
|
|
#
|
|
# auto_accept = yes
|
|
#
|
|
# cooldown = { years = 10 }
|
|
#
|
|
# cost = {
|
|
# piety = medium_piety_value
|
|
# }
|
|
#
|
|
# is_available = {
|
|
# government_has_flag = government_is_clan
|
|
# trigger_if = {
|
|
# limit = { is_ai = yes }
|
|
# any_vassal = {
|
|
# any_held_title = {
|
|
# this = title:d_sunni
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
#
|
|
# is_shown = {
|
|
# fp3_reward_from_vassalization_ending = yes
|
|
# }
|
|
#
|
|
# is_valid = {
|
|
# # only valid for the actual liege
|
|
# custom_tooltip = {
|
|
# text = you_are_the_liege_of_the_caliph_tt
|
|
# scope:actor = {
|
|
# is_liege_or_above_of = scope:recipient
|
|
# }
|
|
# scope:recipient = {
|
|
# any_held_title = {
|
|
# this = title:d_sunni
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
#
|
|
# send_option = {
|
|
# flag = unity_gain
|
|
# localization = INCREASE_HOUSE_UNITY
|
|
# starts_enabled = { always = yes }
|
|
# }
|
|
#
|
|
# send_option = {
|
|
# flag = unity_loss
|
|
# localization = DECREASE_HOUSE_UNITY
|
|
# }
|
|
#
|
|
# on_accept = {
|
|
# scope:recipient = { save_scope_as = unity_target }
|
|
# scope:actor = {
|
|
# save_scope_as = unity_character
|
|
# house = {
|
|
# add_unity_value = {
|
|
# value = {
|
|
# if = {
|
|
# limit = { scope:unity_gain = yes }
|
|
# add = medium_unity_gain
|
|
# }
|
|
# else_if = {
|
|
# limit = { scope:unity_loss = yes }
|
|
# add = medium_unity_loss
|
|
# }
|
|
# }
|
|
# character = scope:actor
|
|
# desc = clan_unity_caliph_interfered_with_unity.desc
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
#
|
|
# ai_frequency_by_tier = {
|
|
# barony = 0
|
|
# county = 0
|
|
# duchy = 0
|
|
# kingdom = 60
|
|
# empire = 60
|
|
# hegemony = 60
|
|
# }
|
|
#
|
|
# ai_targets = {
|
|
# # For the AI, we limit it to neighboring_rulers
|
|
# ai_recipients = vassals
|
|
# }
|
|
#
|
|
# ai_will_do = {
|
|
# base = 100
|
|
# }
|
|
#}
|