namespace = great_holy_war ### Great Holy Wars Events # by Flavio Verna # updated by Ewan Cowhig Croft # 0001 - A Great Holy War is declared. # 0003 - Players informed of the start of the preparation phase of a GHW. # 0004 - Sponsor selects a new target Kingdom. # 0010 - A Faith unlocks GHWs for its Religion. # 0015 - Excommunication is lifted for joining a GHW. # 0016 - Sponsor admonishes ruler for unpledging from a GHW. # 0017 - Confirm unpledging. # 0018 - Confirm pledging. # 0020 - AI rulers pledge to Undirected GHW. # 0092 - AI rulers pledge to Directed GHW. # 0090 - Holy Orders pledging to GHW. # 0021 - AI rulers counterpledge to Undirected GHW. # 0093 - AI rulers counterpledge to Directed GHW. # 0091 - Holy Orders counterpledging to GHW. # 0022, 0023 - The Pope calls out unpledged player. # 0024 - Dead Recipient is replaced. # 0025 - Converted Recipient is replaced. # 0026, 0027 - A Beneficiary is selected for pledged AI rulers. # 0028 - Resetting a Beneficiary upon death. # 0029 - Resetting a Beneficiary upon conversion. # 0030 - Resetting a Beneficiary due to illness, excommunication, inheritance or celibacy vow. # 0040 - Player donates money to the GHW War Chest. # 0050 - GHW preparation phase starts (defender). # 0051 - GHW was declared. # 0052 - GHW was won. # 0053 - GHW was lost. # 0055 - GHW failed to start. # 0060 - Crusader trait gained. # 0058 - Crusader trait lost. # 0061 - Beneficiaries rewarded upon GHW victory. # 0080 - GHW sponsor is replaced upon death. # 0081, 0082 - Player redirected GHW during preparation phase. # The Sponsor declares a Great Holy War great_holy_war.0001 = { hidden = yes scope = faith trigger = { has_doctrine = doctrine_spiritual_head save_temporary_scope_as = the_faith exists = religious_head NOR = { exists = great_holy_war exists = var:variable_ghw_cooldown religion = { exists = var:variable_first_ghw_cooldown } # Do not event spam after Crusades have been just unlocked. } religious_head = { is_imprisoned = no } religion = { exists = var:variable_ghw_unlocked } #Activated by event for every religion. suitable_faith_for_undirected_ghw_trigger = yes #Right combinations of Doctrines to have GHWs. And a valid target exists } immediate = { save_scope_as = the_faith #Determine Sponsor. religious_head = { save_scope_as = ghw_sponsor } determine_ghw_target_effect = { FAITH = scope:the_faith } # Launch the preparation phase start_great_holy_war = { target_character = scope:target_character target_title = scope:target_kingdom delay = { 365 545 } } scope:target_character.faith = { save_scope_as = target_faith } #Used for counterpledges. great_holy_war = { set_war_declarer = scope:ghw_sponsor if = { limit = { is_directed_ghw = no } undirected_ghw_recipient_selection_effect = yes } } if = { limit = { scope:ghw_sponsor.gold > 0 } great_holy_war = { change_war_chest_gold = { value = scope:ghw_sponsor.gold divide = 2 max = 5000 } } scope:ghw_sponsor = { remove_short_term_gold = { value = gold divide = 2 max = 5000 } } } great_holy_war = { pledge_attacker = scope:ghw_sponsor set_variable = { name = redirect_cost value = 500 } } #If no Claimant or Title Holder is available to be the Papal choice and the Crusade has not proceeded far enough to have a favorite beneficiary, select a fallback Recipient so that the CB's tooltip does not appear incomplete. if = { #Random Courtier in the Pope's court. limit = { NOT = { exists = scope:the_faith.great_holy_war.ghw_title_recipient } exists = scope:ghw_sponsor exists = scope:the_faith.great_holy_war scope:ghw_sponsor = { any_courtier = { is_adult = yes is_ai = yes NOR = { has_trait = excommunicated has_trait = incapable has_trait = devoted } faith = scope:the_faith } } } scope:ghw_sponsor = { random_courtier = { alternative_limit = { scope:the_faith = { has_doctrine = doctrine_gender_male_dominated } is_male = yes is_adult = yes is_ai = yes NOR = { has_trait = excommunicated has_trait = incapable has_trait = devoted } faith = scope:the_faith } alternative_limit = { scope:the_faith = { has_doctrine = doctrine_gender_female_dominated } is_female = yes is_adult = yes is_ai = yes NOR = { has_trait = excommunicated has_trait = incapable has_trait = devoted } faith = scope:the_faith } limit = { is_adult = yes is_ai = yes NOR = { has_trait = excommunicated has_trait = incapable has_trait = devoted } faith = scope:the_faith } save_scope_as = fallback_recipient add_character_flag = flag_is_ghw_fallback_recipient } } } else_if = { #Else Generate a fallback recipient. limit = { NOT = { exists = scope:the_faith.great_holy_war.ghw_title_recipient } } create_character = { location = scope:ghw_sponsor.capital_province template = new_commander_character faith = scope:the_faith culture = scope:ghw_sponsor.culture save_scope_as = fallback_recipient gender_female_chance = { if = { limit = { scope:the_faith = { has_doctrine = doctrine_gender_male_dominated } } add = 0 } else_if = { limit = { scope:the_faith = { has_doctrine = doctrine_gender_female_dominated } } add = 100 } else = { add = 50 } } } scope:fallback_recipient = { add_character_flag = flag_is_ghw_fallback_recipient } } great_holy_war = { set_variable = { name = var_fallback_recipient value = scope:fallback_recipient } } every_player = { #Inform players limit = { faith = scope:the_faith highest_held_title_tier >= tier_county this != scope:ghw_sponsor } trigger_event = great_holy_war.0003 #Send event immediately for player, then delay it for all the AIs. } every_player = { #Inform defending players limit = { OR = { faith = scope:target_faith #All infidels. any_liege_or_above = { scope:the_faith.great_holy_war = { has_pledged_defender = prev } } AND = { faith != scope:the_faith scope:the_faith.great_holy_war = { has_pledged_defender = prev } } } } trigger_event = great_holy_war.0050 } #Attackers Pledge to the Crusade. (AI only) every_faith_ruler = { limit = { is_ai = yes is_landed = yes highest_held_title_tier >= tier_county NOR = { this = scope:ghw_sponsor root.great_holy_war = { has_pledged_attacker = prev } target_is_liege_or_above = scope:target_character } } trigger_event = { #AI pledging. There is a chance the AI might pledge after the Crusade starts, but it's a lot less likely. id = great_holy_war.0020 days = { 50 450 } } } every_faith_holy_order = { trigger_event = { #Holy orders always join id = great_holy_war.0090 days = { 30 60 } } } #Defenders Pledge to the Crusade. (AI only) scope:target_character = { religion = { every_faith = { every_faith_ruler = { limit = { is_ai = yes is_landed = yes highest_held_title_tier >= tier_county NOT = { root.great_holy_war = { has_pledged_defender = prev } } } trigger_event = { #AI counterpledging. Unlike attackers, defenders should be selected much faster during the preparation phase and then stop. id = great_holy_war.0021 days = { 25 150 } } } } } faith = { every_faith_holy_order = { trigger_event = { # Holy orders always join id = great_holy_war.0091 days = { 30 60 } } } } } #EP3 Redirected Crusade setup event great_holy_war = { if = { limit = { has_ep3_dlc_trigger = yes scope:the_faith = { this = faith:catholic } ep3_frankokratia_ghw_trigger = yes ep3_frankokratia_financier_exists_trigger = yes } #start with player if = { limit = { any_player = { ep3_frankokratia_story_owner_trigger = yes } } random_player = { limit = { ep3_frankokratia_story_owner_trigger = yes } trigger_event = { id = ep3_frankokratia_events.0001 days = 20 } } } #Next, ai with a closely related claimant who will accept else_if = { limit = { scope:the_faith = { any_faith_playable_ruler = { ep3_frankokratia_story_owner_trigger = yes ep3_frankokratia_will_start_trigger = yes save_temporary_scope_as = char_temp #Thorough check for close relation claimants OR = { any_close_family_member = { OR = { is_courtier_of = prev is_vassal_of = prev } } #In laws of family in court/realm any_close_family_member = { OR = { is_courtier_of = prev is_vassal_of = prev } ep3_frankokratia_transiting_relative_trigger = yes any_spouse = { ep3_frankokratia_claimant_trigger = yes } } #Spouse claimant any_spouse = { ep3_frankokratia_claimant_trigger = yes } #Spouse's close family in realm/court any_spouse = { ep3_frankokratia_transiting_relative_trigger = yes any_close_family_member = { OR = { is_courtier_of = prev is_vassal_of = prev } ep3_frankokratia_claimant_trigger = yes } } #friends any_relation = { type = friend ep3_frankokratia_claimant_trigger = yes } #soulmates any_relation = { type = soulmate ep3_frankokratia_claimant_trigger = yes } } } } } scope:the_faith = { ordered_faith_playable_ruler = { order_by = { value = 0 add = current_military_strength } limit = { ep3_frankokratia_story_owner_trigger = yes ep3_frankokratia_will_start_trigger = yes save_temporary_scope_as = char_temp #Thorough check for close relation claimants OR = { any_close_family_member = { OR = { is_courtier_of = prev is_vassal_of = prev } } #In laws of family in court/realm any_close_family_member = { OR = { is_courtier_of = prev is_vassal_of = prev } ep3_frankokratia_transiting_relative_trigger = yes any_spouse = { ep3_frankokratia_claimant_trigger = yes } } #Spouse claimant any_spouse = { ep3_frankokratia_claimant_trigger = yes } #Spouse's close family in realm/court any_spouse = { ep3_frankokratia_transiting_relative_trigger = yes any_close_family_member = { OR = { is_courtier_of = prev is_vassal_of = prev } ep3_frankokratia_claimant_trigger = yes } } #friends any_relation = { type = friend ep3_frankokratia_claimant_trigger = yes } #soulmates any_relation = { type = soulmate ep3_frankokratia_claimant_trigger = yes } } } trigger_event = { id = ep3_frankokratia_events.0001 days = 20 } } } } #Someone with looser relation to claimant who will accept else_if = { limit = { scope:the_faith = { any_faith_playable_ruler = { ep3_frankokratia_story_owner_trigger = yes ep3_frankokratia_will_start_trigger = yes } } } scope:the_faith = { ordered_faith_playable_ruler = { order_by = { value = 0 add = current_military_strength } limit = { ep3_frankokratia_story_owner_trigger = yes ep3_frankokratia_will_start_trigger = yes } trigger_event = { id = ep3_frankokratia_events.0001 days = 20 } } } } #Next, ai with a closely related claimant who might not accept else_if = { limit = { scope:the_faith = { any_faith_playable_ruler = { ep3_frankokratia_story_owner_trigger = yes save_temporary_scope_as = char_temp #Thorough check for close relation claimants OR = { any_close_family_member = { OR = { is_courtier_of = prev is_vassal_of = prev } } #In laws of family in court/realm any_close_family_member = { OR = { is_courtier_of = prev is_vassal_of = prev } ep3_frankokratia_transiting_relative_trigger = yes any_spouse = { ep3_frankokratia_claimant_trigger = yes } } #Spouse claimant any_spouse = { ep3_frankokratia_claimant_trigger = yes } #Spouse's close family in realm/court any_spouse = { ep3_frankokratia_transiting_relative_trigger = yes any_close_family_member = { OR = { is_courtier_of = prev is_vassal_of = prev } ep3_frankokratia_claimant_trigger = yes } } #friends any_relation = { type = friend ep3_frankokratia_claimant_trigger = yes } #soulmates any_relation = { type = soulmate ep3_frankokratia_claimant_trigger = yes } } } } } scope:the_faith = { ordered_faith_playable_ruler = { order_by = { value = 0 add = current_military_strength } limit = { ep3_frankokratia_story_owner_trigger = yes save_temporary_scope_as = char_temp #Thorough check for close relation claimants OR = { any_close_family_member = { OR = { is_courtier_of = prev is_vassal_of = prev } } #In laws of family in court/realm any_close_family_member = { OR = { is_courtier_of = prev is_vassal_of = prev } ep3_frankokratia_transiting_relative_trigger = yes any_spouse = { ep3_frankokratia_claimant_trigger = yes } } #Spouse claimant any_spouse = { ep3_frankokratia_claimant_trigger = yes } #Spouse's close family in realm/court any_spouse = { ep3_frankokratia_transiting_relative_trigger = yes any_close_family_member = { OR = { is_courtier_of = prev is_vassal_of = prev } ep3_frankokratia_claimant_trigger = yes } } #friends any_relation = { type = friend ep3_frankokratia_claimant_trigger = yes } #soulmates any_relation = { type = soulmate ep3_frankokratia_claimant_trigger = yes } } } trigger_event = { id = ep3_frankokratia_events.0001 days = 20 } } } } #Someone with looser relation to claimant who might not accept else_if = { limit = { scope:the_faith = { any_faith_playable_ruler = { ep3_frankokratia_story_owner_trigger = yes } } } scope:the_faith = { ordered_faith_playable_ruler = { order_by = { value = 0 add = current_military_strength } limit = { ep3_frankokratia_story_owner_trigger = yes } trigger_event = { id = ep3_frankokratia_events.0001 days = 20 } } } } } } if = { limit = { NOT = { exists = global_var:cath_crusade_1 } scope:the_faith = { this = faith:catholic } } set_global_variable = { name = cath_crusade_1 value = 1 } } else_if = { limit = { scope:the_faith = { this = faith:catholic } } change_global_variable = { name = cath_crusade_1 add = 1 } } } } # The preparation for the next Great Holy War begins. Faithful assemble. great_holy_war.0003 = { title = great_holy_war.0003.title desc = { first_valid = { #Catholic flavour triggered_desc = { desc = great_holy_war.0003.catholic.desc trigger = { scope:the_faith = faith:catholic } } #Everyone else desc = great_holy_war.0003.fallback.desc } } theme = faith override_background = { reference = temple_scope } left_portrait = scope:ghw_sponsor immediate = { scope:ghw_sponsor = { save_scope_as = background_temple_scope } play_music_cue = "mx_cue_general_crusade_event_2" set_variable = { name = ghw_pledge_amount value = great_holy_war_pledge_amount } set_variable = { name = half_great_holy_war_pledge_amount value = { value = root.great_holy_war_pledge_amount multiply = 0.5 } } } option = { name = great_holy_war.0003.a trigger = { root.faith = scope:the_faith NOR = { exists = scope:the_faith.great_holy_war.ghw_war #Religious head should never unpledge: this = scope:the_faith.great_holy_war.ghw_war_declarer has_character_flag = ghw_unpledging_cooldown #Safety event. #Do not pledge against your own liege: any_liege_or_above = { this = scope:the_faith.great_holy_war.ghw_target_character } } OR = { #Either be independent, or all lieges above you MUST be of the same Faith declaring the war to avoid messy situations of vassals and lieges fighting against each other. top_liege = this NOT = { any_liege_or_above = { faith != scope:the_faith } } } } custom_tooltip = great_holy_war.0003.a.tt if = { limit = { NOT = { scope:the_faith.great_holy_war = { has_pledged_attacker = root } } } pledge_ghw_piety_gain_effect = yes #Excommunication lifted. if = { limit = { has_trait = excommunicated faith = { has_doctrine_parameter = excommunication_active } } custom_tooltip = great_holy_war.0003.a.lifted_excommunication trigger_event = { id = great_holy_war.0015 days = 37 } } } scope:the_faith.great_holy_war = { hidden_effect = { pledge_attacker = root } pledge_ghw_war_chest_prestige_effect = yes pledge_ghw_war_chest_piety_effect = yes } ai_chance = { base = 10 modifier = { factor = 0.5 top_liege != this } modifier = { factor = 0.5 highest_held_title_tier = tier_county } modifier = { factor = 5 highest_held_title_tier >= tier_kingdom } modifier = { #Excommunicated characters like getting rid of the trait. factor = 2 has_trait = excommunicated } } } option = { name = great_holy_war.0003.b add_piety = root.var:half_great_holy_war_pledge_amount #Excommunication lifted. if = { limit = { has_trait = excommunicated faith = { has_doctrine_parameter = excommunication_active } } trigger_event = { id = great_holy_war.0015 days = 37 } } remove_short_term_gold = var:ghw_pledge_amount set_variable = { name = ghw_war_chest_donated_sum value = var:ghw_pledge_amount } scope:the_faith.great_holy_war = { change_war_chest_gold = root.var:ghw_pledge_amount } if = { limit = { NOT = { has_character_flag = ghw_pledged_gold } is_ai = no } add_character_flag = { #Used to check whether the Pope will harass for more later. flag = ghw_pledged_gold days = 7300 } } ai_chance = { base = 10 } } option = { name = great_holy_war.0003.c ai_chance = { base = 0 } } after = { remove_variable = ghw_pledge_amount } } # Rel head selects new target great_holy_war.0004 = { hidden = yes scope = ghw immediate = { faith = { save_scope_as = the_faith } determine_ghw_target_effect = { FAITH = scope:the_faith } set_great_holy_war_target = { target_title = scope:target_kingdom target_character = scope:target_character } if = { limit = { exists = var:last_redirector } change_variable = { name = redirect_cost divide = 2 } var:last_redirector = { add_piety = root.var:redirect_cost } remove_variable = last_redirector } } } # War is launched great_holy_war.0005 = { hidden = yes scope = ghw immediate = { if = { limit = { any_pledged_attacker = { primary_title = { is_head_of_faith = yes } faith = faith:catholic } exists = global_var:byz_claimant_champion global_var:byz_claimant_champion = { is_alive = yes is_ruler = yes any_owned_story = { type = frankokratia_story } } exists = title:e_byzantium.holder } #Check claimant isn't dead, invalidate if they are if = { limit = { global_var:byz_claimant_champion = { any_owned_story = { type = frankokratia_story var:byz_claimant = { is_alive = no } } } } global_var:byz_claimant_champion = { random_owned_story = { type = frankokratia_story every_in_list = { variable = frankokratia_leaders limit = { is_ai = no } trigger_event = ep3_frankokratia_events.0005 } } } } else = { ep3_frankokratia_remove_pledged_attackers_effect = yes } } start_ghw_war = undirected_great_holy_war divide_war_chest = { fraction = 0.2 prestige = no gold = no } } } #Unlocking Holy Wars. (on later dates Crusades and Jihads start already unlocked from Character History) #Hidden check event, fired on_faith pulse. scripted_trigger great_holy_war_0010_jerusalem_reason_trigger = { title:c_jerusalem.holder.top_liege = { faith.religion != scope:awakening_faith.religion } } scripted_trigger great_holy_war_0010_rome_reason_trigger = { title:c_roma.holder.top_liege = { faith.religion != scope:awakening_faith.religion } } scripted_trigger great_holy_war_0010_byzantion_reason_trigger = { OR = { trigger_if = { # Byzantine Empire limit = { exists = title:e_byzantium.holder } # Make sure a holder exists beforehand title:e_byzantium.holder.religion = { NOT = { this = religion:christianity_religion } } } title:c_byzantion.holder.top_liege.religion = { # Constantinople NOT = { this = religion:christianity_religion } } title:c_paphlagonia.holder.top_liege.religion = { # Ankyra NOT = { this = religion:christianity_religion } } title:c_attica.holder.top_liege.religion = { # Athens NOT = { this = religion:christianity_religion } } title:c_korinthos.holder.top_liege.religion = { # Corinth NOT = { this = religion:christianity_religion } } } } scripted_trigger great_holy_war_0010_europe_reason_trigger = { OR = { title:c_venaissin.holder.top_liege.religion = { # Provence NOT = { this = religion:christianity_religion } } title:c_toulouse.holder.top_liege.religion = { # Toulouse NOT = { this = religion:christianity_religion } } title:c_ile_de_france.holder.top_liege.religion = { # Paris NOT = { this = religion:christianity_religion } } title:c_cologne.holder.top_liege.religion = { # Cologne NOT = { this = religion:christianity_religion } } title:c_halberstadt.holder.top_liege.religion = { # Halberstadt NOT = { this = religion:christianity_religion } } } } scripted_trigger great_holy_war_0010_mecca_reason_trigger = { title:c_mecca.holder.top_liege = { faith.religion != scope:awakening_faith.religion } } scripted_trigger great_holy_war_0010_centre_reason_trigger = { OR = { title:c_baghdad.holder.top_liege.religion = { # Baghdad NOT = { this = religion:christianity_religion } } title:c_damascus.holder.top_liege.religion = { # Damascus NOT = { this = religion:christianity_religion } } title:c_cairo.holder.top_liege.religion = { # Cairo NOT = { this = religion:christianity_religion } } } } scripted_trigger great_holy_war_0010_africa_reason_trigger = { OR = { title:c_marrakesh.holder.top_liege.religion = { # Marrakesh NOT = { this = religion:christianity_religion } } title:c_tunis.holder.top_liege.religion = { # Tunis NOT = { this = religion:christianity_religion } } title:c_algier.holder.top_liege.religion = { # Algier NOT = { this = religion:christianity_religion } } } } great_holy_war.0010 = { hidden = yes scope = faith trigger = { suitable_faith_for_any_ghw_trigger = yes # Faith must have right Doctrines. NOR = { religion = { exists = var:variable_ghw_unlocked } has_global_variable = variable_ghw_global_unlocking_cooldown } religious_head ?= { is_imprisoned = no } num_county_followers >= 35 # Faith must have at least SOME legitimacy. OR = { current_date >= 2650.1.1 # Free for all after Historical years AND = { # Any Faith is seriously under attack. any_holy_site = { holder.top_liege = { faith.religion != root.religion } count >= 2 } current_date >= 2600.1.1 } AND = { # I learned it from you! - Muslims second. religion:christianity_religion = { exists = var:variable_ghw_unlocked } religion:islam_religion = root.religion any_holy_site = { holder.top_liege = { faith.religion != root.religion } count >= 1 } } AND = { # And we learned it from you! - Everyone else last. religion:christianity_religion = { exists = var:variable_ghw_unlocked } religion:islam_religion = { exists = var:variable_ghw_unlocked } any_holy_site = { holder.top_liege = { faith.religion != root.religion } count >= 1 } NOR = { OR = { religion = religion:eastern_orthodox_religion religion = religion:catholic_religion religion = religion:protestant_religion } religion = religion:islam_religion } } } } weight_multiplier = { base = 1 modifier = { # Historical push for local Christian control. add = 2 title:c_jerusalem.holder = { NOT = { OR = { faith.religion = religion:eastern_orthodox_religion faith.religion = religion:catholic_religion faith.religion = religion:protestant_religion } } } current_date >= 1095.1.1 OR = { faith.religion = religion:eastern_orthodox_religion faith.religion = religion:catholic_religion faith.religion = religion:protestant_religion } } modifier = { # Historical push for overall Islamic control. add = 2 title:c_jerusalem.holder.top_liege = { NOT = { faith.religion = religion:islam_religion } } current_date >= 1095.1.1 root.religion = religion:islam_religion } } immediate = { set_global_variable = { name = variable_ghw_global_unlocking_cooldown # Slow Down cascade of Religious Heads unlocking Crusades all over the place, trying to outplay ach other. value = yes days = 3650 } religion = { set_variable = { name = variable_first_ghw_cooldown # Wait at least a couple of months before firing the first Crusade after this event. value = yes days = 120 } } save_scope_as = awakening_faith if = { limit = { exists = religious_head } religious_head = { save_scope_as = ghw_first_sponsor } } else = { random_theocratic_ruler = { limit = { faith = root } save_scope_as = ghw_first_sponsor } } if = { # Fallback limit = { NOT = { exists = scope:ghw_first_sponsor } } random_ruler = { limit = { faith = root } save_scope_as = ghw_first_sponsor } } religion = { set_variable = { name = variable_ghw_unlocked # Crusades value = yes } } every_player = { trigger_event = great_holy_war.0011 # Flavor fluff for various Faiths. } } } #Flavor Fluff. great_holy_war.0011 = { type = character_event title = { first_valid = { triggered_desc = { trigger = { OR = { scope:awakening_faith.religion = religion:eastern_orthodox_religion scope:awakening_faith.religion = religion:catholic_religion scope:awakening_faith.religion = religion:protestant_religion } } desc = great_holy_war.0011.christian.t } triggered_desc = { trigger = { scope:awakening_faith.religion = religion:islam_religion } desc = great_holy_war.0011.muslim.t } triggered_desc = { #Pagan Polytheists trigger = { scope:awakening_faith.religion = { is_in_family = rf_pagan } } desc = great_holy_war.0011.pagans.t } desc = great_holy_war.0011.fallback.t } } desc = { first_valid = { #Christian Flavor triggered_desc = { #Catholic Crusades, because of Rome. trigger = { scope:awakening_faith = faith:catholic exists = scope:ghw_first_sponsor great_holy_war_0010_rome_reason_trigger = yes } desc = great_holy_war.0011.catholic.rome.desc } triggered_desc = { #Christian Crusades, because of fall of Europe. trigger = { OR = { scope:awakening_faith.religion = religion:eastern_orthodox_religion scope:awakening_faith.religion = religion:catholic_religion scope:awakening_faith.religion = religion:protestant_religion } exists = scope:ghw_first_sponsor great_holy_war_0010_europe_reason_trigger = yes } desc = great_holy_war.0011.christian.europe.desc } triggered_desc = { #Christian Crusades, because of fall of Byzantium. trigger = { OR = { scope:awakening_faith.religion = religion:eastern_orthodox_religion scope:awakening_faith.religion = religion:catholic_religion scope:awakening_faith.religion = religion:protestant_religion } exists = scope:ghw_first_sponsor great_holy_war_0010_byzantion_reason_trigger = yes } desc = great_holy_war.0011.christian.byzantion.desc } triggered_desc = { #Catholic Crusades, because of Jerusalem. trigger = { scope:awakening_faith = faith:catholic exists = scope:ghw_first_sponsor great_holy_war_0010_jerusalem_reason_trigger = yes } desc = great_holy_war.0011.catholic.jerusalem.desc } triggered_desc = { #Christian Crusades, fallback. trigger = { OR = { scope:awakening_faith.religion = religion:eastern_orthodox_religion scope:awakening_faith.religion = religion:catholic_religion scope:awakening_faith.religion = religion:protestant_religion } } desc = great_holy_war.0011.christian.fallback.desc } #Muslim Flavor triggered_desc = { #Jihads, because of Mecca. trigger = { scope:awakening_faith.religion = religion:islam_religion exists = scope:ghw_first_sponsor great_holy_war_0010_mecca_reason_trigger = yes } desc = great_holy_war.0011.muslim.mecca.desc } triggered_desc = { #Jihads, because of Jerusalem. trigger = { scope:awakening_faith.religion = religion:islam_religion exists = scope:ghw_first_sponsor great_holy_war_0010_mecca_reason_trigger = yes } desc = great_holy_war.0011.muslim.jerusalem.desc } triggered_desc = { #Jihads, because of Arabia/Egypt. trigger = { scope:awakening_faith.religion = religion:islam_religion exists = scope:ghw_first_sponsor great_holy_war_0010_centre_reason_trigger = yes } desc = great_holy_war.0011.muslim.arabia.desc } triggered_desc = { #Jihads, because of Africa. trigger = { scope:awakening_faith.religion = religion:islam_religion exists = scope:ghw_first_sponsor great_holy_war_0010_africa_reason_trigger = yes } desc = great_holy_war.0011.muslim.africa.desc } triggered_desc = { #Jihads, fallback. trigger = { scope:awakening_faith.religion = religion:islam_religion } desc = great_holy_war.0011.muslim.fallback.desc } #Generic Flavor triggered_desc = { #Generic, with Head. trigger = { NOR = { scope:awakening_faith.religion = religion:islam_religion OR = { scope:awakening_faith.religion = religion:eastern_orthodox_religion scope:awakening_faith.religion = religion:catholic_religion scope:awakening_faith.religion = religion:protestant_religion } } exists = scope:ghw_first_sponsor } desc = great_holy_war.0011.generic.fallback.head.desc } desc = great_holy_war.0011.generic.fallback.desc } first_valid = { #Ending, favorable or not, depending on receiver. triggered_desc = { # Crusades are good! trigger = { OR = { faith = scope:awakening_faith faith = { faith_hostility_level = { target = scope:awakening_faith value < faith_hostile_level } } } faith.religion != scope:awakening_faith.religion } desc = great_holy_war.0011.generic.ending.positive } triggered_desc = { # Crusades are bad! trigger = { NOR = { faith = scope:awakening_faith faith.religion = scope:awakening_faith.religion faith = { faith_hostility_level = { target = scope:awakening_faith value < faith_hostile_level } } } } desc = great_holy_war.0011.generic.ending.negative } triggered_desc = { # Co-religionists. trigger = { faith.religion = scope:awakening_faith.religion faith != scope:awakening_faith exists = faith.religious_head } desc = great_holy_war.0011.generic.ending.coreligionist.head } triggered_desc = { # Co-religionists (no Head). trigger = { faith.religion = scope:awakening_faith.religion faith != scope:awakening_faith NOT = { exists = faith.religious_head } } desc = great_holy_war.0011.generic.ending.coreligionist.autonomous } } } theme = faith override_background = { reference = temple_scope } left_portrait = { character = scope:ghw_first_sponsor triggered_animation = { trigger = { scope:awakening_faith = { has_doctrine = doctrine_temporal_head } } animation = marshal } animation = personality_zealous } immediate = { scope:ghw_first_sponsor = { save_scope_as = background_temple_scope } play_music_cue = "mx_cue_epic_sacral_moment" if = { #Localisation use only limit = { faith.religion = scope:awakening_faith.religion faith != scope:awakening_faith exists = faith.religious_head } faith.religious_head = { save_scope_as = other_pope } } } option = { #God's will name = great_holy_war.0011.a trigger = { root.faith = scope:awakening_faith OR = { scope:awakening_faith.religion = religion:eastern_orthodox_religion scope:awakening_faith.religion = religion:catholic_religion scope:awakening_faith.religion = religion:protestant_religion } } } option = { #Allahu Akhbar name = great_holy_war.0011.b trigger = { root.faith = scope:awakening_faith scope:awakening_faith.religion = religion:islam_religion } } option = { #PaganGodName is with us. name = great_holy_war.0011.c trigger = { root.faith = scope:awakening_faith NOR = { OR = { scope:awakening_faith.religion = religion:eastern_orthodox_religion scope:awakening_faith.religion = religion:catholic_religion scope:awakening_faith.religion = religion:protestant_religion } scope:awakening_faith.religion = religion:islam_religion } } } option = { #Infidels incoming. name = great_holy_war.0011.d trigger = { root.faith != scope:awakening_faith root.faith = { faith_hostility_level = { target = scope:awakening_faith value >= faith_hostile_level } } } } option = { #Good luck, I suppose... name = great_holy_war.0011.e trigger = { NOR = { root.faith = scope:awakening_faith root.faith = { faith_hostility_level = { target = scope:awakening_faith value >= faith_hostile_level } } } } } after = { custom_tooltip = great_holy_war.0011.tooltip.effect } } #Excommunication lifted for joining the Crusade. great_holy_war.0015 = { type = letter_event opening = { desc = great_holy_war.0015.opening } desc = great_holy_war.0015.desc sender = { character = scope:scoped_pope animation = happiness } trigger = { faith.great_holy_war = { has_pledged_attacker = root } has_trait = excommunicated } immediate = { if = { #If Pope died in the meantime. limit = { OR = { NOT = { exists = faith.great_holy_war.ghw_war_declarer } NOT = { faith.great_holy_war.ghw_war_declarer = { is_alive = yes } } } } faith = { ghw_set_new_war_declarer_effect = yes } } root.faith.great_holy_war.ghw_war_declarer = { save_scope_as = scoped_pope } remove_trait = excommunicated add_character_modifier = { modifier = excommunication_recently_lifted years = 10 } } option = { name = great_holy_war.0015.a trigger = { has_trait = cynical } } option = { name = great_holy_war.0015.b trigger = { NOT = { has_trait = cynical } } } } #Pope upset because ruler unpledged. great_holy_war.0016 = { type = letter_event opening = { desc = great_holy_war.0015.opening } desc = { first_valid = { #Light Punishment triggered_desc = { trigger = { has_character_flag = ghw_light_punishment } desc = great_holy_war.0016.desc.a } } first_valid = { #Harsh Punishment triggered_desc = { trigger = { has_character_flag = ghw_harsh_punishment } desc = great_holy_war.0016.desc.b } } first_valid = { #Excommunication Punishment triggered_desc = { trigger = { has_character_flag = ghw_excommunication } desc = great_holy_war.0016.desc.c } } } sender = { character = scope:scoped_pope animation = anger } trigger = { NOT = { faith.great_holy_war = { has_pledged_attacker = root } } is_landless_adventurer = no } immediate = { hidden_effect = { if = { #If Pope died in the meantime. limit = { OR = { NOT = { exists = faith.great_holy_war.ghw_war_declarer } NOT = { faith.great_holy_war.ghw_war_declarer = { is_alive = yes } } } } faith = { ghw_set_new_war_declarer_effect = yes } } root.faith.great_holy_war.ghw_war_declarer = { save_scope_as = scoped_pope } random_list = { 40 = { opinion_modifier = { who = scope:scoped_pope opinion_target = root } modifier = { factor = 2 highest_held_title_tier = tier_county } add_character_flag = { flag = ghw_light_punishment days = 500 } } 30 = { modifier = { factor = 1.25 highest_held_title_tier >= tier_duchy } add_character_flag = { flag = ghw_harsh_punishment days = 500 } } 30 = { #Excommunication available only if target already not excommunicated and religion allows it. trigger = { NOT = { has_trait = excommunicated } faith = { has_doctrine_parameter = excommunication_active } highest_held_title_tier >= tier_kingdom } modifier = { #Fool me once... factor = 2 has_character_modifier = excommunication_recently_lifted } modifier = { factor = 2 highest_held_title_tier >= tier_empire } add_character_flag = { flag = ghw_excommunication days = 500 } } } } } option = { name = great_holy_war.0016.a trigger = { has_trait = cynical } } option = { name = great_holy_war.0016.b trigger = { NOT = { has_trait = cynical } } } after = { if = { limit = { has_character_flag = ghw_light_punishment } scope:scoped_pope = { add_opinion = { target = root modifier = unpledged_from_ghw_opinion opinion = -25 } } } if = { limit = { has_character_flag = ghw_harsh_punishment } add_piety = medium_piety_loss scope:scoped_pope = { add_opinion = { target = root modifier = unpledged_from_ghw_opinion opinion = -35 } } if = { limit = { any_theocratic_vassal = { faith = root.faith } } every_theocratic_vassal = { custom = great_holy_war.0016.custom limit = { faith = root.faith } add_opinion = { target = root modifier = impious_opinion opinion = -35 } } } if = { limit = { exists = cp:councillor_court_chaplain } add_opinion = { target = root modifier = impious_opinion opinion = -35 } } } if = { limit = { has_character_flag = ghw_excommunication } add_excommunication_actual_effect = yes if = { limit = { has_character_modifier = excommunication_recently_lifted } hidden_effect = { remove_character_modifier = excommunication_recently_lifted } } scope:scoped_pope = { add_opinion = { target = root modifier = unpledged_from_ghw_opinion opinion = -40 } } } remove_character_flag = ghw_light_punishment remove_character_flag = ghw_harsh_punishment remove_character_flag = ghw_excommunication stress_impact = { zealous = medium_stress_impact_gain } } } #Confirmation to unpledge. great_holy_war.0017 = { title = great_holy_war.0017.title desc = { first_valid = { triggered_desc = { trigger = { scope:scoped_pope = { faith = faith:catholic } } desc = great_holy_war.0017.desc.a } triggered_desc = { trigger = { NOT = { scope:scoped_pope = { faith = faith:catholic } } } desc = great_holy_war.0017.desc.b } } } theme = faith left_portrait = scope:scoped_pope immediate = { if = { limit = { NOR = { exists = faith.great_holy_war.ghw_war_declarer faith.great_holy_war.ghw_war_declarer = { is_alive = yes } } } faith = { ghw_set_new_war_declarer_effect = yes } } root.faith.great_holy_war.ghw_war_declarer = { save_scope_as = scoped_pope } add_character_flag = { flag = ghw_unpledging_cooldown days = 500 } } option = { name = great_holy_war.0017.a if = { limit = { #Stop from doing it if the player opens the Crusade Interface and joins from there. scope:great_holy_war = { has_pledged_attacker = root } } root.faith.great_holy_war = { unpledge_attacker = root unpledge_ghw_war_chest_prestige_effect = yes unpledge_ghw_war_chest_piety_effect = yes } } #Piety price pledge_ghw_piety_loss_effect = yes add_piety_level = -1 #Set Cooldown set_variable = { name = variable_ghw_unpledged_cooldown value = yes days = 60 } #Religious Head is upset trigger_event = { id = great_holy_war.0016 days = 37 } remove_character_flag = ghw_unpledging_cooldown add_character_flag = { #Used to check whether the Pope will harass for more later. flag = ghw_unpledged_once days = 550 } } option = { name = great_holy_war.0017.b remove_character_flag = ghw_unpledging_cooldown } } #Confirmation to pledge. great_holy_war.0018 = { title = great_holy_war.0003.title desc = great_holy_war.0018.desc theme = faith left_portrait = scope:scoped_pope immediate = { if = { limit = { OR = { NOT = { exists = faith.great_holy_war.ghw_war_declarer } NOT = { faith.great_holy_war.ghw_war_declarer = { is_alive = yes } } } } faith = { ghw_set_new_war_declarer_effect = yes } } root.faith.great_holy_war.ghw_war_declarer = { save_scope_as = scoped_pope } add_character_flag = { flag = ghw_unpledging_cooldown days = 500 } } option = { name = great_holy_war.0018.a faith.great_holy_war = { pledge_attacker = root pledge_ghw_war_chest_prestige_effect = yes pledge_ghw_war_chest_piety_effect = yes } #Piety bonus root = { pledge_ghw_piety_gain_effect = yes #Excommunication lifted. if = { limit = { has_trait = excommunicated faith = { has_doctrine = tenet_communion } } trigger_event = { id = great_holy_war.0015 days = 37 } } } remove_character_flag = ghw_unpledging_cooldown } option = { name = great_holy_war.0018.b remove_character_flag = ghw_unpledging_cooldown } } # AI hidden event to pledge to a Great Holy War during the preparation phase. # Event is fired when the Pope calls for the Crusade. # Requires a the_faith scope, defined by event. great_holy_war.0020 = { hidden = yes trigger = { is_ai = yes is_ruler = yes is_landed = yes is_at_war = no is_imprisoned = no highest_held_title_tier >= tier_county NOT = { has_trait = incapable } ai_zeal >= 0 root.faith = scope:the_faith NOT = { target_is_liege_or_above = scope:target_character } scope:the_faith = { # Crusade still exists great_holy_war ?= { NOT = { has_pledged_attacker = root } } } } immediate = { scope:the_faith.great_holy_war = { set_variable = { name = triple_defenders_strength value = { value = ghw_defenders_strength multiply = 3 } } set_variable = { name = double_defenders_strength value = { value = ghw_defenders_strength multiply = 2 } } set_variable = { name = one_and_a_half_of_defenders_strength value = { value = ghw_defenders_strength multiply = 1.5 } } set_variable = { name = half_of_defenders_strength value = { value = ghw_defenders_strength multiply = 0.5 } } set_variable = { name = quarter_of_defenders_strength value = { value = ghw_defenders_strength multiply = 0.25 } } } random_list = { 15 = { # Pledge. trigger = { OR = { # Either be independent, or have no liege above you of the defending Faith, to avoid messy situations of vassals and lieges fighting against each other. top_liege = this any_liege_or_above = { count = all faith != scope:target_faith } } } scope:the_faith.great_holy_war = { pledge_attacker = root pledge_ghw_war_chest_prestige_effect = yes pledge_ghw_war_chest_piety_effect = yes } pledge_ghw_piety_gain_effect = yes # Excommunication lifted. if = { limit = { has_trait = excommunicated faith = { has_doctrine_parameter = excommunication_active } } trigger_event = { id = great_holy_war.0015 days = 37 } } if = { limit = { is_ai = yes } trigger_event = { id = great_holy_war.0026 } # Set Beneficiary automatically. } } 85 = { # Do not pledge. random = { # When not pledging, there is still a chance that the AI will donate money. chance = 35 modifier = { factor = 0.75 has_trait = greedy } modifier = { factor = 1.5 has_trait = generous } modifier = { factor = 0.25 has_trait = cynical } modifier = { factor = 1.75 has_trait = zealous } modifier = { factor = 1.75 short_term_gold >= root.great_holy_war_pledge_amount } ai_value_modifier = { # Raw Zeal ai_zeal = 1.0 } scope:the_faith.great_holy_war = { change_war_chest_gold = { value = root.great_holy_war_pledge_amount multiply = 0.5 } } } modifier = { # More pledging happening at start of preparation phase. factor = 0.75 NOT = { exists = scope:the_faith.great_holy_war.ghw_war } scope:the_faith.great_holy_war = { days_until_ghw_launch > 200 } } modifier = { # Less pledging happening after. factor = 1.5 NOT = { exists = scope:the_faith.great_holy_war.ghw_war } scope:the_faith.great_holy_war = { days_until_ghw_launch < 150 } } modifier = { # Less pledging happening after. factor = 1.75 NOT = { exists = scope:the_faith.great_holy_war.ghw_war } scope:the_faith.great_holy_war = { days_until_ghw_launch < 100 } } modifier = { # Less pledging happening after. factor = 1.75 NOT = { exists = scope:the_faith.great_holy_war.ghw_war } scope:the_faith.great_holy_war = { days_until_ghw_launch < 70 } } modifier = { # More likely if war is close by. factor = 0.85 scope:target_kingdom = { capital_vassal.capital_vassal = { squared_distance = { target = root.capital_county value < 150000 } } } } modifier = { # More likely if war is close by. factor = 0.9 scope:target_kingdom = { capital_vassal.capital_vassal = { squared_distance = { target = root.capital_county value < 1500000 } # Roughly Rome to Portugal } } } modifier = { # Less likely if war is far away. factor = 1.5 scope:target_kingdom = { capital_vassal.capital_vassal = { squared_distance = { target = root.capital_county value > 2000000 } } } } modifier = { # Just too darn far away... factor = 1.75 scope:target_kingdom = { capital_vassal.capital_vassal = { squared_distance = { target = root.capital_county value > 2500000 } } } } modifier = { # Much less likely to happen if the war has started. factor = 0.25 exists = scope:the_faith.great_holy_war.ghw_war } modifier = { # Don't get too crowded now. factor = 2 scope:the_faith.great_holy_war = { ghw_attackers_strength > ghw_defenders_strength } } modifier = { # Don't get too crowded now. factor = 1.85 scope:the_faith.great_holy_war = { ghw_attackers_strength > var:triple_defenders_strength } } modifier = { # Don't get too crowded now. factor = 1.75 scope:the_faith.great_holy_war = { ghw_attackers_strength > var:double_defenders_strength } } modifier = { # Don't get too crowded now. factor = 1.5 scope:the_faith.great_holy_war = { ghw_attackers_strength > var:one_and_a_half_of_defenders_strength } } modifier = { # Try to prevent the Crusade from failing before even starting. (Less strength than defenders) factor = 0.75 NOT = { exists = scope:the_faith.great_holy_war.ghw_war } scope:the_faith.great_holy_war = { ghw_attackers_strength < ghw_defenders_strength } } modifier = { # Try to prevent the Crusade from failing before even starting. (Less than half of the defenders' strength) factor = 0.5 NOT = { exists = scope:the_faith.great_holy_war.ghw_war } scope:the_faith.great_holy_war = { ghw_attackers_strength < var:half_of_defenders_strength } } modifier = { # Try to prevent the Crusade from failing before even starting. (Less than quarter of the defenders' strength) factor = 0.35 NOT = { exists = scope:the_faith.great_holy_war.ghw_war } scope:the_faith.great_holy_war = { ghw_attackers_strength < var:quarter_of_defenders_strength } } modifier = { # Slightly more likely to join when fighting for a Holy Site. factor = 0.85 scope:target_kingdom = { any_in_de_jure_hierarchy = { tier = tier_barony continue = { tier > tier_barony } is_holy_site_of = scope:the_faith } } } modifier = { # Hoping for forgiveness factor = 0.8 has_trait = excommunicated } ai_value_modifier = { # Raw Zeal ai_zeal = -1.0 } modifier = { # Basic traits factor = 2 has_trait = cynical } modifier = { # Basic traits factor = 0.5 has_trait = zealous } modifier = { # Tier factor = 0.75 highest_held_title_tier = tier_kingdom } modifier = { # Tier factor = 0.5 highest_held_title_tier = tier_empire } } } } } #AI hidden event to pledge to a Directed Great Holy War. #Event is fired on_declaration. #Requires a the_faith scope, defined in the cb. great_holy_war.0092 = { hidden = yes trigger = { is_ai = yes is_ruler = yes is_landed = yes is_at_war = no is_imprisoned = no highest_held_title_tier >= tier_county NOT = { has_trait = incapable } ai_zeal >= 0 root.faith = scope:the_faith NOT = { target_is_liege_or_above = scope:ghw_defender } #scope:target_character isn't created in the holy war decision where this event is called scope:the_faith = { #Crusade still exists great_holy_war ?= { NOT = { has_pledged_attacker = root } } } } immediate = { scope:the_faith.great_holy_war = { set_variable = { name = triple_defenders_strength value = { value = ghw_defenders_strength multiply = 3 } } set_variable = { name = double_defenders_strength value = { value = ghw_defenders_strength multiply = 2 } } set_variable = { name = one_and_a_half_of_defenders_strength value = { value = ghw_defenders_strength multiply = 1.5 } } set_variable = { name = half_of_defenders_strength value = { value = ghw_defenders_strength multiply = 0.5 } } set_variable = { name = quarter_of_defenders_strength value = { value = ghw_defenders_strength multiply = 0.25 } } } random_list = { 15 = { #Pledge. trigger = { OR = { # Either be independent, or have no liege above you of the defending Faith, to avoid messy situations of vassals and lieges fighting against each other. top_liege = this any_liege_or_above = { count = all faith != scope:target_faith } } } scope:the_faith.great_holy_war = { pledge_attacker = root pledge_ghw_war_chest_prestige_effect = yes pledge_ghw_war_chest_piety_effect = yes } if = { limit = { is_ai = yes } trigger_event = { id = great_holy_war.0026 #Set Beneficiary automatically. } } } 45 = { } 40 = { #Do not pledge. random = { #When not pledging, there is still a chance that the AI will donate money. chance = 15 modifier = { factor = 0.75 has_trait = greedy } modifier = { factor = 1.5 has_trait = generous } modifier = { factor = 0.25 has_trait = cynical } modifier = { factor = 1.75 has_trait = zealous } modifier = { factor = 1.75 short_term_gold >= root.great_holy_war_pledge_amount } ai_value_modifier = { #Raw Zeal ai_zeal = 1.0 } scope:the_faith.great_holy_war = { change_war_chest_gold = root.great_holy_war_pledge_amount } } modifier = { #More likely if war is close by. factor = 0.85 scope:target_kingdom = { capital_vassal.capital_vassal = { squared_distance = { target = root.capital_county value < 150000 } } } } modifier = { #More likely if war is close by. factor = 0.9 scope:target_kingdom = { capital_vassal.capital_vassal = { squared_distance = { target = root.capital_county value < 1500000 } # Roughly Rome to Portugal } } } modifier = { #Less likely if war is far away. factor = 2 scope:target_kingdom = { capital_vassal.capital_vassal = { squared_distance = { target = root.capital_county value > 2000000 } } } } modifier = { #Just too darn far away... factor = 5 scope:target_kingdom = { capital_vassal.capital_vassal = { squared_distance = { target = root.capital_county value > 2500000 } } } } modifier = { #Slightly more likely to join when fighting for a Holy Site. factor = 0.85 scope:target_kingdom = { any_in_de_jure_hierarchy = { tier = tier_barony continue = { tier > tier_barony } is_holy_site_of = scope:the_faith } } } ai_value_modifier = { #Raw Zeal ai_zeal = -1.0 } modifier = { #Basic traits factor = 2 has_trait = cynical } modifier = { #Basic traits factor = 0.5 has_trait = zealous } modifier = { #Tier factor = 0.75 highest_held_title_tier = tier_kingdom } modifier = { #Tier factor = 0.5 highest_held_title_tier = tier_empire } } } } } #AI hidden event to have a holy order pledge to a Great Holy War during the preparation phase. #Event is fired when the Pope calls for the Crusade. #Requires a the_faith scope, defined by event. great_holy_war.0090 = { hidden = yes scope = holy_order trigger = { scope:the_faith = { #Crusade still exists great_holy_war ?= { NOT = { has_pledged_attacker = root.leader } } } } immediate = { scope:the_faith = { great_holy_war = { pledge_attacker = root.leader } } } } #AI hidden event to counterpledge to a Great Holy War during the preparation phase. #Event is fired when the Pope calls for the Crusade and when the target Kingdom is switched. #Requires a target_faith scope, defined by event. #Requires a the_faith scope, defined by event. great_holy_war.0021 = { hidden = yes trigger = { is_ai = yes is_ruler = yes is_landed = yes is_at_war = no is_imprisoned = no highest_held_title_tier >= tier_county NOT = { has_trait = incapable } root.faith = scope:the_faith.great_holy_war.ghw_target_character.faith scope:the_faith = { #Crusade still exists great_holy_war ?= { NOT = { has_pledged_defender = root } } NOT = { exists = great_holy_war.ghw_war } #Must not have started already, only in preparation phase. } } immediate = { scope:the_faith.great_holy_war = { set_variable = { name = triple_attackers_strength value = { value = ghw_attackers_strength multiply = 3 } } set_variable = { name = double_attackers_strength value = { value = ghw_attackers_strength multiply = 2 } } set_variable = { name = one_and_a_half_attackers_strength value = { value = ghw_attackers_strength multiply = 1.5 } } set_variable = { name = half_of_attackers_strength value = { value = ghw_attackers_strength multiply = 0.5 } } set_variable = { name = quarter_of_attackers_strength value = { value = ghw_attackers_strength multiply = 0.25 } } } random_list = { 10 = { #Pledge. trigger = { OR = { # Either be independent, or have no liege above you of the attacking Faith, to avoid messy situations of vassals and lieges fighting against each other. top_liege = this any_liege_or_above = { count = all faith != scope:the_faith } } } scope:the_faith.great_holy_war = { pledge_defender = root } } 45 45 = { #Do not pledge. modifier = { #More pledging happening at start of preparation phase. factor = 0.75 NOT = { exists = scope:the_faith.great_holy_war.ghw_war } scope:the_faith.great_holy_war = { days_until_ghw_launch > 200 } } modifier = { #Less pledging happening after. factor = 1.5 NOT = { exists = scope:the_faith.great_holy_war.ghw_war } scope:the_faith.great_holy_war = { days_until_ghw_launch < 100 } } modifier = { #More likely if war is close by. factor = 0.5 scope:target_kingdom = { capital_vassal.capital_vassal = { squared_distance = { target = root.capital_county value < 25000 } } } } modifier = { #More likely if war is close by. factor = 0.75 scope:target_kingdom = { capital_vassal.capital_vassal = { squared_distance = { target = root.capital_county value < 50000 } } } } modifier = { #More likely if war is close by. factor = 0.8 scope:target_kingdom = { capital_vassal.capital_vassal = { squared_distance = { target = root.capital_county value < 800000 } # Roughly Rome to Portugal } } } modifier = { #Less likely if war is close by. factor = 1.75 scope:target_kingdom = { capital_vassal.capital_vassal = { squared_distance = { target = root.capital_county value > 1000000 } } } } modifier = { #Less likely if war is close by. factor = 1.75 scope:target_kingdom = { capital_vassal.capital_vassal = { squared_distance = { target = root.capital_county value > 1500000 } } } } modifier = { #Less likely if war is close by. factor = 2 scope:target_kingdom = { capital_vassal.capital_vassal = { squared_distance = { target = root.capital_county value > 2000000 } } } } modifier = { #Just too darn far away... factor = 2.5 scope:target_kingdom = { capital_vassal.capital_vassal = { squared_distance = { target = root.capital_county value > 2500000 } } } } modifier = { #Much less likely to happen if the war has started. factor = 1.75 exists = scope:the_faith.great_holy_war.ghw_war } modifier = { #Don't get too crowded now. factor = 1.5 scope:the_faith.great_holy_war = { ghw_defenders_strength > ghw_attackers_strength } } modifier = { #Don't get too crowded now. factor = 1.5 scope:the_faith.great_holy_war = { ghw_defenders_strength > var:triple_attackers_strength } } modifier = { #Don't get too crowded now. factor = 1.5 scope:the_faith.great_holy_war = { ghw_defenders_strength > var:double_attackers_strength } } modifier = { #Don't get too crowded now. factor = 1.25 scope:the_faith.great_holy_war = { ghw_defenders_strength > var:one_and_a_half_attackers_strength } } modifier = { #Try to balance. factor = 0.35 NOT = { exists = scope:the_faith.great_holy_war.ghw_war } scope:the_faith.great_holy_war = { ghw_defenders_strength < var:half_of_attackers_strength } } modifier = { #Try to balance. factor = 0.25 NOT = { exists = scope:the_faith.great_holy_war.ghw_war } scope:the_faith.great_holy_war = { ghw_defenders_strength < var:quarter_of_attackers_strength } } modifier = { #Slightly more likely to join when fighting for a Holy Site. factor = 0.75 scope:target_kingdom = { any_in_de_jure_hierarchy = { tier = tier_barony continue = { tier > tier_barony } is_holy_site_of = scope:target_faith } } } ai_value_modifier = { #Raw Zeal ai_zeal = -1.0 } modifier = { #Basic traits factor = 2 has_trait = cynical } modifier = { #Basic traits factor = 0.5 has_trait = zealous } modifier = { #Tier factor = 0.75 highest_held_title_tier = tier_kingdom } modifier = { #Tier factor = 0.5 highest_held_title_tier = tier_empire } } } } } #AI hidden event to counterpledge to a Directed Great Holy War. #Event is fired on_declaration. #Requires a target_faith scope, defined in the cb. #Requires a the_faith scope, defined in the cb. great_holy_war.0093 = { hidden = yes trigger = { is_ai = yes is_ruler = yes is_landed = yes is_at_war = no is_imprisoned = no highest_held_title_tier >= tier_county NOT = { has_trait = incapable } root.faith = scope:target_faith scope:the_faith = { #Crusade still exists great_holy_war ?= { NOT = { has_pledged_defender = root } } } } immediate = { scope:the_faith.great_holy_war = { set_variable = { name = triple_attackers_strength value = { value = ghw_attackers_strength multiply = 3 } } set_variable = { name = double_attackers_strength value = { value = ghw_attackers_strength multiply = 2 } } set_variable = { name = one_and_a_half_attackers_strength value = { value = ghw_attackers_strength multiply = 1.5 } } set_variable = { name = half_of_attackers_strength value = { value = ghw_attackers_strength multiply = 0.5 } } set_variable = { name = quarter_of_attackers_strength value = { value = ghw_attackers_strength multiply = 0.25 } } } random_list = { 25 = { #Pledge. trigger = { OR = { # Either be independent, or have no liege above you of the attacking Faith, to avoid messy situations of vassals and lieges fighting against each other. top_liege = this any_liege_or_above = { count = all faith != scope:the_faith } } } scope:the_faith.great_holy_war = { pledge_defender = root } } 75 = { #Do not pledge. modifier = { #More likely if war is close by. factor = 0.5 scope:target_kingdom = { capital_vassal.capital_vassal = { squared_distance = { target = root.capital_county value < 25000 } } } } modifier = { #More likely if war is close by. factor = 0.75 scope:target_kingdom = { capital_vassal.capital_vassal = { squared_distance = { target = root.capital_county value < 50000 } } } } modifier = { #More likely if war is close by. factor = 0.8 scope:target_kingdom = { capital_vassal.capital_vassal = { squared_distance = { target = root.capital_county value < 800000 } # Roughly Rome to Portugal } } } modifier = { #Less likely if war is close by. factor = 2 scope:target_kingdom = { capital_vassal.capital_vassal = { squared_distance = { target = root.capital_county value > 1000000 } } } } modifier = { #Less likely if war is close by. factor = 5 scope:target_kingdom = { capital_vassal.capital_vassal = { squared_distance = { target = root.capital_county value > 1500000 } } } } modifier = { #Less likely if war is close by. factor = 6 scope:target_kingdom = { capital_vassal.capital_vassal = { squared_distance = { target = root.capital_county value > 2000000 } } } } modifier = { #Just too darn far away... factor = 10 scope:target_kingdom = { capital_vassal.capital_vassal = { squared_distance = { target = root.capital_county value > 2500000 } } } } modifier = { #Try to balance. factor = 0.35 NOT = { exists = scope:the_faith.great_holy_war.ghw_war } scope:the_faith.great_holy_war = { ghw_defenders_strength < var:half_of_attackers_strength } } modifier = { #Try to balance. factor = 0.25 NOT = { exists = scope:the_faith.great_holy_war.ghw_war } scope:the_faith.great_holy_war = { ghw_defenders_strength < var:quarter_of_attackers_strength } } modifier = { #Slightly more likely to join when fighting for a Holy Site. factor = 0.75 scope:target_kingdom = { any_in_de_jure_hierarchy = { tier = tier_barony continue = { tier > tier_barony } is_holy_site_of = scope:target_faith } } } ai_value_modifier = { #Raw Zeal ai_zeal = -1.0 } modifier = { #Basic traits factor = 2 has_trait = cynical } modifier = { #Basic traits factor = 0.5 has_trait = zealous } modifier = { #Tier factor = 0.75 highest_held_title_tier = tier_kingdom } modifier = { #Tier factor = 0.5 highest_held_title_tier = tier_empire } } } } } #AI hidden event to have a holy order counterpledge to a Great Holy War during the preparation phase. #Event is fired when the Pope calls for the Crusade and when the target Kingdom is switched. #Requires a the_faith scope, defined by event. great_holy_war.0091 = { hidden = yes scope = holy_order trigger = { scope:the_faith = { #Crusade still exists great_holy_war ?= { NOT = { has_pledged_defender = root.leader } } NOT = { exists = scope:the_faith.great_holy_war.ghw_war } #Must not have started already, only in preparation phase. } } immediate = { scope:the_faith.great_holy_war = { pledge_defender = root.leader } } } great_holy_war.0022 = { hidden = yes scope = faith trigger = { exists = great_holy_war NOT = { exists = great_holy_war.ghw_war } great_holy_war = { days_until_ghw_launch <= 200 } great_holy_war = { days_until_ghw_launch >= 150 } save_temporary_scope_as = the_faith any_player = { ghw_pope_annoyed_at_lack_of_participation_trigger = yes ghw_pope_annoyed_at_lack_of_participation_tier_trigger = yes NOT = { has_character_flag = ghw_pope_poking } is_landless_adventurer = no } } immediate = { save_scope_as = the_faith if = { limit = { exists = great_holy_war.ghw_target_character } great_holy_war.ghw_target_character = { save_scope_as = target_character } } every_player = { limit = { ghw_pope_annoyed_at_lack_of_participation_trigger = yes ghw_pope_annoyed_at_lack_of_participation_tier_trigger = yes NOT = { has_character_flag = ghw_pope_poking } is_landless_adventurer = no } trigger_event = { id = great_holy_war.0023 days = { 25 50 } } } } } #Actual event letter to players. great_holy_war.0023 = { type = letter_event opening = { desc = great_holy_war.0015.opening } desc = { first_valid = { #Regular letter triggered_desc = { trigger = { NOT = { scope:scoped_pope = { has_hook_of_type = { target = root type = favor_hook } } } } desc = great_holy_war.0023.desc } } first_valid = { #Hooked player triggered_desc = { trigger = { scope:scoped_pope = { has_hook_of_type = { target = root type = favor_hook } } } desc = great_holy_war.0023.desc.hooked } } } sender = scope:scoped_pope trigger = { NOT = { exists = scope:the_faith.great_holy_war.ghw_war } ghw_pope_annoyed_at_lack_of_participation_trigger = yes ghw_pope_annoyed_at_lack_of_participation_tier_trigger = yes is_landless_adventurer = no } immediate = { if = { #If the Pope died in the meantime. limit = { NOR = { exists = scope:the_faith.great_holy_war.ghw_war_declarer scope:the_faith.great_holy_war.ghw_war_declarer = { is_alive = yes } } } scope:the_faith = { ghw_set_new_war_declarer_effect = yes } } scope:the_faith.great_holy_war.ghw_war_declarer = { save_scope_as = scoped_pope } add_character_flag = { #Do not fire again. flag = ghw_pope_poking days = 200 } set_variable = { name = ghw_pledge_amount value = great_holy_war_pledge_amount } set_variable = { name = half_great_holy_war_pledge_amount value = { value = root.great_holy_war_pledge_amount multiply = 0.5 } } } option = { name = { trigger = { NOT = { scope:scoped_pope = { has_hook_of_type = { target = root type = favor_hook } } } } text = great_holy_war.0003.a } name = { trigger = { scope:scoped_pope = { has_hook_of_type = { target = root type = favor_hook } } } text = great_holy_war.0003.a.hooked } trigger = { ghw_pope_annoyed_at_lack_of_participation_trigger = yes } if = { limit = { scope:scoped_pope = { has_hook_of_type = { target = root type = favor_hook } } } scope:scoped_pope = { use_hook = root } add_character_flag = { flag = variable_ghw_papal_hooked_pledge days = 500 } } if = { limit = { NOT = { scope:the_faith.great_holy_war = { has_pledged_attacker = root } } } pledge_ghw_piety_gain_effect = yes #Excommunication lifted. if = { limit = { has_trait = excommunicated faith = { has_doctrine_parameter = excommunication_active } } custom_tooltip = great_holy_war.0003.a.lifted_excommunication trigger_event = { id = great_holy_war.0015 days = 37 } } scope:the_faith.great_holy_war = { pledge_attacker = root pledge_ghw_war_chest_prestige_effect = yes pledge_ghw_war_chest_piety_effect = yes } } stress_impact = { cynical = minor_stress_impact_gain zealous = minor_stress_impact_loss } ai_chance = { base = 10 modifier = { factor = 0.5 top_liege != this } modifier = { factor = 0.5 highest_held_title_tier = tier_county } modifier = { factor = 0.1 top_liege != this highest_held_title_tier <= tier_county } modifier = { factor = 5 highest_held_title_tier >= tier_kingdom } } } option = { name = great_holy_war.0003.b trigger = { NOT = { scope:scoped_pope = { has_hook_of_type = { target = root type = favor_hook } } } } add_piety = root.var:half_great_holy_war_pledge_amount #Excommunication lifted. if = { limit = { has_trait = excommunicated faith = { has_doctrine_parameter = excommunication_active } } trigger_event = { id = great_holy_war.0015 days = 37 } } remove_short_term_gold = var:ghw_pledge_amount set_variable = { name = ghw_war_chest_donated_sum value = var:ghw_pledge_amount } scope:the_faith.great_holy_war = { change_war_chest_gold = root.var:ghw_pledge_amount } if = { limit = { NOT = { has_character_flag = ghw_pledged_gold } } add_character_flag = { #Used to check whether the Pope will harass for more later. flag = ghw_pledged_gold days = 550 } } stress_impact = { cynical = minor_stress_impact_gain greedy = minor_stress_impact_gain generous = minor_stress_impact_loss zealous = minor_stress_impact_loss } ai_chance = { base = 10 } } option = { name = great_holy_war.0023.c #But I'm already fighting infidels in another war! trigger = { is_at_war = yes NOR = { any_war_enemy = { faith = scope:the_faith } scope:scoped_pope = { has_hook_of_type = { target = root type = favor_hook } } } } ai_chance = { base = 0 } } option = { #No excuses. name = great_holy_war.0023.d trigger = { OR = { is_at_war = no NOT = { any_war_enemy = { faith != scope:the_faith } } } NOT = { scope:scoped_pope = { has_hook_of_type = { target = root type = favor_hook } } } } #Piety price pledge_ghw_piety_loss_effect = yes add_piety_level = -1 #Set Cooldown set_variable = { name = variable_ghw_unpledged_cooldown value = yes days = 60 } #Religious Head is upset trigger_event = { id = great_holy_war.0016 days = 37 } stress_impact = { zealous = minor_stress_impact_gain cynical = minor_stress_impact_loss } ai_chance = { base = 0 } } after = { remove_variable = ghw_pledge_amount } } #On_death: of Recipient, pick another one. great_holy_war.0024 = { hidden = yes scope = character trigger = { exists = faith.great_holy_war faith.great_holy_war.ghw_designated_winner = root } immediate = { save_scope_as = former_recipient faith.great_holy_war = { faith = { save_scope_as = the_faith } ghw_target_title = { save_scope_as = target_kingdom } if = { #If Pope died in the meantime. limit = { NOR = { exists = scope:the_faith.great_holy_war.ghw_war_declarer scope:the_faith.great_holy_war.ghw_war_declarer = { is_alive = yes } } } scope:the_faith = { ghw_set_new_war_declarer_effect = yes } } scope:the_faith.great_holy_war.ghw_war_declarer = { save_scope_as = ghw_sponsor } #Check and set sponsor if needed. undirected_ghw_recipient_selection_on_death_effect = yes } every_player = { limit = { scope:the_faith.great_holy_war = { OR = { has_pledged_attacker = prev has_pledged_defender = prev } } } if = { limit = { exists = scope:ghw_claimant } send_interface_toast = { type = event_toast_effect_bad left_icon = scope:former_recipient right_icon = scope:ghw_claimant title = great_holy_war.0024.dead.recipient.title custom_tooltip = great_holy_war.0024.dead.recipient.replaced } } else = { send_interface_toast = { type = event_toast_effect_bad left_icon = scope:former_recipient title = great_holy_war.0024.dead.recipient.title custom_tooltip = great_holy_war.0024.dead.recipient.open } } } } } #on_character_faith_change: of Recipient, pick another one. great_holy_war.0025 = { hidden = yes scope = character trigger = { exists = scope:old_faith.great_holy_war scope:old_faith.great_holy_war.ghw_designated_winner = root } immediate = { scope:old_faith.great_holy_war = { faith = { save_scope_as = the_faith } ghw_target_title = { save_scope_as = target_kingdom } if = { #If Pope died in the meantime. limit = { OR = { NOT = { exists = scope:the_faith.great_holy_war.ghw_war_declarer } NOT = { scope:the_faith.great_holy_war.ghw_war_declarer = { is_alive = yes } } } } scope:the_faith = { ghw_set_new_war_declarer_effect = yes } } scope:the_faith.great_holy_war.ghw_war_declarer = { save_scope_as = ghw_sponsor } #Check and set sponsor if needed. undirected_ghw_recipient_selection_effect = yes } } } #select Beneficiary for the AI automatically. Fired when it joins from great_holy_war.0020. scripted_trigger great_holy_war_0026_valid_beneficiary_trigger = { NOR = { has_trait = excommunicated has_trait = incapable has_trait = devoted has_trait_with_flag = debilitating_illness } faith = root.faith is_adult = yes is_ruler = no any_heir_title = { count = 0 } #Not heir to anything OR = { #Either not married, or not married to a ruler. is_married = no NOT = { any_spouse = { is_ruler = yes } } } } great_holy_war.0026 = { hidden = yes scope = character trigger = { exists = faith.great_holy_war faith.great_holy_war = { has_pledged_attacker = root } } immediate = { reset_beneficiary = yes #Reset by default, then, if also an AI, reassign automatically. if = { limit = { #If potential new beneficiary exists, pick one. is_lowborn = no dynasty = { any_dynasty_member = { great_holy_war_0026_valid_beneficiary_trigger = yes } } } dynasty = { random_dynasty_member = { limit = { great_holy_war_0026_valid_beneficiary_trigger = yes OR = { AND = { is_male = yes faith = { has_doctrine = doctrine_gender_male_dominated } } AND = { is_female = yes faith = { has_doctrine = doctrine_gender_female_dominated } } NOR = { faith = { has_doctrine = doctrine_gender_male_dominated } faith = { has_doctrine = doctrine_gender_female_dominated } } } is_close_family_or_spouse_of_root_trigger = yes age <= 40 NOT = { has_relation_rival = root } is_married = no culture = root.culture } alternative_limit = { great_holy_war_0026_valid_beneficiary_trigger = yes OR = { AND = { is_male = yes faith = { has_doctrine = doctrine_gender_male_dominated } } AND = { is_female = yes faith = { has_doctrine = doctrine_gender_female_dominated } } NOR = { faith = { has_doctrine = doctrine_gender_male_dominated } faith = { has_doctrine = doctrine_gender_female_dominated } } } is_close_family_or_spouse_of_root_trigger = yes age <= 40 NOT = { has_relation_rival = root } is_married = no } alternative_limit = { great_holy_war_0026_valid_beneficiary_trigger = yes OR = { AND = { is_male = yes faith = { has_doctrine = doctrine_gender_male_dominated } } AND = { is_female = yes faith = { has_doctrine = doctrine_gender_female_dominated } } NOR = { faith = { has_doctrine = doctrine_gender_male_dominated } faith = { has_doctrine = doctrine_gender_female_dominated } } } is_close_family_or_spouse_of_root_trigger = yes age <= 40 NOT = { has_relation_rival = root } } alternative_limit = { great_holy_war_0026_valid_beneficiary_trigger = yes OR = { AND = { is_male = yes faith = { has_doctrine = doctrine_gender_male_dominated } } AND = { is_female = yes faith = { has_doctrine = doctrine_gender_female_dominated } } NOR = { faith = { has_doctrine = doctrine_gender_male_dominated } faith = { has_doctrine = doctrine_gender_female_dominated } } } age <= 40 } alternative_limit = { great_holy_war_0026_valid_beneficiary_trigger = yes OR = { AND = { is_male = yes faith = { has_doctrine = doctrine_gender_male_dominated } } AND = { is_female = yes faith = { has_doctrine = doctrine_gender_female_dominated } } NOR = { faith = { has_doctrine = doctrine_gender_male_dominated } faith = { has_doctrine = doctrine_gender_female_dominated } } } } alternative_limit = { great_holy_war_0026_valid_beneficiary_trigger = yes } weight = { base = 1 opinion_modifier = { # Nepotism opinion_target = this who = root } modifier = { # More likely to send a soldier into enemy territory. add = 25 has_trait = education_martial } modifier = { # Skill add = 15 OR = { diplomacy >= 12 martial >= 12 stewardship >= 12 intrigue >= 12 learning >= 12 } } modifier = { #Zeal add = 5 has_strong_religious_conviction_trigger = yes } modifier = { #Virtues add = 2 num_virtuous_traits >= 2 } } save_scope_as = scoped_beneficiary } } set_beneficiary = scope:scoped_beneficiary } else = { #Else reset. reset_beneficiary = yes } } } #Same as above, but fired on death of a participant of a ghw, with different scopes. great_holy_war.0027 = { hidden = yes scope = character trigger = { exists = scope:great_holy_war exists = scope:replacement.faith.great_holy_war } immediate = { scope:replacement = { if = { limit = { NOT = { scope:great_holy_war = { has_pledged_attacker = prev } } } scope:great_holy_war = { pledge_attacker = prev } } reset_beneficiary = yes #Reset by default, then, if also an AI, reassign automatically. if = { limit = { is_ai = yes } trigger_event = { id = great_holy_war.0026 days = 2 } } } } } #Resetting beneficiary when he becomes invalid for the spot, for whatever reason. #On_death. great_holy_war.0028 = { hidden = yes scope = character trigger = { exists = faith.great_holy_war faith.great_holy_war = { any_pledged_attacker = { ghw_beneficiary ?= root } } } immediate = { faith.great_holy_war = { every_pledged_attacker = { limit = { ghw_beneficiary ?= root } ghw_beneficiary = { save_scope_as = former_beneficiary } reset_beneficiary = yes #Reset by default, then, if also an AI, reassign automatically. if = { limit = { is_ai = no } #Send notification to player. send_interface_toast = { left_icon = root title = great_holy_war.0028.dead.beneficiary_title custom_tooltip = great_holy_war.0028.dead.beneficiary } } else = { trigger_event = { id = great_holy_war.0026 days = 2 } } } } } } #On_character_faith_change. great_holy_war.0029 = { hidden = yes scope = character trigger = { exists = scope:old_faith.great_holy_war scope:old_faith.great_holy_war = { any_pledged_attacker = { ghw_beneficiary ?= root } } } immediate = { scope:old_faith.great_holy_war = { every_pledged_attacker = { limit = { ghw_beneficiary ?= root } ghw_beneficiary = { save_scope_as = former_beneficiary } reset_beneficiary = yes #Reset by default, then, if also an AI, reassign automatically. if = { limit = { is_ai = no } #Send notification to player. send_interface_toast = { left_icon = root title = great_holy_war.0029.invalid.beneficiary_title custom_tooltip = great_holy_war.0029.converted.beneficiary } } else = { trigger_event = { id = great_holy_war.0026 days = 2 } } } } } } #All other conditions checked on_faith_monthly. #If sick #If incapable #If monk/nun #If Excommunicated #If ruler #If heir great_holy_war.0030 = { hidden = yes scope = faith trigger = { great_holy_war ?= { any_pledged_attacker = { #If beneficiary has become invalid in the meantime, for whatever reason. ghw_beneficiary ?= { OR = { has_trait = incapable has_trait = excommunicated has_trait = devoted has_trait_with_flag = debilitating_illness is_ruler = yes any_heir_title = { } #Shouldn't be heir to anything } } } } } immediate = { great_holy_war = { every_pledged_attacker = { limit = { ghw_beneficiary ?= { OR = { has_trait = incapable has_trait = excommunicated has_trait = devoted has_trait_with_flag = debilitating_illness AND = { is_ruler = yes NOT = { government_has_flag = government_is_landless_adventurer } } any_heir_title = { } #Shouldn't be heir to anything } } } ghw_beneficiary = { save_scope_as = former_beneficiary } reset_beneficiary = yes #Reset by default, then, if also an AI, reassign automatically. if = { limit = { is_ai = no #Send notification to player. scope:former_beneficiary = { OR = { has_trait = incapable has_trait = excommunicated has_trait = devoted has_trait_with_flag = debilitating_illness is_ruler = yes any_heir_title = { } #Shouldn't be heir to anything } } } send_interface_toast = { type = event_toast_effect_bad left_icon = root title = great_holy_war.0029.invalid.beneficiary_title scope:former_beneficiary = { if = { limit = { has_trait = incapable } custom_tooltip = great_holy_war.0030.incapable.beneficiary } else_if = { limit = { has_trait = excommunicated } custom_tooltip = great_holy_war.0030.excommunicated.beneficiary } else_if = { limit = { has_trait = devoted } custom_tooltip = great_holy_war.0030.devoted.beneficiary } else_if = { limit = { has_trait_with_flag = debilitating_illness } custom_tooltip = great_holy_war.0030.sick.beneficiary } else_if = { limit = { is_ruler = yes } custom_tooltip = great_holy_war.0030.ruler.beneficiary } else_if = { limit = { any_heir_title = { } } #Shouldn't be heir to anything custom_tooltip = great_holy_war.0030.heir.beneficiary } } } } else_if = { limit = { is_ai = yes } trigger_event = { id = great_holy_war.0026 days = 2 } } } } } } # Player wishes to give money to the Crusade. great_holy_war.0040 = { type = character_event title = great_holy_war.0003.title desc = great_holy_war.0040.desc theme = faith left_portrait = root immediate = { add_character_flag = { # Do not spam button. flag = ghw_pledging_gold days = 550 } set_variable = { name = double_great_holy_war_pledge_amount value = { value = root.great_holy_war_pledge_amount multiply = 2 } } set_variable = { name = triple_great_holy_war_pledge_amount value = { value = root.great_holy_war_pledge_amount multiply = 3 } } #Set halves of above to give as Piety. set_variable = { name = half_great_holy_war_pledge_amount value = { value = root.great_holy_war_pledge_amount multiply = 0.5 } } set_variable = { name = half_of_triple_great_holy_war_pledge_amount value = { value = root.var:triple_great_holy_war_pledge_amount multiply = 0.5 } } if = { limit = { NOR = { exists = faith.great_holy_war.ghw_war_declarer faith.great_holy_war.ghw_war_declarer = { is_alive = yes } } } faith = { ghw_set_new_war_declarer_effect = yes } } root.faith.great_holy_war.ghw_war_declarer = { save_scope_as = scoped_pope } } option = { # Big donation. name = great_holy_war.0040.a trigger = { gold >= var:triple_great_holy_war_pledge_amount } add_piety = var:half_of_triple_great_holy_war_pledge_amount remove_short_term_gold = var:triple_great_holy_war_pledge_amount set_variable = { name = ghw_war_chest_donated_sum value = var:triple_great_holy_war_pledge_amount } scope:great_holy_war = { change_war_chest_gold = root.var:triple_great_holy_war_pledge_amount } scope:scoped_pope = { add_opinion = { target = root modifier = donated_ghw_money_2 } } add_character_flag = { # Used to check whether the Pope will harass for more later. flag = ghw_pledged_gold days = 7300 } stress_impact = { cynical = minor_stress_impact_gain greedy = medium_stress_impact_gain } } option = { # Medium donation. name = great_holy_war.0040.b trigger = { gold >= var:double_great_holy_war_pledge_amount } add_piety = root.great_holy_war_pledge_amount remove_short_term_gold = var:double_great_holy_war_pledge_amount set_variable = { name = ghw_war_chest_donated_sum value = var:double_great_holy_war_pledge_amount } scope:great_holy_war = { change_war_chest_gold = root.var:double_great_holy_war_pledge_amount } scope:scoped_pope = { add_opinion = { target = root modifier = donated_ghw_money_1 } } add_character_flag = { # Used to check whether the Pope will harass for more later. flag = ghw_pledged_gold days = 7300 } stress_impact = { cynical = minor_stress_impact_gain greedy = medium_stress_impact_gain } } option = { # Small donation. name = great_holy_war.0040.c trigger = { gold >= great_holy_war_pledge_amount } add_piety = var:half_great_holy_war_pledge_amount remove_short_term_gold = great_holy_war_pledge_amount set_variable = { name = ghw_war_chest_donated_sum value = great_holy_war_pledge_amount } scope:great_holy_war = { change_war_chest_gold = root.great_holy_war_pledge_amount } add_character_flag = { # Used to check whether the Pope will harass for more later. flag = ghw_pledged_gold days = 7300 } } option = { #Never mind... name = great_holy_war.0040.d } after = { remove_character_flag = ghw_pledging_gold remove_variable = double_great_holy_war_pledge_amount remove_variable = triple_great_holy_war_pledge_amount remove_variable = half_great_holy_war_pledge_amount remove_variable = half_of_triple_great_holy_war_pledge_amount } } #great_holy_war.0050 Crusade preparation phase starts (defender) (fired from great_holy_war.0001) #great_holy_war.0051 Crusade is declared (attackers/defenders) (fired from cb) #great_holy_war.0052 crusade was won (attackers/defenders/bystanders) (fired from cb) #great_holy_war.0053 crusade was lost (attackers/defenders/bystanders) (fired from cb) #great_holy_war.0055 crusade failed to start (attackers/defenders/bystanders) (fired from on_great_holy_war_invalidation) #Rulers of target faith are informed of the start of the preparation phase of the GHW against them. great_holy_war.0050 = { title = great_holy_war.0050.title desc = { desc = great_holy_war.0050.base.desc first_valid = { #Defender. triggered_desc = { desc = great_holy_war.0050.defender.desc trigger = { scope:target_character = root } } #Everybody else. triggered_desc = { desc = great_holy_war.0050.others.desc trigger = { scope:target_character != root } } } } left_portrait = { character = scope:ghw_sponsor animation = war_attacker } lower_right_portrait = scope:target_character theme = faith override_background = { reference = armory } immediate = { scope:ghw_sponsor = { save_scope_as = background_temple_scope } play_music_cue = "mx_cue_combat_2" } option = { name = great_holy_war.0050.a } } #On_declaration of the GHW. great_holy_war.0051 = { title = great_holy_war.0050.title desc = { first_valid = { #Catholic Flavor - Attackers triggered_desc = { trigger = { scope:attacker.faith.great_holy_war = { has_pledged_attacker = root } scope:the_faith = faith:catholic } desc = great_holy_war.0051.catholic.attackers.desc } #Everybody else's flavor - Attackers. triggered_desc = { trigger = { scope:attacker.faith.great_holy_war = { has_pledged_attacker = root } NOT = { scope:the_faith = faith:catholic } } desc = great_holy_war.0051.generic.attackers.desc } #Everybody else's flavor - Defenders. triggered_desc = { trigger = { scope:attacker.faith.great_holy_war = { has_pledged_defender = root } } desc = great_holy_war.0051.generic.defenders.desc } } } theme = faith override_background = { reference = temple } left_portrait = { character = scope:ghw_sponsor animation = war_attacker } lower_right_portrait = { character = scope:ghw_defender animation = war_defender } immediate = { show_as_tooltip = { scope:attacker.faith.great_holy_war = { divide_war_chest = { fraction = 0.2 } } } play_music_cue = "mx_cue_combat_3" } option = { name = great_holy_war.0011.a trigger = { scope:attacker.faith.great_holy_war = { has_pledged_attacker = root } OR = { root.faith.religion = religion:eastern_orthodox_religion root.faith.religion = religion:catholic_religion root.faith.religion = religion:protestant_religion } } custom_tooltip = great_holy_war.0051.generic.start.tt } option = { name = great_holy_war.0011.b trigger = { scope:attacker.faith.great_holy_war = { has_pledged_attacker = root } root.faith.religion = religion:islam_religion } custom_tooltip = great_holy_war.0051.generic.start.tt } option = { name = great_holy_war.0011.c trigger = { scope:attacker.faith.great_holy_war = { has_pledged_attacker = root } NOR = { OR = { root.faith.religion = religion:eastern_orthodox_religion root.faith.religion = religion:catholic_religion root.faith.religion = religion:protestant_religion } root.faith.religion = religion:islam_religion } } custom_tooltip = great_holy_war.0051.generic.start.tt } option = { name = great_holy_war.0011.d trigger = { scope:attacker.faith.great_holy_war = { has_pledged_defender = root } } custom_tooltip = great_holy_war.0051.generic.start.tt } } #On_declaration of the GHW. great_holy_war.0071 = { title = great_holy_war.0050.title desc = { first_valid = { #Everybody else's flavor - Attackers. triggered_desc = { trigger = { OR = { faith = scope:attacker.faith is_vassal_of = scope:attacker } } desc = great_holy_war.0071.generic.attackers.desc } #Everybody else's flavor - Defenders. triggered_desc = { trigger = { OR = { faith = scope:defender.faith is_vassal_of = scope:defender } } desc = great_holy_war.0071.generic.defenders.desc } } } theme = faith override_background = { reference = armory } right_portrait = { character = scope:ghw_sponsor animation = war_attacker } left_portrait = { character = scope:ghw_defender animation = war_defender } option = { #Join directed GHW as attacker. name = great_holy_war.0011.directed.a trigger = { is_ai = no is_at_war = no faith = scope:attacker.faith NOR = { this = scope:attacker scope:attacker.faith.great_holy_war = { has_pledged_attacker = root } scope:attacker.faith.great_holy_war = { has_pledged_defender = root } } } custom_tooltip = great_holy_war.0051.generic.start.tt scope:attacker.faith.great_holy_war = { pledge_attacker = root } } option = { #Join directed GHW as defender. name = great_holy_war.0011.directed.b trigger = { is_ai = no is_at_war = no faith = scope:defender.faith NOR = { this = scope:defender scope:attacker.faith.great_holy_war = { has_pledged_defender = root } scope:attacker.faith.great_holy_war = { has_pledged_defender = root } } } custom_tooltip = great_holy_war.0051.generic.start.tt scope:attacker.faith.great_holy_war = { pledge_defender = root } } option = { name = great_holy_war.0011.a trigger = { scope:attacker.faith.great_holy_war = { has_pledged_attacker = root } OR = { root.faith.religion = religion:eastern_orthodox_religion root.faith.religion = religion:catholic_religion root.faith.religion = religion:protestant_religion } } custom_tooltip = great_holy_war.0051.generic.start.tt } option = { name = great_holy_war.0011.b trigger = { scope:attacker.faith.great_holy_war = { has_pledged_attacker = root } root.faith.religion = religion:islam_religion } custom_tooltip = great_holy_war.0051.generic.start.tt } option = { name = great_holy_war.0011.c trigger = { scope:attacker.faith.great_holy_war = { has_pledged_attacker = root } NOR = { OR = { root.faith.religion = religion:eastern_orthodox_religion root.faith.religion = religion:catholic_religion root.faith.religion = religion:protestant_religion } root.faith.religion = religion:islam_religion } } custom_tooltip = great_holy_war.0051.generic.start.tt } option = { name = great_holy_war.0011.d trigger = { scope:attacker.faith.great_holy_war = { has_pledged_defender = root } } custom_tooltip = great_holy_war.0051.generic.start.tt } option = { name = great_holy_war.0050.a trigger = { scope:attacker.faith != root.faith } fallback = yes custom_tooltip = great_holy_war.0051.generic.start.tt } } #The Crusade was successful. great_holy_war.0052 = { title = { first_valid = { #Title for winners/bystanders triggered_desc = { trigger = { scope:ghw_defender.faith.religion != root.faith.religion } desc = great_holy_war.0052.title.winners } } first_valid = { #Title for losers triggered_desc = { trigger = { scope:ghw_defender.faith.religion = root.faith.religion } desc = great_holy_war.0052.title.losers } } } desc = { first_valid = { #Everybody else's flavor - Attackers. triggered_desc = { trigger = { scope:attacker.faith = root.faith } desc = great_holy_war.0052.generic.attackers.desc } #Everybody else's flavor - Defenders. triggered_desc = { trigger = { scope:ghw_defender.faith.religion = root.faith.religion } desc = great_holy_war.0052.generic.defenders.desc } #Other players. triggered_desc = { trigger = { NOR = { scope:attacker.faith = root.faith scope:ghw_defender.faith.religion = root.faith.religion } } desc = great_holy_war.0052.generic.outsiders.desc } } } theme = faith override_background = { reference = battlefield } left_portrait = { character = scope:title_recipient animation = war_over_win } right_portrait = { character = scope:ghw_defender animation = shame } immediate = { play_music_cue = "mx_cue_general_crusade_event_3" if = { limit = { has_trait = faith_warrior save_temporary_scope_as = char_temp scope:attacker.faith.great_holy_war = { any_pledged_attacker = { this = scope:char_temp } } } absolve_crusaders_of_gallowsbait_effect = yes } } option = { name = great_holy_war.0052.a trigger = { scope:attacker.faith = root.faith } } option = { name = great_holy_war.0052.b trigger = { scope:ghw_defender.faith = root.faith } } option = { name = great_holy_war.0052.c trigger = { NOR = { scope:attacker.faith = root.faith scope:ghw_defender.faith = root.faith } } } after = { remove_variable = ghw_war_chest_donated_sum } } #The Crusade failed. great_holy_war.0053 = { title = great_holy_war.0053.title desc = { first_valid = { #Everybody else's flavor - Attackers. triggered_desc = { trigger = { scope:attacker.faith = root.faith } desc = great_holy_war.0053.generic.attackers.desc } #Everybody else's flavor - Defenders. triggered_desc = { trigger = { scope:ghw_defender.faith.religion = root.faith.religion } desc = great_holy_war.0053.generic.defenders.desc } #Other players. triggered_desc = { trigger = { NOR = { scope:attacker.faith = root.faith scope:ghw_defender.faith.religion = root.faith.religion } } desc = great_holy_war.0053.generic.outsiders.desc } } } theme = faith override_background = { reference = battlefield } left_portrait = { character = scope:ghw_sponsor animation = shame } right_portrait = { character = scope:ghw_defender animation = war_over_win } immediate = { play_music_cue = "mx_cue_general_crusade_event_3" } option = { name = great_holy_war.0053.a trigger = { scope:attacker.faith = root.faith } } option = { name = great_holy_war.0053.b trigger = { scope:ghw_defender.faith.religion = root.faith.religion } } option = { name = great_holy_war.0052.c trigger = { NOR = { scope:attacker.faith = root.faith scope:ghw_defender.faith.religion = root.faith.religion } } } after = { remove_variable = ghw_war_chest_donated_sum } } #on_great_holy_war_invalidation: Crusade has been invalidated before starting. great_holy_war.0055 = { hidden = yes scope = ghw immediate = { save_scope_as = the_ghw #Loc keys for localisation fluff. ghw_target_character = { save_scope_as = ghw_defender } faith = { religious_head = { save_scope_as = ghw_sponsor } save_scope_as = the_faith change_fervor = { value = -10 desc = fervor_loss_crusade_invalid } set_variable = { name = variable_ghw_cooldown value = yes years = 30 } } every_player = { limit = { OR = { faith = scope:ghw_sponsor.faith faith = scope:ghw_defender.faith } } trigger_event = great_holy_war.0056 } } } great_holy_war.0056 = { title = great_holy_war.0056.title desc = great_holy_war.0056.desc theme = faith override_background = { reference = battlefield } right_portrait = { character = scope:ghw_sponsor animation = shame } left_portrait = { character = scope:ghw_defender animation = war_over_win } option = { name = great_holy_war.0056.a trigger = { scope:ghw_sponsor.faith = root.faith } if = { limit = { has_variable = ghw_war_chest_donated_sum } add_gold = var:ghw_war_chest_donated_sum remove_variable = ghw_war_chest_donated_sum } } option = { name = great_holy_war.0056.b trigger = { scope:ghw_defender.faith = root.faith } } option = { name = great_holy_war.0056.c trigger = { NOR = { scope:ghw_sponsor.faith = root.faith scope:ghw_defender.faith = root.faith } } } } #Crusader trait gained during GHW. #Fired on_army_enter_province #Hidden first event fires for the owner of the army. #root = owner of the army #scope:army = the army itself. great_holy_war.0060 = { hidden = yes trigger = { exists = root.faith.great_holy_war OR = { #Either army owner or one of his lieges is involved in a GHW. any_character_war = { OR = { using_cb = undirected_great_holy_war using_cb = directed_great_holy_war } is_attacker = root } any_liege_or_above = { faith = root.faith any_character_war = { OR = { using_cb = undirected_great_holy_war using_cb = directed_great_holy_war } is_attacker = root } } } scope:army = { exists = army_commander location = { save_temporary_scope_as = current_location } army_commander = { NOR = { has_trait = crusader_king has_trait = faith_warrior } } } root.faith.great_holy_war.ghw_target_title = { #The dejure Kingdom targeted by the GHW any_in_de_jure_hierarchy = { tier = tier_barony title_province = { this = scope:current_location } #Any province within it. holder ?= { #The province's owner must also be part of the GHW on the opposite side. OR = { any_character_war = { OR = { using_cb = undirected_great_holy_war using_cb = directed_great_holy_war } is_defender = prev } any_liege_or_above = { any_character_war = { OR = { using_cb = undirected_great_holy_war using_cb = directed_great_holy_war } is_defender = prev } } } } } } } immediate = { scope:army.location = { save_scope_as = current_location } faith = { save_scope_as = the_faith } faith.great_holy_war = { save_scope_as = scoped_ghw } faith.great_holy_war.ghw_target_title = { save_scope_as = target_kingdom } scope:army = { army_commander = { trigger_event = great_holy_war.0057 } army_owner = { every_knight = { limit = { location = scope:current_location } trigger_event = great_holy_war.0057 } } } } } great_holy_war.0057 = { title = great_holy_war.0057.title desc = { first_valid = { triggered_desc = { #Crusaders trigger = { OR = { faith.religion = religion:eastern_orthodox_religion faith.religion = religion:catholic_religion faith.religion = religion:protestant_religion } } desc = great_holy_war.0057.crusader.desc } triggered_desc = { #Muslims trigger = { faith.religion = religion:islam_religion } desc = great_holy_war.0057.mujahid.desc } triggered_desc = { #Everybody else trigger = { NOR = { OR = { faith.religion = religion:eastern_orthodox_religion faith.religion = religion:catholic_religion faith.religion = religion:protestant_religion } faith.religion = religion:islam_religion } } desc = great_holy_war.0057.generic.outsiders.desc } } } theme = faith override_background = { reference = wilderness_scope } left_portrait = { character = root animation = marshal_shield } trigger = { root.faith = scope:the_faith exists = faith.great_holy_war NOR = { has_trait = crusader_king has_trait = faith_warrior } OR = { is_commanding_army = yes is_knight = yes } } immediate = { location = { save_scope_as = background_wilderness_scope } } option = { name = great_holy_war.0057.a add_trait = faith_warrior hidden_effect = { #Punish player sneakery. trigger_event = { id = great_holy_war.0058 days = { 15 60 } } } } } #Character is no longer in the Holy Land fighting infidels, not even a few weeks after getting the trait! great_holy_war.0058 = { title = great_holy_war.0058.title desc = great_holy_war.0058.base.desc theme = faith left_portrait = { character = root animation = shame } trigger = { exists = faith.great_holy_war #GHW must still be ongoing. has_trait = faith_warrior is_commanding_army = no #Should have stayed in command. is_knight = no is_imprisoned = no #Don't penalise captured faith_warriors. NOR = { has_trait = incapable has_trait_with_flag = debilitating_illness } OR = { #Character or liege must still be at war, obviously. any_character_war = { OR = { using_cb = undirected_great_holy_war using_cb = directed_great_holy_war } is_attacker = root } any_liege_or_above = { faith = root.faith any_character_war = { OR = { using_cb = undirected_great_holy_war using_cb = directed_great_holy_war } is_attacker = root } } } } option = { name = great_holy_war.0058.a if = { limit = { is_ai = no } #Punish player more. add_piety = major_piety_loss } if = { limit = { has_trait = faith_warrior } remove_trait = faith_warrior } } } #on_character_faith_change: check if the character has changed Religion, in which case the Crusader trait should be cleared. great_holy_war.0059 = { hidden = yes scope = character trigger = { OR = { has_trait = crusader_king has_trait = faith_warrior } } immediate = { if = { limit = { has_trait = crusader_king } remove_trait = crusader_king } else_if = { limit = { has_trait = faith_warrior } remove_trait = faith_warrior } } } #great_holy_war.0060 Taken for hidden event. #Event firing for all existing Beneficiaries on_victory to give proper modifiers to their dynasty/House. great_holy_war.0061 = { hidden = yes scope = character trigger = { is_alive = yes is_landed = yes #Must have received land in the Crusade. } immediate = { save_scope_as = scoped_beneficiary dynasty = { add_dynasty_modifier = { modifier = dynasty_beneficiary_won_ghw years = 30 } every_dynasty_member = { limit = { is_ai = no } send_interface_message = { type = event_great_holy_war_good_message title = great_holy_war.0061.title desc = great_holy_war.0061.notification left_icon = scope:scoped_beneficiary.primary_title right_icon = scope:scoped_beneficiary } } } if = { limit = { OR = { faith.religion = religion:eastern_orthodox_religion faith.religion = religion:catholic_religion faith.religion = religion:protestant_religion } } house = { add_house_modifier = { modifier = house_beneficiary_won_ghw_crusade years = 30 } } } else_if = { limit = { faith.religion = religion:islam_religion } house = { add_house_modifier = { modifier = house_beneficiary_won_ghw_jihad years = 30 } } } else = { house = { add_house_modifier = { modifier = house_beneficiary_won_ghw years = 30 } } } # Plus if we're gallowsbait, remove most/all of it — accounting for some weirdnesses from laamps. if = { limit = { NOR = { has_trait = crusader_king save_temporary_scope_as = char_temp scope:attacker.faith.great_holy_war = { any_pledged_attacker = { this = scope:char_temp } } } } absolve_crusaders_of_gallowsbait_effect = yes } } } great_holy_war.0070 = { title = great_holy_war.0070.title desc = great_holy_war.0070.base.desc theme = faith override_background = { reference = throne_room_scope } left_portrait = { character = scope:title_recipient animation = ecstasy } trigger = { is_ai = no } immediate = { scope:title_recipient = { save_scope_as = background_throne_room_scope } } option = { name = great_holy_war.0070.a set_player_character = scope:title_recipient } option = { name = great_holy_war.0070.b } } #0071 taken for directed GHW notification. #on_death: of ghw_sponsor, pick a new one immediately. great_holy_war.0080 = { hidden = yes scope = character trigger = { exists = faith.great_holy_war root = faith.great_holy_war.ghw_war_declarer } immediate = { faith = { save_scope_as = the_faith ghw_set_new_war_declarer_effect = yes } } } #Player redirected GHW during preparation phase. (old defenders) great_holy_war.0081 = { title = great_holy_war.0081.title desc = great_holy_war.0081.desc theme = faith right_portrait = { character = scope:actor animation = scheme } left_portrait = scope:second_recipient lower_left_portrait = scope:recipient option = { name = great_holy_war.0081.a } } #Player redirected GHW during preparation phase. (new defenders) great_holy_war.0082 = { title = great_holy_war.0081.title desc = great_holy_war.0082.desc theme = faith right_portrait = { character = scope:actor animation = scheme } left_portrait = scope:second_recipient lower_left_portrait = scope:recipient option = { name = great_holy_war.0082.a } } #On_death event to reset GHW fallback recipient. great_holy_war.0083 = { hidden = yes trigger = { exists = faith.great_holy_war has_character_flag = flag_is_ghw_fallback_recipient } immediate = { faith.great_holy_war = { remove_variable = var_fallback_recipient } if = { limit = { exists = faith.great_holy_war.ghw_war_declarer.capital_province } faith.great_holy_war.ghw_war_declarer = { save_scope_as = fallback_host } } else_if = { limit = { NOT = { exists = faith.great_holy_war.ghw_war_declarer.capital_province } } random_ruler = { limit = { is_landed = yes faith = root.faith highest_held_title_tier > 1 } save_scope_as = fallback_host } } #Generate a fallback recipient. create_character = { location = scope:fallback_host.capital_province template = new_commander_character faith = root.faith culture = root.culture save_scope_as = fallback_recipient gender_female_chance = { if = { limit = { root.faith = { has_doctrine = doctrine_gender_male_dominated } } add = 0 } else_if = { limit = { root.faith = { has_doctrine = doctrine_gender_female_dominated } } add = 100 } else = { add = 50 } } } scope:fallback_recipient = { add_character_flag = flag_is_ghw_fallback_recipient } root.faith.great_holy_war = { set_variable = { name = var_fallback_recipient value = scope:fallback_recipient } } } } #On_faith_conversion event to reset GHW fallback recipient. great_holy_war.0084 = { hidden = yes trigger = { exists = scope:old_faith.great_holy_war has_character_flag = flag_is_ghw_fallback_recipient } immediate = { scope:old_faith.great_holy_war = { remove_variable = var_fallback_recipient } if = { limit = { exists = scope:old_faith.great_holy_war.ghw_war_declarer.capital_province } scope:old_faith.great_holy_war.ghw_war_declarer = { save_scope_as = fallback_host } } else_if = { limit = { NOT = { exists = scope:old_faith.great_holy_war.ghw_war_declarer.capital_province } } scope:old_faith = { random_faith_ruler = { limit = { is_landed = yes highest_held_title_tier > tier_barony } save_scope_as = fallback_host } } } #Generate a fallback recipient. create_character = { location = scope:fallback_host.capital_province template = new_commander_character faith = scope:old_faith culture = root.culture save_scope_as = fallback_recipient gender_female_chance = { if = { limit = { root.faith = { has_doctrine = doctrine_gender_male_dominated } } add = 0 } else_if = { limit = { root.faith = { has_doctrine = doctrine_gender_female_dominated } } add = 100 } else = { add = 50 } } } scope:fallback_recipient = { add_character_flag = flag_is_ghw_fallback_recipient } scope:old_faith.great_holy_war = { set_variable = { name = var_fallback_recipient value = scope:fallback_recipient } } } } #On_faith_conversion: clear all vassals of the old faith who may be pledged to a GHW. great_holy_war.0085 = { hidden = yes trigger = { exists = scope:old_faith.great_holy_war NOT = { exists = scope:old_faith.great_holy_war.ghw_war } any_vassal = { faith = scope:old_faith faith.great_holy_war = { has_pledged_attacker = prev } } } immediate = { save_scope_as = converter every_vassal = { limit = { faith = scope:old_faith faith.great_holy_war = { has_pledged_attacker = prev } } send_interface_toast = { type = event_toast_effect_bad right_icon = this left_icon = scope:converter title = great_holy_war.0085.toast faith.great_holy_war = { unpledge_attacker = prev unpledge_ghw_war_chest_prestige_effect = yes unpledge_ghw_war_chest_piety_effect = yes } } } } }