From b21331e150d5d8e5e3b4c70ce00962eea65ba459 Mon Sep 17 00:00:00 2001 From: Heidesommer Date: Fri, 22 May 2026 22:45:00 -0400 Subject: [PATCH] The debugging will continue until stability improves --- common/accolade_names/00_accolade_names.txt | 25 +- .../activities/activity_types/coronation.txt | 6 +- .../activities/activity_types/pilgrimage.txt | 18 +- common/casus_belli_types/00_religious_war.txt | 112 +- .../00_character_interactions.txt | 30 +- common/character_interactions/00_gift.txt | 24 +- .../00_marriage_interactions.txt | 52 +- .../00_scheme_interactions.txt | 366 +- .../00_vassal_interactions.txt | 130 +- .../03_fp2_interactions.txt | 112 +- .../09_mpo_interactions.txt | 56 +- .../template_lists/coa_templates.txt | 6 +- .../template_lists/colored_emblem_lists.txt | 106 +- .../council_tasks/00_court_chaplain_tasks.txt | 146 +- common/council_tasks/00_steward_tasks.txt | 16 +- .../cultures/NEOW_central_germanic.txt | 2 +- .../00_artifact_court_custom_loc.txt | 421 +- common/decisions/10_religious_decisions.txt | 34 +- .../dlc_decisions/03_fp2_decisions.txt | 2394 +- .../00_inserts.txt | 4556 ++++ common/dynasty_house_mottos/00_mottos.txt | 1031 + common/flavorization/00_title_holders.txt | 594 +- common/on_action/religion_on_actions.txt | 2 +- common/on_action/title_on_actions.txt | 114 +- .../province_terrain/00_province_terrain.txt | 52 +- .../script_values/04_ep2_wedding_values.txt | 28 +- .../00_clothing_triggers.txt | 2 +- common/scripted_triggers/00_coa_triggers.txt | 31 +- .../00_religious_triggers.txt | 34 +- .../NEOW_religion_triggers.txt | 8 +- common/vassal_stances/00_vassal_stances.txt | 1219 + .../coronation_activity/coronation_events.txt | 62 +- .../coronation_events_1.txt | 12 +- .../tour_phase_cultural_festival.txt | 4 +- events/dlc/fp2/fp2_struggle_events.txt | 22635 ++++++++-------- events/global_religion_events.txt | 1337 + events/religion_events/heresy_events.txt | 1355 + events/test_events/debug.txt | 36 +- events/yearly_events/yearly_events_sahara.txt | 1741 ++ 39 files changed, 25050 insertions(+), 13859 deletions(-) create mode 100644 common/dynasty_house_motto_inserts/00_inserts.txt create mode 100644 common/dynasty_house_mottos/00_mottos.txt create mode 100644 common/vassal_stances/00_vassal_stances.txt create mode 100644 events/global_religion_events.txt create mode 100644 events/religion_events/heresy_events.txt create mode 100644 events/yearly_events/yearly_events_sahara.txt diff --git a/common/accolade_names/00_accolade_names.txt b/common/accolade_names/00_accolade_names.txt index 7586f7c8..1b09f416 100644 --- a/common/accolade_names/00_accolade_names.txt +++ b/common/accolade_names/00_accolade_names.txt @@ -2952,10 +2952,10 @@ accolade_knight_of_god = { trigger = { NOR = { faith.religion = religion:finnic_religion - faith.religion = religion:north_african_religion - faith.religion = religion:paganism_religion - faith.religion = religion:west_african_religion - faith.religion = religion:west_african_roog_religion +# faith.religion = religion:north_african_religion +# faith.religion = religion:paganism_religion +# faith.religion = religion:west_african_religion +# faith.religion = religion:west_african_roog_religion } } desc = accolade_good_god @@ -2967,7 +2967,6 @@ accolade_knight_of_god = { potential = { exists = liege religion = liege.religion - NOT = { faith.religion = religion:west_african_bori_religion } } } @@ -4302,14 +4301,14 @@ accolade_the_knight_of_aspect = { } desc = accolade_of_true_culture_virtue } - triggered_desc = { - trigger = { - liege ?= { - faith.religion = religion:tengrism_religion - } - } - desc = accolade_of_the_wind_horse - } +# triggered_desc = { +# trigger = { +# liege ?= { +# faith.religion = religion:tengrism_religion +# } +# } +# desc = accolade_of_the_wind_horse +# } triggered_desc = { trigger = { scope:accolade_type = { diff --git a/common/activities/activity_types/coronation.txt b/common/activities/activity_types/coronation.txt index 479a965f..cb1e8210 100644 --- a/common/activities/activity_types/coronation.txt +++ b/common/activities/activity_types/coronation.txt @@ -3875,10 +3875,10 @@ #Ruler faith matches scope:host = { OR = { - religion = religion:tengrism_religion +# religion = religion:tengrism_religion religion = religion:hungaric_religion - religion = religion:siberian_religion - religion = religion:kamuyism_religion +# religion = religion:siberian_religion +# religion = religion:kamuyism_religion AND = { religion = religion:buddhism_religion scope:activity.activity_location ?= { diff --git a/common/activities/activity_types/pilgrimage.txt b/common/activities/activity_types/pilgrimage.txt index a2d92642..c606853f 100644 --- a/common/activities/activity_types/pilgrimage.txt +++ b/common/activities/activity_types/pilgrimage.txt @@ -2883,10 +2883,10 @@ trigger = { scope:host = { OR = { - religion = religion:tengrism_religion +# religion = religion:tengrism_religion religion = religion:hungaric_religion - religion = religion:siberian_religion - religion = religion:kamuyism_religion +# religion = religion:siberian_religion +# religion = religion:kamuyism_religion } } } @@ -3002,12 +3002,12 @@ environment = "environment_event_forest" ambience = "event:/SFX/Events/Backgrounds/deciduous_forest_day" } - background = { - trigger = { scope:host.religion = religion:tengrism_religion } - texture = "gfx/interface/illustrations/event_scenes/forest.dds" - environment = "environment_event_forest" - ambience = "event:/SFX/Events/Backgrounds/deciduous_forest_day" - } +# background = { +# trigger = { scope:host.religion = religion:tengrism_religion } +# texture = "gfx/interface/illustrations/event_scenes/forest.dds" +# environment = "environment_event_forest" +# ambience = "event:/SFX/Events/Backgrounds/deciduous_forest_day" +# } #Fallback background = { diff --git a/common/casus_belli_types/00_religious_war.txt b/common/casus_belli_types/00_religious_war.txt index 5a8b472b..fd057ff6 100644 --- a/common/casus_belli_types/00_religious_war.txt +++ b/common/casus_belli_types/00_religious_war.txt @@ -113,25 +113,25 @@ tier = tier_county is_landless_type_title = no } - # Filter for struggles - trigger_if = { - limit = { - scope:attacker = { - any_character_struggle = { - involvement = involved - is_struggle_type = iberian_struggle - } - } - scope:defender = { - any_character_struggle = { - involvement = involved - is_struggle_type = iberian_struggle - } - } - } - are_holy_wars_disabled_in_struggle_phase_trigger = yes - } - are_holy_wars_disabled_by_struggle_conciliation_trigger = no # Disabled against other involved faiths in FP2 Conciliation ending +# # Filter for struggles +# trigger_if = { +# limit = { +# scope:attacker = { +# any_character_struggle = { +# involvement = involved +# is_struggle_type = iberian_struggle +# } +# } +# scope:defender = { +# any_character_struggle = { +# involvement = involved +# is_struggle_type = iberian_struggle +# } +# } +# } +# are_holy_wars_disabled_in_struggle_phase_trigger = yes +# } +# are_holy_wars_disabled_by_struggle_conciliation_trigger = no # Disabled against other involved faiths in FP2 Conciliation ending } @@ -685,24 +685,24 @@ religious_war = { } } # Filter for struggles - trigger_if = { - limit = { - scope:attacker = { - any_character_struggle = { - involvement = involved - is_struggle_type = iberian_struggle - } - } - scope:defender = { - any_character_struggle = { - involvement = involved - is_struggle_type = iberian_struggle - } - } - } - are_holy_wars_disabled_in_struggle_phase_trigger = yes - } - are_holy_wars_disabled_by_struggle_conciliation_trigger = no # Disabled against other involved faiths in FP2 Conciliation ending +# trigger_if = { +# limit = { +# scope:attacker = { +# any_character_struggle = { +# involvement = involved +# is_struggle_type = iberian_struggle +# } +# } +# scope:defender = { +# any_character_struggle = { +# involvement = involved +# is_struggle_type = iberian_struggle +# } +# } +# } +# are_holy_wars_disabled_in_struggle_phase_trigger = yes +# } +# are_holy_wars_disabled_by_struggle_conciliation_trigger = no # Disabled against other involved faiths in FP2 Conciliation ending } should_invalidate = { @@ -1286,25 +1286,25 @@ major_religious_war = { is_landless_type_title = no } # Filter for struggles - trigger_if = { - limit = { - scope:attacker = { - any_character_struggle = { - involvement = involved - is_struggle_type = iberian_struggle - } - } - scope:defender = { - any_character_struggle = { - involvement = involved - is_struggle_type = iberian_struggle - } - } - } - are_holy_wars_disabled_in_struggle_phase_trigger = yes - } - are_holy_wars_disabled_by_struggle_conciliation_trigger = no # Disabled against other involved faiths in FP2 Conciliation ending - +# trigger_if = { +# limit = { +# scope:attacker = { +# any_character_struggle = { +# involvement = involved +# is_struggle_type = iberian_struggle +# } +# } +# scope:defender = { +# any_character_struggle = { +# involvement = involved +# is_struggle_type = iberian_struggle +# } +# } +# } +# are_holy_wars_disabled_in_struggle_phase_trigger = yes +# } +# are_holy_wars_disabled_by_struggle_conciliation_trigger = no # Disabled against other involved faiths in FP2 Conciliation ending +# scope:target = { trigger_if = { limit = { diff --git a/common/character_interactions/00_character_interactions.txt b/common/character_interactions/00_character_interactions.txt index 9bab5fc7..e2d1d8a2 100644 --- a/common/character_interactions/00_character_interactions.txt +++ b/common/character_interactions/00_character_interactions.txt @@ -806,21 +806,21 @@ offer_vassalization_interaction = { } } - modifier = { # Iberian Struggle, less likely for outsiders to vassalize inside - add = -35 - desc = iberian_struggle_reason_reason - trigger = { - scope:actor = { - NOT = { - any_character_struggle = { is_struggle_type = iberian_struggle } - } - } - scope:recipient = { - any_character_struggle = { is_struggle_type = iberian_struggle } - } - } - } - +# modifier = { # Iberian Struggle, less likely for outsiders to vassalize inside +# add = -35 +# desc = iberian_struggle_reason_reason +# trigger = { +# scope:actor = { +# NOT = { +# any_character_struggle = { is_struggle_type = iberian_struggle } +# } +# } +# scope:recipient = { +# any_character_struggle = { is_struggle_type = iberian_struggle } +# } +# } +# } +# modifier = { #Ageism modifier vs kids. desc = offer_vassalization_interaction_aibehavior_child_tt trigger = { diff --git a/common/character_interactions/00_gift.txt b/common/character_interactions/00_gift.txt index b06b8dc1..938131a4 100644 --- a/common/character_interactions/00_gift.txt +++ b/common/character_interactions/00_gift.txt @@ -747,18 +747,18 @@ gift_interaction = { } } - modifier = { - add = 100 - scope:actor = { - is_at_war = no - has_trait = fp3_struggle_supporter - any_character_struggle = { is_struggle_type = persian_struggle } - } - scope:recipient = { - title:d_sunni.holder ?= this - gold < 0 - } - } +# modifier = { +# add = 100 +# scope:actor = { +# is_at_war = no +# has_trait = fp3_struggle_supporter +# any_character_struggle = { is_struggle_type = persian_struggle } +# } +# scope:recipient = { +# title:d_sunni.holder ?= this +# gold < 0 +# } +# } # Nomads are slightly less likely to do this since they'd prefer to send Herd instead modifier = { diff --git a/common/character_interactions/00_marriage_interactions.txt b/common/character_interactions/00_marriage_interactions.txt index bdd108ef..92e32f77 100644 --- a/common/character_interactions/00_marriage_interactions.txt +++ b/common/character_interactions/00_marriage_interactions.txt @@ -995,32 +995,32 @@ arrange_marriage_interaction = { localization = MARRIAGE_HOOK } - send_option = { # FP3 - is_shown = { - scope:actor = { - any_character_struggle = { - is_struggle_type = persian_struggle - has_struggle_phase_parameter = can_trade_piety_for_marriage_acceptance - } - } - } - is_valid = { - scope:actor = { - any_character_struggle = { - involvement = involved - is_struggle_type = persian_struggle - } - } - scope:recipient = { - any_character_struggle = { - involvement = involved - is_struggle_type = persian_struggle - } - } - } - flag = piety_cost_reduction - localization = TRADE_PIETY_FOR_BETTER_AI_ACCEPTANCE - } +# send_option = { # FP3 +# is_shown = { +# scope:actor = { +# any_character_struggle = { +# is_struggle_type = persian_struggle +# has_struggle_phase_parameter = can_trade_piety_for_marriage_acceptance +# } +# } +# } +# is_valid = { +# scope:actor = { +# any_character_struggle = { +# involvement = involved +# is_struggle_type = persian_struggle +# } +# } +# scope:recipient = { +# any_character_struggle = { +# involvement = involved +# is_struggle_type = persian_struggle +# } +# } +# } +# flag = piety_cost_reduction +# localization = TRADE_PIETY_FOR_BETTER_AI_ACCEPTANCE +# } send_option = { # EP3 Influence is_shown = { # Actor must have a government that uses influence diff --git a/common/character_interactions/00_scheme_interactions.txt b/common/character_interactions/00_scheme_interactions.txt index aea3fb7d..87542de4 100644 --- a/common/character_interactions/00_scheme_interactions.txt +++ b/common/character_interactions/00_scheme_interactions.txt @@ -842,62 +842,62 @@ befriend_interaction = { # Struggle modifier = { - scope:actor = { - any_character_struggle = { - involvement = involved - is_struggle_type = iberian_struggle - phase_has_catalyst = catalyst_became_friend_lover_with_character - } - } - scope:recipient = { - any_character_struggle = { - involvement = involved - is_struggle_type = iberian_struggle - phase_has_catalyst = catalyst_became_friend_lover_with_character - } - } - add = { - value = 0 - if = { - limit = { - scope:actor = { - has_character_flag = agenda_towards_deescalation - trait_compatibility = { - target = scope:recipient - value >= low_positive_trait_compatibility - } - } - scope:recipient = { - has_character_flag = agenda_towards_deescalation - } - } - add = 200 - } - else_if = { - limit = { - scope:actor = { - has_character_flag = agenda_towards_deescalation - trait_compatibility = { - target = scope:recipient - value >= low_positive_trait_compatibility - } - } - } - add = 50 - } - else_if = { - limit = { - scope:actor = { - has_character_flag = agenda_towards_escalation - } - } - add = -200 - } - else = { - add = 10 - } - } - } +# scope:actor = { +# any_character_struggle = { +# involvement = involved +# is_struggle_type = iberian_struggle +# phase_has_catalyst = catalyst_became_friend_lover_with_character +# } +# } +# scope:recipient = { +# any_character_struggle = { +# involvement = involved +# is_struggle_type = iberian_struggle +# phase_has_catalyst = catalyst_became_friend_lover_with_character +# } +# } +# add = { +# value = 0 +# if = { +# limit = { +# scope:actor = { +# has_character_flag = agenda_towards_deescalation +# trait_compatibility = { +# target = scope:recipient +# value >= low_positive_trait_compatibility +# } +# } +# scope:recipient = { +# has_character_flag = agenda_towards_deescalation +# } +# } +# add = 200 +# } +# else_if = { +# limit = { +# scope:actor = { +# has_character_flag = agenda_towards_deescalation +# trait_compatibility = { +# target = scope:recipient +# value >= low_positive_trait_compatibility +# } +# } +# } +# add = 50 +# } +# else_if = { +# limit = { +# scope:actor = { +# has_character_flag = agenda_towards_escalation +# } +# } +# add = -200 +# } +# else = { +# add = 10 +# } +# } +# } modifier = { factor = 25 @@ -1402,52 +1402,52 @@ seduce_interaction = { } } - # Struggle - modifier = { - scope:recipient = { - any_character_struggle = { - involvement = involved - is_struggle_type = iberian_struggle - phase_has_catalyst = catalyst_became_friend_lover_with_character - } - } - scope:actor = { - any_character_struggle = { - involvement = involved - is_struggle_type = iberian_struggle - phase_has_catalyst = catalyst_became_friend_lover_with_character - } - } - add = { - value = 0 - if = { - limit = { - scope:actor = { - has_character_flag = agenda_towards_deescalation - trait_compatibility = { - target = scope:recipient - value >= low_positive_trait_compatibility - } - } - scope:recipient = { - has_character_flag = agenda_towards_deescalation - } - } - add = 50 - } - else_if = { - limit = { - scope:actor = { - has_character_flag = agenda_towards_escalation - } - } - add = -200 - } - else = { - add = 5 - } - } - } +# # Struggle +# modifier = { +# scope:recipient = { +# any_character_struggle = { +# involvement = involved +# is_struggle_type = iberian_struggle +# phase_has_catalyst = catalyst_became_friend_lover_with_character +# } +# } +# scope:actor = { +# any_character_struggle = { +# involvement = involved +# is_struggle_type = iberian_struggle +# phase_has_catalyst = catalyst_became_friend_lover_with_character +# } +# } +# add = { +# value = 0 +# if = { +# limit = { +# scope:actor = { +# has_character_flag = agenda_towards_deescalation +# trait_compatibility = { +# target = scope:recipient +# value >= low_positive_trait_compatibility +# } +# } +# scope:recipient = { +# has_character_flag = agenda_towards_deescalation +# } +# } +# add = 50 +# } +# else_if = { +# limit = { +# scope:actor = { +# has_character_flag = agenda_towards_escalation +# } +# } +# add = -200 +# } +# else = { +# add = 5 +# } +# } +# } modifier = { factor = 1.25 @@ -1843,25 +1843,25 @@ court_interaction = { ai_potential = { is_adult = yes - trigger_if = { - limit = { - NOR = { - culture = { - has_cultural_parameter = ai_romance_scheme_increase - } - AND = { - has_character_flag = agenda_towards_deescalation - any_character_struggle = { - involvement = involved - is_struggle_type = iberian_struggle - phase_has_catalyst = catalyst_became_best_friend_soulmate_with_very_important_character - } - } - } - } - ai_honor >= high_positive_ai_value - ai_compassion >= low_positive_ai_value - } +# trigger_if = { +# limit = { +# NOR = { +# culture = { +# has_cultural_parameter = ai_romance_scheme_increase +# } +# AND = { +# has_character_flag = agenda_towards_deescalation +# any_character_struggle = { +# involvement = involved +# is_struggle_type = iberian_struggle +# phase_has_catalyst = catalyst_became_best_friend_soulmate_with_very_important_character +# } +# } +# } +# } +# ai_honor >= high_positive_ai_value +# ai_compassion >= low_positive_ai_value +# } highest_held_title_tier > tier_barony NOR = { has_trait = celibate @@ -1881,69 +1881,69 @@ court_interaction = { - # Struggle - modifier = { - scope:actor = { - any_character_struggle = { - involvement = involved - is_struggle_type = iberian_struggle - phase_has_catalyst = catalyst_became_best_friend_soulmate_with_very_important_character - } - } - scope:recipient = { - any_character_struggle = { - involvement = involved - is_struggle_type = iberian_struggle - phase_has_catalyst = catalyst_became_best_friend_soulmate_with_very_important_character - } - } - add = { - value = 0 - if = { - limit = { - scope:actor = { - has_character_flag = agenda_towards_deescalation - } - scope:recipient = { - has_character_flag = agenda_towards_deescalation - } - } - add = 25 - } - else_if = { - limit = { - scope:actor = { - has_character_flag = agenda_towards_escalation - } - } - add = -200 - } - else = { - add = 5 - } - } - } - - modifier = { # Motivate AI's to use it on catalyst providers exclusively - add = -50 - scope:actor = { - any_character_struggle = { - involvement = involved - is_struggle_type = iberian_struggle - phase_has_catalyst = catalyst_became_best_friend_soulmate_with_very_important_character - } - } - scope:recipient = { - NOT = { - any_character_struggle = { - involvement = involved - is_struggle_type = iberian_struggle - phase_has_catalyst = catalyst_became_best_friend_soulmate_with_very_important_character - } - } - } - } +# # Struggle +# modifier = { +# scope:actor = { +# any_character_struggle = { +# involvement = involved +# is_struggle_type = iberian_struggle +# phase_has_catalyst = catalyst_became_best_friend_soulmate_with_very_important_character +# } +# } +# scope:recipient = { +# any_character_struggle = { +# involvement = involved +# is_struggle_type = iberian_struggle +# phase_has_catalyst = catalyst_became_best_friend_soulmate_with_very_important_character +# } +# } +# add = { +# value = 0 +# if = { +# limit = { +# scope:actor = { +# has_character_flag = agenda_towards_deescalation +# } +# scope:recipient = { +# has_character_flag = agenda_towards_deescalation +# } +# } +# add = 25 +# } +# else_if = { +# limit = { +# scope:actor = { +# has_character_flag = agenda_towards_escalation +# } +# } +# add = -200 +# } +# else = { +# add = 5 +# } +# } +# } +# modifier = { # Motivate AI's to use it on catalyst providers exclusively +# add = -50 +# scope:actor = { +# any_character_struggle = { +# involvement = involved +# is_struggle_type = iberian_struggle +# phase_has_catalyst = catalyst_became_best_friend_soulmate_with_very_important_character +# } +# } +# scope:recipient = { +# NOT = { +# any_character_struggle = { +# involvement = involved +# is_struggle_type = iberian_struggle +# phase_has_catalyst = catalyst_became_best_friend_soulmate_with_very_important_character +# } +# } +# } +# } +# opinion_modifier = { opinion_target = scope:recipient multiplier = 0.4 diff --git a/common/character_interactions/00_vassal_interactions.txt b/common/character_interactions/00_vassal_interactions.txt index 9103ce07..22f18606 100644 --- a/common/character_interactions/00_vassal_interactions.txt +++ b/common/character_interactions/00_vassal_interactions.txt @@ -3295,71 +3295,71 @@ vassal_claim_liege_title_interaction = { } # Agenda impact - modifier = { - scope:actor = { - any_character_struggle = { - involvement = involved - is_struggle_type = iberian_struggle - } - } - add = { - value = 0 - if = { - limit = { - scope:actor = { - any_character_struggle = { - phase_has_catalyst = catalyst_gain_claim_on_title_fp2 - } - has_character_flag = agenda_towards_escalation - } - } - add = 200 - } - else_if = { - limit = { - scope:actor = { - any_character_struggle = { - phase_has_catalyst = catalyst_gain_claim_on_title_fp2 - } - } - } - add = -100 - } - } - } - - modifier = { - scope:actor = { - any_character_struggle = { - involvement = involved - is_struggle_type = persian_struggle - } - } - add = { - value = 0 - if = { - limit = { - scope:actor = { - any_character_struggle = { - phase_has_catalyst = catalyst_gain_claim_on_title_fp3 - } - has_trait = fp3_struggle_detractor - } - } - add = 200 - } - else_if = { - limit = { - scope:actor = { - any_character_struggle = { - phase_has_catalyst = catalyst_gain_claim_on_title_fp3 - } - } - } - add = -100 - } - } - } +# modifier = { +# scope:actor = { +# any_character_struggle = { +# involvement = involved +# is_struggle_type = iberian_struggle +# } +# } +# add = { +# value = 0 +# if = { +# limit = { +# scope:actor = { +# any_character_struggle = { +# phase_has_catalyst = catalyst_gain_claim_on_title_fp2 +# } +# has_character_flag = agenda_towards_escalation +# } +# } +# add = 200 +# } +# else_if = { +# limit = { +# scope:actor = { +# any_character_struggle = { +# phase_has_catalyst = catalyst_gain_claim_on_title_fp2 +# } +# } +# } +# add = -100 +# } +# } +# } +# +# modifier = { +# scope:actor = { +# any_character_struggle = { +# involvement = involved +# is_struggle_type = persian_struggle +# } +# } +# add = { +# value = 0 +# if = { +# limit = { +# scope:actor = { +# any_character_struggle = { +# phase_has_catalyst = catalyst_gain_claim_on_title_fp3 +# } +# has_trait = fp3_struggle_detractor +# } +# } +# add = 200 +# } +# else_if = { +# limit = { +# scope:actor = { +# any_character_struggle = { +# phase_has_catalyst = catalyst_gain_claim_on_title_fp3 +# } +# } +# } +# add = -100 +# } +# } +# } modifier = { factor = 0.25 diff --git a/common/character_interactions/03_fp2_interactions.txt b/common/character_interactions/03_fp2_interactions.txt index 938dd6e4..e8ba3871 100644 --- a/common/character_interactions/03_fp2_interactions.txt +++ b/common/character_interactions/03_fp2_interactions.txt @@ -2692,30 +2692,30 @@ incite_revolts_interaction = { has_relation_rival = scope:recipient } } - # Only available during Opportunity, Hostility and Tension phases - scope:actor = { - any_character_struggle = { - involvement = involved - has_struggle_phase_parameter = unlocks_incite_revolts_interaction - # Can only target involved - is_secondary_character_involvement_involved_trigger = { CHAR = scope:recipient } - } - } - AND = { - scope:actor = { - has_trait = fp3_struggle_detractor - any_character_struggle = { - involvement = involved - is_struggle_type = persian_struggle - } - } - scope:recipient = { - any_character_struggle = { - is_struggle_type = persian_struggle - involvement = involved - } - } - } +# # Only available during Opportunity, Hostility and Tension phases +# scope:actor = { +# any_character_struggle = { +# involvement = involved +# has_struggle_phase_parameter = unlocks_incite_revolts_interaction +# # Can only target involved +# is_secondary_character_involvement_involved_trigger = { CHAR = scope:recipient } +# } +# } +# AND = { +# scope:actor = { +# has_trait = fp3_struggle_detractor +# any_character_struggle = { +# involvement = involved +# is_struggle_type = persian_struggle +# } +# } +# scope:recipient = { +# any_character_struggle = { +# is_struggle_type = persian_struggle +# involvement = involved +# } +# } +# } scope:actor.domicile ?= { has_domicile_parameter = can_use_incite_revolts } @@ -3026,18 +3026,18 @@ incite_revolts_interaction = { ai_potential = { short_term_gold >= medium_gold_value OR = { - any_character_struggle = { - has_struggle_phase_parameter = unlocks_incite_revolts_interaction - involvement = involved - OR = { - is_struggle_phase = struggle_iberia_phase_opportunity - is_struggle_phase = struggle_iberia_phase_hostility - } - } - any_character_struggle = { - is_struggle_type = persian_struggle - involvement = involved - } +# any_character_struggle = { +# has_struggle_phase_parameter = unlocks_incite_revolts_interaction +# involvement = involved +# OR = { +# is_struggle_phase = struggle_iberia_phase_opportunity +# is_struggle_phase = struggle_iberia_phase_hostility +# } +# } +# any_character_struggle = { +# is_struggle_type = persian_struggle +# involvement = involved +# } domicile ?= { has_domicile_parameter = can_use_incite_revolts } @@ -5075,26 +5075,26 @@ invite_foreign_ruler_to = { # Interaction deprecated by new activity planning system always = no - scope:actor != scope:recipient - # Scope:actor needs to either be involved in certain struggle types or else have a specific perk. - scope:actor = { - any_character_struggle = { - involvement = involved - is_struggle_type = iberian_struggle -} - } - # Scope:recipient must be landed, and neither over or under scope:actor. - scope:recipient = { - any_character_struggle = { - involvement = involved - is_struggle_type = iberian_struggle - } - is_playable_character = yes - NOR = { - any_liege_or_above = { this = scope:actor } - any_vassal_or_below = { this = scope:actor } - } - } +# scope:actor != scope:recipient +# # Scope:actor needs to either be involved in certain struggle types or else have a specific perk. +# scope:actor = { +# any_character_struggle = { +# involvement = involved +# is_struggle_type = iberian_struggle +# } +# } +# # Scope:recipient must be landed, and neither over or under scope:actor. +# scope:recipient = { +# any_character_struggle = { +# involvement = involved +# is_struggle_type = iberian_struggle +# } +# is_playable_character = yes +# NOR = { +# any_liege_or_above = { this = scope:actor } +# any_vassal_or_below = { this = scope:actor } +# } +# } } is_valid_showing_failures_only = { diff --git a/common/character_interactions/09_mpo_interactions.txt b/common/character_interactions/09_mpo_interactions.txt index 319c8577..bebcfec3 100644 --- a/common/character_interactions/09_mpo_interactions.txt +++ b/common/character_interactions/09_mpo_interactions.txt @@ -667,20 +667,20 @@ } } - modifier = { # Iberian Struggle, less likely for outsiders to vassalize inside - add = -35 - desc = iberian_struggle_reason_reason - trigger = { - scope:actor = { - NOT = { - any_character_struggle = { is_struggle_type = iberian_struggle } - } - } - scope:recipient = { - any_character_struggle = { is_struggle_type = iberian_struggle } - } - } - } +# modifier = { # Iberian Struggle, less likely for outsiders to vassalize inside +# add = -35 +# desc = iberian_struggle_reason_reason +# trigger = { +# scope:actor = { +# NOT = { +# any_character_struggle = { is_struggle_type = iberian_struggle } +# } +# } +# scope:recipient = { +# any_character_struggle = { is_struggle_type = iberian_struggle } +# } +# } +# } modifier = { #Ageism modifier vs kids. desc = offer_vassalization_interaction_aibehavior_child_tt @@ -9008,20 +9008,20 @@ mpo_offer_submission_or_ruin = { } } - modifier = { # Iberian Struggle, less likely for outsiders to vassalize inside - add = -35 - desc = iberian_struggle_reason_reason - trigger = { - scope:actor = { - NOT = { - any_character_struggle = { is_struggle_type = iberian_struggle } - } - } - scope:recipient = { - any_character_struggle = { is_struggle_type = iberian_struggle } - } - } - } +# modifier = { # Iberian Struggle, less likely for outsiders to vassalize inside +# add = -35 +# desc = iberian_struggle_reason_reason +# trigger = { +# scope:actor = { +# NOT = { +# any_character_struggle = { is_struggle_type = iberian_struggle } +# } +# } +# scope:recipient = { +# any_character_struggle = { is_struggle_type = iberian_struggle } +# } +# } +# } modifier = { #Ageism modifier vs kids. desc = offer_vassalization_interaction_aibehavior_child_tt diff --git a/common/coat_of_arms/template_lists/coa_templates.txt b/common/coat_of_arms/template_lists/coa_templates.txt index 23eee5e1..d2587b07 100644 --- a/common/coat_of_arms/template_lists/coa_templates.txt +++ b/common/coat_of_arms/template_lists/coa_templates.txt @@ -176,7 +176,7 @@ AND = { OR = { # scope:faith = faith:nestorian - scope:religion = religion:tengrism_religion +# scope:religion = religion:tengrism_religion scope:religion = religion:zoroastrianism_religion scope:religion = religion:hungaric_religion AND = { @@ -209,7 +209,7 @@ AND = { OR = { # scope:faith = faith:nestorian - scope:religion = religion:tengrism_religion +# scope:religion = religion:tengrism_religion scope:religion = religion:zoroastrianism_religion scope:religion = religion:hungaric_religion AND = { @@ -232,7 +232,7 @@ AND = { OR = { # scope:faith = faith:nestorian - scope:religion = religion:tengrism_religion +# scope:religion = religion:tengrism_religion scope:religion = religion:zoroastrianism_religion scope:religion = religion:hungaric_religion AND = { diff --git a/common/coat_of_arms/template_lists/colored_emblem_lists.txt b/common/coat_of_arms/template_lists/colored_emblem_lists.txt index cd8ae5ec..ce969384 100644 --- a/common/coat_of_arms/template_lists/colored_emblem_lists.txt +++ b/common/coat_of_arms/template_lists/colored_emblem_lists.txt @@ -1618,24 +1618,24 @@ colored_emblem_texture_lists = { 5000 = "ce_star_sassanian.dds" 5000 = "ce_triskel_sassanian.dds" } - special_selection = { - trigger = { - scope:faith = faith:nestorian - } - 20000 = "ce_tamgha_nestorian_01.dds" - 20000 = "ce_tamgha_nestorian_02.dds" - 20000 = "ce_nestorian_tamgha_trinity.dds" - 20000 = "ce_nestorian_tamgha_chalice.dds" - 20000 = "ce_nestorian_tamgha_cross_hill.dds" - 20000 = "ce_cross_armenian.dds" - 20000 = "ce_cross_greek.dds" - 20000 = "ce_cross_pisan.dds" - 20000 = "ce_nestorian_cross.dds" - 20000 = "ce_nestorian_cross_lotus.dds" - 20000 = "ce_nestorian_bird.dds" - 20000 = "ce_nestorian_gammate_cross.dds" - 20000 = "ce_nestorian_cross_birds.dds" - } +# special_selection = { +# trigger = { +# scope:faith = faith:nestorian +# } +# 20000 = "ce_tamgha_nestorian_01.dds" +# 20000 = "ce_tamgha_nestorian_02.dds" +# 20000 = "ce_nestorian_tamgha_trinity.dds" +# 20000 = "ce_nestorian_tamgha_chalice.dds" +# 20000 = "ce_nestorian_tamgha_cross_hill.dds" +# 20000 = "ce_cross_armenian.dds" +# 20000 = "ce_cross_greek.dds" +# 20000 = "ce_cross_pisan.dds" +# 20000 = "ce_nestorian_cross.dds" +# 20000 = "ce_nestorian_cross_lotus.dds" +# 20000 = "ce_nestorian_bird.dds" +# 20000 = "ce_nestorian_gammate_cross.dds" +# 20000 = "ce_nestorian_cross_birds.dds" +# } special_selection = { # Jewish Khazars trigger = { scope:faith.religion = religion:judaism_religion @@ -1713,41 +1713,41 @@ colored_emblem_texture_lists = { 1000 = "ce_african_otumfuo.dds" 1000 = "ce_african_tamfo.dds" - special_selection = { - trigger = { # Serere - scope:faith.religion = religion:west_african_roog_religion - } - 2000 = "ce_african_jaaniw.dds" - 2000 = "ce_religion_african_roog_sene.dds" - 2000 = "ce_african_koh.dds" - 2000 = "ce_african_hidoox.dds" - 2000 = "ce_african_ja_ir.dds" - 2000 = "ce_bull_passant.dds" - 2000 = "ce_antelope.dds" - 2000 = "ce_camel.dds" - # Raampa symbols, totemic animals : camel, antelope, lion, hare etc - } - special_selection = { # Hausa - trigger = { - scope:faith.religion = religion:west_african_bori_religion - } - 1000 = "ce_arewa_knot.dds" - 1000 = "ce_hausa_cross.dds" - 1000 = "ce_hausa_knot.dds" - } - special_selection = { # Mandé - trigger = { - scope:faith.religion = religion:west_african_religion - } - 1000 = "ce_kanaga.dds" - 1000 = "ce_african_munun_ti.dds" - 1000 = "ce_african_mende.dds" - 1000 = "ce_african_venus.dds" - 1000 = "ce_african_fu_ti.dds" - 1000 = "ce_african_kara.dds" - 1000 = "ce_african_kile.dds" - 1000 = "ce_african_karaka.dds" - } +# special_selection = { +# trigger = { # Serere +# scope:faith.religion = religion:west_african_roog_religion +# } +# 2000 = "ce_african_jaaniw.dds" +# 2000 = "ce_religion_african_roog_sene.dds" +# 2000 = "ce_african_koh.dds" +# 2000 = "ce_african_hidoox.dds" +# 2000 = "ce_african_ja_ir.dds" +# 2000 = "ce_bull_passant.dds" +# 2000 = "ce_antelope.dds" +# 2000 = "ce_camel.dds" +# # Raampa symbols, totemic animals : camel, antelope, lion, hare etc +# } +# special_selection = { # Hausa +# trigger = { +# scope:faith.religion = religion:west_african_bori_religion +# } +# 1000 = "ce_arewa_knot.dds" +# 1000 = "ce_hausa_cross.dds" +# 1000 = "ce_hausa_knot.dds" +# } +# special_selection = { # Mandé +# trigger = { +# scope:faith.religion = religion:west_african_religion +# } +# 1000 = "ce_kanaga.dds" +# 1000 = "ce_african_munun_ti.dds" +# 1000 = "ce_african_mende.dds" +# 1000 = "ce_african_venus.dds" +# 1000 = "ce_african_fu_ti.dds" +# 1000 = "ce_african_kara.dds" +# 1000 = "ce_african_kile.dds" +# 1000 = "ce_african_karaka.dds" +# } } african_geometrical_charge_list = { 1000 = "ce_african_pattern_dancetty.dds" diff --git a/common/council_tasks/00_court_chaplain_tasks.txt b/common/council_tasks/00_court_chaplain_tasks.txt index 8bafc148..c760726c 100644 --- a/common/council_tasks/00_court_chaplain_tasks.txt +++ b/common/council_tasks/00_court_chaplain_tasks.txt @@ -1508,21 +1508,21 @@ task_fabricate_claim = { } } # Misc Bonuses - if = { # FP3 - limit = { - scope:councillor_liege = { - any_character_struggle = { - is_struggle_type = persian_struggle - is_struggle_phase = struggle_persia_phase_unrest - } - } - } - add = { # +25% of total - value = scope:councillor.court_chaplain_fabricate_claim_base_total - divide = 4 - desc = FABRICATE_CLAIM_ANY_STRUGGLE_BONUS - } - } +# if = { # FP3 +# limit = { +# scope:councillor_liege = { +# any_character_struggle = { +# is_struggle_type = persian_struggle +# is_struggle_phase = struggle_persia_phase_unrest +# } +# } +# } +# add = { # +25% of total +# value = scope:councillor.court_chaplain_fabricate_claim_base_total +# divide = 4 +# desc = FABRICATE_CLAIM_ANY_STRUGGLE_BONUS +# } +# } if = { limit = { scope:councillor_liege = { @@ -1784,63 +1784,63 @@ task_fabricate_claim = { add = 100 } - # Agenda impact - if = { - limit = { - any_character_struggle = { - involvement = involved - is_struggle_type = iberian_struggle - } - } - add = { - value = 0 - if = { - limit = { - any_character_struggle = { - phase_has_catalyst = catalyst_gain_claim_on_title_fp2 - } - has_character_flag = agenda_towards_escalation - } - add = 200 - } - else_if = { - limit = { - any_character_struggle = { - phase_has_catalyst = catalyst_gain_claim_on_title_fp2 - } - } - add = -100 - } - } - } - - if = { - limit = { - any_character_struggle = { - involvement = involved - is_struggle_type = persian_struggle - } - } - add = { - value = 0 - if = { - limit = { - any_character_struggle = { - phase_has_catalyst = catalyst_gain_claim_on_title_fp3 - } - has_trait = fp3_struggle_detractor - } - add = 200 - } - else_if = { - limit = { - any_character_struggle = { - phase_has_catalyst = catalyst_gain_claim_on_title_fp3 - } - } - add = -100 - } - } - } +# # Agenda impact +# if = { +# limit = { +# any_character_struggle = { +# involvement = involved +# is_struggle_type = iberian_struggle +# } +# } +# add = { +# value = 0 +# if = { +# limit = { +# any_character_struggle = { +# phase_has_catalyst = catalyst_gain_claim_on_title_fp2 +# } +# has_character_flag = agenda_towards_escalation +# } +# add = 200 +# } +# else_if = { +# limit = { +# any_character_struggle = { +# phase_has_catalyst = catalyst_gain_claim_on_title_fp2 +# } +# } +# add = -100 +# } +# } +# } +# +# if = { +# limit = { +# any_character_struggle = { +# involvement = involved +# is_struggle_type = persian_struggle +# } +# } +# add = { +# value = 0 +# if = { +# limit = { +# any_character_struggle = { +# phase_has_catalyst = catalyst_gain_claim_on_title_fp3 +# } +# has_trait = fp3_struggle_detractor +# } +# add = 200 +# } +# else_if = { +# limit = { +# any_character_struggle = { +# phase_has_catalyst = catalyst_gain_claim_on_title_fp3 +# } +# } +# add = -100 +# } +# } +# } } } diff --git a/common/council_tasks/00_steward_tasks.txt b/common/council_tasks/00_steward_tasks.txt index 7b5d53a9..2392367f 100644 --- a/common/council_tasks/00_steward_tasks.txt +++ b/common/council_tasks/00_steward_tasks.txt @@ -1477,14 +1477,14 @@ task_promote_culture = { limit = { scope:councillor_liege = { has_character_flag = no_ai_culture_convert - NAND = { # ignore it if in Hostility with escalation - has_character_flag = agenda_towards_escalation - any_character_struggle = { - involvement = involved - is_struggle_type = iberian_struggle - is_struggle_phase = struggle_iberia_phase_hostility - } - } +# NAND = { # ignore it if in Hostility with escalation +# has_character_flag = agenda_towards_escalation +# any_character_struggle = { +# involvement = involved +# is_struggle_type = iberian_struggle +# is_struggle_phase = struggle_iberia_phase_hostility +# } +# } } } multiply = 0 diff --git a/common/culture/cultures/NEOW_central_germanic.txt b/common/culture/cultures/NEOW_central_germanic.txt index 6b83afd5..f212a5c8 100644 --- a/common/culture/cultures/NEOW_central_germanic.txt +++ b/common/culture/cultures/NEOW_central_germanic.txt @@ -480,7 +480,7 @@ swabian = { coa_gfx = { german_group_coa_gfx western_coa_gfx } building_gfx = { western_building_gfx } - clothing_gfx = { dde_hre_clothing_gfx western_clothing_gfx } + clothing_gfx = { swabian_clothing_gfx dde_hre_clothing_gfx western_clothing_gfx } unit_gfx = { western_unit_gfx } house_coa_frame = house_frame_19 house_coa_mask_offset = { 0.0 0.025 } diff --git a/common/customizable_localization/00_artifact_court_custom_loc.txt b/common/customizable_localization/00_artifact_court_custom_loc.txt index 8e84754a..a7f0de8a 100644 --- a/common/customizable_localization/00_artifact_court_custom_loc.txt +++ b/common/customizable_localization/00_artifact_court_custom_loc.txt @@ -533,161 +533,137 @@ RandomSaintName = { # Used for other artifacts text = { trigger = { - OR = { - religion = religion:catholic_religion - faith = faith:orthodox - faith = faith:nestorian - } + NEOW_religion_is_broadly_christian_trigger = yes } localization_key = west_christian_fertility_god_name } text = { trigger = { - OR = { - religion = religion:catholic_religion - faith = faith:orthodox - faith = faith:nestorian - } + NEOW_religion_is_broadly_christian_trigger = yes } localization_key = west_christian_wealth_god_name } text = { trigger = { - OR = { - religion = religion:catholic_religion - faith = faith:orthodox - faith = faith:nestorian - } + NEOW_religion_is_broadly_christian_trigger = yes } localization_key = west_christian_household_god_name } text = { trigger = { - OR = { - religion = religion:catholic_religion - faith = faith:orthodox - faith = faith:nestorian - } + NEOW_religion_is_broadly_christian_trigger = yes } localization_key = west_christian_knowledge_god_name } text = { trigger = { - OR = { - religion = religion:catholic_religion - faith = faith:orthodox - faith = faith:nestorian - } + NEOW_religion_is_broadly_christian_trigger = yes } localization_key = west_christian_war_god_name } text = { trigger = { - OR = { - religion = religion:catholic_religion - faith = faith:orthodox - faith = faith:nestorian - } + NEOW_religion_is_broadly_christian_trigger = yes } localization_key = west_christian_water_god_name } - text = { - trigger = { - OR = { - faith = faith:coptic - faith = faith:armenian_apostolic - } - } - localization_key = east_christian_fertility_god_name - } - - text = { - trigger = { - OR = { - faith = faith:coptic - faith = faith:armenian_apostolic - } - } - localization_key = east_christian_wealth_god_name - } - - text = { - trigger = { - OR = { - faith = faith:coptic - faith = faith:armenian_apostolic - } - } - localization_key = east_christian_household_god_name - } - - text = { - trigger = { - OR = { - faith = faith:coptic - faith = faith:armenian_apostolic - } - } - localization_key = east_christian_knowledge_god_name - } - - text = { - trigger = { - OR = { - faith = faith:coptic - faith = faith:armenian_apostolic - } - } - localization_key = east_christian_war_god_name - } - - text = { - trigger = { - faith = faith:insular_celtic - } - localization_key = insular_celtic_fertility_god_name - } - - text = { - trigger = { - faith = faith:insular_celtic - } - localization_key = insular_celtic_wealth_god_name - } - - text = { - trigger = { - faith = faith:insular_celtic - } - localization_key = insular_celtic_household_god_name - } - - text = { - trigger = { - faith = faith:insular_celtic - } - localization_key = insular_celtic_knowledge_god_name - } - - text = { - trigger = { - faith = faith:insular_celtic - } - localization_key = insular_celtic_war_god_name - } - - text = { - trigger = { - faith = faith:insular_celtic - } - localization_key = insular_celtic_water_god_name - } +# text = { +# trigger = { +# OR = { +# faith = faith:coptic +# faith = faith:armenian_apostolic +# } +# } +# localization_key = east_christian_fertility_god_name +# } +# +# text = { +# trigger = { +# OR = { +# faith = faith:coptic +# faith = faith:armenian_apostolic +# } +# } +# localization_key = east_christian_wealth_god_name +# } +# +# text = { +# trigger = { +# OR = { +# faith = faith:coptic +# faith = faith:armenian_apostolic +# } +# } +# localization_key = east_christian_household_god_name +# } +# +# text = { +# trigger = { +# OR = { +# faith = faith:coptic +# faith = faith:armenian_apostolic +# } +# } +# localization_key = east_christian_knowledge_god_name +# } +# +# text = { +# trigger = { +# OR = { +# faith = faith:coptic +# faith = faith:armenian_apostolic +# } +# } +# localization_key = east_christian_war_god_name +# } +# +# text = { +# trigger = { +# faith = faith:insular_celtic +# } +# localization_key = insular_celtic_fertility_god_name +# } +# +# text = { +# trigger = { +# faith = faith:insular_celtic +# } +# localization_key = insular_celtic_wealth_god_name +# } +# +# text = { +# trigger = { +# faith = faith:insular_celtic +# } +# localization_key = insular_celtic_household_god_name +# } +# +# text = { +# trigger = { +# faith = faith:insular_celtic +# } +# localization_key = insular_celtic_knowledge_god_name +# } +# +# text = { +# trigger = { +# faith = faith:insular_celtic +# } +# localization_key = insular_celtic_war_god_name +# } +# +# text = { +# trigger = { +# faith = faith:insular_celtic +# } +# localization_key = insular_celtic_water_god_name +# } } RandomSaintNamePossessive = { @@ -697,161 +673,134 @@ RandomSaintNamePossessive = { text = { trigger = { - OR = { - religion = religion:catholic_religion - faith = faith:orthodox - faith = faith:nestorian - } + NEOW_religion_is_broadly_christian_trigger = yes } localization_key = west_christian_fertility_god_name_possessive } text = { trigger = { - OR = { - religion = religion:catholic_religion - faith = faith:orthodox - faith = faith:nestorian - } + NEOW_religion_is_broadly_christian_trigger = yes } localization_key = west_christian_wealth_god_name_possessive } text = { trigger = { - OR = { - religion = religion:catholic_religion - faith = faith:orthodox - faith = faith:nestorian - } + NEOW_religion_is_broadly_christian_trigger = yes } localization_key = west_christian_household_god_name_possessive } text = { trigger = { - OR = { - religion = religion:catholic_religion - faith = faith:orthodox - faith = faith:nestorian - } + NEOW_religion_is_broadly_christian_trigger = yes } localization_key = west_christian_knowledge_god_name_possessive } text = { trigger = { - OR = { - religion = religion:catholic_religion - faith = faith:orthodox - faith = faith:nestorian - } + NEOW_religion_is_broadly_christian_trigger = yes } localization_key = west_christian_war_god_name_possessive } text = { trigger = { - OR = { - religion = religion:catholic_religion - faith = faith:orthodox - faith = faith:nestorian - } + NEOW_religion_is_broadly_christian_trigger = yes } localization_key = west_christian_water_god_name_possessive } text = { trigger = { - OR = { - faith = faith:coptic - faith = faith:armenian_apostolic - } + NEOW_religion_is_broadly_christian_trigger = yes } localization_key = east_christian_fertility_god_name_possessive } - text = { - trigger = { - OR = { - faith = faith:coptic - faith = faith:armenian_apostolic - } - } - localization_key = east_christian_wealth_god_name_possessive - } - - text = { - trigger = { - OR = { - faith = faith:coptic - faith = faith:armenian_apostolic - } - } - localization_key = east_christian_household_god_name_possessive - } - - text = { - trigger = { - OR = { - faith = faith:coptic - faith = faith:armenian_apostolic - } - } - localization_key = east_christian_knowledge_god_name_possessive - } - - text = { - trigger = { - OR = { - faith = faith:coptic - faith = faith:armenian_apostolic - } - } - localization_key = east_christian_war_god_name_possessive - } - - text = { - trigger = { - faith = faith:insular_celtic - } - localization_key = insular_celtic_fertility_god_name_possessive - } - - text = { - trigger = { - faith = faith:insular_celtic - } - localization_key = insular_celtic_wealth_god_name_possessive - } - - text = { - trigger = { - faith = faith:insular_celtic - } - localization_key = insular_celtic_household_god_name_possessive - } - - text = { - trigger = { - faith = faith:insular_celtic - } - localization_key = insular_celtic_knowledge_god_name_possessive - } - - text = { - trigger = { - faith = faith:insular_celtic - } - localization_key = insular_celtic_war_god_name_possessive - } - - text = { - trigger = { - faith = faith:insular_celtic - } - localization_key = insular_celtic_water_god_name_possessive - } +# text = { +# trigger = { +# OR = { +# faith = faith:coptic +# faith = faith:armenian_apostolic +# } +# } +# localization_key = east_christian_wealth_god_name_possessive +# } +# +# text = { +# trigger = { +# OR = { +# faith = faith:coptic +# faith = faith:armenian_apostolic +# } +# } +# localization_key = east_christian_household_god_name_possessive +# } +# +# text = { +# trigger = { +# OR = { +# faith = faith:coptic +# faith = faith:armenian_apostolic +# } +# } +# localization_key = east_christian_knowledge_god_name_possessive +# } +# +# text = { +# trigger = { +# OR = { +# faith = faith:coptic +# faith = faith:armenian_apostolic +# } +# } +# localization_key = east_christian_war_god_name_possessive +# } +# +# text = { +# trigger = { +# faith = faith:insular_celtic +# } +# localization_key = insular_celtic_fertility_god_name_possessive +# } +# +# text = { +# trigger = { +# faith = faith:insular_celtic +# } +# localization_key = insular_celtic_wealth_god_name_possessive +# } +# +# text = { +# trigger = { +# faith = faith:insular_celtic +# } +# localization_key = insular_celtic_household_god_name_possessive +# } +# +# text = { +# trigger = { +# faith = faith:insular_celtic +# } +# localization_key = insular_celtic_knowledge_god_name_possessive +# } +# +# text = { +# trigger = { +# faith = faith:insular_celtic +# } +# localization_key = insular_celtic_war_god_name_possessive +# } +# +# text = { +# trigger = { +# faith = faith:insular_celtic +# } +# localization_key = insular_celtic_water_god_name_possessive +# } } PredeterminedSaintName = { # Used for icons and any future artifacts that uses the decoration_saint artifact feature diff --git a/common/decisions/10_religious_decisions.txt b/common/decisions/10_religious_decisions.txt index 25e533ff..372b57ec 100644 --- a/common/decisions/10_religious_decisions.txt +++ b/common/decisions/10_religious_decisions.txt @@ -73,23 +73,23 @@ appoint_a_righteous_caliph_decision = { # Appoint a righteous caliph # Must be independent. top_liege = this # Not during the Persian struggle - trigger_if = { # Done this way to hide it for Spanish muslims and the like - limit = { - any_character_struggle = { - involvement = involved - is_struggle_type = persian_struggle - } - } - custom_tooltip = { - text = must_not_be_persia_involved_tt - NOT = { - any_character_struggle = { - involvement = involved - is_struggle_type = persian_struggle - } - } - } - } +# trigger_if = { # Done this way to hide it for Spanish muslims and the like +# limit = { +# any_character_struggle = { +# involvement = involved +# is_struggle_type = persian_struggle +# } +# } +# custom_tooltip = { +# text = must_not_be_persia_involved_tt +# NOT = { +# any_character_struggle = { +# involvement = involved +# is_struggle_type = persian_struggle +# } +# } +# } +# } # Should have a decent piety level. piety_level >= high_piety_level # Must have a decent proportion of sub-realm counties of the faith. diff --git a/common/decisions/dlc_decisions/03_fp2_decisions.txt b/common/decisions/dlc_decisions/03_fp2_decisions.txt index a703bfdd..763612f6 100644 --- a/common/decisions/dlc_decisions/03_fp2_decisions.txt +++ b/common/decisions/dlc_decisions/03_fp2_decisions.txt @@ -6,657 +6,897 @@ ############################################# ### [ROOT.Char.GetPrimaryTitle.GetAdjectiveNoTooltip] Dominance ### -struggle_iberia_ending_hostility_decision = { - decision_group_type = major - title = struggle_iberia_ending_hostility_decision - picture = { - reference = "gfx/interface/illustrations/decisions/fp2_decision_struggle_hostility.dds" - } - extra_picture = "gfx/interface/illustrations/struggle_decision_buttons/fp2_decision_hostility.dds" - desc = struggle_iberia_ending_hostility_decision_desc - selection_tooltip = struggle_iberia_ending_hostility_decision_tooltip - confirm_click_sound = "event:/DLC/FP2/SFX/UI/fp2_struggle_ending_decision_confirm" - is_invisible = yes - sort_order = 80 - cooldown = { days = 1 } - - is_shown = { - is_landless_adventurer = no - has_fp2_dlc_trigger = yes - } - - is_valid = { - top_liege = this - - OR = { - custom_tooltip = { - text = struggle_iberia_ending_hostility_decision_correct_phase_tt - struggle:iberian_struggle = { - is_struggle_phase = struggle_iberia_phase_hostility - } - } - ## Completely control Hispania for 5 years - AND = { - completely_controls_region = world_europe_west_iberia - primary_title = { - tier >= tier_kingdom - title_held_years >= 5 - } - } - } - - # Hold and completely control two de jure kingdoms of Hispania - OR = { - custom_tooltip = { # - text = struggle_iberia_ending_hostility_decision_kingdom_tt - any_held_title = { # 1st kingdom - title_tier = kingdom - de_jure_liege = title:e_spain - root = { completely_controls = prev } - save_temporary_scope_as = spanish_kingdom - } - any_held_title = { # 2nd kingdom - title_tier = kingdom - de_jure_liege = title:e_spain - trigger_if = { - limit = { exists = scope:spanish_kingdom } - this != scope:spanish_kingdom - } - root = { completely_controls = prev } - save_temporary_scope_as = spanish_kingdom_2 - } - } - custom_tooltip = { - text = struggle_iberia_ending_hostility_decision_united_spanish_throne_tt - AND = { - exists = global_var:unite_the_spanish_thrones_decision_title - primary_title = global_var:unite_the_spanish_thrones_decision_title - } - } - } - - - # All your capital kingdom's de jure counties are of your culture and faith - trigger_if = { - limit = { - exists = global_var:unite_the_spanish_thrones_decision_title - primary_title = global_var:unite_the_spanish_thrones_decision_title - } - custom_tooltip = { - text = struggle_iberia_ending_hostility_decision_county_light_tt - capital_county.de_jure_liege.de_jure_liege = { - any_de_jure_county = { - percent >= 0.75 - culture = root.culture - faith = root.faith - } - } - } - } - trigger_else = { - custom_tooltip = { - text = struggle_iberia_ending_hostility_decision_county_tt - capital_county.de_jure_liege.de_jure_liege = { - any_de_jure_county = { - count = all - culture = root.culture - faith = root.faith - } - } - } - } - - # No other realm controls more than 20% of the Iberia region - custom_tooltip = { - text = struggle_iberia_ending_hostility_decision_region_tt - NOT = { - struggle:iberian_struggle = { - any_involved_ruler = { - this != root - top_liege = this - primary_title ?= { is_mercenary_company = no } - save_temporary_scope_as = iberian_realm - any_county_in_region = { - region = world_europe_west_iberia - percent > fp2_struggle_hostility_region_percent_decimal_value - holder.top_liege = scope:iberian_realm - } - } - } - } - } - - # Completely control at least 2 of the important Iberian duchies - calc_true_if = { - amount >= 2 - completely_controls = title:d_galicia - completely_controls = title:d_toledo - completely_controls = title:d_cordoba - completely_controls = title:d_valencia - completely_controls = title:d_barcelona - } - } - - effect = { - if = { - limit = { has_dlc_feature = legends } - legend_seed_struggle_ending_effect = { - ENDER = root - STRUGGLE = iberian_struggle - } - } - if = { - limit = { has_ach_dlc_trigger = yes } - add_character_flag = ach_ended_struggle - } - - ##### Major Effects ##### - show_as_tooltip = { - dynasty = { add_dynasty_prestige = 10000 } - fp2_struggle_hostility_ender_effect = yes - } - # Hispania is available! - custom_tooltip = fp2_struggle_can_create_empire_of_hispania_tt - custom_description_no_bullet = { text = fp2_struggle_house_tt } - # Keep the Struggle Clash for your House - custom_tooltip = fp2_struggle_can_keep_using_struggle_clash_tt - # Boost to culture and faith conversion - custom_tooltip = fp2_struggle_hostility_conversion_tt - # Damage opinion with other culture/faiths - custom_tooltip = fp2_struggle_hostility_opinion_tt - custom_tooltip = fp2_struggle_hostility_opinion_negative_tt - # Choose Holy War boost, Culture War boost, or both - custom_description_no_bullet = { text = fp2_struggle_hostility_list_tt } - #custom_tooltip = fp2_struggle_hostility_holy_cb_joint_tt - #custom_tooltip = fp2_struggle_hostility_culture_cb_tt - - - - show_as_tooltip = { - stress_impact = { - humble = medium_stress_impact_gain - cynical = medium_stress_impact_gain - } - } - - - # Achievements - add_achievement_global_variable_effect = { - VARIABLE = fp2_iberian_hostilities_achievement_unlocked - VALUE = yes - } - fp2_holiday_in_iberia_check = yes - - # Trigger a player facing event as a coda - trigger_event = fp2_struggle.0900 - } - - cost = {} - - ai_check_interval_by_tier = { - barony = 0 - county = 0 - duchy = 0 - kingdom = 120 - empire = 120 - hegemony = 120 - } - - ai_potential = { always = yes } - - ai_will_do = { base = 100 } -} - -############################################# -# Compromise Ending # -# by Joe Parkin # -############################################# - -### Status Quo ### -struggle_iberia_ending_compromise_decision = { - decision_group_type = major - title = struggle_iberia_ending_compromise_decision - picture = { - reference = "gfx/interface/illustrations/decisions/fp2_decision_struggle_compromise.dds" - } - extra_picture = "gfx/interface/illustrations/struggle_decision_buttons/fp2_decision_compromise.dds" - desc = struggle_iberia_ending_compromise_decision_desc - selection_tooltip = struggle_iberia_ending_compromise_decision_tooltip - confirm_click_sound = "event:/DLC/FP2/SFX/UI/fp2_struggle_ending_decision_confirm" - is_invisible = yes - cooldown = { days = 1 } - - sort_order = 80 - - is_shown = { - is_landless_adventurer = no - has_fp2_dlc_trigger = yes - } - - is_valid = { - top_liege = this - - custom_tooltip = { - text = struggle_iberia_ending_compromise_decision_correct_phase_tt - struggle:iberian_struggle = { - is_struggle_phase = struggle_iberia_phase_compromise - } - } - - OR = { - # Exalted among Men or higher - prestige_level >= very_high_prestige_level - # Hold and completely control a de jure kingdom of Hispania - custom_tooltip = { - text = struggle_iberia_ending_compromise_decision_kingdom_tt - fp2_struggle_ending_hold_de_jure_kingdom_trigger = yes - } - } - - # Control less than 50% of Iberia - custom_tooltip = { - text = struggle_iberia_ending_compromise_decision_region_tt - fp2_struggle_ending_percent_iberia_trigger = yes - } - - # No one else controls more than 50% of Iberia - custom_tooltip = { - text = struggle_iberia_ending_compromise_decision_other_region_tt - fp2_struggle_ending_other_percent_iberia_trigger = yes - } - - # No Independent Involved rulers are at war with each other - custom_tooltip = { - text = struggle_iberia_ending_compromise_truce_tt - NOT = { - struggle:iberian_struggle = { - any_involved_ruler = { - top_liege = this - is_landless_adventurer = no - primary_title = { is_mercenary_company = no } - any_primary_war_enemy = { - top_liege = this - is_landless_adventurer = no - any_character_struggle = { - involvement = involved - is_struggle_type = iberian_struggle - } - primary_title = { is_mercenary_company = no } - } - } - } - } - } - - OR = { - # Every other involved independent ruler in Iberia has at least 60 opinion of you or is strong hooked - custom_tooltip = { - text = struggle_iberia_ending_compromise_decision_opinion_tt - struggle:iberian_struggle = { - NOT = { - any_involved_ruler = { - this != root - top_liege = this - primary_title = { is_holy_order = no } - primary_title = { is_mercenary_company = no } - is_landless_adventurer = no - save_temporary_scope_as = this_character - NOR = { - root = { has_strong_hook = scope:this_character } - opinion = { - target = root - value >= struggle_iberia_ending_compromise_decision_opinion_value - } - } - } - } - } - } - # No other independent ruler in Iberia is a king or above - custom_tooltip = { - text = struggle_iberia_ending_compromise_decision_independent_tt - struggle:iberian_struggle = { - NOT = { - any_involved_ruler = { - this != root - top_liege = this - primary_title = { is_mercenary_company = no } - is_landless_adventurer = no - primary_title.tier >= tier_kingdom - } - } - } - } - # More than 25% of Iberia is controlled by Interloper or Uninvolved rulers - custom_tooltip = { - text = struggle_iberia_ending_compromise_decision_interloper_tt - any_county_in_region = { - region = world_europe_west_iberia - percent > fp2_struggle_compromise_uninvolved_percent_decimal_value - holder.top_liege = { fp2_character_interloper_in_struggle_trigger = yes } - } - } - } - - # Completely control any of the important Iberian duchies - calc_true_if = { - amount >= 1 - completely_controls = title:d_galicia - completely_controls = title:d_toledo - completely_controls = title:d_cordoba - completely_controls = title:d_valencia - completely_controls = title:d_barcelona - } - } - - effect = { - if = { - limit = { has_dlc_feature = legends } - legend_seed_struggle_ending_effect = { - ENDER = root - STRUGGLE = iberian_struggle - } - } - if = { - limit = { has_ach_dlc_trigger = yes } - add_character_flag = ach_ended_struggle - } - ##### Major Effects ##### - # Personal effects for ruler - show_as_tooltip = { fp2_struggle_compromise_ender_effect = yes } - # Independent/Split De Jure Duchies will become De Jure Kingdoms - if = { - limit = { - title:e_spain = { - any_in_de_jure_hierarchy = { fp2_struggle_ending_compromise_independent_duchy_trigger = yes } - } - } - custom_tooltip = fp2_struggle_compromise_create_new_kingdoms_tt - } - # Other Tooltips! - fp2_struggle_compromise_tooltip_effect = yes - - ##### Minor Effects ##### - # Self-sufficiency/defensive modifiers for each independent realm - show_as_tooltip = { fp2_struggle_compromise_modifier_rewards_effect = yes } - - show_as_tooltip = { - stress_impact = { - arrogant = medium_stress_impact_gain - } - } - - # Achievements - add_achievement_global_variable_effect = { - VARIABLE = fp2_iberian_compromise_achievement_unlocked - VALUE = yes - } - fp2_holiday_in_iberia_check = yes - - # Trigger a player facing event as a coda - trigger_event = fp2_struggle.0901 - } - - cost = {} - - ai_check_interval_by_tier = { - barony = 0 - county = 0 - duchy = 0 - kingdom = 120 - empire = 120 - hegemony = 120 - } - - ai_potential = { always = yes } - - ai_will_do = { base = 100 } -} - -############################################# -# Conciliation Ending # -# by Joe Parkin # -############################################# - -### Détente ### -struggle_iberia_ending_conciliation_decision = { - decision_group_type = major - title = struggle_iberia_ending_conciliation_decision - picture = { - reference = "gfx/interface/illustrations/decisions/fp2_decision_struggle_conciliation.dds" - } - extra_picture = "gfx/interface/illustrations/struggle_decision_buttons/fp2_decision_conciliation.dds" - desc = struggle_iberia_ending_conciliation_decision_desc - selection_tooltip = struggle_iberia_ending_conciliation_decision_tooltip - confirm_click_sound = "event:/DLC/FP2/SFX/UI/fp2_struggle_ending_decision_confirm" - is_invisible = yes - cooldown = { days = 1 } - - sort_order = 80 - - is_shown = { - is_landless_adventurer = no - has_fp2_dlc_trigger = yes - } - - is_valid = { - top_liege = this - - custom_tooltip = { - text = struggle_iberia_ending_conciliation_decision_correct_phase_tt - struggle:iberian_struggle = { - is_struggle_phase = struggle_iberia_phase_conciliation - } - } - - prestige_level >= very_high_prestige_level # Exalted among Men or higher - - # Hold and completely control a de jure kingdom of Hispania - custom_tooltip = { - text = struggle_iberia_ending_compromise_decision_kingdom_tt - fp2_struggle_ending_hold_de_jure_kingdom_trigger = yes - } - - # Every other independent involved ruler in Iberia is allied to you - custom_tooltip = { - text = struggle_iberia_ending_conciliation_decision_alliance_tt - struggle:iberian_struggle = { - NOT = { - any_involved_ruler = { - top_liege = this - is_landless_adventurer = no - primary_title = { is_mercenary_company = no } - primary_title = { is_holy_order = no } - NOR = { - this = root - is_allied_to = root - } - } - } - } - } - - # Control less than 50% of Iberia - custom_tooltip = { - text = struggle_iberia_ending_compromise_decision_region_tt - fp2_struggle_ending_percent_iberia_trigger = yes - } - } - - effect = { - if = { - limit = { has_dlc_feature = legends } - legend_seed_struggle_ending_effect = { - ENDER = root - STRUGGLE = iberian_struggle - } - } - if = { - limit = { has_ach_dlc_trigger = yes } - add_character_flag = ach_ended_struggle - } - ##### Major Effects ##### - show_as_tooltip = { - fp2_struggle_conciliation_ender_effect = yes - fp2_struggle_conciliation_tooltip_effect = yes - fp2_struggle_conciliation_modifier_rewards_effect = yes - } - - show_as_tooltip = { - stress_impact = { - arrogant = medium_stress_impact_gain - zealous = medium_stress_impact_gain - } - } - - # Achievements - add_achievement_global_variable_effect = { - VARIABLE = fp2_iberian_conciliation_achievement_unlocked - VALUE = yes - } - fp2_holiday_in_iberia_check = yes - - - # Trigger a player facing event as a coda - trigger_event = fp2_struggle.0902 - } - - cost = {} - - ai_check_interval_by_tier = { - barony = 0 - county = 0 - duchy = 0 - kingdom = 120 - empire = 120 - hegemony = 120 - } - - ai_potential = { always = yes } - - ai_will_do = { base = 100 } -} - -#################################### -## Secure the Mediterranean -## By Hugo Cortell -#################################### -#### Secure The Mediterranean ### -#secure_mediterranean_decision = { -# title = fp2_secure_mediterranean.t -# picture = { -# reference = "gfx/interface/illustrations/event_scenes/fp1_ocean.dds" -# } -# desc = fp2_secure_mediterranean.desc +#struggle_iberia_ending_hostility_decision = { # decision_group_type = major -# -# selection_tooltip = fp2_secure_mediterranean.tip -# sort_order = 50 +# title = struggle_iberia_ending_hostility_decision +# picture = { +# reference = "gfx/interface/illustrations/decisions/fp2_decision_struggle_hostility.dds" +# } +# extra_picture = "gfx/interface/illustrations/struggle_decision_buttons/fp2_decision_hostility.dds" +# desc = struggle_iberia_ending_hostility_decision_desc +# selection_tooltip = struggle_iberia_ending_hostility_decision_tooltip +# confirm_click_sound = "event:/DLC/FP2/SFX/UI/fp2_struggle_ending_decision_confirm" +# is_invisible = yes +# sort_order = 80 +# cooldown = { days = 1 } # # is_shown = { -# # DLC check +# is_landless_adventurer = no # has_fp2_dlc_trigger = yes -# # Standard checks -# is_playable_character = yes -# exists = dynasty -# NOT = { -# is_target_in_global_variable_list = { -# name = unavailable_unique_decisions -# target = flag:flag_secured_the_mediterranean -# } -# } -# -# OR = { -# completely_controls = title:d_sardinia -# completely_controls = title:d_sicily -# AND = { -# completely_controls = title:d_mallorca -# completely_controls = title:d_corsica -# } -# } # } # # is_valid = { -# completely_controls = title:d_mallorca -# completely_controls = title:d_sardinia -# completely_controls = title:d_corsica -# completely_controls = title:d_sicily -# } +# top_liege = this # -# is_valid_showing_failures_only = { -# is_landed = yes -# } -# -# effect = { -# add_to_global_variable_list = { -# name = unavailable_unique_decisions -# target = flag:flag_secured_the_mediterranean -# } -# -# # LOC -# root = { -# save_scope_as = mediterranean_conqueror -# house = { save_scope_as = mediterranean_house } -# } -# title:d_mallorca = { save_scope_as = mallorca } -# title:d_sardinia = { save_scope_as = sardinas } -# title:d_sicily = { save_scope_as = sicily } -# title:k_mediterranean_sea = { save_scope_as = mediterranean_title } -# -# every_player = { -# limit = { -# this != ROOT -# any_held_title = { title_province = { geographical_region = dlc_fp2_mediterranean_shoreline } } +# OR = { +# custom_tooltip = { +# text = struggle_iberia_ending_hostility_decision_correct_phase_tt +# struggle:iberian_struggle = { +# is_struggle_phase = struggle_iberia_phase_hostility +# } # } -# send_interface_message = { -# type = event_generic_bad_with_text -# title = secure_mediterranean_decision.involved_notif -# desc = secure_mediterranean_decision.involved_notif_desc # Players who get this: "why do I hear boss music?" (It is meant to sound vaguely threatening) -# left_icon = scope:mediterranean_conqueror +# ## Completely control Hispania for 5 years +# AND = { +# completely_controls_region = world_europe_west_iberia +# primary_title = { +# tier >= tier_kingdom +# title_held_years >= 5 +# } +# } +# } # -# show_as_tooltip = { -# scope:mediterranean_conqueror = { -# house = { -# add_house_modifier = { -# modifier = fp2_controls_the_mediterranean_house_modifier -# years = 100 -# } -# } -# dynasty = { add_dynasty_prestige = major_prestige_gain } +# # Hold and completely control two de jure kingdoms of Hispania +# OR = { +# custom_tooltip = { # +# text = struggle_iberia_ending_hostility_decision_kingdom_tt +# any_held_title = { # 1st kingdom +# title_tier = kingdom +# de_jure_liege = title:e_spain +# root = { completely_controls = prev } +# save_temporary_scope_as = spanish_kingdom +# } +# any_held_title = { # 2nd kingdom +# title_tier = kingdom +# de_jure_liege = title:e_spain +# trigger_if = { +# limit = { exists = scope:spanish_kingdom } +# this != scope:spanish_kingdom +# } +# root = { completely_controls = prev } +# save_temporary_scope_as = spanish_kingdom_2 +# } +# } +# custom_tooltip = { +# text = struggle_iberia_ending_hostility_decision_united_spanish_throne_tt +# AND = { +# exists = global_var:unite_the_spanish_thrones_decision_title +# primary_title = global_var:unite_the_spanish_thrones_decision_title +# } +# } +# } +# +# +# # All your capital kingdom's de jure counties are of your culture and faith +# trigger_if = { +# limit = { +# exists = global_var:unite_the_spanish_thrones_decision_title +# primary_title = global_var:unite_the_spanish_thrones_decision_title +# } +# custom_tooltip = { +# text = struggle_iberia_ending_hostility_decision_county_light_tt +# capital_county.de_jure_liege.de_jure_liege = { +# any_de_jure_county = { +# percent >= 0.75 +# culture = root.culture +# faith = root.faith +# } +# } +# } +# } +# trigger_else = { +# custom_tooltip = { +# text = struggle_iberia_ending_hostility_decision_county_tt +# capital_county.de_jure_liege.de_jure_liege = { +# any_de_jure_county = { +# count = all +# culture = root.culture +# faith = root.faith # } # } # } # } # -# house = { -# add_house_modifier = { -# modifier = fp2_controls_the_mediterranean_house_modifier -# years = 100 +# # No other realm controls more than 20% of the Iberia region +# custom_tooltip = { +# text = struggle_iberia_ending_hostility_decision_region_tt +# NOT = { +# struggle:iberian_struggle = { +# any_involved_ruler = { +# this != root +# top_liege = this +# primary_title ?= { is_mercenary_company = no } +# save_temporary_scope_as = iberian_realm +# any_county_in_region = { +# region = world_europe_west_iberia +# percent > fp2_struggle_hostility_region_percent_decimal_value +# holder.top_liege = scope:iberian_realm +# } +# } +# } # } # } -# dynasty = { add_dynasty_prestige = major_prestige_gain } # You used to get +25% prestiege, but that caused UI issues -# custom_tooltip = secure_mediterranean_decision.a # -# create_title_and_vassal_change = { -# type = created -# save_scope_as = title_change -# add_claim_on_loss = yes +# # Completely control at least 2 of the important Iberian duchies +# calc_true_if = { +# amount >= 2 +# completely_controls = title:d_galicia +# completely_controls = title:d_toledo +# completely_controls = title:d_cordoba +# completely_controls = title:d_valencia +# completely_controls = title:d_barcelona # } -# title:k_mediterranean_sea = { -# change_title_holder = { -# holder = root -# change = scope:title_change +# } +# +# effect = { +# if = { +# limit = { has_dlc_feature = legends } +# legend_seed_struggle_ending_effect = { +# ENDER = root +# STRUGGLE = iberian_struggle +# } +# } +# if = { +# limit = { has_ach_dlc_trigger = yes } +# add_character_flag = ach_ended_struggle +# } +# +# ##### Major Effects ##### +# show_as_tooltip = { +# dynasty = { add_dynasty_prestige = 10000 } +# fp2_struggle_hostility_ender_effect = yes +# } +# # Hispania is available! +# custom_tooltip = fp2_struggle_can_create_empire_of_hispania_tt +# custom_description_no_bullet = { text = fp2_struggle_house_tt } +# # Keep the Struggle Clash for your House +# custom_tooltip = fp2_struggle_can_keep_using_struggle_clash_tt +# # Boost to culture and faith conversion +# custom_tooltip = fp2_struggle_hostility_conversion_tt +# # Damage opinion with other culture/faiths +# custom_tooltip = fp2_struggle_hostility_opinion_tt +# custom_tooltip = fp2_struggle_hostility_opinion_negative_tt +# # Choose Holy War boost, Culture War boost, or both +# custom_description_no_bullet = { text = fp2_struggle_hostility_list_tt } +# #custom_tooltip = fp2_struggle_hostility_holy_cb_joint_tt +# #custom_tooltip = fp2_struggle_hostility_culture_cb_tt +# +# +# +# show_as_tooltip = { +# stress_impact = { +# humble = medium_stress_impact_gain +# cynical = medium_stress_impact_gain +# } +# } +# +# +# # Achievements +# add_achievement_global_variable_effect = { +# VARIABLE = fp2_iberian_hostilities_achievement_unlocked +# VALUE = yes +# } +# fp2_holiday_in_iberia_check = yes +# +# # Trigger a player facing event as a coda +# trigger_event = fp2_struggle.0900 +# } +# +# cost = {} +# +# ai_check_interval_by_tier = { +# barony = 0 +# county = 0 +# duchy = 0 +# kingdom = 120 +# empire = 120 +# hegemony = 120 +# } +# +# ai_potential = { always = yes } +# +# ai_will_do = { base = 100 } +#} + +############################################## +## Compromise Ending # +## by Joe Parkin # +############################################## +# +#### Status Quo ### +#struggle_iberia_ending_compromise_decision = { +# decision_group_type = major +# title = struggle_iberia_ending_compromise_decision +# picture = { +# reference = "gfx/interface/illustrations/decisions/fp2_decision_struggle_compromise.dds" +# } +# extra_picture = "gfx/interface/illustrations/struggle_decision_buttons/fp2_decision_compromise.dds" +# desc = struggle_iberia_ending_compromise_decision_desc +# selection_tooltip = struggle_iberia_ending_compromise_decision_tooltip +# confirm_click_sound = "event:/DLC/FP2/SFX/UI/fp2_struggle_ending_decision_confirm" +# is_invisible = yes +# cooldown = { days = 1 } +# +# sort_order = 80 +# +# is_shown = { +# is_landless_adventurer = no +# has_fp2_dlc_trigger = yes +# } +# +# is_valid = { +# top_liege = this +# +# custom_tooltip = { +# text = struggle_iberia_ending_compromise_decision_correct_phase_tt +# struggle:iberian_struggle = { +# is_struggle_phase = struggle_iberia_phase_compromise +# } +# } +# +# OR = { +# # Exalted among Men or higher +# prestige_level >= very_high_prestige_level +# # Hold and completely control a de jure kingdom of Hispania +# custom_tooltip = { +# text = struggle_iberia_ending_compromise_decision_kingdom_tt +# fp2_struggle_ending_hold_de_jure_kingdom_trigger = yes +# } +# } +# +# # Control less than 50% of Iberia +# custom_tooltip = { +# text = struggle_iberia_ending_compromise_decision_region_tt +# fp2_struggle_ending_percent_iberia_trigger = yes +# } +# +# # No one else controls more than 50% of Iberia +# custom_tooltip = { +# text = struggle_iberia_ending_compromise_decision_other_region_tt +# fp2_struggle_ending_other_percent_iberia_trigger = yes +# } +# +# # No Independent Involved rulers are at war with each other +# custom_tooltip = { +# text = struggle_iberia_ending_compromise_truce_tt +# NOT = { +# struggle:iberian_struggle = { +# any_involved_ruler = { +# top_liege = this +# is_landless_adventurer = no +# primary_title = { is_mercenary_company = no } +# any_primary_war_enemy = { +# top_liege = this +# is_landless_adventurer = no +# any_character_struggle = { +# involvement = involved +# is_struggle_type = iberian_struggle +# } +# primary_title = { is_mercenary_company = no } +# } +# } +# } +# } +# } +# +# OR = { +# # Every other involved independent ruler in Iberia has at least 60 opinion of you or is strong hooked +# custom_tooltip = { +# text = struggle_iberia_ending_compromise_decision_opinion_tt +# struggle:iberian_struggle = { +# NOT = { +# any_involved_ruler = { +# this != root +# top_liege = this +# primary_title = { is_holy_order = no } +# primary_title = { is_mercenary_company = no } +# is_landless_adventurer = no +# save_temporary_scope_as = this_character +# NOR = { +# root = { has_strong_hook = scope:this_character } +# opinion = { +# target = root +# value >= struggle_iberia_ending_compromise_decision_opinion_value +# } +# } +# } +# } +# } +# } +# # No other independent ruler in Iberia is a king or above +# custom_tooltip = { +# text = struggle_iberia_ending_compromise_decision_independent_tt +# struggle:iberian_struggle = { +# NOT = { +# any_involved_ruler = { +# this != root +# top_liege = this +# primary_title = { is_mercenary_company = no } +# is_landless_adventurer = no +# primary_title.tier >= tier_kingdom +# } +# } +# } +# } +# # More than 25% of Iberia is controlled by Interloper or Uninvolved rulers +# custom_tooltip = { +# text = struggle_iberia_ending_compromise_decision_interloper_tt +# any_county_in_region = { +# region = world_europe_west_iberia +# percent > fp2_struggle_compromise_uninvolved_percent_decimal_value +# holder.top_liege = { fp2_character_interloper_in_struggle_trigger = yes } +# } +# } +# } +# +# # Completely control any of the important Iberian duchies +# calc_true_if = { +# amount >= 1 +# completely_controls = title:d_galicia +# completely_controls = title:d_toledo +# completely_controls = title:d_cordoba +# completely_controls = title:d_valencia +# completely_controls = title:d_barcelona +# } +# } +# +# effect = { +# if = { +# limit = { has_dlc_feature = legends } +# legend_seed_struggle_ending_effect = { +# ENDER = root +# STRUGGLE = iberian_struggle +# } +# } +# if = { +# limit = { has_ach_dlc_trigger = yes } +# add_character_flag = ach_ended_struggle +# } +# ##### Major Effects ##### +# # Personal effects for ruler +# show_as_tooltip = { fp2_struggle_compromise_ender_effect = yes } +# # Independent/Split De Jure Duchies will become De Jure Kingdoms +# if = { +# limit = { +# title:e_spain = { +# any_in_de_jure_hierarchy = { fp2_struggle_ending_compromise_independent_duchy_trigger = yes } +# } +# } +# custom_tooltip = fp2_struggle_compromise_create_new_kingdoms_tt +# } +# # Other Tooltips! +# fp2_struggle_compromise_tooltip_effect = yes +# +# ##### Minor Effects ##### +# # Self-sufficiency/defensive modifiers for each independent realm +# show_as_tooltip = { fp2_struggle_compromise_modifier_rewards_effect = yes } +# +# show_as_tooltip = { +# stress_impact = { +# arrogant = medium_stress_impact_gain +# } +# } +# +# # Achievements +# add_achievement_global_variable_effect = { +# VARIABLE = fp2_iberian_compromise_achievement_unlocked +# VALUE = yes +# } +# fp2_holiday_in_iberia_check = yes +# +# # Trigger a player facing event as a coda +# trigger_event = fp2_struggle.0901 +# } +# +# cost = {} +# +# ai_check_interval_by_tier = { +# barony = 0 +# county = 0 +# duchy = 0 +# kingdom = 120 +# empire = 120 +# hegemony = 120 +# } +# +# ai_potential = { always = yes } +# +# ai_will_do = { base = 100 } +#} +# +############################################## +## Conciliation Ending # +## by Joe Parkin # +############################################## +# +#### Détente ### +#struggle_iberia_ending_conciliation_decision = { +# decision_group_type = major +# title = struggle_iberia_ending_conciliation_decision +# picture = { +# reference = "gfx/interface/illustrations/decisions/fp2_decision_struggle_conciliation.dds" +# } +# extra_picture = "gfx/interface/illustrations/struggle_decision_buttons/fp2_decision_conciliation.dds" +# desc = struggle_iberia_ending_conciliation_decision_desc +# selection_tooltip = struggle_iberia_ending_conciliation_decision_tooltip +# confirm_click_sound = "event:/DLC/FP2/SFX/UI/fp2_struggle_ending_decision_confirm" +# is_invisible = yes +# cooldown = { days = 1 } +# +# sort_order = 80 +# +# is_shown = { +# is_landless_adventurer = no +# has_fp2_dlc_trigger = yes +# } +# +# is_valid = { +# top_liege = this +# +# custom_tooltip = { +# text = struggle_iberia_ending_conciliation_decision_correct_phase_tt +# struggle:iberian_struggle = { +# is_struggle_phase = struggle_iberia_phase_conciliation +# } +# } +# +# prestige_level >= very_high_prestige_level # Exalted among Men or higher +# +# # Hold and completely control a de jure kingdom of Hispania +# custom_tooltip = { +# text = struggle_iberia_ending_compromise_decision_kingdom_tt +# fp2_struggle_ending_hold_de_jure_kingdom_trigger = yes +# } +# +# # Every other independent involved ruler in Iberia is allied to you +# custom_tooltip = { +# text = struggle_iberia_ending_conciliation_decision_alliance_tt +# struggle:iberian_struggle = { +# NOT = { +# any_involved_ruler = { +# top_liege = this +# is_landless_adventurer = no +# primary_title = { is_mercenary_company = no } +# primary_title = { is_holy_order = no } +# NOR = { +# this = root +# is_allied_to = root +# } +# } +# } +# } +# } +# +# # Control less than 50% of Iberia +# custom_tooltip = { +# text = struggle_iberia_ending_compromise_decision_region_tt +# fp2_struggle_ending_percent_iberia_trigger = yes +# } +# } +# +# effect = { +# if = { +# limit = { has_dlc_feature = legends } +# legend_seed_struggle_ending_effect = { +# ENDER = root +# STRUGGLE = iberian_struggle +# } +# } +# if = { +# limit = { has_ach_dlc_trigger = yes } +# add_character_flag = ach_ended_struggle +# } +# ##### Major Effects ##### +# show_as_tooltip = { +# fp2_struggle_conciliation_ender_effect = yes +# fp2_struggle_conciliation_tooltip_effect = yes +# fp2_struggle_conciliation_modifier_rewards_effect = yes +# } +# +# show_as_tooltip = { +# stress_impact = { +# arrogant = medium_stress_impact_gain +# zealous = medium_stress_impact_gain +# } +# } +# +# # Achievements +# add_achievement_global_variable_effect = { +# VARIABLE = fp2_iberian_conciliation_achievement_unlocked +# VALUE = yes +# } +# fp2_holiday_in_iberia_check = yes +# +# +# # Trigger a player facing event as a coda +# trigger_event = fp2_struggle.0902 +# } +# +# cost = {} +# +# ai_check_interval_by_tier = { +# barony = 0 +# county = 0 +# duchy = 0 +# kingdom = 120 +# empire = 120 +# hegemony = 120 +# } +# +# ai_potential = { always = yes } +# +# ai_will_do = { base = 100 } +#} +# +##################################### +### Secure the Mediterranean +### By Hugo Cortell +##################################### +##### Secure The Mediterranean ### +##secure_mediterranean_decision = { +## title = fp2_secure_mediterranean.t +## picture = { +## reference = "gfx/interface/illustrations/event_scenes/fp1_ocean.dds" +## } +## desc = fp2_secure_mediterranean.desc +## decision_group_type = major +## +## selection_tooltip = fp2_secure_mediterranean.tip +## sort_order = 50 +## +## is_shown = { +## # DLC check +## has_fp2_dlc_trigger = yes +## # Standard checks +## is_playable_character = yes +## exists = dynasty +## NOT = { +## is_target_in_global_variable_list = { +## name = unavailable_unique_decisions +## target = flag:flag_secured_the_mediterranean +## } +## } +## +## OR = { +## completely_controls = title:d_sardinia +## completely_controls = title:d_sicily +## AND = { +## completely_controls = title:d_mallorca +## completely_controls = title:d_corsica +## } +## } +## } +## +## is_valid = { +## completely_controls = title:d_mallorca +## completely_controls = title:d_sardinia +## completely_controls = title:d_corsica +## completely_controls = title:d_sicily +## } +## +## is_valid_showing_failures_only = { +## is_landed = yes +## } +## +## effect = { +## add_to_global_variable_list = { +## name = unavailable_unique_decisions +## target = flag:flag_secured_the_mediterranean +## } +## +## # LOC +## root = { +## save_scope_as = mediterranean_conqueror +## house = { save_scope_as = mediterranean_house } +## } +## title:d_mallorca = { save_scope_as = mallorca } +## title:d_sardinia = { save_scope_as = sardinas } +## title:d_sicily = { save_scope_as = sicily } +## title:k_mediterranean_sea = { save_scope_as = mediterranean_title } +## +## every_player = { +## limit = { +## this != ROOT +## any_held_title = { title_province = { geographical_region = dlc_fp2_mediterranean_shoreline } } +## } +## send_interface_message = { +## type = event_generic_bad_with_text +## title = secure_mediterranean_decision.involved_notif +## desc = secure_mediterranean_decision.involved_notif_desc # Players who get this: "why do I hear boss music?" (It is meant to sound vaguely threatening) +## left_icon = scope:mediterranean_conqueror +## +## show_as_tooltip = { +## scope:mediterranean_conqueror = { +## house = { +## add_house_modifier = { +## modifier = fp2_controls_the_mediterranean_house_modifier +## years = 100 +## } +## } +## dynasty = { add_dynasty_prestige = major_prestige_gain } +## } +## } +## } +## } +## +## house = { +## add_house_modifier = { +## modifier = fp2_controls_the_mediterranean_house_modifier +## years = 100 +## } +## } +## dynasty = { add_dynasty_prestige = major_prestige_gain } # You used to get +25% prestiege, but that caused UI issues +## custom_tooltip = secure_mediterranean_decision.a +## +## create_title_and_vassal_change = { +## type = created +## save_scope_as = title_change +## add_claim_on_loss = yes +## } +## title:k_mediterranean_sea = { +## change_title_holder = { +## holder = root +## change = scope:title_change +## } +## } +## resolve_title_and_vassal_change = scope:title_change +## title:d_mallorca = { set_de_jure_liege_title = title:k_mediterranean_sea } +## title:d_sardinia = { set_de_jure_liege_title = title:k_mediterranean_sea } +## title:d_corsica = { set_de_jure_liege_title = title:k_mediterranean_sea } +## title:d_sicily = { set_de_jure_liege_title = title:k_mediterranean_sea } +## +## hidden_effect = { +## title:k_mediterranean_sea = { set_de_jure_liege_title = title:e_italy } # Straying closer to remaking the roman empire +## trigger_event = iberia_north_africa.2105 +## } +## } +## +## cost = { +## gold = { +## value = 0 +## if = { +## limit = { +## has_treasury = no +## } +## add = major_gold_value +## multiply = 1.5 +## round = yes +## } +## } +## treasury = { +## value = 0 +## if = { +## limit = { +## has_treasury = yes +## } +## add = major_gold_value +## multiply = 1.5 +## round = yes +## } +## } +## prestige = { +## value = major_prestige_gain +## multiply = 3 +## round = yes +## } +## } +## +## ai_check_interval_by_tier = { +## barony = 0 +## county = 0 +## duchy = 0 +## kingdom = 730 +## empire = 730 +## hegemony = 730 +## } +## +## ai_potential = { +## is_ruler = yes +## short_term_gold >= { +## value = major_gold_value +## multiply = 1.5 +## round = yes +## } +## prestige >= { +## value = major_prestige_gain +## multiply = 3 +## round = yes +## } +## } +## +## ai_will_do = { +## base = 80 +## } +##} +# +############################################## +## Eat a Cheese +## by Daniel "yes I know what exciting content is stop bullying me" Moore +############################################################################ +#### Eat Your Cheese ### +#eat_cheese_decision = { +# picture = { +# reference = "gfx/interface/illustrations/decisions/decision_personal_religious.dds" +# } +# desc = eat_cheese_decision_desc +# +# is_shown = { +# any_character_artifact = { +# has_variable = has_cheese_artifact +# } +# } +# +# effect = { +# +# custom_tooltip = eat_cheese_effect_tt +# +# trigger_event = fp2_yearly.1008 +# +# } +# +# ai_check_interval = 0 +# +# ai_potential = { +# +# } +# +# ai_will_do = { +# base = 100 +# } +#} +# +#################################### +## Sponsor Jewish Sciences +## By Hugo Cortell +#################################### +#### Sponsor Jewish Sciences ### +#golden_age_jewish_science_in_iberia_decision = { +# picture = { +# reference = "gfx/interface/illustrations/decisions/decision_golden_age.dds" +# } +# desc = golden_age_jewish_science_in_iberia_decision_desc +# decision_group_type = struggle +# +# is_shown = { +# has_fp2_dlc_trigger = yes +# top_liege = root +# top_liege = this # (Redundancy check) +# is_landed_or_landless_administrative = yes +# AND = { +# exists = struggle:iberian_struggle +# any_character_struggle = { +# involvement = involved +# has_struggle_phase_parameter = unlocks_golden_age_jewish_science_decision +# } +# } +# } +# +# is_valid = { +# OR = { # Either the var does not exist (no current golden age) or you are not the sponsor of the current golden age +# NOT = { exists = global_var:fp2_current_jewish_science_sponsor } +# trigger_if = { +# limit = { exists = global_var:fp2_current_jewish_science_sponsor } +# custom_tooltip = { +# text = golden_age_jewish_science_in_iberia_decision_hardcoded_trigger_text.b +# NOT = { root = global_var:fp2_current_jewish_science_sponsor } +# is_ai = no # Prevents the AI from stealing the golden age, players can steal each other's golden age +# } +# } +# } +# trigger_if = { # If you are not your culture's head, you must earn their approval +# limit = { +# exists = culture.culture_head # Redundancy check! +# culture.culture_head != root +# } +# custom_tooltip = { +# text = golden_age_jewish_science_in_iberia_decision_hardcoded_trigger_text.a +# culture.culture_head = { +# save_temporary_opinion_value_as = { +# name = target_opinion +# target = root +# } +# scope:target_opinion > 0 +# } +# } +# } +# } +# +# effect = { +# hidden_effect = { # Prevent any case in which modifiers could be stacked +# struggle:iberian_struggle = { +# every_involved_ruler = { +# remove_character_modifier = fp2_sponsored_golden_age_modifier +# remove_character_modifier = fp2_part_of_golden_age_modifier +# } +# } +# } +# +# send_interface_toast = { +# type = event_toast_effect_good +# title = golden_age_jewish_science_in_iberia_decision.player_notif.t +# right_icon = root +# play_music_cue = mx_cue_meadandwine +# +# add_character_modifier = { +# modifier = fp2_sponsored_golden_age_modifier +# years = 120 +# } +# capital_county = { +# add_county_modifier = { +# modifier = fp2_epicenter_of_golden_age_modifier +# years = 60 +# } +# } +# } +# culture = { add_to_list = already_involved_cultures } # Ensures that only one top ruler for each involved culture is picked +# struggle:iberian_struggle = { +# every_involved_ruler = { +# custom = fp2_one_independent_ruler_of_each_culture_notifier +# limit = { +# culture = { save_temporary_scope_as = current_culture } +# NOT = { # Checks that it is not in the list of "I am already benefiting from this" +# this = root # (Also must not be root) +# any_in_list = { +# list = already_involved_cultures +# this = scope:current_culture +# } +# } +# top_liege = this # Redundancy checks, vital to ensuring this has a 110% success rate +# top_liege = this # Redundancy check +# } +# if = { +# limit = { NOT = { has_character_modifier = fp2_part_of_golden_age_modifier } } +# culture = { add_to_list = already_involved_cultures } +# send_interface_toast = { +# type = event_toast_effect_good +# title = golden_age_jewish_science_in_iberia_decision.player_notif.t +# right_icon = root # Showing root is WAD, lets other players know who started it +# +# add_character_modifier = { +# modifier = fp2_part_of_golden_age_modifier +# years = 120 +# } +# } +# } # } # } -# resolve_title_and_vassal_change = scope:title_change -# title:d_mallorca = { set_de_jure_liege_title = title:k_mediterranean_sea } -# title:d_sardinia = { set_de_jure_liege_title = title:k_mediterranean_sea } -# title:d_corsica = { set_de_jure_liege_title = title:k_mediterranean_sea } -# title:d_sicily = { set_de_jure_liege_title = title:k_mediterranean_sea } # # hidden_effect = { -# title:k_mediterranean_sea = { set_de_jure_liege_title = title:e_italy } # Straying closer to remaking the roman empire -# trigger_event = iberia_north_africa.2105 +# random_list = { +# 100 = { +# trigger_event = { # Translator/book retailer event +# id = iberia_north_africa.2001 +# days = { 4 32 } +# } +# } +# 110 = { +# trigger_event = { # Cataract Surgery event +# id = iberia_north_africa.2002 +# days = { 4 32 } +# } +# } +# 90 = { +# trigger_event = { # Bickering scholars event +# id = iberia_north_africa.2003 +# days = { 4 32 } +# } +# } +# } +# } +# +# set_global_variable = { +# name = fp2_current_jewish_science_sponsor +# value = root +# years = 120 # } # } # @@ -668,7 +908,7 @@ struggle_iberia_ending_conciliation_decision = { # has_treasury = no # } # add = major_gold_value -# multiply = 1.5 +# multiply = 2.25 # round = yes # } # } @@ -679,15 +919,10 @@ struggle_iberia_ending_conciliation_decision = { # has_treasury = yes # } # add = major_gold_value -# multiply = 1.5 +# multiply = 2.25 # round = yes # } # } -# prestige = { -# value = major_prestige_gain -# multiply = 3 -# round = yes -# } # } # # ai_check_interval_by_tier = { @@ -699,575 +934,340 @@ struggle_iberia_ending_conciliation_decision = { # hegemony = 730 # } # -# ai_potential = { -# is_ruler = yes -# short_term_gold >= { -# value = major_gold_value -# multiply = 1.5 -# round = yes +# ai_potential = {} +# +# ai_will_do = { +# base = 0 +# modifier = { +# add = { +# value = learning +# multiply = 5 +# round = yes +# } +# always = yes # } -# prestige >= { -# value = major_prestige_gain -# multiply = 3 -# round = yes +# } +#} +# +############################################## +## Convene Council of Toledo # +## by Joe Parkin and Ola Jentzsch # +############################################## +#### Council Of Toledo Decision ### +#council_of_toledo_decision = { +# title = council_of_toledo_decision_title +# picture = { +# reference = "gfx/interface/illustrations/decisions/decision_major_religion.dds" +# } +# desc = { +# first_valid = { +# triggered_desc = { +# trigger = { exists = global_var:council_of_toledo_counter } +# desc = council_of_toledo_decision_desc_count +# } +# desc = council_of_toledo_decision_desc +# } +# } +# selection_tooltip = council_of_toledo_decision_tooltip +# cooldown = { years = council_of_toledo_decision_decision_cooldown_value } +# decision_group_type = major +# +# sort_order = 80 +# +# is_shown = { +# # DLC check +# has_fp2_dlc_trigger = yes +# # Is Mozarabic (or reformed Mozarabic) +# faith = { +# portrait_religious_faith_or_foundational_trigger = { FAITH = faith:mozarabic_church } +# } +# any_vassal = { } +# } +# +# is_valid = { +# # Owns Toledo +# custom_tooltip = { +# text = council_of_toledo_decision_toledo_holder_trigger +# is_toledo_ownership_valid_trigger = yes +# } +# any_vassal = { +# count >= 3 +# is_powerful_vassal = yes +# custom_tooltip = { +# text = council_of_toledo_decision_toledo_faith_trigger +# faith = root.faith +# } +# } +# +# realm_size >= council_of_toledo_realm_size_value +# # update fp2_struggle_council_toledo_decision_trigger if changing this +# } +# +# is_valid_showing_failures_only = { +# is_landed = yes +# # Not at war +# is_at_war = no +# } +# +# effect = { +# custom_tooltip = council_of_toledo_decision_tt +# faith:mozarabic_church = { +# change_fervor = { +# value = 10 +# desc = fervor_gain_ascetic_example +# } +# } +# # Council counter +# if = { +# limit = { exists = global_var:council_of_toledo_counter } +# change_global_variable = { +# name = council_of_toledo_counter +# add = 1 +# } +# } +# else = { +# set_global_variable = { +# name = council_of_toledo_counter +# value = 19 +# } +# } +# if = { +# limit = { +# any_character_struggle = { is_struggle_type = iberian_struggle } +# } +# custom_tooltip = council_of_toledo_decision_catalyst_tt +# } +# trigger_event = { +# on_action = fp2_struggle_council_toledo_organize +# days = 1 # } # } # +# cost = { +# gold = { +# value = 0 +# if = { +# limit = { +# has_treasury = no +# } +# add = council_of_toledo_gold_cost_value +# } +# } +# treasury = { +# value = 0 +# if = { +# limit = { +# has_treasury = yes +# } +# add = council_of_toledo_gold_cost_value +# } +# } +# piety = council_of_toledo_piety_cost_value +# } +# +# ai_check_interval_by_tier = { +# barony = 0 +# county = 0 +# duchy = 0 +# kingdom = 60 +# empire = 60 +# hegemony = 60 +# } +# +# ai_potential = { +# is_ruler = yes +# short_term_gold >= council_of_toledo_gold_cost_value +# } +# # ai_will_do = { -# base = 80 +# base = 100 # } #} - -############################################# -# Eat a Cheese -# by Daniel "yes I know what exciting content is stop bullying me" Moore -########################################################################### -### Eat Your Cheese ### -eat_cheese_decision = { - picture = { - reference = "gfx/interface/illustrations/decisions/decision_personal_religious.dds" - } - desc = eat_cheese_decision_desc - - is_shown = { - any_character_artifact = { - has_variable = has_cheese_artifact - } - } - - effect = { - - custom_tooltip = eat_cheese_effect_tt - - trigger_event = fp2_yearly.1008 - - } - - ai_check_interval = 0 - - ai_potential = { - - } - - ai_will_do = { - base = 100 - } -} - -################################### -# Sponsor Jewish Sciences -# By Hugo Cortell -################################### -### Sponsor Jewish Sciences ### -golden_age_jewish_science_in_iberia_decision = { - picture = { - reference = "gfx/interface/illustrations/decisions/decision_golden_age.dds" - } - desc = golden_age_jewish_science_in_iberia_decision_desc - decision_group_type = struggle - - is_shown = { - has_fp2_dlc_trigger = yes - top_liege = root - top_liege = this # (Redundancy check) - is_landed_or_landless_administrative = yes - AND = { - exists = struggle:iberian_struggle - any_character_struggle = { - involvement = involved - has_struggle_phase_parameter = unlocks_golden_age_jewish_science_decision - } - } - } - - is_valid = { - OR = { # Either the var does not exist (no current golden age) or you are not the sponsor of the current golden age - NOT = { exists = global_var:fp2_current_jewish_science_sponsor } - trigger_if = { - limit = { exists = global_var:fp2_current_jewish_science_sponsor } - custom_tooltip = { - text = golden_age_jewish_science_in_iberia_decision_hardcoded_trigger_text.b - NOT = { root = global_var:fp2_current_jewish_science_sponsor } - is_ai = no # Prevents the AI from stealing the golden age, players can steal each other's golden age - } - } - } - trigger_if = { # If you are not your culture's head, you must earn their approval - limit = { - exists = culture.culture_head # Redundancy check! - culture.culture_head != root - } - custom_tooltip = { - text = golden_age_jewish_science_in_iberia_decision_hardcoded_trigger_text.a - culture.culture_head = { - save_temporary_opinion_value_as = { - name = target_opinion - target = root - } - scope:target_opinion > 0 - } - } - } - } - - effect = { - hidden_effect = { # Prevent any case in which modifiers could be stacked - struggle:iberian_struggle = { - every_involved_ruler = { - remove_character_modifier = fp2_sponsored_golden_age_modifier - remove_character_modifier = fp2_part_of_golden_age_modifier - } - } - } - - send_interface_toast = { - type = event_toast_effect_good - title = golden_age_jewish_science_in_iberia_decision.player_notif.t - right_icon = root - play_music_cue = mx_cue_meadandwine - - add_character_modifier = { - modifier = fp2_sponsored_golden_age_modifier - years = 120 - } - capital_county = { - add_county_modifier = { - modifier = fp2_epicenter_of_golden_age_modifier - years = 60 - } - } - } - culture = { add_to_list = already_involved_cultures } # Ensures that only one top ruler for each involved culture is picked - struggle:iberian_struggle = { - every_involved_ruler = { - custom = fp2_one_independent_ruler_of_each_culture_notifier - limit = { - culture = { save_temporary_scope_as = current_culture } - NOT = { # Checks that it is not in the list of "I am already benefiting from this" - this = root # (Also must not be root) - any_in_list = { - list = already_involved_cultures - this = scope:current_culture - } - } - top_liege = this # Redundancy checks, vital to ensuring this has a 110% success rate - top_liege = this # Redundancy check - } - if = { - limit = { NOT = { has_character_modifier = fp2_part_of_golden_age_modifier } } - culture = { add_to_list = already_involved_cultures } - send_interface_toast = { - type = event_toast_effect_good - title = golden_age_jewish_science_in_iberia_decision.player_notif.t - right_icon = root # Showing root is WAD, lets other players know who started it - - add_character_modifier = { - modifier = fp2_part_of_golden_age_modifier - years = 120 - } - } - } - } - } - - hidden_effect = { - random_list = { - 100 = { - trigger_event = { # Translator/book retailer event - id = iberia_north_africa.2001 - days = { 4 32 } - } - } - 110 = { - trigger_event = { # Cataract Surgery event - id = iberia_north_africa.2002 - days = { 4 32 } - } - } - 90 = { - trigger_event = { # Bickering scholars event - id = iberia_north_africa.2003 - days = { 4 32 } - } - } - } - } - - set_global_variable = { - name = fp2_current_jewish_science_sponsor - value = root - years = 120 - } - } - - cost = { - gold = { - value = 0 - if = { - limit = { - has_treasury = no - } - add = major_gold_value - multiply = 2.25 - round = yes - } - } - treasury = { - value = 0 - if = { - limit = { - has_treasury = yes - } - add = major_gold_value - multiply = 2.25 - round = yes - } - } - } - - ai_check_interval_by_tier = { - barony = 0 - county = 0 - duchy = 0 - kingdom = 730 - empire = 730 - hegemony = 730 - } - - ai_potential = {} - - ai_will_do = { - base = 0 - modifier = { - add = { - value = learning - multiply = 5 - round = yes - } - always = yes - } - } -} - -############################################# -# Convene Council of Toledo # -# by Joe Parkin and Ola Jentzsch # -############################################# -### Council Of Toledo Decision ### -council_of_toledo_decision = { - title = council_of_toledo_decision_title - picture = { - reference = "gfx/interface/illustrations/decisions/decision_major_religion.dds" - } - desc = { - first_valid = { - triggered_desc = { - trigger = { exists = global_var:council_of_toledo_counter } - desc = council_of_toledo_decision_desc_count - } - desc = council_of_toledo_decision_desc - } - } - selection_tooltip = council_of_toledo_decision_tooltip - cooldown = { years = council_of_toledo_decision_decision_cooldown_value } - decision_group_type = major - - sort_order = 80 - - is_shown = { - # DLC check - has_fp2_dlc_trigger = yes - # Is Mozarabic (or reformed Mozarabic) - faith = { - portrait_religious_faith_or_foundational_trigger = { FAITH = faith:mozarabic_church } - } - any_vassal = { } - } - - is_valid = { - # Owns Toledo - custom_tooltip = { - text = council_of_toledo_decision_toledo_holder_trigger - is_toledo_ownership_valid_trigger = yes - } - any_vassal = { - count >= 3 - is_powerful_vassal = yes - custom_tooltip = { - text = council_of_toledo_decision_toledo_faith_trigger - faith = root.faith - } - } - - realm_size >= council_of_toledo_realm_size_value - # update fp2_struggle_council_toledo_decision_trigger if changing this - } - - is_valid_showing_failures_only = { - is_landed = yes - # Not at war - is_at_war = no - } - - effect = { - custom_tooltip = council_of_toledo_decision_tt - faith:mozarabic_church = { - change_fervor = { - value = 10 - desc = fervor_gain_ascetic_example - } - } - # Council counter - if = { - limit = { exists = global_var:council_of_toledo_counter } - change_global_variable = { - name = council_of_toledo_counter - add = 1 - } - } - else = { - set_global_variable = { - name = council_of_toledo_counter - value = 19 - } - } - if = { - limit = { - any_character_struggle = { is_struggle_type = iberian_struggle } - } - custom_tooltip = council_of_toledo_decision_catalyst_tt - } - trigger_event = { - on_action = fp2_struggle_council_toledo_organize - days = 1 - } - } - - cost = { - gold = { - value = 0 - if = { - limit = { - has_treasury = no - } - add = council_of_toledo_gold_cost_value - } - } - treasury = { - value = 0 - if = { - limit = { - has_treasury = yes - } - add = council_of_toledo_gold_cost_value - } - } - piety = council_of_toledo_piety_cost_value - } - - ai_check_interval_by_tier = { - barony = 0 - county = 0 - duchy = 0 - kingdom = 60 - empire = 60 - hegemony = 60 - } - - ai_potential = { - is_ruler = yes - short_term_gold >= council_of_toledo_gold_cost_value - } - - ai_will_do = { - base = 100 - } -} - -############################################# -# Secure Iberian Foothold -# by Joe Parkin and Ola Jentzsch -############################################# -### Secure Iberian Foothold Decision ### -secure_iberian_foothold_decision = { - title = secure_iberian_foothold_decision_title - picture = { - reference = "gfx/interface/illustrations/decisions/decision_destiny_goal.dds" - } - desc = secure_iberian_foothold_decision_desc - selection_tooltip = secure_iberian_foothold_decision_tooltip - sort_order = 80 - decision_group_type = struggle - - is_shown = { - is_landless_adventurer = no - # DLC check - has_fp2_dlc_trigger = yes - # Struggle is active - exists = struggle:iberian_struggle - # Not Involved and capital lies outside Iberia - custom_tooltip = { - text = fp2_struggle_uninvolved_or_external_tt - NOR = { - any_character_struggle = { - is_struggle_type = iberian_struggle - involvement = involved - } - } - } - # Hold land near Iberia - any_sub_realm_county = { - title_province = { - OR = { - geographical_region = world_europe_west_iberia # Iberia - geographical_region = ghw_region_southern_france # Aquitaine - geographical_region = world_africa_north_west # Maghreb - } - } - } - NOT = { has_title = title:e_spain } - } - - is_valid = { - ##### General triggers ##### - # Struggle phase must be right - custom_tooltip = { - text = fp2_struggle_uninvolved_or_external_tt - NOT = { - capital_province = { geographical_region = world_europe_west_iberia } - } - } - custom_tooltip = { - text = fp2_struggle_secure_iberian_foothold_empire_tt - any_held_title = { - title_tier >= empire - NOT = { this = title:e_spain } - } - } - # If my religion is involved, I need to own the better portion of those counties - trigger_if = { - limit = { - religion = { - any_faith = { - struggle:iberian_struggle = { is_faith_involved_in_struggle = prev } - } - } - } - custom_tooltip = { - text = fp2_struggle_secure_iberian_foothold_religion_tt - fp2_struggle_secure_iberian_foothold_religion_percent_value >= fp2_struggle_secure_iberian_foothold_religion_target_percent_value - } - } - # Otherwise, I need to own a big chunk of the peninsula - trigger_else = { - custom_tooltip = { - text = fp2_struggle_secure_iberian_foothold_outsider_tt - any_county_in_region = { - region = world_europe_west_iberia - percent >= fp2_struggle_secure_iberian_foothold_outsider_target_percent_decimal_value - holder.top_liege = root - } - } - } - - ##### Iberian kingdom triggers ##### - - # Any de jure kingdom of Iberia is completely controlled - custom_tooltip = { - text = fp2_struggle_secure_iberian_foothold_kingdom_iberian_tt - any_held_title = { fp2_struggle_secure_iberian_foothold_iberian_kingdom_trigger = yes } - } - # Real tooltips - trigger_if = { - limit = { exists = scope:iberian_kingdom_temp } - # That kingdom is mostly my faith - custom_tooltip = { - text = fp2_struggle_secure_iberian_foothold_kingdom_faith_tt - fp2_struggle_secure_iberian_foothold_faith_trigger = yes - } - # Borders held lands in a non-Iberian kingdom you hold - custom_tooltip = { - text = fp2_struggle_secure_iberian_foothold_kingdom_border_tt - scope:iberian_kingdom_temp = { fp2_struggle_secure_iberian_foothold_outsider_kingdom_trigger = yes } - } - # Held that kingdom for a while - custom_tooltip = { - text = fp2_struggle_secure_iberian_foothold_kingdom_held_tt - scope:iberian_kingdom_temp = { title_held_years >= fp2_struggle_secure_iberian_foothold_years_value } - } - } - # Fake tooltips - trigger_else = { - custom_tooltip = { - text = fp2_struggle_secure_iberian_foothold_kingdom_faith_tt - always = no - } - # Borders held lands in a non-Iberian kingdom you hold - custom_tooltip = { - text = fp2_struggle_secure_iberian_foothold_kingdom_border_tt - always = no - } - custom_tooltip = { - text = fp2_struggle_secure_iberian_foothold_kingdom_held_tt - always = no - } - } - } - - is_valid_showing_failures_only = { - trigger_if = { - limit = { exists = struggle:iberian_struggle } - custom_tooltip = { - text = fp2_struggle_phase_hostility_or_opportunity_tt - struggle:iberian_struggle = { - has_struggle_phase_parameter = unlocks_secure_iberian_foothold_decision - } - } - } - } - - effect = { - legend_seed_struggle_ending_effect = { - ENDER = root - STRUGGLE = iberian_struggle - } - if = { - limit = { has_ach_dlc_trigger = yes } - add_character_flag = ach_ended_struggle - } - if = { - limit = { - any_held_title = { title_tier = empire } - } - custom_tooltip = fp2_struggle_secure_iberian_foothold_empire_held_effect_tt - } - else = { custom_tooltip = fp2_struggle_secure_iberian_foothold_empire_dejure_effect_tt } - - trigger_event = { - id = fp2_other_decisions.1000 - } - - custom_tooltip = fp2_struggle_secure_iberian_foothold_ends_the_struggle_tt - } - - cost = {} - - ai_check_interval_by_tier = { - barony = 0 - county = 0 - duchy = 0 - kingdom = 120 - empire = 120 - hegemony = 120 - } - - ai_potential = {} - - ai_will_do = { - base = 100 - } -} - +# +############################################## +## Secure Iberian Foothold +## by Joe Parkin and Ola Jentzsch +############################################## +#### Secure Iberian Foothold Decision ### +#secure_iberian_foothold_decision = { +# title = secure_iberian_foothold_decision_title +# picture = { +# reference = "gfx/interface/illustrations/decisions/decision_destiny_goal.dds" +# } +# desc = secure_iberian_foothold_decision_desc +# selection_tooltip = secure_iberian_foothold_decision_tooltip +# sort_order = 80 +# decision_group_type = struggle +# +# is_shown = { +# is_landless_adventurer = no +# # DLC check +# has_fp2_dlc_trigger = yes +# # Struggle is active +# exists = struggle:iberian_struggle +# # Not Involved and capital lies outside Iberia +# custom_tooltip = { +# text = fp2_struggle_uninvolved_or_external_tt +# NOR = { +# any_character_struggle = { +# is_struggle_type = iberian_struggle +# involvement = involved +# } +# } +# } +# # Hold land near Iberia +# any_sub_realm_county = { +# title_province = { +# OR = { +# geographical_region = world_europe_west_iberia # Iberia +# geographical_region = ghw_region_southern_france # Aquitaine +# geographical_region = world_africa_north_west # Maghreb +# } +# } +# } +# NOT = { has_title = title:e_spain } +# } +# +# is_valid = { +# ##### General triggers ##### +# # Struggle phase must be right +# custom_tooltip = { +# text = fp2_struggle_uninvolved_or_external_tt +# NOT = { +# capital_province = { geographical_region = world_europe_west_iberia } +# } +# } +# custom_tooltip = { +# text = fp2_struggle_secure_iberian_foothold_empire_tt +# any_held_title = { +# title_tier >= empire +# NOT = { this = title:e_spain } +# } +# } +# # If my religion is involved, I need to own the better portion of those counties +# trigger_if = { +# limit = { +# religion = { +# any_faith = { +# struggle:iberian_struggle = { is_faith_involved_in_struggle = prev } +# } +# } +# } +# custom_tooltip = { +# text = fp2_struggle_secure_iberian_foothold_religion_tt +# fp2_struggle_secure_iberian_foothold_religion_percent_value >= fp2_struggle_secure_iberian_foothold_religion_target_percent_value +# } +# } +# # Otherwise, I need to own a big chunk of the peninsula +# trigger_else = { +# custom_tooltip = { +# text = fp2_struggle_secure_iberian_foothold_outsider_tt +# any_county_in_region = { +# region = world_europe_west_iberia +# percent >= fp2_struggle_secure_iberian_foothold_outsider_target_percent_decimal_value +# holder.top_liege = root +# } +# } +# } +# +# ##### Iberian kingdom triggers ##### +# +# # Any de jure kingdom of Iberia is completely controlled +# custom_tooltip = { +# text = fp2_struggle_secure_iberian_foothold_kingdom_iberian_tt +# any_held_title = { fp2_struggle_secure_iberian_foothold_iberian_kingdom_trigger = yes } +# } +# # Real tooltips +# trigger_if = { +# limit = { exists = scope:iberian_kingdom_temp } +# # That kingdom is mostly my faith +# custom_tooltip = { +# text = fp2_struggle_secure_iberian_foothold_kingdom_faith_tt +# fp2_struggle_secure_iberian_foothold_faith_trigger = yes +# } +# # Borders held lands in a non-Iberian kingdom you hold +# custom_tooltip = { +# text = fp2_struggle_secure_iberian_foothold_kingdom_border_tt +# scope:iberian_kingdom_temp = { fp2_struggle_secure_iberian_foothold_outsider_kingdom_trigger = yes } +# } +# # Held that kingdom for a while +# custom_tooltip = { +# text = fp2_struggle_secure_iberian_foothold_kingdom_held_tt +# scope:iberian_kingdom_temp = { title_held_years >= fp2_struggle_secure_iberian_foothold_years_value } +# } +# } +# # Fake tooltips +# trigger_else = { +# custom_tooltip = { +# text = fp2_struggle_secure_iberian_foothold_kingdom_faith_tt +# always = no +# } +# # Borders held lands in a non-Iberian kingdom you hold +# custom_tooltip = { +# text = fp2_struggle_secure_iberian_foothold_kingdom_border_tt +# always = no +# } +# custom_tooltip = { +# text = fp2_struggle_secure_iberian_foothold_kingdom_held_tt +# always = no +# } +# } +# } +# +# is_valid_showing_failures_only = { +# trigger_if = { +# limit = { exists = struggle:iberian_struggle } +# custom_tooltip = { +# text = fp2_struggle_phase_hostility_or_opportunity_tt +# struggle:iberian_struggle = { +# has_struggle_phase_parameter = unlocks_secure_iberian_foothold_decision +# } +# } +# } +# } +# +# effect = { +# legend_seed_struggle_ending_effect = { +# ENDER = root +# STRUGGLE = iberian_struggle +# } +# if = { +# limit = { has_ach_dlc_trigger = yes } +# add_character_flag = ach_ended_struggle +# } +# if = { +# limit = { +# any_held_title = { title_tier = empire } +# } +# custom_tooltip = fp2_struggle_secure_iberian_foothold_empire_held_effect_tt +# } +# else = { custom_tooltip = fp2_struggle_secure_iberian_foothold_empire_dejure_effect_tt } +# +# trigger_event = { +# id = fp2_other_decisions.1000 +# } +# +# custom_tooltip = fp2_struggle_secure_iberian_foothold_ends_the_struggle_tt +# } +# +# cost = {} +# +# ai_check_interval_by_tier = { +# barony = 0 +# county = 0 +# duchy = 0 +# kingdom = 120 +# empire = 120 +# hegemony = 120 +# } +# +# ai_potential = {} +# +# ai_will_do = { +# base = 100 +# } +#} +# ################################### # Build Pilgrim Roads # By Hugo Cortell diff --git a/common/dynasty_house_motto_inserts/00_inserts.txt b/common/dynasty_house_motto_inserts/00_inserts.txt new file mode 100644 index 00000000..cadd2f98 --- /dev/null +++ b/common/dynasty_house_motto_inserts/00_inserts.txt @@ -0,0 +1,4556 @@ +noun_immaterial = { + honor = { + trigger = { + NOT = { has_trait = deceitful } + } + weight = { + value = 1000 + if = { + limit = { has_trait = honest } + multiply = 3 + } + if = { + limit = { has_trait = just } + multiply = 2 + } + } + } + truth = { + trigger = { + NOT = { has_trait = deceitful } + } + weight = { + value = 1000 + if = { + limit = { has_trait = honest } + multiply = 3 + } + if = { + limit = { has_trait = just } + multiply = 2 + } + } + } + triumph = { + trigger = { + NOT = { has_trait = humble } + } + weight = { + value = 1000 + if = { + limit = { has_trait = ambitious } + multiply = 3 + } + } + } + renown = { + trigger = { + NOT = { has_trait = humble } + } + weight = { + value = 1000 + if = { + limit = { has_trait = ambitious } + multiply = 3 + } + } + } + valor = { + trigger = { + NOT = { has_trait = humble } + } + weight = { + value = 1000 + if = { + limit = { has_trait = brave } + multiply = 3 + } + } + } + strength = { + trigger = { + NOT = { has_trait = humble } + } + weight = { + value = 1000 + if = { + limit = { has_trait = brave } + multiply = 3 + } + } + } + courage = { + trigger = { + NOT = { has_trait = humble } + } + weight = { + value = 1000 + if = { + limit = { has_trait = brave } + multiply = 3 + } + } + } + might = { + trigger = { + NOT = { has_trait = humble } + } + weight = { + value = 1000 + if = { + limit = { has_trait = brave } + multiply = 3 + } + } + } + boldness = { + trigger = { + NOT = { has_trait = shy } + } + weight = { + value = 1000 + if = { + limit = { has_trait = brave } + multiply = 3 + } + } + } + victory = { + trigger = { + NOT = { has_trait = humble } + } + weight = { + value = 1000 + if = { + limit = { has_trait = ambitious } + multiply = 3 + } + if = { + limit = { + religion_is_broadly_asian_trigger = yes + } + multiply = 0.1 + } + } + } + conquest = { + trigger = { + NOT = { has_trait = humble } + } + weight = { + value = 1000 + if = { + limit = { has_trait = ambitious } + multiply = 3 + } + if = { + limit = { + religion_is_broadly_asian_trigger = yes + } + multiply = 0.1 + } + } + } + wisdom = { + trigger = { + NOT = { has_trait = impatient } + } + weight = { + value = 1000 + if = { + limit = { has_trait = patient } + multiply = 3 + } + if = { + limit = { + religion_is_broadly_asian_trigger = yes + } + multiply = 1.25 + } + } + } + vigilance = { + trigger = { + NOT = { has_trait = impatient } + } + weight = { + value = 1000 + if = { + limit = { has_trait = paranoid } + multiply = 3 + } + } + } + peace = { + trigger = { + NOT = { has_trait = impatient } + } + weight = { + value = 1000 + if = { + limit = { has_trait = calm } + multiply = 3 + } + } + } + friendship = { + trigger = { + NOR = { + has_trait = sadistic + has_trait = callous + has_trait = paranoid + } + } + weight = { + value = 1000 + if = { + limit = { has_trait = gregarious } + multiply = 3 + } + } + } + family = { + trigger = { + NOR = { + has_trait = sadistic + has_trait = callous + } + } + weight = { + value = 1000 + if = { + limit = { has_trait = chaste } + multiply = 3 + } + } + } + union = { + trigger = { + NOR = { + has_trait = sadistic + has_trait = callous + has_trait = paranoid + } + } + weight = { + value = 1000 + if = { + limit = { has_trait = compassionate } + multiply = 2 + } + } + } + goodness = { + trigger = { + NOT = { has_trait = cynical } + } + weight = { + value = 1000 + if = { + limit = { has_trait = compassionate } + multiply = 3 + } + } + } + deception = { + trigger = { + OR = { + has_trait = deceitful + has_trait = arbitrary + } + } + weight = { + value = 1000 + if = { + limit = { has_trait = deceitful } + multiply = 3 + } + if = { + limit = { + religion_is_broadly_asian_trigger = yes + } + multiply = 0 + } + } + } + pleasure = { + trigger = { + NOT = { has_trait = chaste } + } + weight = { + value = 1000 + if = { + limit = { has_trait = lustful } + multiply = 3 + } + if = { + limit = { + religion_is_broadly_asian_trigger = yes + } + multiply = 0.1 + } + } + } + dread = { + trigger = { + OR = { + has_trait = sadistic + has_trait = callous + } + } + weight = { + value = 1000 + if = { + limit = { has_trait = sadistic } + multiply = 5 + } + } + } + adversity = { + trigger = { + OR = { + has_trait = sadistic + has_trait = callous + } + } + weight = { + value = 1000 + if = { + limit = { has_trait = stubborn } + multiply = 3 + } + } + } + bribery = { + trigger = { + has_trait = deceitful + } + weight = { + value = 1000 + if = { + limit = { has_trait = greedy } + multiply = 3 + } + } + } + fear = { + trigger = { + OR = { + has_trait = sadistic + has_trait = callous + } + } + weight = { + value = 1000 + if = { + limit = { has_trait = sadistic } + multiply = 3 + } + } + } + delight = { + trigger = { + has_trait = lustful + } + weight = { + value = 1000 + if = { + limit = { has_trait = lustful } + multiply = 3 + } + } + } + death = { + trigger = { + OR = { + has_trait = sadistic + has_trait = callous + } + } + weight = { + value = 1000 + if = { + limit = { has_trait = sadistic } + multiply = 3 + } + } + } + perseverance = { + trigger = { + NOT = { has_trait = lazy } + } + weight = { + value = 1000 + if = { + limit = { has_trait = diligent } + multiply = 3 + } + } + weight = { + value = 1000 + if = { + limit = { has_trait = stubborn } + multiply = 3 + } + } + } + faith = { + trigger = { + NOT = { has_trait = cynical } + } + weight = { + value = 1000 + if = { + limit = { has_trait = zealous } + multiply = 3 + } + } + } + salvation = { + trigger = { + NOT = { has_trait = cynical } + } + weight = { + value = 1000 + if = { + limit = { has_trait = zealous } + multiply = 3 + } + if = { + limit = { + religion_is_broadly_asian_trigger = yes + } + multiply = 0 + } + } + } + trust = { + trigger = { + NOT = { has_trait = paranoid } + } + weight = { + value = 1000 + if = { + limit = { has_trait = trusting } + multiply = 3 + } + } + } + piety = { + trigger = { + NOT = { has_trait = cynical } + } + weight = { + value = 1000 + if = { + limit = { has_trait = zealous } + multiply = 3 + } + if = { + limit = { + religion_is_broadly_asian_trigger = yes + } + multiply = 0 + } + } + } + devotion = { + trigger = { + NOT = { has_trait = cynical } + } + weight = { + value = 1000 + if = { + limit = { has_trait = zealous } + multiply = 3 + } + if = { + limit = { + religion_is_broadly_asian_trigger = yes + } + multiply = 0 + } + } + } + forgiveness = { + trigger = { + NOT = { has_trait = vengeful } + } + weight = { + value = 1000 + if = { + limit = { has_trait = forgiving } + multiply = 3 + } + if = { + limit = { + religion_is_broadly_asian_trigger = yes + } + multiply = 0 + } + } + } + innocence = { + trigger = { + NOT = { has_trait = cynical } + } + weight = { + value = 1000 + if = { + limit = { has_trait = shy } + multiply = 3 + } + if = { + limit = { has_trait = calm } + multiply = 3 + } + if = { + limit = { + religion_is_broadly_asian_trigger = yes + } + multiply = 0.1 + } + } + } + learning = { + trigger = { + NOT = { has_trait = wrathful } + } + weight = { + value = 1000 + if = { + limit = { learning = 20 } + multiply = 3 + } + } + } + prayer = { + trigger = { + NOT = { has_trait = cynical } + } + weight = { + value = 1000 + if = { + limit = { has_trait = humble } + multiply = 3 + } + if = { + limit = { + religion_is_broadly_asian_trigger = yes + } + multiply = 0 + } + } + } + hope = { + trigger = { + NOT = { has_trait = cynical } + } + weight = { + value = 1000 + if = { + limit = { has_trait = content } + multiply = 3 + } + if = { + limit = { has_trait = trusting } + multiply = 2 + } + } + } + love = { + trigger = { + NOR = { + has_trait = paranoid + has_trait = ambitious + } + } + weight = { + value = 1000 + if = { + limit = { has_trait = content } + multiply = 3 + } + if = { + limit = { has_trait = trusting } + multiply = 2 + } + } + } + safety = { + trigger = { + NOT = { has_trait = trusting } + } + weight = { + value = 1000 + if = { + limit = { has_trait = vengeful } + multiply = 2 + } + } + } + loyalty = { + trigger = { + NOT = { has_trait = paranoid } + } + weight = { + value = 1000 + if = { + limit = { has_trait = trusting } + multiply = 3 + } + } + } + fidelity = { + trigger = { + NOT = { has_trait = lustful } + } + weight = { + value = 1000 + if = { + limit = { has_trait = chaste } + multiply = 3 + } + } + } + nobility = { + trigger = { + NOT = { has_trait = humble } + } + weight = { + value = 1000 + if = { + limit = { has_trait = arrogant } + multiply = 3 + } + } + } + labour = { + trigger = { + NOT = { has_trait = lazy } + } + weight = { + value = 1000 + if = { + limit = { has_trait = diligent } + multiply = 3 + } + if = { + limit = { + religion_is_broadly_asian_trigger = yes + } + multiply = 0 + } + } + } + fortune = { + trigger = { + NOT = { has_trait = lazy } + } + weight = { + value = 1000 + if = { + limit = { has_trait = greedy } + multiply = 3 + } + } + } + industry = { + trigger = { + NOT = { has_trait = lazy } + } + weight = { + value = 1000 + if = { + limit = { has_trait = diligent } + multiply = 3 + } + } + } + prosperity = { + trigger = { + NOT = { has_trait = lazy } + } + weight = { + value = 1000 + if = { + limit = { has_trait = diligent } + multiply = 3 + } + } + } + defence = { + trigger = { + has_trait = paranoid + } + weight = { + value = 1000 + if = { + limit = { has_trait = stubborn } + multiply = 3 + } + if = { + limit = { + religion_is_broadly_asian_trigger = yes + } + multiply = 0.1 + } + } + } + bravery = { + trigger = { + NOT = { has_trait = craven } + } + weight = { + value = 1000 + if = { + limit = { has_trait = brave } + multiply = 3 + } + if = { + limit = { + religion_is_broadly_asian_trigger = yes + } + multiply = 0.1 + } + } + } + endurance = { + trigger = { + NOR = { + has_trait = fickle + has_trait = lazy + } + } + weight = { + value = 1000 + if = { + limit = { has_trait = stubborn } + multiply = 3 + } + if = { + limit = { has_trait = diligent } + multiply = 2 + } + } + } + liberty = { + trigger = { + NOT = { has_trait = arbitrary } + } + weight = { + value = 1000 + if = { + limit = { has_trait = just } + multiply = 2 + } + } + } + virtue = { + trigger = { + num_sinful_traits = 0 + } + weight = { + value = 1000 + if = { + limit = { has_trait = humble } + multiply = 3 + } + } + } + splendour = { + trigger = { + NOT = { has_trait = humble } + } + weight = { + value = 1000 + if = { + limit = { has_trait = arrogant } + multiply = 3 + } + if = { + limit = { + religion_is_broadly_asian_trigger = yes + } + multiply = 0.1 + } + } + } + respect = { + trigger = { + NOT = { has_trait = humble } + } + weight = { + value = 1000 + if = { + limit = { has_trait = arrogant } + multiply = 3 + } + } + } + right = { + trigger = { + NOT = { has_trait = humble } + } + weight = { + value = 1000 + if = { + limit = { has_trait = arrogant } + multiply = 3 + } + if = { + limit = { + religion_is_broadly_asian_trigger = yes + } + multiply = 0.1 + } + } + } + enlightenment = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 2500 + } + } + compassion = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + inspiration = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + harmony = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + filial_piety = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + balance = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + purity = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + emptiness = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + destiny = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + discipline = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + merit = { + trigger = { + broadly_chinese_religion_trigger = yes + } + weight = { + value = 1000 + } + } + + rebirth = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + grace = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + mandate = { + trigger = { + broadly_chinese_religion_trigger = yes + } + weight = { + value = 1000 + } + } + + sincerity = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + justice = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + order = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + law = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + insight = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + +} + +adjective_immaterial = { + honorable = { + trigger = { + NOT = { has_trait = deceitful } + } + weight = { + value = 1000 + if = { + limit = { has_trait = honest } + multiply = 3 + } + if = { + limit = { has_trait = just } + multiply = 2 + } + } + } + truthful = { + trigger = { + NOT = { has_trait = deceitful } + } + weight = { + value = 1000 + if = { + limit = { has_trait = honest } + multiply = 3 + } + if = { + limit = { has_trait = just } + multiply = 2 + } + } + } + triumphant = { + trigger = { + NOT = { has_trait = humble } + } + weight = { + value = 1000 + if = { + limit = { has_trait = ambitious } + multiply = 3 + } + if = { + limit = { + faith = { + religion = { is_in_family = rf_eastern } + } + } + multiply = 0.1 + } + } + } + valorous = { + trigger = { + NOT = { has_trait = humble } + } + weight = { + value = 1000 + if = { + limit = { has_trait = brave } + multiply = 3 + } + if = { + limit = { + faith = { + religion = { is_in_family = rf_eastern } + } + } + multiply = 0.1 + } + } + } + strong = { + trigger = { + NOT = { has_trait = humble } + } + weight = { + value = 1000 + if = { + limit = { has_trait = brave } + multiply = 3 + } + if = { + limit = { + faith = { + religion = { is_in_family = rf_eastern } + } + } + multiply = 0.1 + } + } + } + courageous = { + trigger = { + NOT = { has_trait = humble } + } + weight = { + value = 1000 + if = { + limit = { has_trait = brave } + multiply = 3 + } + if = { + limit = { + faith = { + religion = { is_in_family = rf_eastern } + } + } + multiply = 0.1 + } + } + } + mighty = { + trigger = { + NOT = { has_trait = humble } + } + weight = { + value = 1000 + if = { + limit = { has_trait = brave } + multiply = 3 + } + if = { + limit = { + faith = { + religion = { is_in_family = rf_eastern } + } + } + multiply = 0.1 + } + } + } + cunning = { + trigger = { + NOT = { has_trait = impatient } + } + weight = { + value = 1000 + if = { + limit = { has_trait = patient } + multiply = 3 + } + if = { + limit = { + faith = { + religion = { is_in_family = rf_eastern } + } + } + multiply = 0.1 + } + } + } + bold = { + trigger = { + NOT = { has_trait = shy } + } + weight = { + value = 1000 + if = { + limit = { has_trait = brave } + multiply = 3 + } + if = { + limit = { + faith = { + religion = { is_in_family = rf_eastern } + } + } + multiply = 0.1 + } + } + } + victorious = { + trigger = { + NOT = { has_trait = humble } + } + weight = { + value = 1000 + if = { + limit = { has_trait = ambitious } + multiply = 3 + } + if = { + limit = { + faith = { + religion = { is_in_family = rf_eastern } + } + } + multiply = 0.1 + } + } + } + wise = { + trigger = { + NOT = { has_trait = impatient } + } + weight = { + value = 1000 + if = { + limit = { has_trait = patient } + multiply = 3 + } + } + } + vigilant = { + trigger = { + NOT = { has_trait = impatient } + } + weight = { + value = 1000 + if = { + limit = { has_trait = paranoid } + multiply = 3 + } + } + } + peaceful = { + trigger = { + NOT = { has_trait = impatient } + } + weight = { + value = 1000 + if = { + limit = { has_trait = calm } + multiply = 3 + } + } + } + good = { + trigger = { + NOT = { has_trait = cynical } + } + weight = { + value = 1000 + if = { + limit = { has_trait = compassionate } + multiply = 3 + } + } + } + dreadful = { + trigger = { + OR = { + has_trait = sadistic + has_trait = callous + } + } + weight = { + value = 1000 + if = { + limit = { has_trait = sadistic } + multiply = 5 + } + } + } + persevering = { + trigger = { + NOT = { has_trait = lazy } + } + weight = { + value = 1000 + if = { + limit = { has_trait = diligent } + multiply = 3 + } + } + weight = { + value = 1000 + if = { + limit = { has_trait = stubborn } + multiply = 3 + } + } + } + faithful = { + trigger = { + NOT = { has_trait = cynical } + } + weight = { + value = 1000 + if = { + limit = { has_trait = zealous } + multiply = 3 + } + } + } + pious = { + trigger = { + NOT = { has_trait = cynical } + } + weight = { + value = 1000 + if = { + limit = { has_trait = zealous } + multiply = 3 + } + } + } + devoted = { + trigger = { + NOT = { has_trait = cynical } + } + weight = { + value = 1000 + if = { + limit = { has_trait = zealous } + multiply = 3 + } + } + } + forgiving = { + trigger = { + NOT = { has_trait = vengeful } + } + weight = { + value = 1000 + if = { + limit = { has_trait = forgiving } + multiply = 3 + } + } + } + learned = { + trigger = { + NOT = { has_trait = wrathful } + } + weight = { + value = 1000 + if = { + limit = { learning = 20 } + multiply = 3 + } + if = { + limit = { + faith = { + religion = { is_in_family = rf_eastern } + } + } + multiply = 1.25 + } + } + } + loving = { + trigger = { + NOR = { + has_trait = paranoid + has_trait = ambitious + } + } + weight = { + value = 1000 + if = { + limit = { has_trait = content } + multiply = 3 + } + if = { + limit = { has_trait = trusting } + multiply = 2 + } + if = { + limit = { + faith = { + religion = { is_in_family = rf_eastern } + } + } + multiply = 0.1 + } + } + } + loyal = { + trigger = { + NOT = { has_trait = paranoid } + } + weight = { + value = 1000 + if = { + limit = { has_trait = trusting } + multiply = 3 + } + } + } + noble = { + trigger = { + NOT = { has_trait = humble } + } + weight = { + value = 1000 + if = { + limit = { has_trait = arrogant } + multiply = 3 + } + } + } + industrious = { + trigger = { + NOT = { has_trait = lazy } + } + weight = { + value = 1000 + if = { + limit = { has_trait = diligent } + multiply = 3 + } + } + } + stalwart = { + trigger = { + NOT = { has_trait = fickle } + } + weight = { + value = 1000 + if = { + limit = { has_trait = stubborn } + multiply = 3 + } + } + } + virtuous = { + trigger = { + num_sinful_traits = 0 + } + weight = { + value = 1000 + if = { + limit = { has_trait = humble } + multiply = 3 + } + if = { + limit = { + faith = { + religion = { is_in_family = rf_eastern } + } + } + multiply = 0.1 + } + } + } + brave = { + trigger = { + NOT = { has_trait = craven } + } + weight = { + value = 1000 + if = { + limit = { has_trait = brave } + multiply = 3 + } + if = { + limit = { + faith = { + religion = { is_in_family = rf_eastern } + } + } + multiply = 0.1 + } + } + } + calm = { + trigger = { + faith = { + religion = { is_in_family = rf_eastern } + } + } + weight = { + value = 1250 + if = { + limit = { has_trait = calm } + multiply = 3 + } + } + } + harmonious = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + filial = { + trigger = { + broadly_chinese_religion_trigger = yes + } + weight = { + value = 1000 + } + } + + disciplined = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + pure = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + graceful = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + enlightened = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + balanced = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + sincere = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + meritorious = { + trigger = { + broadly_chinese_religion_trigger = yes + } + weight = { + value = 1000 + } + } + + steadfast = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + tranquil = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } +} + +the_adjective_immaterial = { + the_honorable = { + trigger = { + NOT = { has_trait = deceitful } + } + weight = { + value = 1000 + if = { + limit = { has_trait = honest } + multiply = 3 + } + if = { + limit = { has_trait = just } + multiply = 2 + } + } + } + the_truthful = { + trigger = { + NOT = { has_trait = deceitful } + } + weight = { + value = 1000 + if = { + limit = { has_trait = honest } + multiply = 3 + } + if = { + limit = { has_trait = just } + multiply = 2 + } + } + } + the_triumphant = { + trigger = { + NOT = { has_trait = humble } + } + weight = { + value = 1000 + if = { + limit = { has_trait = ambitious } + multiply = 3 + } + if = { + limit = { + faith = { + religion = { is_in_family = rf_eastern } + } + } + multiply = 0.1 + } + } + } + the_valorous = { + trigger = { + NOT = { has_trait = humble } + } + weight = { + value = 1000 + if = { + limit = { has_trait = brave } + multiply = 3 + } + if = { + limit = { + faith = { + religion = { is_in_family = rf_eastern } + } + } + multiply = 0.1 + } + } + } + the_strong = { + trigger = { + NOT = { has_trait = humble } + } + weight = { + value = 1000 + if = { + limit = { has_trait = brave } + multiply = 3 + } + if = { + limit = { + faith = { + religion = { is_in_family = rf_eastern } + } + } + multiply = 0.1 + } + } + } + the_courageous = { + trigger = { + NOT = { has_trait = humble } + } + weight = { + value = 1000 + if = { + limit = { has_trait = brave } + multiply = 3 + } + if = { + limit = { + faith = { + religion = { is_in_family = rf_eastern } + } + } + multiply = 0.1 + } + } + } + the_mighty = { + trigger = { + NOT = { has_trait = humble } + } + weight = { + value = 1000 + if = { + limit = { has_trait = brave } + multiply = 3 + } + if = { + limit = { + faith = { + religion = { is_in_family = rf_eastern } + } + } + multiply = 0.1 + } + } + } + the_cunning = { + trigger = { + NOT = { has_trait = impatient } + } + weight = { + value = 1000 + if = { + limit = { has_trait = patient } + multiply = 3 + } + if = { + limit = { + faith = { + religion = { is_in_family = rf_eastern } + } + } + multiply = 0.1 + } + } + } + the_bold = { + trigger = { + NOT = { has_trait = shy } + } + weight = { + value = 1000 + if = { + limit = { has_trait = brave } + multiply = 3 + } + if = { + limit = { + faith = { + religion = { is_in_family = rf_eastern } + } + } + multiply = 0.1 + } + } + } + the_victorious = { + trigger = { + NOT = { has_trait = humble } + } + weight = { + value = 1000 + if = { + limit = { has_trait = ambitious } + multiply = 3 + } + if = { + limit = { + faith = { + religion = { is_in_family = rf_eastern } + } + } + multiply = 0.1 + } + } + } + the_wise = { + trigger = { + NOT = { has_trait = impatient } + } + weight = { + value = 1000 + if = { + limit = { has_trait = patient } + multiply = 3 + } + } + } + the_vigilant = { + trigger = { + NOT = { has_trait = impatient } + } + weight = { + value = 1000 + if = { + limit = { has_trait = paranoid } + multiply = 3 + } + } + } + the_peaceful = { + trigger = { + NOT = { has_trait = impatient } + } + weight = { + value = 1000 + if = { + limit = { has_trait = calm } + multiply = 3 + } + } + } + the_good = { + trigger = { + NOT = { has_trait = cynical } + } + weight = { + value = 1000 + if = { + limit = { has_trait = compassionate } + multiply = 3 + } + } + } + the_dreadful = { + trigger = { + OR = { + has_trait = sadistic + has_trait = callous + } + } + weight = { + value = 1000 + if = { + limit = { has_trait = sadistic } + multiply = 5 + } + } + } + the_persevering = { + trigger = { + NOT = { has_trait = lazy } + } + weight = { + value = 1000 + if = { + limit = { has_trait = diligent } + multiply = 3 + } + } + weight = { + value = 1000 + if = { + limit = { has_trait = stubborn } + multiply = 3 + } + } + } + the_faithful = { + trigger = { + NOT = { has_trait = cynical } + } + weight = { + value = 1000 + if = { + limit = { has_trait = zealous } + multiply = 3 + } + } + } + the_pious = { + trigger = { + NOT = { has_trait = cynical } + } + weight = { + value = 1000 + if = { + limit = { has_trait = zealous } + multiply = 3 + } + } + } + the_devoted = { + trigger = { + NOT = { has_trait = cynical } + } + weight = { + value = 1000 + if = { + limit = { has_trait = zealous } + multiply = 3 + } + } + } + the_forgiving = { + trigger = { + NOT = { has_trait = vengeful } + } + weight = { + value = 1000 + if = { + limit = { has_trait = forgiving } + multiply = 3 + } + } + } + the_learned = { + trigger = { + NOT = { has_trait = wrathful } + } + weight = { + value = 1000 + if = { + limit = { learning = 20 } + multiply = 3 + } + if = { + limit = { + faith = { + religion = { is_in_family = rf_eastern } + } + } + multiply = 1.25 + } + } + } + the_loving = { + trigger = { + NOR = { + has_trait = paranoid + has_trait = ambitious + } + } + weight = { + value = 1000 + if = { + limit = { has_trait = content } + multiply = 3 + } + if = { + limit = { has_trait = trusting } + multiply = 2 + } + } + } + the_loyal = { + trigger = { + NOT = { has_trait = paranoid } + } + weight = { + value = 1000 + if = { + limit = { has_trait = trusting } + multiply = 3 + } + } + } + the_noble = { + trigger = { + NOT = { has_trait = humble } + } + weight = { + value = 1000 + if = { + limit = { has_trait = arrogant } + multiply = 3 + } + } + } + the_industrious = { + trigger = { + NOT = { has_trait = lazy } + } + weight = { + value = 1000 + if = { + limit = { has_trait = diligent } + multiply = 3 + } + } + } + the_stalwart = { + trigger = { + NOT = { has_trait = fickle } + } + weight = { + value = 1000 + if = { + limit = { has_trait = stubborn } + multiply = 3 + } + } + } + the_virtuous = { + trigger = { + num_sinful_traits = 0 + } + weight = { + value = 1000 + if = { + limit = { has_trait = humble } + multiply = 3 + } + } + } + the_brave = { + trigger = { + NOT = { has_trait = craven } + } + weight = { + value = 1000 + if = { + limit = { has_trait = brave } + multiply = 3 + } + if = { + limit = { + faith = { + religion = { is_in_family = rf_eastern } + } + } + multiply = 0.1 + } + } + } + the_calm = { + trigger = { + faith = { + religion = { is_in_family = rf_eastern } + } + } + weight = { + value = 1250 + if = { + limit = { has_trait = calm } + multiply = 3 + } + } + } + the_harmonious = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + the_filial = { + trigger = { + broadly_chinese_religion_trigger = yes + } + weight = { + value = 1000 + } + } + + the_disciplined = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + the_pure = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + the_graceful = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + the_enlightened = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + the_balanced = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + the_sincere = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + the_meritorious = { + trigger = { + broadly_chinese_religion_trigger = yes + } + weight = { + value = 1000 + } + } + + the_steadfast = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + the_tranquil = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + +} + +adjective_immaterial_a_or_an = { + an_honorable = { + trigger = { + NOT = { has_trait = deceitful } + } + weight = { + value = 1000 + if = { + limit = { has_trait = honest } + multiply = 3 + } + if = { + limit = { has_trait = just } + multiply = 2 + } + } + } + a_truthful = { + trigger = { + NOT = { has_trait = deceitful } + } + weight = { + value = 1000 + if = { + limit = { has_trait = honest } + multiply = 3 + } + if = { + limit = { has_trait = just } + multiply = 2 + } + } + } + a_triumphant = { + trigger = { + NOT = { has_trait = humble } + } + weight = { + value = 1000 + if = { + limit = { has_trait = ambitious } + multiply = 3 + } + } + } + a_valorous = { + trigger = { + NOT = { has_trait = humble } + } + weight = { + value = 1000 + if = { + limit = { has_trait = brave } + multiply = 3 + } + } + } + a_strong = { + trigger = { + NOT = { has_trait = humble } + } + weight = { + value = 1000 + if = { + limit = { has_trait = brave } + multiply = 3 + } + if = { + limit = { + faith = { + religion = { is_in_family = rf_eastern } + } + } + multiply = 0.1 + } + } + } + a_courageous = { + trigger = { + NOT = { has_trait = humble } + } + weight = { + value = 1000 + if = { + limit = { has_trait = brave } + multiply = 3 + } + if = { + limit = { + faith = { + religion = { is_in_family = rf_eastern } + } + } + multiply = 0.1 + } + } + } + a_mighty = { + trigger = { + NOT = { has_trait = humble } + } + weight = { + value = 1000 + if = { + limit = { has_trait = brave } + multiply = 3 + } + if = { + limit = { + faith = { + religion = { is_in_family = rf_eastern } + } + } + multiply = 0.1 + } + } + } + a_cunning = { + trigger = { + NOT = { has_trait = impatient } + } + weight = { + value = 1000 + if = { + limit = { has_trait = patient } + multiply = 3 + } + if = { + limit = { + faith = { + religion = { is_in_family = rf_eastern } + } + } + multiply = 0.1 + } + } + } + a_bold = { + trigger = { + NOT = { has_trait = shy } + } + weight = { + value = 1000 + if = { + limit = { has_trait = brave } + multiply = 3 + } + if = { + limit = { + faith = { + religion = { is_in_family = rf_eastern } + } + } + multiply = 0.1 + } + } + } + a_victorious = { + trigger = { + NOT = { has_trait = humble } + } + weight = { + value = 1000 + if = { + limit = { has_trait = ambitious } + multiply = 3 + } + if = { + limit = { + faith = { + religion = { is_in_family = rf_eastern } + } + } + multiply = 0.1 + } + } + } + a_wise = { + trigger = { + NOT = { has_trait = impatient } + } + weight = { + value = 1000 + if = { + limit = { has_trait = patient } + multiply = 3 + } + } + } + a_vigilant = { + trigger = { + NOT = { has_trait = impatient } + } + weight = { + value = 1000 + if = { + limit = { has_trait = paranoid } + multiply = 3 + } + } + } + a_peaceful = { + trigger = { + NOT = { has_trait = impatient } + } + weight = { + value = 1000 + if = { + limit = { has_trait = calm } + multiply = 3 + } + } + } + a_good = { + trigger = { + NOT = { has_trait = cynical } + } + weight = { + value = 1000 + if = { + limit = { has_trait = compassionate } + multiply = 3 + } + } + } + a_dreadful = { + trigger = { + OR = { + has_trait = sadistic + has_trait = callous + } + } + weight = { + value = 1000 + if = { + limit = { has_trait = sadistic } + multiply = 5 + } + } + } + a_persevering = { + trigger = { + NOT = { has_trait = lazy } + } + weight = { + value = 1000 + if = { + limit = { has_trait = diligent } + multiply = 3 + } + } + weight = { + value = 1000 + if = { + limit = { has_trait = stubborn } + multiply = 3 + } + } + } + a_faithful = { + trigger = { + NOT = { has_trait = cynical } + } + weight = { + value = 1000 + if = { + limit = { has_trait = zealous } + multiply = 3 + } + } + } + a_pious = { + trigger = { + NOT = { has_trait = cynical } + } + weight = { + value = 1000 + if = { + limit = { has_trait = zealous } + multiply = 3 + } + } + } + a_devoted = { + trigger = { + NOT = { has_trait = cynical } + } + weight = { + value = 1000 + if = { + limit = { has_trait = zealous } + multiply = 3 + } + } + } + a_forgiving = { + trigger = { + NOT = { has_trait = vengeful } + } + weight = { + value = 1000 + if = { + limit = { has_trait = forgiving } + multiply = 3 + } + } + } + a_learned = { + trigger = { + NOT = { has_trait = wrathful } + } + weight = { + value = 1000 + if = { + limit = { learning = 20 } + multiply = 3 + } + if = { + limit = { + faith = { + religion = { is_in_family = rf_eastern } + } + } + multiply = 1.25 + } + } + } + a_loving = { + trigger = { + NOR = { + has_trait = paranoid + has_trait = ambitious + } + } + weight = { + value = 1000 + if = { + limit = { has_trait = content } + multiply = 3 + } + if = { + limit = { has_trait = trusting } + multiply = 2 + } + } + } + a_loyal = { + trigger = { + NOT = { has_trait = paranoid } + } + weight = { + value = 1000 + if = { + limit = { has_trait = trusting } + multiply = 3 + } + } + } + a_noble = { + trigger = { + NOT = { has_trait = humble } + } + weight = { + value = 1000 + if = { + limit = { has_trait = arrogant } + multiply = 3 + } + } + } + an_industrious = { + trigger = { + NOT = { has_trait = lazy } + } + weight = { + value = 1000 + if = { + limit = { has_trait = diligent } + multiply = 3 + } + } + } + a_stalwart = { + trigger = { + NOT = { has_trait = fickle } + } + weight = { + value = 1000 + if = { + limit = { has_trait = stubborn } + multiply = 3 + } + } + } + a_virtuous = { + trigger = { + num_sinful_traits = 0 + } + weight = { + value = 1000 + if = { + limit = { has_trait = humble } + multiply = 3 + } + } + } + a_brave = { + trigger = { + NOT = { has_trait = craven } + } + weight = { + value = 1000 + if = { + limit = { has_trait = brave } + multiply = 3 + } + if = { + limit = { + faith = { + religion = { is_in_family = rf_eastern } + } + } + multiply = 0.1 + } + } + } + a_calm = { + trigger = { + faith = { + religion = { is_in_family = rf_eastern } + } + } + weight = { + value = 1250 + if = { + limit = { has_trait = calm } + multiply = 3 + } + } + } + + a_harmonious = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + a_filial = { + trigger = { + broadly_chinese_religion_trigger = yes + } + weight = { + value = 1000 + } + } + + a_disciplined = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + a_pure = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + a_graceful = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + an_enlightened = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + a_balanced = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + a_sincere = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + a_meritorious = { + trigger = { + broadly_chinese_religion_trigger = yes + } + weight = { + value = 1000 + } + } + + a_steadfast = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + a_tranquil = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + +} + +noble_act = { + defend = { + } + protect = { + } + avenge = { + } + help = { + } + keep = { + } + watch_over = { + } + shield = { + } + guard = { + } + bless = { + } + aid = { + } + assist = { + } + befriend = { + } + champion = { + } + govern = { + } + guide = { + } + heal = { + } + inspire = { + } + rule = { + } + stand_by = { + } + support = { + } + teach = { + } + command = { + } + sway = { + } + repay = { + } + respect_verb = { + } + honor_verb = { + } + serve = { + } + will = { + } + trust_verb = { + } + prepare = { + } + harmonize = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + meditate = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + revere = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + endure = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + cleanse = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + enlighten = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + pacify = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + restore = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + transcend = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + +} + +weapon = { + sword_word = { + weight = { + value = 3000 + if = { + limit = { NOT = { government_has_flag = government_is_tribal } } + multiply = 5 + } + } + } + axe = { + weight = { + value = 3000 + if = { + limit = { government_has_flag = government_is_tribal } + multiply = 5 + } + if = { + limit = { + religion_is_broadly_asian_trigger = yes + } + multiply = 0 + } + } + } + spear = { + weight = { + value = 3000 + } + } + hammer = { + weight = { + value = 3000 + if = { + limit = { + religion_is_broadly_asian_trigger = yes + } + multiply = 0 + } + } + } + bow = { + weight = { + value = 3000 + if = { + limit = { + OR = { + culture = { has_cultural_pillar = heritage_mongolic } + culture = { has_cultural_pillar = heritage_turkic } + } + } + multiply = 5 + } + } + } + lance = { + weight = { + value = 1000 + if = { + limit = { NOT = { government_has_flag = government_is_tribal } } + multiply = 3 + } + if = { + limit = { + religion_is_broadly_asian_trigger = yes + } + multiply = 0 + } + } + } +} + +the_weapon = { + the_sword_word = { + weight = { + value = 3000 + if = { + limit = { NOT = { government_has_flag = government_is_tribal } } + multiply = 5 + } + } + } + the_axe = { + weight = { + value = 3000 + if = { + limit = { government_has_flag = government_is_tribal } + multiply = 5 + } + if = { + limit = { + religion_is_broadly_asian_trigger = yes + } + multiply = 0 + } + } + } + the_spear = { + weight = { + value = 3000 + } + } + the_hammer = { + weight = { + value = 3000 + if = { + limit = { + religion_is_broadly_asian_trigger = yes + } + multiply = 0 + } + } + } + the_bow = { + weight = { + value = 3000 + if = { + limit = { + OR = { + culture = { has_cultural_pillar = heritage_mongolic } + culture = { has_cultural_pillar = heritage_turkic } + } + } + multiply = 5 + } + } + } + the_lance = { + weight = { + value = 1000 + if = { + limit = { NOT = { government_has_flag = government_is_tribal } } + multiply = 3 + } + if = { + limit = { + religion_is_broadly_asian_trigger = yes + } + multiply = 0 + } + } + } + the_pen = { + trigger = { + OR = { + learning = 8 + has_trait = scholar + } + } + weight = { + value = 1000 + if = { + limit = { government_has_flag = government_is_tribal } + multiply = 0.25 + } + } + } +} + +creature = { + wolf = { + } + bear = { + } + eagle = { + } + ox = { + } + unicorn = { + trigger = { + NOR = { + culture = { has_cultural_pillar = heritage_west_african } + culture = { has_cultural_pillar = heritage_central_african } + culture = { has_cultural_pillar = heritage_sahelian } + culture = { has_cultural_pillar = heritage_senegambian } + culture = { has_cultural_pillar = heritage_akan } + culture = { has_cultural_pillar = heritage_yoruba } + culture = { has_cultural_pillar = heritage_dravidian } + culture = { has_cultural_pillar = heritage_indo_aryan } + } + } + } + dragon = { + } + boar = { + } + giant_snail = { + trigger = { + has_trait = lunatic + } + } + lion = { + } + fox = { + } + tiger = { + trigger = { + OR = { + culture = { has_cultural_pillar = heritage_dravidian } + culture = { has_cultural_pillar = heritage_indo_aryan } + } + } + } + elephant = { + trigger = { + OR = { + culture = { has_cultural_pillar = heritage_dravidian } + culture = { has_cultural_pillar = heritage_indo_aryan } + culture = { has_cultural_pillar = heritage_sahelian } + } + } + } + hound = { + trigger = { + faith = { + NOT = { + religion_tag = islam_religion + } + } + } + } + horse = { + weight = { + value = 1000 + if = { + limit = { + OR = { + culture = { has_cultural_pillar = heritage_mongolic } + culture = { has_cultural_pillar = heritage_turkic } + } + } + multiply = 5 + } + } + } + leopard = { + trigger = { + OR = { + culture = { has_cultural_pillar = heritage_west_african } + culture = { has_cultural_pillar = heritage_sahelian } + culture = { has_cultural_pillar = heritage_senegambian } + culture = { has_cultural_pillar = heritage_central_african } + } + } + } + gazelle = { + trigger = { + OR = { + culture = { has_cultural_pillar = heritage_west_african } + culture = { has_cultural_pillar = heritage_sahelian } + culture = { has_cultural_pillar = heritage_senegambian } + culture = { has_cultural_pillar = heritage_central_african } + } + } + } + hippopotamus = { + trigger = { + OR = { + culture = { has_cultural_pillar = heritage_west_african } + culture = { has_cultural_pillar = heritage_sahelian } + culture = { has_cultural_pillar = heritage_senegambian } + culture = { has_cultural_pillar = heritage_central_african } + } + } + } + reindeer = { + trigger = { + OR = { + culture = { has_cultural_pillar = heritage_balto_finnic } + culture = { has_cultural_pillar = heritage_ugro_permian } + } + } + weight = { + value = 1000 + if = { + limit = { + has_culture = culture:sami + } + multiply = 5 + } + } + } +} + +the_creature = { + the_wolf = { + } + the_bear = { + } + the_eagle = { + } + the_ox = { + } + the_unicorn = { + } + the_dragon = { + } + the_boar = { + } + the_giant_snail = { + trigger = { + has_trait = lunatic + } + } + the_lion = { + } + the_fox = { + } + the_tiger = { + trigger = { + OR = { + culture = { has_cultural_pillar = heritage_dravidian } + culture = { has_cultural_pillar = heritage_indo_aryan } + } + } + } + the_elephant = { + trigger = { + OR = { + culture = { has_cultural_pillar = heritage_dravidian } + culture = { has_cultural_pillar = heritage_indo_aryan } + culture = { has_cultural_pillar = heritage_west_african } + culture = { has_cultural_pillar = heritage_west_african } + culture = { has_cultural_pillar = heritage_sahelian } + culture = { has_cultural_pillar = heritage_central_african } + } + } + } + the_hound = { + trigger = { + faith = { + NOT = { + religion_tag = islam_religion + } + } + } + } + the_horse = { + weight = { + value = 1000 + if = { + limit = { + OR = { + culture = { has_cultural_pillar = heritage_mongolic } + culture = { has_cultural_pillar = heritage_turkic } + } + } + multiply = 5 + } + } + } + the_leopard = { + trigger = { + OR = { + culture = { has_cultural_pillar = heritage_west_african } + culture = { has_cultural_pillar = heritage_sahelian } + culture = { has_cultural_pillar = heritage_senegambian } + culture = { has_cultural_pillar = heritage_central_african } + } + } + } + the_gazelle = { + trigger = { + OR = { + culture = { has_cultural_pillar = heritage_west_african } + culture = { has_cultural_pillar = heritage_sahelian } + culture = { has_cultural_pillar = heritage_senegambian } + culture = { has_cultural_pillar = heritage_central_african } + } + } + } + the_hippopotamus = { + trigger = { + OR = { + culture = { has_cultural_pillar = heritage_west_african } + culture = { has_cultural_pillar = heritage_sahelian } + culture = { has_cultural_pillar = heritage_senegambian } + culture = { has_cultural_pillar = heritage_central_african } + } + } + } + the_reindeer = { + trigger = { + OR = { + culture = { has_cultural_pillar = heritage_balto_finnic } + culture = { has_cultural_pillar = heritage_ugro_permian } + } + } + weight = { + value = 1000 + if = { + limit = { + has_culture = culture:sami + } + multiply = 5 + } + } + } +} + +annoying_action_verb = { + irritate = { + } + irk = { + } + vex = { + } + bother = { + } + rile = { + } + pester = { + } + challenge = { + } + defy = { + } + mock = { + } + face = { + } +} + +negative_noun = { + envy = { + trigger = { + NOT = { has_trait = impatient } + } + } + fear = { + trigger = { + } + } + doubt = { + trigger = { + NOT = { has_trait = cynical } + } + } + malice = { + trigger = { + NOT = { has_trait = sadistic } + } + } + wanting = { + trigger = { + NOT = { has_trait = lustful } + } + } + cruelty = { + trigger = { + NOT = { has_trait = callous } + } + } + greed = { + trigger = { + NOT = { has_trait = greedy } + } + } + wrath = { + trigger = { + NOT = { has_trait = wrathful } + } + } + + shame = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + attachment = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + delusion = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + ignorance = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + defilement = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + dishonor = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + decay = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + hubris = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + confusion = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + regret = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + chaos = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + +} + +negative_adjective = { + envious = { + trigger = { + NOT = { has_trait = impatient } + } + } + fearful = { + trigger = { + } + } + doubtful = { + trigger = { + NOT = { has_trait = cynical } + } + } + malicious = { + trigger = { + NOT = { has_trait = sadistic } + } + } + wanting_adjective = { + trigger = { + NOT = { has_trait = lustful } + } + } + cruel = { + trigger = { + NOT = { has_trait = callous } + } + } + greedy = { + trigger = { + NOT = { has_trait = greedy } + } + } + wrathful = { + trigger = { + NOT = { has_trait = wrathful } + } + } + + ashamed = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + attached = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + deluded = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + ignorant = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + defiled = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + dishonored = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + decaying = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + hubristic = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + confused = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + + regretful = { + trigger = { + religion_is_broadly_asian_trigger = yes + } + weight = { + value = 1000 + } + } + +} + +various_godly_things_list = { + christ_protects_us = { + } + christs_promises = { + } + suffer_by_god = { + } + not_vain = { + } + all_through_god = { + } + eartly_realm = { + } + praise_be_to_god = { + } + cross_salvation = { + } + salvation_through_christ = { + } + help_o_god = { + } + sing_of_heavenly_things = { + } +} + +unique_pool_list = { + thus_should_law_be_followed = { + } + from_near_and_far = { + } + above_all = { + } + childhood_games = { + } + take_up_arms = { + } + ancestors = { + } + teaching = { + } + eagle_fly = { + } + nothing_scares = { + } + one_after_another = { + } + go_and_die = { + } + mourn_rejoice = { + } + trust_them = { + } + disarmed_man = { + } + drink_your_blood = { + } + from_great_men = { + } + this_sigil = { + } + from_all_my_heart = { + } + regret_past = { + } + do_what_you_must = { + } + good_life = { + } + more_than_silver = { + } + without_fear = { + } + break_bend = { + } + always_a_house = { + } + firm_as_horn = { + } + i_die_where_my_heart_belongs = { + } + iron_gold = { + } + hold_fast = { + } + handsome_enough = { + } +} + +norse_gods_aspects_list = { + odins_wisdom = { + #trigger = { + # NOT = { has_trait = cynical } + #} + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = zealous + has_trait = lifestyle_mystic + has_trait = one_eyed + has_trait = ambitious + has_trait = shrewd + } + } + add = 990 + } + } + } + odins_brilliance = { + #trigger = { + # NOT = { has_trait = cynical } + #} + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = zealous + has_trait = lifestyle_mystic + has_trait = one_eyed + has_trait = ambitious + has_trait = shrewd + } + } + add = 990 + } + } + } + odins_frenzy = { + trigger = { + NOR = { + has_trait = calm + has_trait = patient + } + } + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = zealous + has_trait = berserker + has_trait = one_eyed + has_trait = ambitious + } + } + add = 990 + } + } + } + odins_sorcery = { + trigger = { + NOT = { + has_trait = cynical + } + } + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = zealous + has_trait = lifestyle_mystic + has_trait = witch + has_trait = one_eyed + has_trait = ambitious + } + } + add = 990 + } + } + } + odins_eye = { + trigger = { + } + weight = { + value = 10 + if = { + limit = { + has_trait = one_eyed + } + add = 7990 + } + } + } + odins_ravens = { + trigger = { + NOT = { + has_trait = cynical + } + } + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = zealous + has_trait = lifestyle_mystic + has_trait = witch + has_trait = one_eyed + has_trait = ambitious + } + } + add = 990 + } + } + } + friggs_wisdom = { + trigger = { + NOR = { + has_trait = sadistic + has_trait = callous + has_trait = deceitful + } + } + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = calm + has_trait = content + } + } + add = 990 + } + } + } + friggs_loins = { + trigger = { + is_female = yes + NOR = { + has_trait = sadistic + has_trait = callous + has_trait = deceitful + has_trait = chaste + has_trait = celibate + } + } + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = fecund + has_trait = lustful + } + } + add = 990 + } + } + } + thors_strength = { + trigger = { + NOR = { + has_trait = calm + has_trait = content + has_trait = patient + has_trait = forgiving + } + } + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = impatient + has_trait = brave + has_trait = arrogant + has_trait = strong + has_trait = physique_good + has_trait = gregarious + } + } + add = 990 + } + } + } + thors_thunder = { + trigger = { + NOR = { + has_trait = calm + has_trait = content + has_trait = patient + has_trait = forgiving + } + } + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = impatient + has_trait = brave + has_trait = arrogant + has_trait = strong + has_trait = physique_good + has_trait = gregarious + } + } + add = 990 + } + } + } + tyrs_prowess = { + trigger = { + NOR = { + has_trait = arrogant + has_trait = impatient + } + } + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = brave + has_trait = scarred + has_trait = strategist + has_trait = lifestyle_blademaster + } + } + add = 990 + } + } + } + tyrs_bravery = { + trigger = { + NOR = { + has_trait = arrogant + has_trait = impatient + } + } + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = brave + has_trait = scarred + has_trait = strategist + has_trait = lifestyle_blademaster + } + } + add = 990 + } + } + } + baldurs_light = { + trigger = { + NOR = { + has_trait = deceitful + has_trait = arbitrary + has_trait = arrogant + has_trait = callous + has_trait = sadistic + } + } + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = beauty_good + has_trait = just + has_trait = honest + has_trait = compassionate + } + } + add = 990 + } + } + } + baldurs_purity = { + trigger = { + NOR = { + has_trait = deceitful + has_trait = arbitrary + has_trait = arrogant + has_trait = callous + has_trait = sadistic + } + } + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = beauty_good + has_trait = just + has_trait = honest + has_trait = compassionate + } + } + add = 990 + } + } + } + baldurs_fairness = { + trigger = { + NOR = { + has_trait = deceitful + has_trait = arbitrary + has_trait = arrogant + has_trait = callous + has_trait = sadistic + } + } + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = beauty_good + has_trait = just + has_trait = honest + has_trait = compassionate + } + } + add = 990 + } + } + } + baldurs_wisdom = { + trigger = { + NOR = { + has_trait = deceitful + has_trait = arbitrary + has_trait = arrogant + has_trait = callous + has_trait = sadistic + } + } + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = beauty_good + has_trait = just + has_trait = honest + has_trait = compassionate + } + } + add = 990 + } + } + } + baldurs_justice = { + trigger = { + NOR = { + has_trait = deceitful + has_trait = arbitrary + has_trait = arrogant + has_trait = callous + has_trait = sadistic + } + } + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = beauty_good + has_trait = just + has_trait = honest + has_trait = compassionate + } + } + add = 990 + } + } + } + lokis_cunning = { + trigger = { + OR = { + has_trait = deceitful + has_trait = arbitrary + has_trait = fickle + has_trait = sadistic + has_trait = callous + } + NOR = { + has_trait = honest + has_trait = just + has_trait = compassionate + } + } + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = deceitful + has_trait = arbitrary + has_trait = kinslayer + has_trait = murderer + has_trait = fickle + has_trait = sadistic + has_trait = callous + } + } + add = 990 + } + } + } + lokis_deceit = { + trigger = { + OR = { + has_trait = deceitful + has_trait = arbitrary + has_trait = fickle + has_trait = sadistic + has_trait = callous + } + NOR = { + has_trait = honest + has_trait = just + has_trait = compassionate + } + } + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = deceitful + has_trait = arbitrary + has_trait = kinslayer + has_trait = murderer + has_trait = fickle + has_trait = sadistic + has_trait = callous + } + } + add = 990 + } + } + } + heimdalls_sight = { + trigger = { + NOR = { + has_trait = impatient + has_trait = lazy + } + } + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = diligent + has_trait = patient + has_trait = overseer + } + } + add = 990 + } + } + } + heimdalls_vigilance = { + trigger = { + NOR = { + has_trait = impatient + has_trait = lazy + } + } + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = diligent + has_trait = patient + has_trait = overseer + } + } + add = 990 + } + } + } + freys_virility = { + trigger = { + is_male = yes + NOR = { + has_trait = chaste + has_trait = celibate + } + } + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = fecund + has_trait = lustful + } + } + add = 990 + } + } + } + freys_wealth = { + trigger = { + NOR = { + has_trait = greedy + has_trait = vengeful + } + } + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = forgiving + has_trait = generous + has_trait = temperate + } + } + add = 990 + } + } + } + freys_harvests = { + trigger = { + NOR = { + has_trait = greedy + has_trait = vengeful + } + } + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = forgiving + has_trait = generous + has_trait = temperate + } + } + add = 990 + } + } + } + freys_peace = { + trigger = { + NOR = { + has_trait = greedy + has_trait = vengeful + has_trait = ambitious + } + } + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = forgiving + has_trait = generous + has_trait = temperate + } + } + add = 990 + } + } + } + freyas_love = { + trigger = { + NOR = { + has_trait = chaste + has_trait = celibate + } + } + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = lustful + has_trait = witch + has_trait = beauty_good + has_trait = lifestyle_mystic + } + } + add = 990 + } + } + } + freyas_beauty = { + trigger = { + NOR = { + has_trait = chaste + has_trait = celibate + } + } + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = lustful + has_trait = witch + has_trait = beauty_good + has_trait = lifestyle_mystic + } + } + add = 990 + } + } + } + freyas_pleasure = { + trigger = { + NOR = { + has_trait = chaste + has_trait = celibate + } + } + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = lustful + has_trait = witch + has_trait = beauty_good + has_trait = lifestyle_mystic + } + } + add = 990 + } + } + } + freyas_witchcraft = { + trigger = { + NOR = { + has_trait = chaste + has_trait = celibate + } + } + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = lustful + has_trait = witch + has_trait = beauty_good + has_trait = lifestyle_mystic + } + } + add = 990 + } + } + } + freyas_cats = { + trigger = { + NOR = { + has_trait = chaste + has_trait = celibate + } + } + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = lustful + has_trait = witch + has_trait = beauty_good + has_trait = lifestyle_mystic + } + } + add = 990 + } + } + } + freyas_prophecy = { + trigger = { + NOR = { + has_trait = chaste + has_trait = celibate + } + } + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = lustful + has_trait = witch + has_trait = beauty_good + has_trait = lifestyle_mystic + } + } + add = 990 + } + } + } + vidars_vengeance = { + trigger = { + NOT = { + has_trait = forgiving + } + } + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = vengeful + has_trait = shy + } + } + add = 990 + } + } + } + vidars_silence = { + trigger = { + NOT = { + has_trait = forgiving + } + } + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = vengeful + has_trait = shy + } + } + add = 990 + } + } + } + bragis_poetry = { + trigger = { + NOR = { + has_trait = shy + has_trait = brave + } + } + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = gregarious + has_trait = lifestyle_reveler + has_trait = craven + } + } + add = 990 + } + } + } + bragis_music = { + trigger = { + NOR = { + has_trait = shy + has_trait = brave + } + } + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = gregarious + has_trait = lifestyle_reveler + has_trait = craven + } + } + add = 990 + } + } + } + hels_darkness = { + trigger = { + OR = { + has_trait = depressed + has_trait = lunatic + has_trait = possessed + } + } + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = depressed + has_trait = lunatic + has_trait = possessed + } + } + add = 990 + } + } + } + njords_seas = { + trigger = { + NOT = { + has_trait = generous + } + } + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = viking + has_trait = greedy + has_trait = adventurer + } + } + add = 990 + } + } + } + njords_wealth = { + trigger = { + NOT = { + has_trait = generous + } + } + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = viking + has_trait = greedy + has_trait = adventurer + } + } + add = 990 + } + } + } + mimirs_knowledge = { + trigger = { + } + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = shrewd + has_trait = intellect_good + } + } + add = 990 + } + } + } + hodurs_trustiness = { + trigger = { + OR = { + has_trait = trusting + has_trait = blind + } + } + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = trusting + has_trait = blind + } + } + add = 990 + } + } + } + ratatoskrs_two_front_teeth = { + trigger = { + is_adult = no + OR = { + has_trait = curious + has_trait = charming + } + } + weight = { + value = 10 + if = { + limit = { + OR = { + has_trait = curious + has_trait = charming + } + } + add = 990 + } + } + } +} + +righteous_reward = { + insert_eternal_peace = {} + insert_rightful_dominion = {} + insert_glorious_purpose = {} + insert_divine_favor = {} +} + +imperishable_legacy = { + insert_deathless_name = {} + insert_undying_truth = {} + insert_shining_lineage = {} + insert_eternal_renown = {} +} + +sacred_tree = { + insert_banyan_spirit = {} + insert_flowering_bodhi = {} + insert_jade_rooted_fig = {} + insert_ancestral_trunk = {} +} + +quiet_endurance = { + insert_grow_in_silence = {} + insert_weather_all_storms = {} + insert_resist_the_axe = {} + insert_keep_our_name = {} +} + +living_land = { + insert_fertile_jungle = {} + insert_whispering_soil = {} + insert_ancient_river = {} + insert_flame_touched_isle = {} +} + +dynastic_fate = { + insert_eternal_mandate = {} + insert_chosen_legacy = {} + insert_celestial_rise = {} + insert_proper_rule = {} +} + +measured_stillness = { + insert_deep_breath = {} + insert_winter_pond = {} + insert_drawn_bow = {} + insert_morning_frost = {} + insert_autumn_water = {} + insert_winter_moon = {} + insert_spring_rain = {} +} + +the_noun_abstract_place = { + insert_heart = {} + insert_will = {} + insert_soul = {} + insert_way = {} + insert_mind = {} + insert_family = {} + insert_people = {} + insert_body = {} + insert_rule = {} + insert_reward = {} + insert_flesh = {} +} \ No newline at end of file diff --git a/common/dynasty_house_mottos/00_mottos.txt b/common/dynasty_house_mottos/00_mottos.txt new file mode 100644 index 00000000..69aa3ca8 --- /dev/null +++ b/common/dynasty_house_mottos/00_mottos.txt @@ -0,0 +1,1031 @@ +by_x_and_y = { + insert = noun_immaterial + insert = noun_immaterial + weight = { + value = 1000 + if = { + limit = { + OR = { + religion_is_broadly_asian_trigger = yes + broadly_mainland_east_asian_heritage_trigger = yes + } + } + multiply = 0 + } + } +} + +x_y_and_z = { + insert = noun_immaterial + insert = noun_immaterial + insert = noun_immaterial + weight = { + value = 1000 + if = { + limit = { + OR = { + religion_is_broadly_asian_trigger = yes + broadly_mainland_east_asian_heritage_trigger = yes + } + } + multiply = 0 + } + } +} + +x_under_y_king = { # Wisdom under a Strong King + insert = noun_immaterial + insert = adjective_immaterial_a_or_an + + weight = { + value = 100 + if = { + limit = { + broadly_mainland_east_asian_heritage_trigger = yes + } + multiply = 0 + } + } +} + +x_through_y = { # Conquest through the Sword + insert = noun_immaterial + insert = the_weapon + weight = { + value = 600 + if = { + limit = { + OR = { + religion_is_broadly_asian_trigger = yes + broadly_mainland_east_asian_heritage_trigger = yes + } + } + multiply = 0 + } + } +} + +for_our_foes_x_for_our_friends_y = { # For our Foes, the Sword - for our Friends, Peace + insert = the_weapon + insert = noun_immaterial + weight = { + value = 400 + } + trigger = { + faith = { + religion = { is_in_family = rf_pagan } + } + } +} + +break_your_x_upon_our_y = { # Break your Axe upon our Honor + insert = weapon + insert = noun_immaterial + weight = { + value = 400 + } + trigger = { + faith = { + religion = { is_in_family = rf_pagan } + } + } +} + +by_the_x_and_the_y = { # By the Axe and Spear + insert = weapon + insert = weapon + weight = { + value = 300 + } + trigger = { + faith = { + religion = { is_in_family = rf_pagan } + } + } +} + +with_the_x_i_y_z = { # With the Sword I Honor the Truthful + insert = the_weapon + insert = noble_act + insert = adjective_immaterial + weight = { + value = 300 + } + trigger = { + faith = { + religion = { is_in_family = rf_pagan } + } + } +} + +with_x_I_seek_y = { # With the Axe I Seek Strength + insert = the_weapon + insert = noun_immaterial + weight = { + value = 1000 + } + trigger = { + faith = { + religion = { is_in_family = rf_pagan } + } + } +} + +the_spirit_of_x_grants_us_y = { # The Spirit of the Fox Grants Us Cunning + insert = the_creature + insert = noun_immaterial + weight = { + value = 800 + } + trigger = { + faith = { + religion = { is_in_family = rf_pagan } + } + } +} + +through_x_mind_y = { # Through a Courageous Mind, Enlightenment + insert = adjective_immaterial_a_or_an + insert = noun_immaterial + weight = { + value = 1500 + } + trigger = { + faith = { + religion = { is_in_family = rf_eastern } + } + } +} + +the_x_mind_knows_y = { # The Calm Mind Knows Peace + insert = adjective_immaterial + insert = noun_immaterial + weight = { + value = 1500 + } + trigger = { + faith = { + religion = { is_in_family = rf_eastern } + } + } +} + +by_god_and_x = { # By God and Sword. Reads best with a single god, so restricting to the abrahamics + insert = weapon + weight = { + value = 600 + if = { + limit = { + OR = { + religion_is_broadly_asian_trigger = yes + broadly_mainland_east_asian_heritage_trigger = yes + } + } + multiply = 0 + } + } + trigger = { + faith = { + has_doctrine = doctrine_monotheist + } + } +} + +x_through_god = { + insert = noun_immaterial + trigger = { + NOT = { has_trait = cynical } + } + weight = { + value = 1000 + if = { + limit = { + OR = { + religion_is_broadly_asian_trigger = yes + broadly_mainland_east_asian_heritage_trigger = yes + } + } + multiply = 0 + } + } +} + +god_x_me = { + insert = noble_act + trigger = { + NOT = { has_trait = cynical } + } + weight = { + value = 400 + if = { + limit = { + OR = { + religion_is_broadly_asian_trigger = yes + broadly_mainland_east_asian_heritage_trigger = yes + } + } + multiply = 0 + } + } +} + +in_my_x_god_y_me = { # In My Defense, God Defend Me + insert = noun_immaterial + insert = noble_act + trigger = { + NOT = { has_trait = cynical } + } + weight = { + value = 300 + if = { + limit = { + OR = { + religion_is_broadly_asian_trigger = yes + broadly_mainland_east_asian_heritage_trigger = yes + } + } + multiply = 0 + } + } +} + +god_and_my_x = { # God and My Right + insert = noun_immaterial + trigger = { + NOT = { has_trait = cynical } + } + weight = { + value = 300 + if = { + limit = { + OR = { + religion_is_broadly_asian_trigger = yes + broadly_mainland_east_asian_heritage_trigger = yes + } + } + multiply = 0 + } + } +} + +i_x = { # I Serve + insert = noble_act + weight = { + value = 200 + } +} + +x_me = { # Serve Me + insert = noble_act + weight = { + value = 200 + if = { + limit = { + OR = { + religion_is_broadly_asian_trigger = yes + broadly_mainland_east_asian_heritage_trigger = yes + } + } + multiply = 0 + } + } +} + +remember_the_death_of_founder = { + weight = { + value = 300 + if = { + limit = { + OR = { + religion_is_broadly_asian_trigger = yes + broadly_mainland_east_asian_heritage_trigger = yes + } + } + multiply = 0 + } + } +} + +remember_the_noun_of_founder = { + insert = noun_immaterial + weight = { + value = 300 + } + trigger = { + OR = { + religion_is_broadly_asian_trigger = yes + broadly_mainland_east_asian_heritage_trigger = yes + } + } +} + +dare_to_be_x = { + insert = adjective_immaterial + weight = { + value = 400 + if = { + limit = { + OR = { + religion_is_broadly_asian_trigger = yes + broadly_mainland_east_asian_heritage_trigger = yes + } + } + multiply = 0 + } + } +} + +be_x = { + insert = adjective_immaterial + weight = { + value = 400 + if = { + limit = { + OR = { + religion_is_broadly_asian_trigger = yes + broadly_mainland_east_asian_heritage_trigger = yes + } + } + multiply = 0 + } + } +} + +no_x = { + insert = negative_noun + weight = { + value = 200 + if = { + limit = { + OR = { + religion_is_broadly_asian_trigger = yes + broadly_mainland_east_asian_heritage_trigger = yes + } + } + multiply = 0 + } + } +} + +never_x_always_y = { + insert = negative_adjective + insert = adjective_immaterial + weight = { + value = 600 + if = { + limit = { + OR = { + religion_is_broadly_asian_trigger = yes + broadly_mainland_east_asian_heritage_trigger = yes + } + } + multiply = 0 + } + } +} + +single_noun = { + insert = noun_immaterial + weight = { + value = 200 + } +} + +x_as_y = { # Cunning as the Fox, Strong as the Bear + insert = adjective_immaterial + insert = the_creature + trigger = { + NOT = { + faith = { + religion_tag = islam_religion + } + } + } + weight = { + value = 300 + if = { + limit = { + OR = { + religion_is_broadly_asian_trigger = yes + broadly_mainland_east_asian_heritage_trigger = yes + } + } + multiply = 0 + } + } +} + +x_not_y = { # Irritate not the Lion + insert = annoying_action_verb + insert = the_creature + weight = { + value = 300 + if = { + limit = { + broadly_mainland_east_asian_heritage_trigger = yes + } + multiply = 0 + } + } +} + +x_falls_before_y = { # The Bear falls before the Spear + insert = the_creature + insert = the_weapon + weight = { + value = 300 + if = { + limit = { + broadly_mainland_east_asian_heritage_trigger = yes + } + multiply = 0 + } + } +} + +x_with_y_in_hand = { # Bold with Sword in Hand + insert = adjective_immaterial + insert = weapon + weight = { + value = 500 + if = { + limit = { + broadly_mainland_east_asian_heritage_trigger = yes + } + multiply = 0 + } + } +} + +son_of_x = { + insert = the_creature + + weight = { + value = 150 + if = { + limit = { + faith = { + religion = { is_in_family = rf_pagan } + } + } + multiply = 2 + } + if = { + limit = { + OR = { + religion_is_broadly_asian_trigger = yes + broadly_mainland_east_asian_heritage_trigger = yes + } + } + multiply = 0 + } + } +} + +x_over_y = { + insert = noun_immaterial + insert = noun_immaterial + weight = { + value = 600 + if = { + limit = { + OR = { + religion_is_broadly_asian_trigger = yes + broadly_mainland_east_asian_heritage_trigger = yes + } + } + multiply = 0 + } + } +} + +x_y_z = { + insert = noun_immaterial + insert = noun_immaterial + insert = noun_immaterial + weight = { + value = 200 + if = { + limit = { + broadly_mainland_east_asian_heritage_trigger = yes + } + multiply = 0 + } + } +} + +x_is_y = { + insert = noun_immaterial + insert = noun_immaterial + weight = { + value = 500 + } +} + +x_without_y = { + insert = noun_immaterial + insert = negative_noun + weight = { + value = 400 + } +} + +the_ancient_x_is_ours = { + insert = noun_immaterial + weight = { + value = 150 + } +} + +may_god_x_y_knight = { + insert = noble_act + insert = the_adjective_immaterial + trigger = { + NEOW_religion_is_broadly_christian_trigger = yes + NOT = { has_trait = cynical } + } + weight = { + value = 150 + if = { + limit = { + broadly_mainland_east_asian_heritage_trigger = yes + } + multiply = 0 + } + } +} + +may_x_join_my_coa = { + insert = noun_immaterial + weight = { + value = 200 + if = { + limit = { + OR = { + religion_is_broadly_asian_trigger = yes + broadly_mainland_east_asian_heritage_trigger = yes + } + } + multiply = 0 + } + } +} + +until_our_x_engulfs_the_world = { + insert = noun_immaterial + weight = { + value = 150 + if = { + limit = { + broadly_mainland_east_asian_heritage_trigger = yes + } + multiply = 0 + } + } +} + +we_swear_by_x = { + insert = norse_gods_aspects_list + weight = { + value = 2000 + } + trigger = { + faith = { + religion = religion:folkgerman_religion + } + } +} + +we_carve_runes_of_x = { + insert = norse_gods_aspects_list + weight = { + value = 2000 + } + trigger = { + faith = { + religion = religion:folkgerman_religion + } + } +} + +with_x_and_y = { + insert = noun_immaterial + insert = norse_gods_aspects_list + weight = { + value = 2000 + } + trigger = { + faith = { + religion = religion:folkgerman_religion + } + } +} + +we_tell_tales_of_x = { + insert = norse_gods_aspects_list + weight = { + value = 2000 + } + trigger = { + faith = { + religion = religion:folkgerman_religion + } + } +} + +x_is_our_y = { + insert = norse_gods_aspects_list + insert = weapon + weight = { + value = 2000 + } + trigger = { + faith = { + religion = religion:folkgerman_religion + } + } +} + +x_guides_us = { + insert = norse_gods_aspects_list + weight = { + value = 2000 + } + trigger = { + faith = { + religion = religion:folkgerman_religion + } + } +} + +house_was_forged_by_x = { + insert = norse_gods_aspects_list + weight = { + value = 2000 + } + trigger = { + faith = { + religion = religion:folkgerman_religion + } + } +} + +founder_shares_x = { + insert = norse_gods_aspects_list + weight = { + value = 2000 + } + trigger = { + NEOW_religion_is_broadly_christian_trigger = yes + } +} + +various_godly_things = { + insert = various_godly_things_list + trigger = { + NEOW_religion_is_broadly_christian_trigger = yes + NOT = { has_trait = cynical } + } + weight = { + value = 300 + } +} + +unique_pool = { + insert = unique_pool_list + weight = { + value = 600 + if = { + limit = { + OR = { + religion_is_broadly_asian_trigger = yes + broadly_mainland_east_asian_heritage_trigger = yes + } + } + multiply = 0 + } + } +} + +# New as of TGP + +# Dharmic Mottos +from_noun_noun = { + insert = noun_immaterial + insert = righteous_reward + weight = { + value = 1500 + } + trigger = { + broadly_dharmic_trigger = yes + } +} + +the_noun_of_noun = { + insert = noun_immaterial + insert = noun_immaterial + weight = { + value = 1500 + } + trigger = { + broadly_dharmic_trigger = yes + } +} + +bound_unbroken = { + insert = noun_immaterial + insert = noun_immaterial + weight = { + value = 1500 + } + trigger = { + broadly_dharmic_trigger = yes + } +} + +let_noun_burn_let_negative_noun_fade = { + insert = noun_immaterial + insert = negative_noun + weight = { + value = 1500 + } + trigger = { + broadly_dharmic_trigger = yes + } +} + +through_noun_legacy = { + insert = noun_immaterial + insert = imperishable_legacy + weight = { + value = 1500 + } + trigger = { + broadly_dharmic_trigger = yes + } +} + +where_x_grows_y_may_follow = { + insert = noun_immaterial + insert = noun_immaterial + weight = { + value = 1500 + } + trigger = { + broadly_dharmic_trigger = yes + } +} + +x_is_a_flame_y_is_ash = { + insert = noun_immaterial + insert = negative_noun + weight = { + value = 1500 + } + trigger = { + broadly_dharmic_trigger = yes + } +} + +x_is_still_like_y = { + insert = the_noun_abstract_place + insert = measured_stillness + weight = { + value = 1500 + } + trigger = { + broadly_dharmic_trigger = yes + } +} + +# India / SE Asia Jungle +tree_endure = { + insert = sacred_tree + insert = quiet_endurance + weight = { + value = 1500 + } + trigger = { + broadly_jungle_dwelling_trigger = yes + faith = { + religion = religion:buddhism_religion + } + } +} + +born_from_living_land_crowned_by_noun = { + insert = living_land + insert = noun_immaterial + weight = { + value = 1500 + } + trigger = { + broadly_jungle_dwelling_trigger = yes + broadly_dharmic_trigger = yes + } +} + +# Taoist/Confucian/Sinosphere Mottos +with_noun_noun = { + insert = noun_immaterial + insert = noun_immaterial + weight = { + value = 1500 + } + trigger = { + OR = { + broadly_mainland_east_asian_heritage_trigger = yes + broadly_chinese_religion_trigger = yes + } + } +} + +heaven_favors_adjective = { + insert = the_adjective_immaterial + weight = { + value = 1500 + } + trigger = { + OR = { + broadly_mainland_east_asian_heritage_trigger = yes + broadly_chinese_religion_trigger = yes + } + } +} + +noun_shapes_dynastic_fate = { + insert = noun_immaterial + insert = dynastic_fate + weight = { + value = 1500 + } + trigger = { + OR = { + broadly_mainland_east_asian_heritage_trigger = yes + broadly_chinese_religion_trigger = yes + } + } +} + +let_noun_temper_negative_noun = { + insert = noun_immaterial + insert = negative_noun + weight = { + value = 1500 + } + trigger = { + OR = { + broadly_mainland_east_asian_heritage_trigger = yes + broadly_chinese_religion_trigger = yes + } + } +} + +when_the_negative_noun_breaks_noun_rises = { + insert = negative_noun + insert = noun_immaterial + weight = { + value = 1500 + } + trigger = { + OR = { + broadly_mainland_east_asian_heritage_trigger = yes + broadly_chinese_religion_trigger = yes + } + } +} + +let_noun_reside_in_place = { + insert = noun_immaterial + insert = the_noun_abstract_place + weight = { + value = 1500 + } + trigger = { + OR = { + broadly_mainland_east_asian_heritage_trigger = yes + broadly_chinese_religion_trigger = yes + } + } +} + +cultivate_noun_and_noun_will_follow = { + insert = noun_immaterial + insert = the_noun_abstract_place + weight = { + value = 1500 + } + trigger = { + OR = { + broadly_mainland_east_asian_heritage_trigger = yes + broadly_chinese_religion_trigger = yes + } + } +} + +noun_is_the_foundation_of_place = { + insert = the_noun_abstract_place + insert = noun_immaterial + weight = { + value = 1500 + } + trigger = { + OR = { + broadly_mainland_east_asian_heritage_trigger = yes + broadly_chinese_religion_trigger = yes + } + } +} + +begin_with_noun = { + insert = noun_immaterial + weight = { + value = 1500 + } + trigger = { + OR = { + broadly_mainland_east_asian_heritage_trigger = yes + broadly_chinese_religion_trigger = yes + } + } +} + +study_noun_to_govern_the_place = { + insert = noun_immaterial + insert = the_noun_abstract_place + weight = { + value = 1500 + } + trigger = { + OR = { + broadly_mainland_east_asian_heritage_trigger = yes + broadly_chinese_religion_trigger = yes + } + } +} + +x_is_the_root_of_y = { + insert = noun_immaterial + insert = noun_immaterial + weight = { + value = 1500 + } + trigger = { + OR = { + broadly_mainland_east_asian_heritage_trigger = yes + broadly_chinese_religion_trigger = yes + } + } +} + +when_x_is_absent_y_remains = { + insert = noun_immaterial + insert = negative_noun + weight = { + value = 1500 + } + trigger = { + OR = { + broadly_mainland_east_asian_heritage_trigger = yes + broadly_chinese_religion_trigger = yes + } + } +} + +the_sage_x_without_y = { + insert = noun_immaterial + insert = negative_noun + weight = { + value = 1500 + } + trigger = { + OR = { + broadly_mainland_east_asian_heritage_trigger = yes + broadly_chinese_religion_trigger = yes + } + } +} + +# Japanese Mottos +in_stillness_noun = { + insert = measured_stillness + insert = noun_immaterial + weight = { + value = 1500 + } + trigger = { + broadly_japanese_island_heritage_trigger = yes + } +} + +adjective_weapon_for_adjective = { + insert = adjective_immaterial_a_or_an + insert = weapon + insert = the_adjective_immaterial + weight = { + value = 1500 + } + trigger = { + broadly_japanese_island_heritage_trigger = yes + } +} \ No newline at end of file diff --git a/common/flavorization/00_title_holders.txt b/common/flavorization/00_title_holders.txt index 17e61baf..27dd16b3 100644 --- a/common/flavorization/00_title_holders.txt +++ b/common/flavorization/00_title_holders.txt @@ -1927,7 +1927,7 @@ baron_theocracy_male_paganism_religion = { top_liege = no } governments = { theocracy_government } - religions = { paganism_religion hungaric_religion baltic_religion slavic_religion finnic_religion tengrism_religion } + religions = { paganism_religion hungaric_religion baltic_religion slavic_religion finnic_religion } #tengrism_religion } baron_theocracy_female_paganism_religion = { type = character @@ -1939,7 +1939,7 @@ baron_theocracy_female_paganism_religion = { top_liege = no } governments = { theocracy_government } - religions = { paganism_religion hungaric_religion baltic_religion slavic_religion finnic_religion tengrism_religion } + religions = { hungaric_religion baltic_religion slavic_religion finnic_religion } # tengrism_religion # paganism_religion } barony_theocracy_paganism_religion = { type = title @@ -1949,7 +1949,7 @@ barony_theocracy_paganism_religion = { } priority = 7 holding = church_holding - religions = { paganism_religion hungaric_religion baltic_religion slavic_religion finnic_religion tengrism_religion west_african_religion west_african_bori_religion west_african_roog_religion } + religions = { hungaric_religion baltic_religion slavic_religion finnic_religion } #west_african_religion west_african_bori_religion west_african_roog_religion tengrism_religion paganism_religion } count_theocracy_male_paganism_religion = { type = character @@ -1961,7 +1961,7 @@ count_theocracy_male_paganism_religion = { top_liege = no } governments = { theocracy_government } - religions = { paganism_religion tengrism_religion } + religions = { paganism_religion } #tengrism_religion } count_theocracy_female_paganism_religion = { type = character @@ -1973,7 +1973,7 @@ count_theocracy_female_paganism_religion = { top_liege = no } governments = { theocracy_government } - religions = { paganism_religion tengrism_religion } + religions = { paganism_religion } #tengrism_religion } county_theocracy_paganism_religion = { type = title @@ -1983,7 +1983,7 @@ county_theocracy_paganism_religion = { } priority = 18 governments = { theocracy_government } - religions = { paganism_religion hungaric_religion baltic_religion slavic_religion finnic_religion tengrism_religion west_african_religion west_african_bori_religion west_african_roog_religion } + religions = { hungaric_religion baltic_religion slavic_religion finnic_religion } #tengrism_religion west_african_religion west_african_bori_religion west_african_roog_religion paganism_religion } duke_theocracy_male_paganism_religion = { type = character @@ -1995,7 +1995,7 @@ duke_theocracy_male_paganism_religion = { top_liege = no } governments = { theocracy_government } - religions = { paganism_religion taoism_religion bon_religion folkgerman_religion tengrism_religion west_african_religion west_african_bori_religion west_african_roog_religion zunism_religion } + religions = { taoism_religion bon_religion folkgerman_religion } #tengrism_religion west_african_religion west_african_bori_religion west_african_roog_religion zunism_religion paganism_religion } duke_theocracy_female_paganism_religion = { type = character @@ -2007,7 +2007,7 @@ duke_theocracy_female_paganism_religion = { top_liege = no } governments = { theocracy_government } - religions = { paganism_religion taoism_religion bon_religion folkgerman_religion tengrism_religion west_african_religion west_african_bori_religion west_african_roog_religion zunism_religion } + religions = { paganism_religion taoism_religion bon_religion folkgerman_religion } #tengrism_religion west_african_religion west_african_bori_religion west_african_roog_religion zunism_religion } duchy_theocracy_paganism_religion = { type = title @@ -2017,7 +2017,7 @@ duchy_theocracy_paganism_religion = { } priority = 27 governments = { theocracy_government } - religions = { paganism_religion hungaric_religion baltic_religion slavic_religion finnic_religion tengrism_religion west_african_religion west_african_bori_religion west_african_roog_religion folkgerman_religion zunism_religion zoroastrianism_religion bon_religion taoism_religion buddhism_religion hinduism_religion jainism_religion judaism_religion } + religions = { paganism_religion hungaric_religion baltic_religion slavic_religion finnic_religion folkgerman_religion buddhism_religion hinduism_religion jainism_religion judaism_religion } #tengrism_religion west_african_religion west_african_bori_religion west_african_roog_religion zunism_religion zoroastrianism_religion bon_religion taoism_religion } king_theocracy_male_paganism_religion = { type = character @@ -2029,7 +2029,7 @@ king_theocracy_male_paganism_religion = { top_liege = no } governments = { theocracy_government } - religions = { paganism_religion taoism_religion bon_religion tengrism_religion zoroastrianism_religion zunism_religion } + religions = { zoroastrianism_religion } #paganism_religion taoism_religion bon_religion tengrism_religion zunism_religion } king_theocracy_female_paganism_religion = { type = character @@ -2041,7 +2041,7 @@ king_theocracy_female_paganism_religion = { top_liege = no } governments = { theocracy_government } - religions = { paganism_religion taoism_religion bon_religion tengrism_religion zoroastrianism_religion zunism_religion } + religions = { zoroastrianism_religion } #paganism_religion taoism_religion bon_religion tengrism_religion zunism_religion } kingdom_theocracy_paganism_religion = { type = title @@ -2051,7 +2051,7 @@ kingdom_theocracy_paganism_religion = { } priority = 47 governments = { theocracy_government } - religions = { paganism_religion hungaric_religion baltic_religion slavic_religion finnic_religion tengrism_religion west_african_religion west_african_bori_religion west_african_roog_religion folkgerman_religion hellenism_religion zunism_religion zoroastrianism_religion bon_religion taoism_religion buddhism_religion hinduism_religion jainism_religion judaism_religion } + religions = { paganism_religion hungaric_religion baltic_religion slavic_religion finnic_religion folkgerman_religion hellenism_religion zunism_religion zoroastrianism_religion bon_religion taoism_religion buddhism_religion hinduism_religion jainism_religion judaism_religion } #tengrism_religion west_african_religion west_african_bori_religion west_african_roog_religion } emperor_theocracy_male_paganism_religion = { type = character @@ -2063,7 +2063,7 @@ emperor_theocracy_male_paganism_religion = { top_liege = no } governments = { theocracy_government } - religions = { paganism_religion hungaric_religion baltic_religion slavic_religion finnic_religion taoism_religion tengrism_religion west_african_religion west_african_bori_religion west_african_roog_religion zoroastrianism_religion } + religions = { paganism_religion hungaric_religion baltic_religion slavic_religion finnic_religion taoism_religion zoroastrianism_religion } #tengrism_religion west_african_religion west_african_bori_religion west_african_roog_religion } emperor_theocracy_female_paganism_religion = { type = character @@ -2267,228 +2267,228 @@ duke_theocracy_female_finnic_religion = { # Tengrism (uses Pagan) # West African -baron_theocracy_male_west_african_religion = { - type = character - gender = male - special = holder - tier = barony - priority = 7 - flavourization_rules = { - top_liege = no - } - governments = { theocracy_government } - religions = { west_african_religion } -} -baron_theocracy_female_west_african_religion = { - type = character - gender = female - special = holder - tier = barony - priority = 7 - flavourization_rules = { - top_liege = no - } - governments = { theocracy_government } - religions = { west_african_religion } -} -count_theocracy_male_west_african_religion = { - type = character - gender = male - special = holder - tier = county - priority = 18 - flavourization_rules = { - top_liege = no - } - governments = { theocracy_government } - religions = { west_african_religion } -} -count_theocracy_female_west_african_religion = { - type = character - gender = female - special = holder - tier = county - priority = 18 - flavourization_rules = { - top_liege = no - } - governments = { theocracy_government } - religions = { west_african_religion } -} -king_theocracy_male_west_african_religion = { - type = character - gender = male - special = holder - tier = kingdom - priority = 47 - flavourization_rules = { - top_liege = no - } - governments = { theocracy_government } - religions = { west_african_religion } -} -king_theocracy_female_west_african_religion = { - type = character - gender = female - special = holder - tier = kingdom - priority = 47 - flavourization_rules = { - top_liege = no - } - governments = { theocracy_government } - religions = { west_african_religion } -} - -# West African Bori -baron_theocracy_male_west_african_bori_religion = { - type = character - gender = male - special = holder - tier = barony - priority = 7 - flavourization_rules = { - top_liege = no - } - governments = { theocracy_government } - religions = { west_african_bori_religion } -} -baron_theocracy_female_west_african_bori_religion = { - type = character - gender = female - special = holder - tier = barony - priority = 7 - flavourization_rules = { - top_liege = no - } - governments = { theocracy_government } - religions = { west_african_bori_religion } -} -count_theocracy_male_west_african_bori_religion = { - type = character - gender = male - special = holder - tier = county - priority = 18 - flavourization_rules = { - top_liege = no - } - governments = { theocracy_government } - religions = { west_african_bori_religion } -} -count_theocracy_female_west_african_bori_religion = { - type = character - gender = female - special = holder - tier = county - priority = 18 - flavourization_rules = { - top_liege = no - } - governments = { theocracy_government } - religions = { west_african_bori_religion } -} -king_theocracy_male_west_african_bori_religion = { - type = character - gender = male - special = holder - tier = kingdom - priority = 47 - flavourization_rules = { - top_liege = no - } - governments = { theocracy_government } - religions = { west_african_bori_religion } -} -king_theocracy_female_west_african_bori_religion = { - type = character - gender = female - special = holder - tier = kingdom - priority = 47 - flavourization_rules = { - top_liege = no - } - governments = { theocracy_government } - religions = { west_african_bori_religion } -} - -# West African Roog -baron_theocracy_male_west_african_roog_religion = { - type = character - gender = male - special = holder - tier = barony - priority = 7 - flavourization_rules = { - top_liege = no - } - governments = { theocracy_government } - religions = { west_african_roog_religion } -} -baron_theocracy_female_west_african_roog_religion = { - type = character - gender = female - special = holder - tier = barony - priority = 7 - flavourization_rules = { - top_liege = no - } - governments = { theocracy_government } - religions = { west_african_roog_religion } -} -count_theocracy_male_west_african_roog_religion = { - type = character - gender = male - special = holder - tier = county - priority = 18 - flavourization_rules = { - top_liege = no - } - governments = { theocracy_government } - religions = { west_african_roog_religion } -} -count_theocracy_female_west_african_roog_religion = { - type = character - gender = female - special = holder - tier = county - priority = 18 - flavourization_rules = { - top_liege = no - } - governments = { theocracy_government } - religions = { west_african_roog_religion } -} -king_theocracy_male_west_african_roog_religion = { - type = character - gender = male - special = holder - tier = kingdom - priority = 47 - flavourization_rules = { - top_liege = no - } - governments = { theocracy_government } - religions = { west_african_roog_religion } -} -king_theocracy_female_west_african_roog_religion = { - type = character - gender = female - special = holder - tier = kingdom - priority = 47 - flavourization_rules = { - top_liege = no - } - governments = { theocracy_government } - religions = { west_african_roog_religion } -} - -# Zoroastrianism +#baron_theocracy_male_west_african_religion = { +# type = character +# gender = male +# special = holder +# tier = barony +# priority = 7 +# flavourization_rules = { +# top_liege = no +# } +# governments = { theocracy_government } +# religions = { west_african_religion } +#} +#baron_theocracy_female_west_african_religion = { +# type = character +# gender = female +# special = holder +# tier = barony +# priority = 7 +# flavourization_rules = { +# top_liege = no +# } +# governments = { theocracy_government } +# religions = { west_african_religion } +#} +#count_theocracy_male_west_african_religion = { +# type = character +# gender = male +# special = holder +# tier = county +# priority = 18 +# flavourization_rules = { +# top_liege = no +# } +# governments = { theocracy_government } +# religions = { west_african_religion } +#} +#count_theocracy_female_west_african_religion = { +# type = character +# gender = female +# special = holder +# tier = county +# priority = 18 +# flavourization_rules = { +# top_liege = no +# } +# governments = { theocracy_government } +# religions = { west_african_religion } +#} +#king_theocracy_male_west_african_religion = { +# type = character +# gender = male +# special = holder +# tier = kingdom +# priority = 47 +# flavourization_rules = { +# top_liege = no +# } +# governments = { theocracy_government } +# religions = { west_african_religion } +#} +#king_theocracy_female_west_african_religion = { +# type = character +# gender = female +# special = holder +# tier = kingdom +# priority = 47 +# flavourization_rules = { +# top_liege = no +# } +# governments = { theocracy_government } +# religions = { west_african_religion } +#} +# +## West African Bori +#baron_theocracy_male_west_african_bori_religion = { +# type = character +# gender = male +# special = holder +# tier = barony +# priority = 7 +# flavourization_rules = { +# top_liege = no +# } +# governments = { theocracy_government } +# religions = { west_african_bori_religion } +#} +#baron_theocracy_female_west_african_bori_religion = { +# type = character +# gender = female +# special = holder +# tier = barony +# priority = 7 +# flavourization_rules = { +# top_liege = no +# } +# governments = { theocracy_government } +# religions = { west_african_bori_religion } +#} +#count_theocracy_male_west_african_bori_religion = { +# type = character +# gender = male +# special = holder +# tier = county +# priority = 18 +# flavourization_rules = { +# top_liege = no +# } +# governments = { theocracy_government } +# religions = { west_african_bori_religion } +#} +#count_theocracy_female_west_african_bori_religion = { +# type = character +# gender = female +# special = holder +# tier = county +# priority = 18 +# flavourization_rules = { +# top_liege = no +# } +# governments = { theocracy_government } +# religions = { west_african_bori_religion } +#} +#king_theocracy_male_west_african_bori_religion = { +# type = character +# gender = male +# special = holder +# tier = kingdom +# priority = 47 +# flavourization_rules = { +# top_liege = no +# } +# governments = { theocracy_government } +# religions = { west_african_bori_religion } +#} +#king_theocracy_female_west_african_bori_religion = { +# type = character +# gender = female +# special = holder +# tier = kingdom +# priority = 47 +# flavourization_rules = { +# top_liege = no +# } +# governments = { theocracy_government } +# religions = { west_african_bori_religion } +#} +# +## West African Roog +#baron_theocracy_male_west_african_roog_religion = { +# type = character +# gender = male +# special = holder +# tier = barony +# priority = 7 +# flavourization_rules = { +# top_liege = no +# } +# governments = { theocracy_government } +# religions = { west_african_roog_religion } +#} +#baron_theocracy_female_west_african_roog_religion = { +# type = character +# gender = female +# special = holder +# tier = barony +# priority = 7 +# flavourization_rules = { +# top_liege = no +# } +# governments = { theocracy_government } +# religions = { west_african_roog_religion } +#} +#count_theocracy_male_west_african_roog_religion = { +# type = character +# gender = male +# special = holder +# tier = county +# priority = 18 +# flavourization_rules = { +# top_liege = no +# } +# governments = { theocracy_government } +# religions = { west_african_roog_religion } +#} +#count_theocracy_female_west_african_roog_religion = { +# type = character +# gender = female +# special = holder +# tier = county +# priority = 18 +# flavourization_rules = { +# top_liege = no +# } +# governments = { theocracy_government } +# religions = { west_african_roog_religion } +#} +#king_theocracy_male_west_african_roog_religion = { +# type = character +# gender = male +# special = holder +# tier = kingdom +# priority = 47 +# flavourization_rules = { +# top_liege = no +# } +# governments = { theocracy_government } +# religions = { west_african_roog_religion } +#} +#king_theocracy_female_west_african_roog_religion = { +# type = character +# gender = female +# special = holder +# tier = kingdom +# priority = 47 +# flavourization_rules = { +# top_liege = no +# } +# governments = { theocracy_government } +# religions = { west_african_roog_religion } +#} +# +## Zoroastrianism baron_theocracy_male_zoroastrianism_religion = { type = character gender = male @@ -2572,55 +2572,55 @@ duke_theocracy_female_zoroastrianism_religion = { religions = { zoroastrianism_religion } } -# Zunism -baron_theocracy_male_zunism_religion = { - type = character - gender = male - special = holder - tier = barony - priority = 7 - flavourization_rules = { - top_liege = no - } - governments = { theocracy_government } - religions = { zunism_religion } -} -baron_theocracy_female_zunism_religion = { - type = character - gender = female - special = holder - tier = barony - priority = 7 - flavourization_rules = { - top_liege = no - } - governments = { theocracy_government } - religions = { zunism_religion } -} -emperor_theocracy_male_zunism_religion = { - type = character - gender = male - special = holder - tier = empire - priority = 102 - flavourization_rules = { - top_liege = no - } - governments = { theocracy_government } - religions = { zunism_religion } -} -emperor_theocracy_female_zunism_religion = { - type = character - gender = female - special = holder - tier = empire - priority = 102 - flavourization_rules = { - top_liege = no - } - governments = { theocracy_government } - religions = { zunism_religion } -} +## Zunism +#baron_theocracy_male_zunism_religion = { +# type = character +# gender = male +# special = holder +# tier = barony +# priority = 7 +# flavourization_rules = { +# top_liege = no +# } +# governments = { theocracy_government } +# religions = { zunism_religion } +#} +#baron_theocracy_female_zunism_religion = { +# type = character +# gender = female +# special = holder +# tier = barony +# priority = 7 +# flavourization_rules = { +# top_liege = no +# } +# governments = { theocracy_government } +# religions = { zunism_religion } +#} +#emperor_theocracy_male_zunism_religion = { +# type = character +# gender = male +# special = holder +# tier = empire +# priority = 102 +# flavourization_rules = { +# top_liege = no +# } +# governments = { theocracy_government } +# religions = { zunism_religion } +#} +#emperor_theocracy_female_zunism_religion = { +# type = character +# gender = female +# special = holder +# tier = empire +# priority = 102 +# flavourization_rules = { +# top_liege = no +# } +# governments = { theocracy_government } +# religions = { zunism_religion } +#} ############################################## # Theocracy titles, faith localization (for special cases). @@ -7153,7 +7153,7 @@ baron_feudal_male_austronesian_group = { tier = barony priority = 7 governments = { feudal_government tribal_government administrative_government mandala_government republic_government theocracy_government wanua_government } - religions = { hinduism_religion buddhism_religion jainism_religion } +# religions = { hinduism_religion buddhism_religion jainism_religion } heritages = { heritage_austronesian } } baron_feudal_female_austronesian_group = { @@ -7163,7 +7163,7 @@ baron_feudal_female_austronesian_group = { tier = barony priority = 7 governments = { feudal_government tribal_government administrative_government mandala_government republic_government theocracy_government wanua_government } - religions = { hinduism_religion buddhism_religion jainism_religion } +# religions = { hinduism_religion buddhism_religion jainism_religion } heritages = { heritage_austronesian } } barony_feudal_austronesian_group = { @@ -7171,7 +7171,7 @@ barony_feudal_austronesian_group = { tier = barony priority = 7 governments = { feudal_government tribal_government administrative_government republic_government mandala_government theocracy_government wanua_government } - religions = { hinduism_religion buddhism_religion jainism_religion } +# religions = { hinduism_religion buddhism_religion jainism_religion } heritages = { heritage_austronesian } } count_feudal_male_austronesian_group = { @@ -7181,7 +7181,7 @@ count_feudal_male_austronesian_group = { tier = county priority = 18 governments = { feudal_government tribal_government administrative_government republic_government mandala_government wanua_government } - religions = { hinduism_religion buddhism_religion jainism_religion } +# religions = { hinduism_religion buddhism_religion jainism_religion } heritages = { heritage_austronesian } } count_feudal_female_austronesian_group = { @@ -7191,7 +7191,7 @@ count_feudal_female_austronesian_group = { tier = county priority = 18 governments = { feudal_government tribal_government administrative_government republic_government mandala_government wanua_government } - religions = { hinduism_religion buddhism_religion jainism_religion } +# religions = { hinduism_religion buddhism_religion jainism_religion } heritages = { heritage_austronesian } } county_feudal_austronesian_group = { @@ -7199,7 +7199,7 @@ county_feudal_austronesian_group = { tier = county priority = 18 governments = { feudal_government tribal_government administrative_government republic_government mandala_government wanua_government } - religions = { hinduism_religion buddhism_religion jainism_religion } +# religions = { hinduism_religion buddhism_religion jainism_religion } heritages = { heritage_austronesian } } duke_feudal_male_austronesian_group = { @@ -7209,7 +7209,7 @@ duke_feudal_male_austronesian_group = { tier = duchy priority = 27 governments = { feudal_government tribal_government administrative_government republic_government mandala_government wanua_government } - religions = { hinduism_religion buddhism_religion jainism_religion } +# religions = { hinduism_religion buddhism_religion jainism_religion } heritages = { heritage_austronesian } } duke_feudal_female_austronesian_group = { @@ -7219,7 +7219,7 @@ duke_feudal_female_austronesian_group = { tier = duchy priority = 27 governments = { feudal_government tribal_government administrative_government republic_government mandala_government wanua_government } - religions = { hinduism_religion buddhism_religion jainism_religion } +# religions = { hinduism_religion buddhism_religion jainism_religion } heritages = { heritage_austronesian } } duchy_feudal_austronesian_group = { @@ -7227,7 +7227,7 @@ duchy_feudal_austronesian_group = { tier = duchy priority = 27 governments = { feudal_government tribal_government administrative_government republic_government mandala_government wanua_government } - religions = { hinduism_religion buddhism_religion jainism_religion } +# religions = { hinduism_religion buddhism_religion jainism_religion } heritages = { heritage_austronesian } } king_feudal_male_austronesian_group = { @@ -7237,7 +7237,7 @@ king_feudal_male_austronesian_group = { tier = kingdom priority = 47 governments = { feudal_government tribal_government administrative_government republic_government mandala_government wanua_government } - religions = { hinduism_religion buddhism_religion jainism_religion } +# religions = { hinduism_religion buddhism_religion jainism_religion } heritages = { heritage_austronesian } } king_feudal_female_austronesian_group = { @@ -7247,7 +7247,7 @@ king_feudal_female_austronesian_group = { tier = kingdom priority = 47 governments = { feudal_government tribal_government administrative_government republic_government mandala_government wanua_government } - religions = { hinduism_religion buddhism_religion jainism_religion } +# religions = { hinduism_religion buddhism_religion jainism_religion } heritages = { heritage_austronesian } } emperor_feudal_male_austronesian_group = { @@ -7257,7 +7257,7 @@ emperor_feudal_male_austronesian_group = { tier = empire priority = 102 governments = { feudal_government tribal_government administrative_government republic_government mandala_government wanua_government } - religions = { hinduism_religion buddhism_religion jainism_religion } +# religions = { hinduism_religion buddhism_religion jainism_religion } heritages = { heritage_austronesian } flavourization_rules = { top_liege = no @@ -7270,7 +7270,7 @@ emperor_feudal_female_austronesian_group = { tier = empire priority = 102 governments = { feudal_government tribal_government administrative_government republic_government mandala_government wanua_government } - religions = { hinduism_religion buddhism_religion jainism_religion } +# religions = { hinduism_religion buddhism_religion jainism_religion } heritages = { heritage_austronesian } flavourization_rules = { top_liege = no diff --git a/common/on_action/religion_on_actions.txt b/common/on_action/religion_on_actions.txt index 2ceade6b..37c30892 100644 --- a/common/on_action/religion_on_actions.txt +++ b/common/on_action/religion_on_actions.txt @@ -1009,7 +1009,7 @@ pagan_conversion_pulse = { } events = { - global_religion.0001 #Pagan reformed by neighbor, spouse, soulmate, friend, or geographic location + # global_religion.0001 #Pagan reformed by neighbor, spouse, soulmate, friend, or geographic location } } diff --git a/common/on_action/title_on_actions.txt b/common/on_action/title_on_actions.txt index 3f52a00f..f88afc45 100644 --- a/common/on_action/title_on_actions.txt +++ b/common/on_action/title_on_actions.txt @@ -4087,63 +4087,63 @@ on_explicit_claim_gain = { } } # Struggle Catalyst - if = { # FP2 - limit = { - NOT = { scope:transfer_type = flag:inheritance } - - root = { - any_character_struggle = { - is_struggle_type = iberian_struggle - involvement = involved - } - } - title:e_spain = { any_in_de_jure_hierarchy = { this = scope:title } } - } - root = { - every_character_struggle = { - involvement = involved - limit = { - activate_struggle_catalyst_secondary_character_involvement_involved_trigger = { - CATALYST = catalyst_gain_claim_on_title_fp2 - CHAR = root - } - } - activate_struggle_catalyst = { - catalyst = catalyst_gain_claim_on_title_fp2 - character = root - } - } - } - } - else_if = { # FP3 - limit = { - NOT = { scope:transfer_type = flag:inheritance } - - root = { - any_character_struggle = { - is_struggle_type = persian_struggle - involvement = involved - } - } - title:e_persia = { any_in_de_jure_hierarchy = { this = scope:title } } - } - root = { - every_character_struggle = { - involvement = involved - limit = { - activate_struggle_catalyst_secondary_character_involvement_involved_trigger = { - CATALYST = catalyst_gain_claim_on_title_fp3 - CHAR = root - } - } - activate_struggle_catalyst = { - catalyst = catalyst_gain_claim_on_title_fp3 - character = root - } - log_debug_variable_for_persian_struggle_effect = { VAR = unrest_catalyst_gain_claim_on_title_fp3 } - } - } - } +# if = { # FP2 +# limit = { +# NOT = { scope:transfer_type = flag:inheritance } +# +# root = { +# any_character_struggle = { +# is_struggle_type = iberian_struggle +# involvement = involved +# } +# } +# title:e_spain = { any_in_de_jure_hierarchy = { this = scope:title } } +# } +# root = { +# every_character_struggle = { +# involvement = involved +# limit = { +# activate_struggle_catalyst_secondary_character_involvement_involved_trigger = { +# CATALYST = catalyst_gain_claim_on_title_fp2 +# CHAR = root +# } +# } +# activate_struggle_catalyst = { +# catalyst = catalyst_gain_claim_on_title_fp2 +# character = root +# } +# } +# } +# } +# else_if = { # FP3 +# limit = { +# NOT = { scope:transfer_type = flag:inheritance } +# +# root = { +# any_character_struggle = { +# is_struggle_type = persian_struggle +# involvement = involved +# } +# } +# title:e_persia = { any_in_de_jure_hierarchy = { this = scope:title } } +# } +# root = { +# every_character_struggle = { +# involvement = involved +# limit = { +# activate_struggle_catalyst_secondary_character_involvement_involved_trigger = { +# CATALYST = catalyst_gain_claim_on_title_fp3 +# CHAR = root +# } +# } +# activate_struggle_catalyst = { +# catalyst = catalyst_gain_claim_on_title_fp3 +# character = root +# } +# log_debug_variable_for_persian_struggle_effect = { VAR = unrest_catalyst_gain_claim_on_title_fp3 } +# } +# } +# } } } diff --git a/common/province_terrain/00_province_terrain.txt b/common/province_terrain/00_province_terrain.txt index 2c1587a5..ddb2669c 100644 --- a/common/province_terrain/00_province_terrain.txt +++ b/common/province_terrain/00_province_terrain.txt @@ -1918,7 +1918,7 @@ default_coastal_sea=coastal_sea 2201=plains 2202=hills 2203=forest -2204=f +2204=forest 2205=forest 2206=hills 2207=tells @@ -2177,7 +2177,7 @@ default_coastal_sea=coastal_sea 2460=hills 2461=mountains 2462=plains -2463=f +2463=forest 2464=forest 2465=hills 2466=tells @@ -2944,7 +2944,7 @@ default_coastal_sea=coastal_sea 3227=plains 3228=plains 3256=plains -3257=wasteland +3257=mountains 3258=mountains 3266=jungle 3267=jungle @@ -6115,10 +6115,10 @@ default_coastal_sea=coastal_sea 6580=desert 6581=desert 6582=drylands -6590=desert #Traversable wasteland -6591=desert #Traversable wasteland -6601=desert #Traversable wasteland -6602=desert #Traversable wasteland +6590=desert #Traversable mountains +6591=desert #Traversable mountains +6601=desert #Traversable mountains +6602=desert #Traversable mountains 6608=drylands 6609=desert 6610=desert @@ -7265,12 +7265,12 @@ default_coastal_sea=coastal_sea 7778=hills 7779=hills 7780=hills -7781=mountains #wasteland -7782=mountains #wasteland -7783=mountains #wasteland -7784=mountains #wasteland -7785=mountains #wasteland -7786=mountains #wasteland +7781=mountains #mountains +7782=mountains #mountains +7783=mountains #mountains +7784=mountains #mountains +7785=mountains #mountains +7786=mountains #mountains 7788=jungle 7789=jungle 7790=jungle @@ -8075,7 +8075,7 @@ default_coastal_sea=coastal_sea 8824=hills 8825=hills 8826=hills -8827=mountaiins +8827=mountains 8828=hills 8829=forest 8830=plains @@ -8996,7 +8996,7 @@ default_coastal_sea=coastal_sea 9756=forest 9757=hills 9758=hills -9759=wasteland +9759=mountains 9760=hills 9761=plains 9762=forest @@ -9022,18 +9022,18 @@ default_coastal_sea=coastal_sea 9782=plains 9783=mountains 9784=forest -9785=wasteland +9785=mountains 9786=mountains -9787=wasteland -9788=wasteland -9789=wasteland +9787=mountains +9788=mountains +9789=mountains 9790=plains -9791=wasteland -9792=wasteland -9793=wasteland -9794=wasteland -9795=wasteland -9796=wasteland +9791=mountains +9792=mountains +9793=mountains +9794=mountains +9795=mountains +9796=mountains 9797=mountains 9798=mountains 9799=mountains @@ -11989,7 +11989,7 @@ default_coastal_sea=coastal_sea 13277=mountains 13278=mountains 13279=mountains -13428=wasteland +13428=mountains 13615=forest 13616=hills 13617=forest diff --git a/common/script_values/04_ep2_wedding_values.txt b/common/script_values/04_ep2_wedding_values.txt index 38308ac4..85400850 100644 --- a/common/script_values/04_ep2_wedding_values.txt +++ b/common/script_values/04_ep2_wedding_values.txt @@ -511,20 +511,20 @@ } add = 5 } - # Iberian Struggle, less likely for outsiders to vassalize inside - if = { - limit = { - root = { - NOT = { - any_character_struggle = { is_struggle_type = iberian_struggle } - } - } - scope:impress_check = { - any_character_struggle = { is_struggle_type = iberian_struggle } - } - } - add = -35 - } +# # Iberian Struggle, less likely for outsiders to vassalize inside +# if = { +# limit = { +# root = { +# NOT = { +# any_character_struggle = { is_struggle_type = iberian_struggle } +# } +# } +# scope:impress_check = { +# any_character_struggle = { is_struggle_type = iberian_struggle } +# } +# } +# add = -35 +# } #Ageism modifier vs kids. if = { limit = { diff --git a/common/scripted_triggers/00_clothing_triggers.txt b/common/scripted_triggers/00_clothing_triggers.txt index 0c28539a..b6bada5f 100644 --- a/common/scripted_triggers/00_clothing_triggers.txt +++ b/common/scripted_triggers/00_clothing_triggers.txt @@ -6,7 +6,7 @@ OR = { has_character_modifier = diplomacy_majesty_4090_no_raiment_modifier # Lunatic event where character goes naked instead of buying new clothes. has_character_flag = is_naked # Special flag used in certain events. - faith = { has_doctrine_parameter = naked_adherents_active } +# faith = { has_doctrine_parameter = naked_adherents_active } culture = { has_cultural_parameter = naked_culture_active } trigger_if = { limit = { diff --git a/common/scripted_triggers/00_coa_triggers.txt b/common/scripted_triggers/00_coa_triggers.txt index 8d87b651..65a27976 100644 --- a/common/scripted_triggers/00_coa_triggers.txt +++ b/common/scripted_triggers/00_coa_triggers.txt @@ -21,20 +21,21 @@ coa_african_religion_trigger = { scope:faith.religion = { save_temporary_scope_as = religion } - scope:religion = { - OR = { - this = religion:akom_religion - this = religion:waaqism_religion - this = religion:west_african_religion - this = religion:west_african_bori_religion - this = religion:west_african_orisha_religion - this = religion:west_african_roog_religion - } - } + always = no +# scope:religion = { +# OR = { +# this = religion:akom_religion +# this = religion:waaqism_religion +# this = religion:west_african_religion +# this = religion:west_african_bori_religion +# this = religion:west_african_orisha_religion +# this = religion:west_african_roog_religion +# } +# } } coa_bishopric_trigger = { - scope:faith.religion = religion:christianity_religion + NEOW_is_broadly_catholic_trigger = yes coa_theocratic_trigger = yes } @@ -108,7 +109,7 @@ coa_switch_to_norman_trigger = { coa_switch_to_norse_trigger = { holder = { NOT = { - OR = { religion = religion:catholic_religion religion = religion:eastern_orthodox_religion religion = religion:protestant_religion) + NEOW_religion_is_broadly_christian_trigger = no } OR = { faith.religion = religion:germanic_religion @@ -172,10 +173,10 @@ coa_indian_religion_trigger = { scope:religion = { OR = { this = { is_in_family = rf_eastern } - this = religion:bon_religion +# this = religion:bon_religion this = religion:buddhism_religion - this = religion:hinduism_religion - this = religion:jainism_religion +# this = religion:hinduism_religion +# this = religion:jainism_religion } } } diff --git a/common/scripted_triggers/00_religious_triggers.txt b/common/scripted_triggers/00_religious_triggers.txt index 339096e3..d4062715 100644 --- a/common/scripted_triggers/00_religious_triggers.txt +++ b/common/scripted_triggers/00_religious_triggers.txt @@ -1813,12 +1813,12 @@ faith_is_open_minded_trigger = { is_mainstream_jewish_faith = { religion = religion:judaism_religion - NOT = { - this = faith:samaritan - this = faith:haymanot - this = faith:malabarism - this = faith:kabarism - } +# NOT = { +# this = faith:samaritan +# this = faith:haymanot +# this = faith:malabarism +# this = faith:kabarism +# } } is_unprotected_hostile_faith = { # Checks if the faith is at least hostile but not protected by a contract, used in a county scope @@ -1955,9 +1955,9 @@ jain_or_syncretic_with_eastern_trigger = { #Used on faiths is_dharmic_faith_trigger = { OR = { - religion = religion:hinduism_religion +# religion = religion:hinduism_religion religion = religion:buddhism_religion - religion = religion:jainism_religion +# religion = religion:jainism_religion } } @@ -1967,14 +1967,15 @@ has_holy_building = { } invalid_for_heresy_events = { - OR = { - this = faith:conversos - this = faith:insular_celtic - this = faith:bosnian_church - this = faith:mozarabic_church - this = faith:adamites - this = faith:kabarism - } + always = no +# OR = { +# this = faith:conversos +# this = faith:insular_celtic +# this = faith:bosnian_church +# this = faith:mozarabic_church +# this = faith:adamites +# this = faith:kabarism +# } } is_faith_dominant_gender = { @@ -2011,6 +2012,7 @@ religion_is_broadly_asian_trigger = { religion_is_east_asian_trigger = { OR = { faith.religion = religion:buddhism_religion + faith.religion = religion:sikhism_religion # faith.religion = religion:confucianism_religion # faith.religion = religion:taoism_religion # faith.religion = religion:shintoism_religion diff --git a/common/scripted_triggers/NEOW_religion_triggers.txt b/common/scripted_triggers/NEOW_religion_triggers.txt index c22a0019..c114a262 100644 --- a/common/scripted_triggers/NEOW_religion_triggers.txt +++ b/common/scripted_triggers/NEOW_religion_triggers.txt @@ -9,23 +9,23 @@ NEOW_is_broadly_catholic_trigger = { OR = { faith = faith:orleaniste - religion = religion:catholic_religion + faith.religion = religion:catholic_religion } } NEOW_is_broadly_protestant_trigger = { OR = { faith = faith:aslanite - religion = religion:protestant_religion + faith.religion = religion:protestant_religion } } NEOW_is_broadly_orthodox_trigger = { - religion = religion:eastern_orthodox_religion + faith.religion = religion:eastern_orthodox_religion } NEOW_is_broadly_muslim_trigger = { OR = { faith = faith:simurghi - religion = religion:islam_religion + faith.religion = religion:islam_religion } } \ No newline at end of file diff --git a/common/vassal_stances/00_vassal_stances.txt b/common/vassal_stances/00_vassal_stances.txt new file mode 100644 index 00000000..d6652928 --- /dev/null +++ b/common/vassal_stances/00_vassal_stances.txt @@ -0,0 +1,1219 @@ +courtly = { + score = { + value = ai_sociability + add = { + value = ai_sociability + divide = 2 + } + add = { + value = ai_greed + multiply = -1 + } + add = { + value = ai_compassion + divide = 2 + } + if = { + limit = { + has_trait = gregarious + } + add = 50 + } + if = { + limit = { + has_trait = fickle + } + add = 50 + } + if = { + limit = { + has_trait = honest + } + add = 50 + } + if = { + limit = { + culture = { has_cultural_pillar = ethos_courtly } + } + add = 50 + } + if = { + limit = { + scope:liege = { has_royal_court = yes has_court_type = court_diplomatic } + } + add = 30 + } + if = { + limit = { + scope:liege = { has_royal_court = yes has_court_type = court_intrigue } + } + add = 15 + } + if = { + limit = { + top_participant_group:dynastic_cycle ?= { + participant_group_type = pro_hegemon_movement + } + } + add = 250 + } + if = { + limit = { + culture = { + has_innovation = innovation_royal_prerogative + } + } + multiply = 1.2 + } + if = { + limit = { + culture = { + has_innovation = innovation_heraldry + } + } + multiply = 1.2 + } + if = { + limit = { + culture = { + has_innovation = innovation_court_officials + } + } + multiply = 1.2 + } + } + heir_score = { + value = diplomacy + multiply = 30 + add = ai_sociability + add = ai_compassion + add = { + value = ai_greed + multiply = -1 + } + if = { + limit = { + has_trait = gregarious + } + add = 50 + } + if = { + limit = { + has_trait = generous + } + add = 50 + } + if = { + limit = { + has_trait = greedy + } + add = -50 + } + if = { + limit = { + has_trait = shy + } + add = -50 + } + if = { + limit = { + is_male = yes + scope:liege = { + has_realm_law = female_preference_law + } + } + multiply = 0.01 + } + if = { + limit = { + is_female = yes + scope:liege = { + has_realm_law = male_preference_law + } + } + multiply = 0.01 + } + if = { + limit = { + is_adult = no + } + multiply = 0.01 + add = -100 + } + if = { + limit = { + is_male = yes + scope:liege = { + has_realm_law = female_only_law + } + } + multiply = 0 + add = -100 + } + if = { + limit = { + is_female = yes + scope:liege = { + has_realm_law = male_only_law + } + } + multiply = 0 + add = -100 + } + } + is_valid = { + is_lowborn = no + scope:liege = { + is_landed = yes + } + } +} + +glory_hound = { + score = { + value = ai_boldness + add = { + value = ai_compassion + multiply = -1 + } + add = { + value = ai_honor + multiply = -1 + divide = 2 + } + if = { + limit = { + has_trait = brave + } + add = 50 + } + if = { + limit = { + has_trait = ambitious + } + add = 50 + } + if = { + limit = { + scope:liege = { has_royal_court = yes has_court_type = court_warlike } + } + add = 30 + } + if = { + limit = { + scope:liege = { has_royal_court = yes has_court_type = court_intrigue } + } + add = 15 + } + if = { + limit = { + top_participant_group:dynastic_cycle ?= { + participant_group_type = conservative_movement + } + } + add = 250 + } + if = { + limit = { + culture = { + has_innovation = innovation_baliffs + } + } + multiply = 1.2 + } + if = { + limit = { + culture = { + has_innovation = innovation_knighthood + } + } + multiply = 1.2 + } + if = { + limit = { + culture = { + has_innovation = innovation_rightful_ownership + } + } + multiply = 1.2 + } + } + heir_score = { + value = martial + multiply = 20 + add = ai_boldness + if = { + limit = { + has_trait = brave + } + add = 50 + } + if = { + limit = { + has_trait = arrogant + } + add = 50 + } + if = { + limit = { + has_trait = craven + } + add = -500 + } + if = { + limit = { + has_trait = shy + } + add = -50 + } + if = { + limit = { + has_trait = content + } + add = -50 + } + if = { + limit = { + culture = { has_cultural_pillar = ethos_bellicose } + } + add = 25 + } + if = { + limit = { + is_male = yes + scope:liege = { + has_realm_law = female_preference_law + } + } + multiply = 0.01 + } + if = { + limit = { + is_female = yes + scope:liege = { + has_realm_law = male_preference_law + } + } + multiply = 0.01 + } + if = { + limit = { + is_adult = no + } + multiply = 0.01 + add = -100 + } + if = { + limit = { + is_male = yes + scope:liege = { + has_realm_law = female_only_law + } + } + multiply = 0 + add = -100 + } + if = { + limit = { + is_female = yes + scope:liege = { + has_realm_law = male_only_law + } + } + multiply = 0 + add = -100 + } + } + is_valid = { + scope:liege = { + is_landed = yes + } + } +} + +parochial = { + score = { + value = ai_honor + add = { + value = ai_sociability + multiply = -1 + } + add = { + value = ai_boldness + multiply = -1 + } + add = { + value = ai_rationality + divide = 2 + } + if = { + limit = { + has_trait = content + } + add = 50 + } + if = { + limit = { + culture = { has_cultural_pillar = ethos_communal } + } + add = 25 + } + if = { + limit = { + government_has_flag = government_is_republic + } + add = 150 + } + if = { + limit = { + culture = { has_cultural_tradition = tradition_isolationist } + } + add = 50 + } + if = { + limit = { + scope:liege = { has_royal_court = yes has_court_type = court_administrative } + } + add = 30 + } + if = { + limit = { + top_participant_group:dynastic_cycle ?= { + participant_group_type = advancement_movement + } + } + add = 250 + } + if = { + limit = { + culture = { + has_innovation = innovation_manorialism + } + } + multiply = 1.2 + } + if = { + limit = { + culture = { + has_innovation = innovation_land_grants + } + } + multiply = 1.2 + } + if = { + limit = { + culture = { + has_innovation = innovation_development_04 + } + } + multiply = 1.2 + } + if = { + limit = { + culture = { + has_innovation = innovation_double_entry_bookkeeping + } + } + multiply = 1.2 + } + if = { + limit = { + culture = { + has_cultural_parameter = more_parochial_vassals + } + } + multiply = 1.2 + } + } + heir_score = { + value = stewardship + multiply = 20 + add = ai_honor + add = ai_rationality + if = { + limit = { + has_trait = content + } + add = 50 + } + if = { + limit = { + has_trait = stubborn + } + add = 50 + } + if = { + limit = { + has_trait = ambitious + } + add = -50 + } + if = { + limit = { + has_trait = gregarious + } + add = -50 + } + if = { + limit = { + is_male = yes + scope:liege = { + has_realm_law = female_preference_law + } + } + multiply = 0.01 + } + if = { + limit = { + is_female = yes + scope:liege = { + has_realm_law = male_preference_law + } + } + multiply = 0.01 + } + if = { + limit = { + is_adult = no + } + multiply = 0.01 + add = -100 + } + if = { + limit = { + is_male = yes + scope:liege = { + has_realm_law = female_only_law + } + } + multiply = 0 + add = -100 + } + if = { + limit = { + is_female = yes + scope:liege = { + has_realm_law = male_only_law + } + } + multiply = 0 + add = -100 + } + } + is_valid = { + scope:liege = { + is_landed = yes + } + } +} + +zealot = { + score = { + value = ai_zeal + add = { + value = ai_zeal + divide = 2 + } + add = { + value = ai_vengefulness + divide = 2 + } + if = { + limit = { + has_trait = zealous + } + add = 100 + } + if = { + limit = { + has_trait = humble + } + add = 100 + } + if = { + limit = { + has_trait = education_learning + } + add = 50 + } + if = { + limit = { + has_focus = learning_theology_focus + } + add = 50 + } + if = { + limit = { + has_trait = trusting + } + add = 25 + } + if = { + limit = { + has_trait = cynical + } + add = -50 + } + if = { + limit = { + is_clergy = yes + } + add = 150 + } + if = { + limit = { + num_sinful_traits >= 1 + } + add = { + value = -50 + multiply = num_sinful_traits + } + } + if = { + limit = { + num_virtuous_traits >= 1 + } + add = { + value = 25 + multiply = num_virtuous_traits + } + } + if = { + limit = { + culture = { has_cultural_tradition = tradition_zealous_people } + } + add = 50 + } + if = { + limit = { + culture = { has_cultural_pillar = ethos_spiritual } + } + add = 25 + } + if = { + limit = { + scope:liege = { has_royal_court = yes has_court_type = court_scholarly } + } + add = 30 + } + if = { + limit = { + num_sinful_traits <= 0 + faith = { has_doctrine_parameter = more_often_zealots } + } + add = 400 + } + if = { + limit = { + culture = { + has_innovation = innovation_chronicle_writing + } + } + multiply = 1.2 + } + if = { + limit = { + culture = { + has_innovation = innovation_reconquista + } + } + multiply = 1.2 + } + if = { + limit = { + culture = { + has_innovation = innovation_divine_right + } + } + multiply = 1.2 + } + if = { + limit = { + culture = { + has_innovation = innovation_primogeniture + } + } + multiply = 1.2 + } + if = { + limit = { + ai_zeal >= 0 + government_has_flag = government_is_theocracy + } + add = 2000 + } + if = { + limit = { + NOR = { + faith = scope:liege.faith + faith = { + faith_hostility_level = { + target = scope:liege.faith + value = faith_fully_accepted_level + } + } + } + } + multiply = 0 + add = -5000 + } + } + heir_score = { + value = learning + multiply = 20 + add = ai_zeal + if = { + limit = { + has_trait = humble + } + add = 100 + } + if = { + limit = { + has_trait = zealous + } + add = 500 + } + if = { + limit = { + num_virtuous_traits >= 1 + } + add = { + value = 100 + multiply = num_virtuous_traits + } + } + if = { + limit = { + num_sinful_traits >= 1 + } + add = { + value = -200 + multiply = num_sinful_traits + } + } + if = { + limit = { + NOR = { + faith = scope:liege.faith + faith = { + faith_hostility_level = { + target = scope:liege.faith + value > faith_astray_level + } + } + } + } + multiply = 0 + add = -5000 + } + if = { + limit = { + is_male = yes + scope:liege = { + has_realm_law = female_preference_law + } + } + multiply = 0.01 + } + if = { + limit = { + is_female = yes + scope:liege = { + has_realm_law = male_preference_law + } + } + multiply = 0.01 + } + if = { + limit = { + is_adult = no + } + multiply = 0.01 + add = -100 + } + if = { + limit = { + is_male = yes + scope:liege = { + has_realm_law = female_only_law + } + } + multiply = 0 + add = -100 + } + if = { + limit = { + is_female = yes + scope:liege = { + has_realm_law = male_only_law + } + } + multiply = 0 + add = -100 + } + } + is_valid = { + OR = { + faith = scope:liege.faith + faith = { + faith_hostility_level = { + target = scope:liege.faith + value = faith_fully_accepted_level + } + } + } + scope:liege = { + is_landed = yes + } + } +} + +minority = { + score = 1000 + heir_score = { + value = ai_honor + add = ai_compassion + if = { + limit = { + OR = { + AND = { + faith != scope:liege.faith + faith = { + faith_hostility_level = { + target = scope:liege.faith + value > faith_astray_level + } + } + NOR = { + AND = { + scope:liege.faith.religion = religion:islam_religion + faith = { + has_doctrine = tenet_islamic_syncretism + } + } + AND = { + scope:liege.faith.religion = religion:judaism_religion + faith = { + has_doctrine = tenet_jewish_syncretism + } + } + AND = { + scope:liege = { NEOW_religion_is_broadly_christian_trigger = yes } + faith = { + has_doctrine = tenet_christian_syncretism + } + } + AND = { + scope:liege.faith = { + has_doctrine_parameter = unreformed + } + faith = { + has_doctrine = tenet_unreformed_syncretism + } + } + } + } + AND = { + culture != scope:liege.culture + OR = { + culture = { + cultural_acceptance = { target = scope:liege.culture value < 30 } + } + AND = { + any_character_struggle = { + involvement = involved + has_struggle_phase_parameter = struggle_different_culture_more_likely_to_use_minority_stance + } + culture = { + cultural_acceptance = { target = scope:liege.culture value < 70 } + } + } + } + } + } + } + add = 1000 + } + if = { + limit = { + is_male = yes + scope:liege = { + has_realm_law = female_preference_law + } + } + multiply = 0.01 + } + if = { + limit = { + is_female = yes + scope:liege = { + has_realm_law = male_preference_law + } + } + multiply = 0.01 + } + if = { + limit = { + is_adult = no + } + multiply = 0.01 + add = -100 + } + if = { + limit = { + is_male = yes + scope:liege = { + has_realm_law = female_only_law + } + } + multiply = 0 + add = -100 + } + if = { + limit = { + is_female = yes + scope:liege = { + has_realm_law = male_only_law + } + } + multiply = 0 + add = -100 + } + } + is_valid = { + NAND = { + is_clergy = yes + faith = scope:liege.faith + } + NOR = { + culture = { has_cultural_tradition = tradition_loyal_soldiers } + culture = { has_cultural_tradition = tradition_fp2_malleable_subjects } + } + OR = { + AND = { + faith != scope:liege.faith + faith != scope:liege.faith + faith = { + faith_hostility_level = { + target = scope:liege.faith + value > faith_astray_level + } + } + NOR = { + AND = { + scope:liege.faith.religion = religion:islam_religion + faith = { + has_doctrine = tenet_islamic_syncretism + } + } + AND = { + scope:liege.faith.religion = religion:judaism_religion + faith = { + has_doctrine = tenet_jewish_syncretism + } + } + AND = { + scope:liege = { NEOW_religion_is_broadly_christian_trigger = yes } + faith = { + has_doctrine = tenet_christian_syncretism + } + } + AND = { + scope:liege.faith = { + has_doctrine_parameter = unreformed + } + faith = { + has_doctrine = tenet_unreformed_syncretism + } + } + } + } + AND = { + scope:liege = { + NOT = { has_trait = crusader_king } #First generation of crusader vassals will not prioritize their cultural rights. + } + culture != scope:liege.culture + OR = { + culture = { + cultural_acceptance = { target = scope:liege.culture value < 30 } + } + AND = { + any_character_struggle = { + involvement = involved + has_struggle_phase_parameter = struggle_different_culture_more_likely_to_use_minority_stance + } + culture = { + cultural_acceptance = { target = scope:liege.culture value < 70 } + } + } + } + } + } + scope:liege = { + is_landed = yes + } + } +} + +barons_and_minor_landholders = { + score = { + value = 0 + if = { + limit = { + highest_held_title_tier = tier_barony + } + add = 1000 + } + } + heir_score = { + value = ai_compassion + add = { + value = ai_greed + multiply = -2 + } + if = { + limit = { + OR = { + NOR = { + faith = scope:liege.faith + faith = { + faith_hostility_level = { + target = scope:liege.faith + value >= faith_astray_level + } + } + } + NOR = { + culture = scope:liege.culture + culture = { + cultural_acceptance = { target = scope:liege.culture value >= 30 } + } + } + } + } + add = 1000 + } + if = { + limit = { + is_male = yes + scope:liege = { + has_realm_law = female_preference_law + } + } + multiply = 0.01 + } + if = { + limit = { + is_female = yes + scope:liege = { + has_realm_law = male_preference_law + } + } + multiply = 0.01 + } + if = { + limit = { + is_adult = no + } + multiply = 0.01 + add = -100 + } + if = { + limit = { + is_male = yes + scope:liege = { + has_realm_law = female_only_law + } + } + multiply = 0 + add = -100 + } + if = { + limit = { + is_female = yes + scope:liege = { + has_realm_law = male_only_law + } + } + multiply = 0 + add = -100 + } + } + is_valid = { + highest_held_title_tier = tier_barony + scope:liege = { + is_landed = yes + } + } +} + +belligerent = { + score = { + value = ai_boldness + add = { + value = ai_vengefulness + divide = 2 + } + add = { + value = ai_compassion + multiply = -2 + } + add = { + value = ai_honor + divide = 2 + } + if = { + limit = { + has_trait = wrathful + } + add = 50 + } + if = { + limit = { + has_trait = ambitious + } + add = 50 + } + if = { + limit = { + has_trait = vengeful + } + add = 50 + } + if = { + limit = { + culture = { has_cultural_pillar = ethos_bellicose } + } + add = 50 + } + if = { + limit = { + scope:liege = { has_royal_court = yes has_court_type = court_warlike } + } + add = 30 + } + if = { + limit = { + scope:liege = { has_royal_court = yes has_court_type = court_tribal } + } + add = 15 + } + if = { + limit = { + government_has_flag = government_is_nomadic + } + add = 150 + } + if = { + limit = { + top_participant_group:dynastic_cycle ?= { + participant_group_type = expansion_movement + } + } + add = 250 + } + if = { + limit = { + culture = { + has_innovation = innovation_standing_armies + } + } + multiply = 1.2 + } + if = { + limit = { + culture = { + has_innovation = innovation_all_things + } + } + multiply = 1.1 + } + } + heir_score = { + value = prowess + multiply = 30 + add = ai_boldness + add = ai_vengefulness + add = ai_honor + add = { + value = ai_compassion + multiply = -1 + } + if = { + limit = { + has_trait = wrathful + } + add = 50 + } + if = { + limit = { + has_trait = ambitious + } + add = 50 + } + if = { + limit = { + has_trait = craven + } + add = -50 + } + if = { + limit = { + has_trait = humble + } + add = -50 + } + if = { + limit = { + is_male = yes + scope:liege = { + has_realm_law = female_preference_law + } + } + multiply = 0.01 + } + if = { + limit = { + is_female = yes + scope:liege = { + has_realm_law = male_preference_law + } + } + multiply = 0.01 + } + if = { + limit = { + is_adult = no + } + multiply = 0.01 + add = -100 + } + if = { + limit = { + is_male = yes + scope:liege = { + has_realm_law = female_only_law + } + } + multiply = 0 + add = -100 + } + if = { + limit = { + is_female = yes + scope:liege = { + has_realm_law = male_only_law + } + } + multiply = 0 + add = -100 + } + } + is_valid = { + is_lowborn = no + scope:liege = { + is_landed = yes + } + } +} diff --git a/events/activities/coronation_activity/coronation_events.txt b/events/activities/coronation_activity/coronation_events.txt index b0461644..27bffa2b 100644 --- a/events/activities/coronation_activity/coronation_events.txt +++ b/events/activities/coronation_activity/coronation_events.txt @@ -182,18 +182,18 @@ coronation_events.0100 = { } } - if = { - limit = { - any_character_struggle = { is_struggle_type = iberian_struggle } - } - struggle:iberian_struggle = { save_scope_as = involved_struggle } - } - else_if = { - limit = { - any_character_struggle = { is_struggle_type = persian_struggle } - } - struggle:persian_struggle = { save_scope_as = involved_struggle } - } +# if = { +# limit = { +# any_character_struggle = { is_struggle_type = iberian_struggle } +# } +# struggle:iberian_struggle = { save_scope_as = involved_struggle } +# } +# else_if = { +# limit = { +# any_character_struggle = { is_struggle_type = persian_struggle } +# } +# struggle:persian_struggle = { save_scope_as = involved_struggle } +# } } ## Diplomacy @@ -544,25 +544,25 @@ coronation_events.0100 = { VAR = end_the_struggle_oath TIME = 18250 } - if = { - limit = { - any_character_struggle = { is_struggle_type = iberian_struggle } - } - set_variable = { - name = end_the_struggle_oath_type_var - value = flag:iberian_struggle - } - } - else_if = { - limit = { - any_character_struggle = { is_struggle_type = persian_struggle } - } - set_variable = { - name = end_the_struggle_oath_type_var - value = flag:persian_struggle - } - - } +# if = { +# limit = { +# any_character_struggle = { is_struggle_type = iberian_struggle } +# } +# set_variable = { +# name = end_the_struggle_oath_type_var +# value = flag:iberian_struggle +# } +# } +# else_if = { +# limit = { +# any_character_struggle = { is_struggle_type = persian_struggle } +# } +# set_variable = { +# name = end_the_struggle_oath_type_var +# value = flag:persian_struggle +# } +# +# } } ai_chance = { diff --git a/events/activities/coronation_activity/coronation_events_1.txt b/events/activities/coronation_activity/coronation_events_1.txt index 4eb49728..60d930a7 100644 --- a/events/activities/coronation_activity/coronation_events_1.txt +++ b/events/activities/coronation_activity/coronation_events_1.txt @@ -9251,7 +9251,7 @@ coronation_events.1034 = { trigger = { faith = { NOR = { - has_doctrine_parameter = naked_adherents_active +# has_doctrine_parameter = naked_adherents_active has_doctrine_parameter = naked_priests_active } } @@ -9259,7 +9259,7 @@ coronation_events.1034 = { culture = { has_graphical_east_asia_culture_group_trigger = yes } faith = { NOR = { - has_doctrine_parameter = naked_adherents_active +# has_doctrine_parameter = naked_adherents_active has_doctrine_parameter = naked_priests_active } } @@ -9271,7 +9271,7 @@ coronation_events.1034 = { culture = { has_graphical_east_asia_culture_group_trigger = yes } faith = { NOR = { - has_doctrine_parameter = naked_adherents_active +# has_doctrine_parameter = naked_adherents_active has_doctrine_parameter = naked_priests_active } } @@ -9282,7 +9282,7 @@ coronation_events.1034 = { culture = { has_graphical_east_asia_culture_group_trigger = yes } faith = { NOR = { - has_doctrine_parameter = naked_adherents_active +# has_doctrine_parameter = naked_adherents_active has_doctrine_parameter = naked_priests_active } } @@ -9301,7 +9301,7 @@ coronation_events.1034 = { culture = { has_graphical_east_asia_culture_group_trigger = yes } faith = { NOR = { - has_doctrine_parameter = naked_adherents_active +# has_doctrine_parameter = naked_adherents_active has_doctrine_parameter = naked_priests_active } } @@ -9315,7 +9315,7 @@ coronation_events.1034 = { culture = { has_graphical_east_asia_culture_group_trigger = yes } faith = { NOR = { - has_doctrine_parameter = naked_adherents_active +# has_doctrine_parameter = naked_adherents_active has_doctrine_parameter = naked_priests_active } } diff --git a/events/activities/tour_activity/tour_phase_cultural_festival.txt b/events/activities/tour_activity/tour_phase_cultural_festival.txt index 3cc53fdf..19d305c3 100644 --- a/events/activities/tour_activity/tour_phase_cultural_festival.txt +++ b/events/activities/tour_activity/tour_phase_cultural_festival.txt @@ -1875,7 +1875,7 @@ scripted_trigger cultural_festival_2050_scandalous_trigger = { OR = { faith = { #there are many ways you can be scandalous OR = { - has_doctrine_parameter = naked_adherents_active +# has_doctrine_parameter = naked_adherents_active has_doctrine_parameter = deviancy_accepted NOT = { trait_is_sin = lustful } trait_is_sin = chaste @@ -1891,7 +1891,7 @@ scripted_trigger cultural_festival_2050_modest_trigger = { culture = { has_cultural_tradition = tradition_modest } #you can just be modest faith = { #or you don't have these tenets NOR = { - has_doctrine_parameter = naked_adherents_active +# has_doctrine_parameter = naked_adherents_active has_doctrine_parameter = deviancy_accepted } } diff --git a/events/dlc/fp2/fp2_struggle_events.txt b/events/dlc/fp2/fp2_struggle_events.txt index 6d29bf96..1aae42e0 100644 --- a/events/dlc/fp2/fp2_struggle_events.txt +++ b/events/dlc/fp2/fp2_struggle_events.txt @@ -442,11321 +442,11322 @@ fp2_struggle.004 = { # Iberian Struggle Intro Events # 0501 - 599 ################################### -fp2_struggle.0501 = { # Fullscreen Intro Event - type = character_event - window = fullscreen_event - title = fp2_struggle.0501.t - desc = { - desc = fp2_struggle.0501.desc - first_valid = { - triggered_desc = { - trigger = { - any_character_struggle = { - involvement = involved - is_struggle_type = iberian_struggle - } - } - desc = fp2_struggle.0501.desc.involved - } - triggered_desc = { - trigger = { - any_character_struggle = { - involvement = interloper - is_struggle_type = iberian_struggle - } - } - desc = fp2_struggle.0501.desc.interloper - } - } - } - theme = realm - trigger = { # we need to prevent this from firing for all players when a new player joins in MP - is_ai = no - NOT = { has_character_flag = fp2_struggle_intro_event_flag } - fp2_character_any_involvement_iberian_struggle_trigger = yes - } - override_background = { reference = fp2_fullscreen_intro } - override_sound = { reference = "event:/DLC/FP2/SFX/UI/fp2_struggle_ui_intro_animate" } - - cooldown = { years = 100 } - - widgets = { - widget = { - gui = "event_window_widget_struggle_info" - container = "dynamic_content_widget" - controller = struggle_info - setup_scope = { struggle:iberian_struggle = { save_scope_as = struggle } } - } - } - immediate = { - play_music_cue = "mx_Struggle_Opening" - add_character_flag = fp2_struggle_intro_event_flag - save_scope_value_as = { - name = start - value = yes - } - } - option = { - name = fp2_struggle.0501.a - clicksound = "event:/DLC/FP2/SFX/UI/fp2_struggle_start_select" - } -} - -################################### -# Struggle Endings -# by Joe Parkin -# 0900-0912 -################################### -fp2_struggle.0900 = { # Hostility - type = character_event - window = fullscreen_event - title = fp2_struggle.0900.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - culture = { - OR = { - this = culture:basque - any_parent_culture = { this = culture:basque } - has_cultural_pillar = language_basque - } - } - } - desc = fp2_struggle.0900.opening.basque - } - triggered_desc = { - trigger = { - culture = { - OR = { - this = culture:andalusian - any_parent_culture = { this = culture:andalusian } - has_cultural_pillar = language_arabic - } - } - } - desc = fp2_struggle.0900.opening.andalusian - } - triggered_desc = { - trigger = { - culture = { has_cultural_pillar = heritage_iberian } - } - desc = fp2_struggle.0900.opening.iberian - } - desc = fp2_struggle.0900.opening - } - desc = fp2_struggle.0900.desc - } - theme = court - override_background = { reference = fp2_fullscreen_hostility } - override_sound = { reference = "event:/DLC/FP2/SFX/UI/fp2_struggle_ui_intro_end_animate" } - - immediate = { - # Add all involved rulers to a list, for ping event - play_music_cue = "mx_Struggle_ending_hostility" - fp2_struggle_ending_involved_list_effect = yes - give_nickname = nick_the_conquistador - dynasty = { add_dynasty_prestige = 10000 } - } - - # Faith victory - option = { - name = fp2_struggle.0900.a - if = { - limit = { exists = house } - house = { - add_house_modifier = { - modifier = fp2_struggle_hostility_house_faith_modifier - } - } - } - # Piety reward for faith victory - add_piety = 1000 - custom_description_no_bullet = { text = fp2_struggle_house_tt } - custom_tooltip = fp2_struggle_hostility_holy_cb_tt - custom_tooltip = fp2_struggle_hostility_conversion_holy_tt - stress_impact = { - cynical = medium_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_zeal = 1 - } - } - } - - # Culture victory - option = { - name = fp2_struggle.0900.b - # Renown reward for culture victory - if = { - limit = { exists = house } - dynasty = { add_dynasty_prestige = 1000 } - house = { - add_house_modifier = { - modifier = fp2_struggle_hostility_house_culture_modifier - } - } - } - custom_description_no_bullet = { text = fp2_struggle_house_tt } - custom_tooltip = fp2_struggle_hostility_culture_cb_tt - custom_tooltip = fp2_struggle_hostility_conversion_culture_tt - # All Involved cultures lose acceptance of each other - custom_tooltip = { - text = fp2_struggle_hostility_culture_tt - fp2_struggle_hostility_cultural_acceptance_effect = yes - } - stress_impact = { - humble = medium_stress_impact_gain - } - ai_chance = { - base = 100 - } - } - - # Combined victory - option = { - name = fp2_struggle.0900.c - # Reduced renown and piety rewards for combined - if = { - limit = { exists = house } - house = { - add_house_modifier = { - modifier = fp2_struggle_hostility_house_combined_modifier - years = 200 - } - } - } - add_prestige = 3000 - custom_description_no_bullet = { text = fp2_struggle_house_tt } - custom_tooltip = fp2_struggle_hostility_holy_cb_tt - custom_tooltip = culture_parameter_cb_lower_piety_level_requirement - custom_tooltip = fp2_struggle_hostility_culture_cb_tt - custom_tooltip = fp2_struggle_hostility_conversion_holy_tt - custom_tooltip = fp2_struggle_hostility_conversion_culture_tt - # All Involved cultures lose acceptance of each other - custom_tooltip = { - text = fp2_struggle_hostility_culture_large_tt - fp2_struggle_hostility_cultural_acceptance_large_effect = yes - } - stress_impact = { - humble = medium_stress_impact_gain - cynical = medium_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_zeal = 2 - ai_boldness = 1 - } - } - } - - after = { - # Notify & End Struggle - save_scope_as = fp2_loc_struggle_ender # Loc used to use root, this fixes it - every_player = { - limit = { fp2_does_this_player_care_about_the_fate_of_iberia = yes } # Needs to be checked before the struggle ends due to race condition issues - add_to_list = player_to_notify # Making a list so stuff is tiggered after the struggle ends, to make extra sure I don't break anything. - } - - struggle:iberian_struggle = { end_struggle = struggle_iberia_ending_hostility_decision } - every_in_list = { # Then we *actually* notify palyers, making sure the struggle has already ended - list = player_to_notify - trigger_event = fp2_struggle.0910 - } - } -} - -fp2_struggle.0910 = { - type = character_event - window = fullscreen_event - title = fp2_struggle.0900.t - desc = { - first_valid = { - triggered_desc = { - trigger = { is_in_list = struggle_involvees } - desc = fp2_struggle.0910.opening.involved - } - desc = fp2_struggle.0910.opening - } - desc = fp2_struggle.0910.desc - first_valid = { - triggered_desc = { - trigger = { - scope:struggle_ender.house = { has_house_modifier = fp2_struggle_hostility_house_faith_modifier } - } - desc = fp2_struggle.0910.closing.faith - } - triggered_desc = { - trigger = { - scope:struggle_ender.house = { has_house_modifier = fp2_struggle_hostility_house_culture_modifier } - } - desc = fp2_struggle.0910.closing.culture - } - desc = fp2_struggle.0910.closing.combined - } - } - theme = court - override_background = { reference = fp2_fullscreen_hostility } - override_sound = { reference = "event:/DLC/FP2/SFX/UI/fp2_struggle_ui_intro_end_animate" } - - immediate = { - play_music_cue = "mx_Struggle_ending_hostility" - ##### Major Effects ##### - show_as_tooltip = { - scope:struggle_ender = { - #dynasty = { add_dynasty_prestige = 10000 } - fp2_struggle_hostility_ender_effect = yes - } - } - # Hispania is available! - custom_tooltip = fp2_struggle_can_create_empire_of_hispania_tt - # Choose Holy War boost, Culture War boost, or both - scope:struggle_ender.house = { - switch = { - trigger = has_house_modifier - fp2_struggle_hostility_house_faith_modifier = { - show_as_tooltip = { add_house_modifier = fp2_struggle_hostility_house_faith_modifier } - custom_description_no_bullet = { text = fp2_struggle_house_tt } - custom_tooltip = fp2_struggle_hostility_holy_cb_tt - } - fp2_struggle_hostility_house_culture_modifier = { - show_as_tooltip = { add_house_modifier = fp2_struggle_hostility_house_culture_modifier } - custom_description_no_bullet = { text = fp2_struggle_house_tt } - custom_tooltip = fp2_struggle_hostility_culture_cb_tt - custom_tooltip = fp2_struggle_hostility_culture_tt - } - fp2_struggle_hostility_house_combined_modifier = { - show_as_tooltip = { add_house_modifier = fp2_struggle_hostility_house_combined_modifier } - custom_description_no_bullet = { text = fp2_struggle_house_tt } - custom_tooltip = fp2_struggle_hostility_holy_cb_tt - custom_tooltip = fp2_struggle_hostility_culture_cb_tt - custom_tooltip = fp2_struggle_hostility_culture_large_tt - } - } - } - } - - # Ok - option = { - name = { - text = fp2_struggle.0910.a - trigger = { is_in_list = struggle_involvees } - } - name = { - text = fp2_struggle.0910.b - trigger = { - NOT = { is_in_list = struggle_involvees } - } - } - } -} - -fp2_struggle.0901 = { # Compromise - type = character_event - window = fullscreen_event - title = fp2_struggle.0901.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - culture = { - OR = { - this = culture:basque - any_parent_culture = { this = culture:basque } - has_cultural_pillar = language_basque - } - } - } - desc = fp2_struggle.0900.opening.basque - } - triggered_desc = { - trigger = { - culture = { - OR = { - this = culture:andalusian - any_parent_culture = { this = culture:andalusian } - has_cultural_pillar = language_arabic - } - } - } - desc = fp2_struggle.0900.opening.andalusian - } - triggered_desc = { - trigger = { - culture = { has_cultural_pillar = heritage_iberian } - } - desc = fp2_struggle.0900.opening.iberian - } - desc = fp2_struggle.0900.opening - } - desc = fp2_struggle.0901.desc - } - theme = court - override_background = { reference = fp2_fullscreen_compromise } - override_sound = { reference = "event:/DLC/FP2/SFX/UI/fp2_struggle_ui_intro_end_animate" } - - immediate = { - play_music_cue = "mx_Struggle_ending_compromise" - # Independent/Split De Jure Duchies will become De Jure Kingdoms - if = { - limit = { - title:e_spain = { - any_in_de_jure_hierarchy = { fp2_struggle_ending_compromise_independent_duchy_trigger = yes } - } - } - custom_tooltip = { - text = fp2_struggle_compromise_create_new_kingdoms_tt - fp2_struggle_compromise_duchies_to_kingdoms_effect = yes - } - } - # Move duchies to right kingdoms - fp2_struggle_compromise_transfer_duchies_effect = yes - # Turn kingdoms to empires - fp2_struggle_compromise_kingdoms_to_empires_effect = yes - # distribute small kingdoms - fp2_struggle_compromise_distribute_kingdoms_to_neighbouring_empires_effect = yes - # assign the new title to existing characters - fp2_struggle_compromise_distribute_the_actual_titles = yes - - # Set up truces - fp2_struggle_compromise_truce_effect = yes - - ##### Major Effects ##### - fp2_struggle_compromise_ender_effect = yes - - # Tooltips! - fp2_struggle_compromise_tooltip_effect = yes - - ##### Minor Effects ##### - # Self-sufficiency modifiers for each independent realm - fp2_struggle_compromise_modifier_rewards_effect = yes - set_global_variable = { - name = fp2_struggle_compromise_ending - value = yes - } - # Add all involved rulers to a list, for ping event - fp2_struggle_ending_involved_list_effect = yes - } - - # Ok - option = { - name = fp2_struggle.0901.a - if = { - limit = { - any_in_list = { - list = kingdom_empire - this = root.primary_title - } - } - custom_tooltip = fp2_struggle.0901.tt - } - } - - after = { - stress_impact = { - arrogant = medium_stress_impact_gain - } - - # Notify & End Struggle - save_scope_as = fp2_loc_struggle_ender # Loc used to use root, this fixes it - every_player = { - limit = { fp2_does_this_player_care_about_the_fate_of_iberia = yes } # Needs to be checked before the struggle ends due to race condition issues - add_to_list = player_to_notify # Making a list so stuff is tiggered after the struggle ends, to make extra sure I don't break anything. - } - - struggle:iberian_struggle = { end_struggle = struggle_iberia_ending_compromise_decision } - every_in_list = { # Then we *actually* notify palyers, making sure the struggle has already ended - list = player_to_notify - trigger_event = fp2_struggle.0911 - } - } -} - -fp2_struggle.0911 = { - type = character_event - window = fullscreen_event - title = fp2_struggle.0901.t - desc = { - first_valid = { - triggered_desc = { - trigger = { is_in_list = struggle_involvees } - desc = fp2_struggle.0910.opening.involved - } - desc = fp2_struggle.0910.opening - } - desc = fp2_struggle.0911.desc - } - theme = court - override_background = { reference = fp2_fullscreen_compromise } - override_sound = { reference = "event:/DLC/FP2/SFX/UI/fp2_struggle_ui_intro_end_animate" } - - immediate = { - play_music_cue = "mx_Struggle_ending_compromise" - ##### Major Effects ##### - show_as_tooltip = { - scope:struggle_ender = { fp2_struggle_compromise_ender_effect = yes } - } - # Independent/Split De Jure Duchies will become De Jure Kingdoms - custom_tooltip = fp2_struggle_compromise_create_new_kingdoms_tt - # RIP Hispania - fp2_struggle_compromise_tooltip_effect = yes - - ##### Minor Effects ##### - if = { - limit = { - any_in_list = { - list = kingdom_empire - OR = { - this = root.primary_title - this = root.primary_title.de_jure_liege - this = root.primary_title.de_jure_liege.de_jure_liege - } - } - } - custom_tooltip = fp2_struggle.0901.tt - } - if = { - limit = { is_in_list = struggle_involvees } - show_as_tooltip = { - fp2_struggle_compromise_modifier_rewards_personal_house_effect = yes - fp2_struggle_compromise_modifier_rewards_personal_county_effect = yes - } - } - } - - # Ok - option = { - name = { - text = fp2_struggle.0911.a - trigger = { is_in_list = struggle_involvees } - } - name = { - text = fp2_struggle.0910.b - trigger = { - NOT = { is_in_list = struggle_involvees } - } - } - } -} - -fp2_struggle.0902 = { # Conciliation - type = character_event - window = fullscreen_event - title = fp2_struggle.0902.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - culture = { - OR = { - this = culture:basque - any_parent_culture = { this = culture:basque } - has_cultural_pillar = language_basque - } - } - } - desc = fp2_struggle.0900.opening.basque - } - triggered_desc = { - trigger = { - culture = { - OR = { - this = culture:andalusian - any_parent_culture = { this = culture:andalusian } - has_cultural_pillar = language_arabic - } - } - } - desc = fp2_struggle.0900.opening.andalusian - } - triggered_desc = { - trigger = { - culture = { has_cultural_pillar = heritage_iberian } - } - desc = fp2_struggle.0900.opening.iberian - } - desc = fp2_struggle.0900.opening - } - desc = fp2_struggle.0902.desc - } - theme = court - override_background = { reference = fp2_fullscreen_conciliation } - override_sound = { reference = "event:/DLC/FP2/SFX/UI/fp2_struggle_ui_intro_end_animate" } - - immediate = { - play_music_cue = "mx_Struggle_ending_conciliation" - set_global_variable = { - name = fp2_struggle_conciliation_ending - value = yes - } - # Add all involved rulers to a list, for ping event - fp2_struggle_ending_involved_list_effect = yes - - # Add all involved cultures with counties to a list, for marriage and holy war checks - fp2_struggle_ending_culture_list_effect = yes - - # Change cultural acceptance - fp2_struggle_conciliation_cultural_acceptance_effect = yes - - ##### Major Effects ##### - fp2_struggle_conciliation_ender_effect = yes - fp2_struggle_conciliation_tooltip_effect = yes - fp2_struggle_conciliation_modifier_rewards_effect = yes - } - - # - option = { - name = fp2_struggle.0902.a - } - - after = { - stress_impact = { - arrogant = medium_stress_impact_gain - zealous = medium_stress_impact_gain - } - - # Notify & End Struggle - save_scope_as = fp2_loc_struggle_ender # Loc used to use root, this fixes it - every_player = { - limit = { fp2_does_this_player_care_about_the_fate_of_iberia = yes } # Needs to be checked before the struggle ends due to race condition issues - add_to_list = player_to_notify # Making a list so stuff is tiggered after the struggle ends, to make extra sure I don't break anything. - } - - struggle:iberian_struggle = { end_struggle = struggle_iberia_ending_conciliation_decision } - every_in_list = { # Then we *actually* notify palyers, making sure the struggle has already ended - list = player_to_notify - trigger_event = fp2_struggle.0912 - } - } -} - -fp2_struggle.0912 = { - type = character_event - window = fullscreen_event - title = fp2_struggle.0902.t - desc = { - first_valid = { - triggered_desc = { - trigger = { is_in_list = struggle_involvees } - desc = fp2_struggle.0910.opening.involved - } - desc = fp2_struggle.0910.opening - } - desc = fp2_struggle.0912.desc - } - theme = court - override_background = { reference = fp2_fullscreen_conciliation } - override_sound = { reference = "event:/DLC/FP2/SFX/UI/fp2_struggle_ui_intro_end_animate" } - - immediate = { - play_music_cue = "mx_Struggle_ending_conciliation" - ##### Major Effects ##### - show_as_tooltip = { - scope:struggle_ender = { fp2_struggle_conciliation_ender_effect = yes } - } - fp2_struggle_conciliation_tooltip_effect = yes - - ##### Minor Effects ##### - # All involved rulers gain diff culture opinion and learn language scheme power - if = { - limit = { is_in_list = struggle_involvees } - show_as_tooltip = { fp2_struggle_conciliation_modifier_rewards_personal_effect = yes } - } - } - - # Ok - option = { - name = { - text = fp2_struggle.0912.a - trigger = { is_in_list = struggle_involvees } - } - name = { - text = fp2_struggle.0910.b - trigger = { - NOT = { is_in_list = struggle_involvees } - } - } - } -} - -################################### -# Stoking the Fire -# By Ola Jentzsch -################################### -scripted_trigger fp2_struggle_1000_tension_county_trigger = { - is_landless_type_title = no - any_county_province = { geographical_region = world_europe_west_iberia } - faith = { save_temporary_scope_as = compare_faith } - root = { - faith = { - faith_hostility_level = { target = scope:compare_faith value > faith_astray_level } - } - } -} -scripted_trigger fp2_struggle_1000_tension_councillor_trigger = { - faith = { this = root.faith } - is_available_healthy_ai_adult = yes - OR = { - has_trait = zealous - has_trait = wrathful - has_trait = deceitful - has_trait = sadistic - has_trait = holy_warrior - has_trait = callous - } - NOR = { - has_trait = compassionate - has_trait = just - } -} - -fp2_struggle.1000 = { - type = character_event - title = fp2_struggle.1000.t - desc = fp2_struggle.1000.desc - theme = dread - - left_portrait = { - character = root - animation = stress - } - right_portrait = { - character = scope:tension_councillor - animation = scheme - } - - - trigger = { - has_fp2_dlc_trigger = yes - fp2_character_involved_in_struggle_trigger = yes - custom_description = { - text = empty_spooky_trigger #This is entirely pointless, but code likes it, so ghost away! - any_held_county = { fp2_struggle_1000_tension_county_trigger = yes } - OR = { - any_councillor = { fp2_struggle_1000_tension_councillor_trigger = yes } - any_vassal = { fp2_struggle_1000_tension_councillor_trigger = yes } - exists = cp:councillor_marshal - } - } - OR = { - capital_province = { geographical_region = world_europe_west_iberia } - culture = { has_cultural_pillar = heritage_iberian } - } - } - - cooldown = { #this shouldn't fire too often - years = 50 - } - - immediate = { #We need a province and a suitable councillor; this fixes that. - random_held_county = { - limit = { fp2_struggle_1000_tension_county_trigger = yes } - save_scope_as = tension_county - } - if = { - limit = { - any_councillor = { - fp2_struggle_1000_tension_councillor_trigger = yes - } - } - random_councillor = { - limit = { - fp2_struggle_1000_tension_councillor_trigger = yes - } - save_scope_as = tension_councillor - } - } - else_if = { - limit = { - any_vassal = { - fp2_struggle_1000_tension_councillor_trigger = yes - } - } - random_vassal = { - limit = { - fp2_struggle_1000_tension_councillor_trigger = yes - } - save_scope_as = tension_councillor - } - } - else = { - random_councillor = { - limit = { - has_council_position = councillor_marshal - } - save_scope_as = tension_councillor - } - } - - if = { #this code checks if there is an eligible person for the 4th option - limit = { - any_vassal = { - is_available_healthy_ai_adult = yes - faith = scope:tension_county.faith - } - } - random_vassal = { - limit = { - is_available_healthy_ai_adult = yes - faith = scope:tension_county.faith - } - save_scope_as = minority_courtier - } - } - else_if = { - limit = { - any_courtier = { - is_available_healthy_ai_adult = yes - faith = scope:tension_county.faith - } - } - random_courtier = { - limit = { - is_available_healthy_ai_adult = yes - faith = scope:tension_county.faith - } - save_scope_as = minority_courtier - } - } - } - - option = { #Let us spread some hatred...discreetly. - name = fp2_struggle.1000.a - - ai_chance = { #Cruel and fanatical characters pick this option - base = 10 - ai_value_modifier = { - ai_zeal = 1 - ai_vengefulness = 0.5 - ai_compassion = -1 - ai_honor = -1 - } - } - - stress_impact = { - # Righteous characters find this a very unappealing option. - compassionate = medium_stress_impact_gain - gallant = medium_stress_impact_gain - honest = medium_stress_impact_gain - just = medium_stress_impact_gain - paragon = medium_stress_impact_gain - # As do lazy ones. - lazy = minor_stress_impact_gain - } - - scope:tension_councillor = { - add_opinion = { - target = root - opinion = 10 - modifier = took_my_advice_opinion - } - } - - - add_character_modifier = { - modifier = fanatical_recruits_modifier - years = 10 - } - - duel = { #You try to create a hate campaign - and get away with it. - skill = intrigue - value = average_skill_rating - - 20 = { - compare_modifier = { - value = scope:duel_value - multiplier = 2 - } - send_interface_toast = { - title = stoke_tension_toast.success - left_icon = root - - add_dread = minor_dread_gain - - scope:tension_county = { - add_county_modifier = { - modifier = riots_and_murders_province_modifier - years = 5 - } - } - } - } - - 20 = { - compare_modifier = { - value = scope:duel_value - multiplier = -1 - } - send_interface_toast = { - title = stoke_tension_toast.failure - left_icon = root - add_character_modifier = { - modifier = hate_monger_modifier - years = 10 - } - - scope:tension_county = { - add_county_modifier = { - modifier = riots_and_murders_province_modifier - years = 5 - } - } - } - } - } - } - - option = { #I trust you to handle it - name = fp2_struggle.1000.b - - trigger = { - intrigue <= medium_skill_rating - } - - show_unlock_reason = no - - ai_chance = { #Cruel and fanatical characters pick this option - base = 10 - ai_value_modifier = { - ai_zeal = 0.5 - ai_rationality = 0.2 - ai_compassion = -0.5 - ai_honor = -1 - } - } - - stress_impact = { - # Righteous characters find this a very unappealing option. - compassionate = medium_stress_impact_gain - gallant = medium_stress_impact_gain - honest = medium_stress_impact_gain - just = medium_stress_impact_gain - paragon = medium_stress_impact_gain - # As do lazy ones. - lazy = miniscule_stress_impact_gain - } - - if = { - limit = { - intrigue <= medium_skill_rating - } - custom_tooltip = bad_intrigue.tt - } - - scope:tension_councillor = { - if = { - limit = { - intrigue >= average_skill_level - } - add_opinion = { - target = root - opinion = 10 - modifier = trusted_me_opinion - } - } - else = { - add_opinion = { - target = root - opinion = -10 - modifier = unfair_expectations_opinion - } - } - } - - add_character_modifier = { - modifier = fanatical_recruits_modifier - years = 10 - } - - - - scope:tension_councillor = { - duel = { - skill = intrigue - value = average_skill_rating - - 20 = { - compare_modifier = { - value = scope:duel_value - multiplier = 2 - } - root = { - send_interface_toast = { - title = delegated_stoke_tension_toast.success - left_icon = scope:tension_councillor - - scope:tension_county = { - add_county_modifier = { - modifier = riots_and_murders_province_modifier - years = 5 - } - } - } - } - } - 20 = { - compare_modifier = { - value = scope:duel_value - multiplier = -1 - } - root = { - send_interface_toast = { - title = stoke_tension_toast.failure - left_icon = scope:tension_councillor - - root = { - add_character_modifier = { - modifier = hate_monger_modifier - years = 10 - } - } - scope:tension_councillor = { - add_character_modifier = { - modifier = hate_monger_modifier - years = 10 - } - } - scope:tension_county = { - add_county_modifier = { - modifier = riots_and_murders_province_modifier - years = 5 - } - } - } - } - } - } - } - } - - option = { #"No, I shall try to ease the tensions." - name = fp2_struggle.1000.c - - ai_chance = { #just and compassionate characters pick this option - base = 10 - ai_value_modifier = { - ai_honor = 0.8 - ai_compassion = 0.7 - ai_rationality = 0.2 - ai_zeal = -0.8 - ai_vengefulness = -0.7 - } - } - - stress_impact = { - # Aggressive characters find this an unappealing option. - wrathful = minor_stress_impact_gain - zealous = minor_stress_impact_gain - sadistic = minor_stress_impact_gain - vengeful = minor_stress_impact_gain - } - - scope:tension_councillor = { - add_opinion = { - target = root - opinion = -10 - modifier = disappointed_opinion - } - } - - duel = { - skill = diplomacy - value = high_skill_rating - - 30 = { - compare_modifier = { - value = scope:duel_value - multiplier = 2 - } - send_interface_toast = { - title = ease_tension_toast.success - left_icon = root - - add_character_modifier = { - modifier = tolerance_gospel_modifier - years = 10 - } - - scope:tension_county = { - add_county_modifier = { - modifier = tensions_eased_province_modifier - years = 5 - } - } - } - } - 20 = { - compare_modifier = { - value = scope:duel_value - multiplier = -1 - } - send_interface_toast = { - title = ease_tension_toast.failure - left_icon = root - scope:tension_county = { - add_county_modifier = { - modifier = riots_and_murders_province_modifier - years = 5 - } - } - } - } - } - } - - option = { #"If I cannot stop this madness... - name = fp2_struggle.1000.d - - trigger = { - exists = scope:minority_courtier - - scope:tension_county = { - this != root.capital_county - } - } - - ai_chance = { #just and compassionate characters pick this option - base = 10 - ai_value_modifier = { - ai_honor = 0.3 - ai_compassion = 0.3 - ai_rationality = 0.8 - ai_zeal = -0.8 - ai_vengefulness = -0.7 - ai_greed = -1 - } - } - - stress_impact = { - # Aggressive characters find this unappealing - wrathful = minor_stress_impact_gain - zealous = major_stress_impact_gain - sadistic = minor_stress_impact_gain - vengeful = minor_stress_impact_gain - - #As do power-mongers, you're giving away a whole province! - ambitious = minor_stress_impact_gain - stubborn = minor_stress_impact_gain - greedy = minor_stress_impact_gain - arrogant = minor_stress_impact_gain - paranoid = minor_stress_impact_gain - - } - - scope:minority_courtier = { - add_opinion = { - target = root - opinion = 20 - modifier = received_title_county - } - } - - create_title_and_vassal_change = { - type = granted - save_scope_as = change - add_claim_on_loss = yes - } - - scope:tension_county = { - change_title_holder = { - holder = scope:minority_courtier - change = scope:change - } - } - - resolve_title_and_vassal_change = scope:change - - add_stress = medium_stress_loss - - scope:tension_councillor = { - add_opinion = { - target = root - opinion = -10 - modifier = disappointed_opinion - } - } - - scope:tension_county = { - add_county_modifier = { - modifier = tensions_eased_province_modifier - years = 10 - } - } - } -} - -################################### -# War Widows -# By Ola Jentzsch -################################### -# Idea by Isabella welch -################################### - -scripted_trigger fp2_struggle.1001_weird_option_traits = { # These, presumably, makes you even more sympathethic to widows and orphans, or likely to take an ill-thought out decision. - OR = { - has_character_modifier = associates_with_strange_peasants_modifier - has_trait = bastard - has_trait = legitimized_bastard - has_trait = intellect_bad_3 - has_trait = intellect_bad_2 - has_trait = improvident - has_trait = lifestyle_reveler - has_trait = pregnant - has_trait = lunatic - has_trait = eccentric - } -} - -scripted_trigger fp2_struggle.1001_expectant_vassal_or_courtier_traits = { # This is about the personality the pregnant courtier should have to get this idea to begin with - has_trait = pregnant - is_available_ai = yes - NOR = { - has_trait = callous - has_trait = content - has_trait = arrogant - has_trait = dull - } -} - -fp2_struggle.1001 = { - type = character_event - title = fp2_struggle.1001.t - desc = fp2_struggle.1001.desc - theme = faith - cooldown = { years = 50 } - - left_portrait = { - character = root - animation = personality_cynical - } - right_portrait = { - character = scope:expectant_courtier - animation = happiness - } - - trigger = { - has_fp2_dlc_trigger = yes - OR = { - any_vassal = { - fp2_struggle.1001_expectant_vassal_or_courtier_traits = yes - } - any_courtier = { - fp2_struggle.1001_expectant_vassal_or_courtier_traits = yes - } - } - gold >= medium_gold_value_check - - any_truce_target = { } - } - - immediate = { - random_vassal = { - limit = { - fp2_struggle.1001_expectant_vassal_or_courtier_traits = yes - is_spouse_of = root - } - - alternative_limit = { - fp2_struggle.1001_expectant_vassal_or_courtier_traits = yes - any_player_heir = { is_spouse_of = prev } - } - alternative_limit = { - fp2_struggle.1001_expectant_vassal_or_courtier_traits = yes - is_councillor = yes - } - alternative_limit = { - fp2_struggle.1001_expectant_vassal_or_courtier_traits = yes - is_powerful_vassal = yes - } - - alternative_limit = { - fp2_struggle.1001_expectant_vassal_or_courtier_traits = yes - } - - save_scope_as = expectant_courtier - } - - if = { - limit = { - NOT = { - exists = scope:expectant_courtier - } - } - random_courtier = { - limit = { - fp2_struggle.1001_expectant_vassal_or_courtier_traits = yes - is_spouse_of = root - } - alternative_limit = { - fp2_struggle.1001_expectant_vassal_or_courtier_traits = yes - any_player_heir = { is_spouse_of = prev } - } - alternative_limit = { - fp2_struggle.1001_expectant_vassal_or_courtier_traits = yes - is_councillor = yes - } - alternative_limit = { - fp2_struggle.1001_expectant_vassal_or_courtier_traits = yes - } - save_scope_as = expectant_courtier - } - } - } - - - - option = { #A good idea! I shall create such a fund. - name = fp2_struggle.1001.a - - stress_impact = { - # Arrogant or cruel characters find this an unappealing option. - arbitrary = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - sadistic = medium_stress_impact_gain - - # As do, of course, greedy ones. - greedy = medium_stress_impact_gain - - # As do callous and content ones, to an extent. - callous = minor_stress_impact_gain - content = minor_stress_impact_gain - - # But generous and compassionate characters like it. - compassionate = minor_stress_impact_loss - generous = medium_stress_impact_loss - } - - ai_chance = { #Just and compassionate characters pick this option - base = 10 - ai_value_modifier = { - ai_honor = 0.5 - ai_compassion = 1 - ai_vengefulness = -0.2 - ai_greed = -0.5 - } - } - - remove_treasury_or_gold = major_treasury_or_gold_value - - scope:expectant_courtier = { - add_opinion = { - target = root - opinion = 20 - modifier = pleased_opinion - } - } - - - add_character_modifier = { - modifier = nursing_salaries_for_single_mothers_modifier - years = 20 - } - } - - option = { #Widows I will support, but not whores! - name = fp2_struggle.1001.b - flavor = fp2_struggle.1001.b.tt - trigger = { - fp2_struggle.1001_weird_option_traits = no - trait_is_shunned_or_criminal_in_faith_trigger = { - FAITH = faith - TRAIT = trait:adulterer - GENDER_CHARACTER = dummy_female - } - } - - stress_impact = { - # Truly righteous characters wouldn't say this. - compassionate = minor_stress_impact_gain - gallant = minor_stress_impact_gain - generous = minor_stress_impact_gain - humble = minor_stress_impact_gain - just = minor_stress_impact_gain - - # And greedy ones still don't wanna pay up - greedy = minor_stress_impact_gain - } - - ai_chance = { #Zealous AI characters pick this option - base = 10 - ai_value_modifier = { - ai_zeal = 1 - ai_compassion = -0.8 - } - } - - remove_treasury_or_gold = medium_treasury_or_gold_value - add_piety = minor_piety_gain - add_character_modifier = { - modifier = widows_and_widowers_amazing_funds_modifier - years = 20 - } - - scope:expectant_courtier = { - if = { - limit = { - has_trait = zealous - } - add_opinion = { - target = root - opinion = 10 - modifier = pleased_opinion - } - } - else = { - add_opinion = { - target = root - opinion = -10 - modifier = slightly_disappointed_opinion - } - } - } - } - - - option = { #But they can come stay at my court! We have food in abundance! - name = fp2_struggle.1001.c - flavor = fp2_struggle.1001.c.tt - trigger = { - fp2_struggle.1001_weird_option_traits = yes - } - - stress_impact = { - # Cheap or shy character's don't like this - greedy = medium_stress_impact_gain - shy = medium_stress_impact_gain - - #Nor do those wo really care about the appearance and glory of their courts - - ambitious = minor_stress_impact_gain - arrogant = medium_stress_impact_gain - temperate = medium_stress_impact_gain - august = medium_stress_impact_gain - born_in_the_purple = minor_stress_impact_gain - - # But hypersocial hippies love it - - humble = minor_stress_impact_loss - gregarious = minor_stress_impact_loss - eccentric = minor_stress_impact_loss - } - - ai_chance = { #Deranged or hypersocial but irrational AI characters pick this option - base = 10 - ai_value_modifier = { - ai_boldness = 0.5 - ai_energy = 0.8 - ai_rationality = -0.8 - } - } - - scope:expectant_courtier = { - if = { - limit = { - OR = { - has_character_modifier = associates_with_strange_peasants_modifier - has_trait = bastard - has_trait = legitimized_bastard - has_trait = intellect_bad_3 - has_trait = intellect_bad_2 - has_trait = improvident - has_trait = gregarious - } has_trait = lunatic - } - add_opinion = { - target = root - opinion = 10 - modifier = pleased_opinion - } - } - else = { - add_opinion = { - target = root - opinion = -10 - modifier = perplexed_opinion - } - } - } - if = { - limit = { - root = { - faith = { - OR = { - trait_is_virtue = gregarious - trait_is_virtue = humble - trait_is_virtue = generous - } - } - } - } - add_piety = medium_piety_gain - } - else = { - add_piety = minor_piety_gain - } - add_character_modifier = { - modifier = destitute_single_mothers_modifier - years = 15 - } - } - - option = { #Surely, my benevolent vassals can help funding this. - name = fp2_struggle.1001.d - - trigger = { - any_vassal = { - count = all - is_ai = yes - } - } - - stress_impact = { - # Careful or dilpomatically minded characters won't do this. - content = medium_stress_impact_gain - diplomat = medium_stress_impact_gain - paranoid = medium_stress_impact_gain - } - - ai_chance = { #Economic AI characters pick this option, while the careful don't. - base = 10 - ai_value_modifier = { - ai_compassion = 0.5 - ai_greed = 0.5 - ai_rationality = -0.5 - } - } - - remove_treasury_or_gold = minor_treasury_or_gold_value - - custom_tooltip = fp2_struggle.1001.specialdescpositive - custom_tooltip = fp2_struggle.1001.specialdescnegative - hidden_effect = { - every_vassal = { - IF = { - limit = { - NOT = { - has_trait = pregnant - } - } - IF = { - limit = { - OR = { - has_trait = compassionate - has_trait = generous - has_trait = just - } - } - add_opinion = { - target = root - opinion = 10 - modifier = funded_righteous_cause_opinion - } - } - ELSE = { - add_opinion = { - target = root - opinion = -10 - modifier = extorted_me_opinion - } - } - } - } - } - - scope:expectant_courtier = { - IF = { - limit = { - is_vassal_of = root #if she is, she gets angry because now SHE is expected to pay for this... - } - add_opinion = { - target = root - opinion = -20 - modifier = extorted_me_opinion - } - } - ELSE = { - add_opinion = { - target = root - opinion = 10 - modifier = pleased_opinion - } - } - } - - add_character_modifier = { - modifier = nursing_salaries_for_single_mothers_modifier - years = 20 - } - } - - option = { #I am your king, not a wet nurse! - name = fp2_struggle.1001.e - - stress_impact = { - # Benevolent characters wouldn't ignore this. - compassionate = medium_stress_impact_gain - gallant = medium_stress_impact_gain - generous = medium_stress_impact_gain - - # nor would those who are truly competent or just. - administrator = minor_stress_impact_gain - ambitious = minor_stress_impact_gain - diligent = minor_stress_impact_gain - just = minor_stress_impact_gain - eccentric = minor_stress_impact_gain - } - - ai_chance = { #Callous or cheap AI characters pick this option - base = 10 - ai_value_modifier = { - ai_rationality = 0.5 - ai_greed = 0.5 - ai_honor = -0.7 - ai_compassion = -0.7 - } - } - - scope:expectant_courtier = { - add_opinion = { - target = root - opinion = -20 - modifier = hurt_opinion - } - } - - random = { - chance = 50 - send_interface_toast = { - left_icon = root - title = not_my_problem_toast - add_character_modifier = { - modifier = starving_single_mothers_and_children_modifier - years = 15 - } - } - } - } -} - -################################### -# Andalusian Advancements -# By Ola Jentzsch -################################### -# Inspired by an idea by Isabella welch -######################################### -scripted_trigger neighboring_ruler_proper_culture_trigger = { - OR = { - culture = culture:andalusian - culture = culture:bedouin - culture = culture:baranis - culture = culture:butr - culture = culture:levantine - culture = culture:sephardi - } -} - -fp2_struggle.1002 = { - type = character_event - title = fp2_struggle.1002.t - desc = { #Different flavor depending on time period - first_valid = { - triggered_desc = { - trigger = { current_date <= 1030.1.1 } - desc = fp2_struggle.1002.desc_early_golden_age - } - triggered_desc = { - trigger = { - current_year >= 1250 - OR = { has_religion = religion:eastern_orthodox_religion has_religion = religion:catholic_religion has_religion = religion:protestant_religion } - } - desc = fp2_struggle.1002.desc_post_golden_age_christian #this triggers the latinized names of the polymaths - } - triggered_desc = { - trigger = { current_year >= 1250 } - desc = fp2_struggle.1002.desc_post_golden_age_unchristian #or their arabic ones - } - triggered_desc = { - trigger = { current_year >= 1030 } - desc = fp2_struggle.1002.desc_late_golden_age - } - } - first_valid = { - triggered_desc = { #tests if the event would fire one of the historical physicians - trigger = { - AND = { - current_year > 976 - current_year < 1010 - } - exists = global_var:albucasis_created - exists = scope:albucasis_physician - scope:great_physician = scope:albucasis_physician #this is a measure taken so that the loc gets tied to the appropriate character - } - desc = fp2_struggle.1002.desc_albucasis #this is the dialogue text if Albucasis spawns - } - triggered_desc = { #tests if the event would fire one of the historical physicians - trigger = { - AND = { - current_year > 1125 - current_year < 1165 - } - exists = global_var:avenzoar_created - exists = scope:avenzoar_physician - scope:great_physician = scope:avenzoar_physician - } - desc = fp2_struggle.1002.desc_avenzoar #this is the dialogue if Avenzoar spawns - } - triggered_desc = { #tests if the event would fire one of the historical physicians - trigger = { - AND = { - current_year > 1140 - current_year < 1180 - } - exists = global_var:tufail_created - exists = scope:tufail_physician - scope:great_physician = scope:tufail_physician - } - desc = fp2_struggle.1002.desc_tufail #this is the dialogue if Ibn Tufail spawns - } - triggered_desc = { #this defaults to a random Andalusian physician - trigger = { current_year >= 1050 } ## - desc = fp2_struggle.1002.desc_no_historical_physician_late - } - desc = fp2_struggle.1002.desc_no_historical_physician_early - } - first_valid = { #if root has a court physician, it changes the narrative a bit. - triggered_desc = { - trigger = { - court_physician_available_trigger = yes - OR = { has_religion = religion:eastern_orthodox_religion has_religion = religion:catholic_religion has_religion = religion:protestant_religion } - } - desc = fp2_struggle.1002.desc_has_physician_and_is_christian #in this case, the slur "heathen" is used - } - triggered_desc = { - trigger = { court_physician_available_trigger = yes } - desc = fp2_struggle.1002.desc_has_physician_but_not_christian #in this case, the slur "eccentric" is used - } - triggered_desc = { - trigger = { OR = { has_religion = religion:eastern_orthodox_religion has_religion = religion:catholic_religion has_religion = religion:protestant_religion } } - desc = fp2_struggle.1002.desc_has_no_physician_but_is_christian #in this case, the slur "heathen" is used - } - desc = fp2_struggle.1002.desc_has_no_physician #default option should all else fail - } - } - - theme = medicine - override_background = { reference = throne_room } - - left_portrait = { - character = root - animation = personality_content - } - right_portrait = { - character = scope:great_physician - animation = personality_rational #polymaths should always have this pose :D - } - - lower_left_portrait = scope:neighboring_ruler #this is the ruler that's angry with the polymath - - lower_right_portrait = scope:scoped_physician #this is your court physician if you have one - - cooldown = { years = 100 } - - trigger = { - has_fp2_dlc_trigger = yes - #any_character_to_title_neighboring_county = { #this searches for a neighboring province that has the xenophilic tradition, which is this event's dynamic way of checking for Andalusian culture or cultures derived from it. - any_neighboring_and_across_water_top_liege_realm_owner = { - culture = { - OR = { - has_cultural_tradition = tradition_xenophilic - has_cultural_tradition = tradition_medicinal_plants - has_cultural_tradition = tradition_fp2_malleable_subjects - } - } - } - - root.capital_province = { #so that it only triggers for people close to Andalusia - OR = { - geographical_region = world_europe_west_iberia - geographical_region = world_europe_west_francia - geographical_region = world_europe_south_italy - } - } - - NOT = { #So that it doesn't fire for the Andalusians themselves, because that'd make the narrative weird - culture = culture:andalusian - } - - NOT = { #So that it doesn't fire for the Umayyads when they control Iberia - AND = { - culture = culture:levantine - root.capital_province = { geographical_region = world_europe_west_iberia } - } - } - - any_neighboring_and_across_water_top_liege_realm_owner = { - is_ai = yes - } - } - - weight_multiplier = { - base = 0.4 - modifier = { - OR = { - AND = { - current_year > 976 - current_year < 1010 - } - AND = { - current_year > 1125 - current_year < 1180 - } - } - add = 1.6 - } - modifier = { - neighboring_ruler_proper_culture_trigger = yes - add = 0.5 - } - } - - - immediate = { - - random_neighboring_and_across_water_top_liege_realm_owner = { #this searches for a neighboring ruler with the proper cultural tradition, which is this event's dynamic way of checking for Andalusian culture or cultures derived from it. - limit = { - culture = { - OR = { - has_cultural_tradition = tradition_xenophilic - has_cultural_tradition = tradition_medicinal_plants - has_cultural_tradition = tradition_fp2_malleable_subjects - } - } - } - culture = { save_scope_as = xenophilic_culture } #this is mostly used for error-checking because the debug log is unclear. - } - - if = { #This looks to see if one of three historical physicians will be used in the event - limit = { #their rough period of activity - AND = { - current_year > 976 - current_year < 1010 - } - NOT = { exists = global_var:albucasis_created } #makes sure that he wasn't already spawned by the event elsewhere - is_ai = no - scope:xenophilic_culture = culture:andalusian - } - create_character = { - age = { 40 70 } #their rough age during the period of their flourishing - location = root.capital_province - name = "Abu al-Qasim Al-Zahrawi" #Albucasis - gender = male - template = scholar_character - trait = intellect_good_3 #He was one of the Middle Ages' greatest geniuses - trait = lifestyle_herbalist - trait = lifestyle_physician - trait = education_learning_4 - random_traits_list = { #his personality, extrapolated from my research - count = 3 - ambitious = {} - compassionate = {} - calm = {} - diligent = {} - humble = {} - patient = {} - } - random_traits_list = { #this is to hint to the player why he was exiled from the previous court - count = 1 - fornicator = {} - deviant = {} - sodomite = {} - } - culture = culture:andalusian - dynasty = none - faith = faith:muwalladi - save_scope_as = albucasis_physician #this is needed to get the loc right - } - set_global_variable = albucasis_created - scope:albucasis_physician = { - save_scope_as = great_physician #this is to create one easy, generic scope for use in the rest of the event - } - } - - else_if = { - limit = { #their rough period of activity - AND = { - current_year > 1125 - current_year < 1165 - } - NOT = { exists = global_var:avenzoar_created } #makes sure that he wasn't already spawned by the event elsewhere - is_ai = no - scope:xenophilic_culture = culture:andalusian - } - create_character = { - age = { 31 71 } #their rough age during the period of their flourishing - location = root.capital_province - name = "Abū Marwān ibn Zuhr" #Avenzoar - gender = male - template = scholar_character - trait = intellect_good_2 - trait = scholar - trait = lifestyle_physician - trait = education_learning_4 - random_traits_list = { #his personality, extrapolated from my research - count = 3 - diligent = {} - cynical = {} - humble = {} - vengeful = {} #He was bitter over having been exiled from Morocco - } - random_traits_list = { #this is to hint to the player why he was exiled from the previous court - count = 1 - fornicator = {} - deviant = {} - sodomite = {} - murderer = {} - } - culture = culture:andalusian - dynasty = none - faith = faith:muwalladi - save_scope_as = avenzoar_physician - } - - set_global_variable = avenzoar_created - scope:avenzoar_physician = { - save_scope_as = great_physician - } - } - - else_if = { - limit = { #their rough period of activity - AND = { - current_year > 1140 - current_year < 1180 - } - NOT = { exists = global_var:tufail_created } #makes sure that he wasn't already spawned by the event elsewhere - is_ai = no - scope:xenophilic_culture = culture:andalusian - } - create_character = { - age = { 35 75 } #their rough age during the period of their flourishing - location = root.capital_province - name = "Abū Bakr ibn Tufail" #Ibn Tufail - gender = male - template = scholar_character - trait = intellect_good_2 - trait = theologian - trait = lifestyle_physician - trait = education_learning_3 - trait = journaller #He was an avid writer - random_traits_list = { #his personality, extrapolated from my research - count = 3 - diligent = {} - calm = {} - humble = {} - trusting = {} - } - random_traits_list = { #this is to hint to the player why he was exiled from the previous court - count = 1 - fornicator = {} - deviant = {} - sodomite = {} - witch = {} - } - culture = culture:andalusian - dynasty = none - faith = faith:muwalladi - save_scope_as = tufail_physician - } - set_global_variable = tufail_created - scope:tufail_physician = { - save_scope_as = great_physician - } - } - - - else = { #or it defaults to a random one - create_character = { - age = { 32 50 } - location = root.capital_province - template = scholar_character - trait = intellect_good_1 - trait = education_learning_3 - trait = lifestyle_physician - random_traits_list = { - count = 3 - ambitious = {} - calm = {} - diligent = {} - cynical = {} - humble = {} - patient = {} - } - random_traits_list = { ##his is to hint to the player why he was exiled from the previous court - count = 1 - fornicator = {} - deviant = {} - sodomite = {} - incestuous = {} - witch = {} - } - culture = scope:xenophilic_culture - faith = faith:muwalladi - save_scope_as = great_physician - } - } - - hidden_effect = { - scope:great_physician = { - add_trait_xp = { - trait = lifestyle_physician - value = 100 - } - } - } - - random_neighboring_and_across_water_top_liege_realm_owner = { - limit = { - AND = { - neighboring_ruler_proper_culture_trigger = yes #the event prefers the neighboring ruler to be of these cultures, since it makes the most sense histrically for the scholar to have been at that court. - is_ai = yes - } - } - alternative_limit = { is_ai = yes} - save_scope_as = neighboring_ruler - } - - if = { #if you have a court physician already, he has a stake in this! - limit = { - court_physician_available_trigger = yes - } - save_court_physician_as_effect = { SCOPE_NAME = scoped_physician } - } - } - - option = { #I could use a new physician... - name = fp2_struggle.1002.a - - ai_chance = { #rational AIs pick this option - base = 10 - ai_value_modifier = { - ai_rationality = 0.7 - ai_zeal = -0.7 - } - } - - stress_impact = { - # Conservative characters don't want to do this. - content = minor_stress_impact_gain - - # Nor do self-absorbed ones - arrogant = minor_stress_impact_gain - callous = minor_stress_impact_gain - greedy = minor_stress_impact_gain - } - - remove_treasury_or_gold = major_treasury_or_gold_value #this guy is expensive! - - add_courtier = scope:great_physician #he's added to root's court - - court_position_grant_effect = { - EMPLOYER = root - CANDIDATE = scope:great_physician - POS = court_physician - } - - scope:great_physician = { #naturally, the polymath likes to get a new job - add_opinion = { - target = root - opinion = 10 - modifier = hired_me_opinion - } - } - - scope:neighboring_ruler = { #but the neighboring ruler gets angry that you harbor him - progress_towards_rival_effect = { - REASON = rival_harbored_polymath - CHARACTER = root - OPINION = 0 - } - } - - add_character_modifier = { #while you get inspired! - modifier = inspired_medicine_modifier - years = 20 - } - } - - option = { #I do not need you, I can read myself. - name = fp2_struggle.1002.b - flavor = fp2_struggle.1002.b.tt - - trigger = { #This only fires after Avicenna's life, as his books are referenced. - current_year >= 1030 - learning >= medium_skill_rating #and you have to be at least somewhat learned to have this option appear, otherwise it'd be superflous - NOT = { - exists = scope:scoped_physician - } - } - - ai_chance = { #energetic, overconfident AI chooses this - base = 10 - ai_value_modifier = { - ai_energy = 0.7 - ai_boldness = 0.6 - ai_rationality = 0.4 - ai_zeal = -0.6 - ai_greed = -0.6 - } - } - - stress_impact = { - # Conservative, dull or cheap characters won't do this - content = minor_stress_impact_gain - greedy = minor_stress_impact_gain - lazy = minor_stress_impact_gain - zealous = minor_stress_impact_gain - dull = medium_stress_impact_gain - } - - custom_tooltip = fp2_struggle.1002.physicianleaves - - remove_short_term_gold = minor_gold_value #books are expensive! - - if = { - limit = { has_lifestyle = learning_lifestyle } - add_learning_lifestyle_xp = medium_lifestyle_experience - } - - if = { #your physician gets disappointed for your lack of trust in them - limit = { exists = scope:scoped_physician } - scope:scoped_physician = { - add_opinion = { - target = root - opinion = -10 - modifier = disappointed_opinion - } - } - } - - duel = { #you try to read Arabic books - skill = learning - value = medium_skill_rating - - 20 = { - compare_modifier = { - value = scope:duel_value - multiplier = 2 - } - send_interface_toast = { #you succeed! - title = reading_avicenna_toast.success - left_icon = root - root = { - add_character_modifier = { - modifier = inspired_medicine_modifier - years = 20 - } - } - } - } - 20 = { - compare_modifier = { - value = scope:duel_value - multiplier = -1 - } - send_interface_toast = { #you misunderstod something! - title = reading_avicenna_toast.failure - left_icon = root - root = { - add_character_modifier = { - modifier = misread_medicine_incompetence_modifier - years = 20 - } - } - } - } - } - } - - - option = { #What do I need you for? I can read Greek myself - name = fp2_struggle.1002.c - flavor = fp2_struggle.1002.c.tt - - trigger = { #This triggers for the early period, before the Canon of Medicine was published. - current_date <= 1030.1.1 - learning >= medium_skill_rating - NOT = { - exists = scope:scoped_physician - } - } - - ai_chance = { #energetic AI are the most likely to attempt this in this early time period - base = 10 - ai_value_modifier = { - ai_energy = 0.8 - ai_rationality = 0.2 - ai_zeal = -0.2 - } - } - - stress_impact = { - # Conservative, dull or cheap characters won't do this - content = minor_stress_impact_gain - greedy = minor_stress_impact_gain - lazy = minor_stress_impact_gain - zealous = minor_stress_impact_gain - dull = medium_stress_impact_gain - } - - custom_tooltip = fp2_struggle.1002.physicianleaves - - remove_short_term_gold = minor_gold_value #books are really expensive in this early period - - if = { - limit = { has_lifestyle = learning_lifestyle } - add_learning_lifestyle_xp = medium_lifestyle_experience - } - - if = { - limit = { exists = scope:scoped_physician } #your physician still gets disappointed in you - scope:scoped_physician = { - add_opinion = { - target = root - opinion = -10 - modifier = disappointed_opinion - } - } - } - - duel = { #this duel is difficult - it's mostly an option for extremely learned or overconfident rulers. - skill = learning - value = high_skill_rating - - 20 = { - compare_modifier = { - value = scope:duel_value - multiplier = 2 - } - send_interface_toast = { - title = reading_hippocrates_toast.success #You can read greek! - left_icon = root - root = { - add_character_modifier = { - modifier = medical_insights_modifier - years = 20 - } - } - } - } - 20 = { - compare_modifier = { - value = scope:duel_value - multiplier = -1 - } - send_interface_toast = { - title = reading_hippocrates_toast.failure #apparently, your Greek skills aren't all you cranked them up to be. - left_icon = root - root = { - add_character_modifier = { - modifier = cannot_read_greek_modifier - years = 20 - } - } - } - } - } - } - - option = { #I will send you back from whence you came...in chains. - name = fp2_struggle.1002.d - - ai_chance = { #but vengeful ones sure love it! - base = 10 - ai_value_modifier = { - ai_vengefulness = 0.8 - ai_honor = -0.2 - } - } - - stress_impact = { - #Caring, carefree or just characters won't do this - generous = minor_stress_impact_gain - gregarious = minor_stress_impact_gain - just = minor_stress_impact_gain - trusting = minor_stress_impact_gain - compassionate = major_stress_impact_gain - forgiving = major_stress_impact_gain - - #But arbitrary bastards love it - arbitrary = minor_stress_impact_loss - } - - scope:great_physician = { #the polymath, naturally, gets sad that you send him back to his disgruntled former employer. - add_opinion = { - target = root - opinion = -40 - modifier = left_me_to_wolves_opinion - } - } - - if = { #but your current physician is very happy! - limit = { exists = scope:scoped_physician } - scope:scoped_physician = { - add_opinion = { - target = root - opinion = 20 - modifier = let_me_keep_my_job_opinion - } - } - } - - scope:neighboring_ruler = { #as is the neighboring ruler, especially if he is your friend - if = { - limit = { - has_relation_friend = root - } - add_opinion = { - target = root - modifier = strengthened_friendship_opinion - } - } - else = { - progress_towards_friend_effect = { - REASON = friend_returned_refugee - CHARACTER = root - OPINION = 0 - } - } - } - - add_dread = minor_dread_gain #you gain some dread for doing this, naturally - - custom_tooltip = fp2_struggle.1001.physician_imprisoned - hidden_effect = { - if = { - limit = { - scope:neighboring_ruler = { - is_ruler = yes - } - } - scope:great_physician = { #while the polymath gets to languish in a dungeon - hard_imprison_character_effect = { - TARGET = this - IMPRISONER = scope:neighboring_ruler - } - } - } - else = { - scope:great_physician = { - silent_disappearance_effect = yes - } - } - } - } - - option = { #Wash my hands? Are you insane?" - name = fp2_struggle.1002.e - - trigger = { #This only triggers for Christianity and similar faiths - faith = { - has_doctrine_parameter = theocracy_temple_lease - NOR = { - has_doctrine_parameter = legalism_modified_law_costs - has_doctrine_parameter = literalist_debate_enabled - } - } - NOT = { has_lifestyle = learning_lifestyle } #So that this doesn't fire if you have the "Wash your hands" perk - } - - ai_chance = { #and fanatics don't care about hygiene...apparently - base = 10 - ai_value_modifier = { - ai_zeal = 0.8 - ai_rationality = -0.8 - } - } - - stress_impact = { - # Innovative or nervous chracters wouldn't pick this option. - ambitious = minor_stress_impact_gain - craven = minor_stress_impact_gain - - #But stubborn or content ones would - content = minor_stress_impact_loss - lazy = minor_stress_impact_loss - stubborn = minor_stress_impact_loss - eccentric = minor_stress_impact_loss - } - - custom_tooltip = fp2_struggle.1002.physicianleaves - - if = { #your physician, again, loves that they get to keep their job - limit = { exists = scope:scoped_physician } - scope:scoped_physician = { - add_opinion = { - target = root - opinion = 20 - modifier = let_me_keep_my_job_opinion - } - } - } - - add_piety = medium_piety_gain #and your faith rewards you for turning away the heathen - - add_character_modifier = { #but you're rolling in filth - modifier = rolling_in_filth_modifier - years = 5 - } - } - - - - option = { #Begone, innovation should only come from God. - name = fp2_struggle.1002.f - - trigger = { - current_year >= 1065 #because this option refers to developments in islam that happened within the Seljuk empire - faith = { #it checks for doctrines, rather than islam itself, to make the event more dynamic - OR = { - has_doctrine_parameter = legalism_modified_law_costs - has_doctrine_parameter = literalist_debate_enabled - has_doctrine_parameter = religious_legal_pronouncements_law_cost_reduction - } - } - } - - ai_chance = { #zealous AIs pick this, but it's not entirely unrational - just hostile to new ideas. - base = 10 - ai_value_modifier = { - ai_zeal = 0.8 - ai_rationality = -0.2 - } - } - - stress_impact = { - #True rationalists abhor this option - ambitious = medium_stress_impact_gain - diligent = medium_stress_impact_gain - - #But stubborn and fanatical ones like it - content = minor_stress_impact_loss - stubborn = minor_stress_impact_loss - zealous = minor_stress_impact_loss - eccentric = minor_stress_impact_loss - } - - custom_tooltip = fp2_struggle.1002.physicianleaves - - if = { #your physician, again, loves that they get to keep their job - limit = { exists = scope:scoped_physician } - scope:scoped_physician = { - add_opinion = { - target = root - opinion = 20 - modifier = let_me_keep_my_job_opinion - } - } - } - - scope:neighboring_ruler = { #the neighboring ruler likes that you rebuked the polymath, at least - add_opinion = { - target = root - opinion = 10 - modifier = rejected_my_enemy_opinion - } - } - - add_character_modifier = { #but you draw closer to the Nizamiyah movement, rejecting innovation. - modifier = anti_innovation_muslim_modifier - years = 15 - } - } -} - -################################### -# Soul of Iron -# By Ola Jentzsch -################################### -fp2_struggle.1010 = { # Soul of Iron, by Ola Jentzsch - type = character_event - title = fp2_struggle.1010.t - desc = fp2_struggle.1010.desc - theme = realm - - left_portrait = { - character = root - animation = happiness #root smells an opportunity! - } - right_portrait = { - character = scope:great_swordsmith - animation = scheme #he's a scheming bastard, kinda - } - - - trigger = { #The province must also be involved in the Iberian struggle - is_ai = no - has_fp2_dlc_trigger = yes - any_held_county = { - any_county_province = { - has_building_or_higher = blacksmiths_01 #This event needs ROOT to have a blacksmith building - } - } - fp2_character_involved_in_struggle_trigger = yes - } - - cooldown = { years = 100 } - - immediate = { - - random_held_county = { #this is to find the county that has the blacksmith - limit = { - any_county_province = { - has_building_or_higher = blacksmiths_01 - } - } - save_scope_as = blacksmith_county #this scopes it - note that it might be the same county as toledo_county; that is intentional. - } - - title:b_toledo = { save_scope_as = toledo_holding } #this is used in the localization - - title:c_toledo = { save_scope_as = toledo_county } #this is used in option c, as well as the localization - - create_character = { #this is the mighty blacksmith that the event needs - age = { 45 55 } #he's experienced and aging, but not old - location = root.capital_province - gender_female_chance = root_faith_dominant_gender_female_chance #could be female, if given the right context. - trait = intellect_good_3 #he's a genius craftsman - trait = strong #and a blacksmith... - trait = arrogant #he's supremely gifted, but also extremely arrogant, Fëanor basically - random_traits_list = { #the rest of his questionable personality - count = 2 - ambitious = {} - diligent = {} - callous = {} - greedy = {} - patient = {} - stubborn = {} - vengeful = {} - } - random_traits_list = { #something fun to give him character! - count = 1 - one_eyed = {} - scarred = {} - } - culture = scope:toledo_county.culture - religion = religion:catholic_religion - dynasty = none - save_scope_as = great_swordsmith #this saves him as a scope so we can get nice effects to bounce off him! - } - - hidden_effect = { - scope:great_swordsmith = { - add_character_modifier = { - modifier = master_smith_npc_modifier #this is a neat modifier he gets as a master smith. it's pretty powerful, giving a boost to Stewardship and gold income, but since he's an NPC, it doesn't matter much. It's mostly to create flavor if the player actually examines his stats. - } - } - } - } - - - option = { #Let us make a compromise - name = fp2_struggle.1010.a - flavor = toledo_compromise_flavor - - trigger = { #root needs to control Toledo, and it needs to have a blacksmith building. - any_held_county = { - any_county_province = { - barony = title:b_toledo - has_building_or_higher = blacksmiths_01 - } - } - scope:toledo_county = { #so that this option doesn't fire twice - NOT = { has_county_modifier = toledo_steel_county_modifier } - } - } - - ai_chance = { #Smart, patient AIs pick this option, others are more likely to go for a bolder approach. - base = 10 - ai_value_modifier = { - ai_rationality = 1 - ai_honor = 0.5 - ai_boldness = -0.5 - ai_zeal = -0.5 - } - } - - stress_impact = { #arrogant or visionless rulers dislike this option - arrogant = minor_stress_impact_gain - callous = minor_stress_impact_gain - content = minor_stress_impact_gain - wrathful = minor_stress_impact_gain - } - - remove_short_term_gold = major_gold_value #someone still has to be bribed here - - scope:toledo_county = { - add_county_modifier = { - modifier = toledo_steel_county_modifier - } - } - - scope:toledo_county = { - add_county_modifier = { - modifier = governance_1041_quarreling_guilds_modifier - years = 20 - } - } - } - - option = { #Whatever knowledge you possess, I shall draw it out. - name = fp2_struggle.1010.b - flavor = fp2_struggle.1010.swordsmith_imprisoned - - trigger = { - OR = { - has_trait = schemer - has_trait = torturer - has_trait = paranoid - dread >= high_dread - } - NAND = { - any_held_county = { - any_county_province = { - barony = title:b_toledo - has_building_or_higher = blacksmiths_01 - } - } - scope:toledo_county = { #so that this option doesn't fire twice - NOT = { has_county_modifier = toledo_steel_county_modifier } - } - } - } - - - scope:great_swordsmith = { #while the great swordsmiths gets to languish in a dungeon - hard_imprison_character_effect = { - TARGET = this - IMPRISONER = root - } - } - - - ai_chance = { #Compassionate or just AI wouldn't do this, but hateful paranoid psychopats, sure! Perhaps the smith even deserved it... - base = 10 - ai_value_modifier = { - ai_vengefulness = 1 - ai_honor = -1 - } - } - - stress_impact = { #this is not what a Buddha would do - compassionate = major_stress_impact_gain - generous = medium_stress_impact_gain - gregarious = medium_stress_impact_gain - just = medium_stress_impact_gain - } - - add_dread = minor_dread_gain #you gain some dread for doing this, naturally - - scope:great_swordsmith = { - add_character_modifier = { - modifier = recently_tortured - years = 5 - } - } - - - add_character_modifier = { - modifier = tortured_smith_spilling_secrets_modifier - years = 25 - } - - custom_tooltip = fp2_struggle.1010.compassionate_courtiers - hidden_effect = { #Compassionate or righteous courtiers will secretly dislike this - every_courtier = { - IF = { - limit = { - OR = { - has_trait = compassionate - has_trait = just - } - } - add_opinion = { - target = root - opinion = -10 - modifier = cruelty_opinion - } - } - } - } - } - - option = { #You shall have it, if you make swords for my armies - name = fp2_struggle.1010.c - flavor = fp2_struggle.1010.smithgoesaway - - ai_chance = { #ambitious AIs pick this option - base = 10 - ai_value_modifier = { - ai_energy = 0.7 - ai_vengefulness = 0.7 - } - } - - stress_impact = { - content = minor_stress_impact_gain - craven = minor_stress_impact_gain - greedy = minor_stress_impact_gain - just = minor_stress_impact_gain - } - - remove_treasury_or_gold = major_treasury_or_gold_value #this guy is expensive! - - add_character_modifier = { #as promised, your armies gets equipped with Toledo steel! - modifier = toledo_steel_armaments_modifier - years = 50 - } - - scope:blacksmith_county = { #the great smith usurps the blacksmiths' guild, with your blessing - add_county_modifier = { - modifier = county_corruption_uncooperative_guilds_modifier - years = 10 - } - } - - custom_tooltip = fp2_struggle.1010.paranoid_rivals #your neighbors gets really paranoid when they learn about this - hidden_effect = { - struggle:iberian_struggle = { - every_involved_ruler = { - limit = { - NOT = { is_allied_to = root } - character_is_realm_neighbor = root - } - add_opinion = { - target = root - opinion = -20 - modifier = threatened_by_buildup_opinion - } - } - } - } - } - - option = { #Make me Iberia's finest blade, and all the smithies shall be yours - name = fp2_struggle.1010.d - - flavor = fp2_struggle.1010.smithmakesweapon #the master swordsmiths stays in your court for the time being, to make the great sword he promised you. - - add_courtier = scope:great_swordsmith - - hidden_effect = { - scope:great_swordsmith = { - set_knight_status = forbid #this is to prevent him being auto-turned into a knight during his stay, as he tends to get quite high prowess. The player can still make him a knight manually if they insist on it. - } - } - - ai_chance = { #Self-absorbed AIs pick this option - base = 10 - ai_value_modifier = { - ai_greed = 0.7 - ai_boldness = 0.7 - } - } - - stress_impact = { #this is an extravagant option, not for the humble or temperate - but just people don't like it either, since it still lets the blacksmith usurp the guilds. - humble = minor_stress_impact_gain - just = minor_stress_impact_gain - temperate = minor_stress_impact_gain - } - - remove_short_term_gold = major_gold_value #this guy knows what he's worth! - - scope:blacksmith_county = { #the guild gets usurped by the arrogant master smith! - add_county_modifier = { - modifier = county_corruption_uncooperative_guilds_modifier - years = 10 - } - } - - hidden_effect = { #this looks weird in the tooltip otherwise! - random_list = { #I recommend increasing the odds for the special cool sword when testing this event! - 25 = { #You have a 25% chance of getting a really cool sword here! - trigger = { is_ai = no } #this option is just for players, to create less inflation on awesume swords. - trigger_event = { - id = fp2_struggle.1011 - days = { 30 60 } - } - } - 75 = { #but you can still get a nice toledo blade! - trigger_event = { - id = fp2_struggle.1012 - days = { 30 60 } - } - } - } - } - } - - option = { #I will not anger the guilds for your vanity. - name = fp2_struggle.1010.e - - flavor = fp2_struggle.1010.swordsmith_leaves - - ai_chance = { #Lazy or worried AI pick this option - base = 10 - ai_value_modifier = { - ai_energy = -0.7 - ai_greed = 0.3 - ai_boldness = -0.5 - } - } - - stress_impact = { #this is not the option for opportunists, but a good option for some humble stress loss - ambitious = major_stress_impact_gain - diligent = medium_stress_impact_gain - content = minor_stress_impact_loss - humble = minor_stress_impact_loss - temperate = minor_stress_impact_loss - paranoid = minor_stress_impact_loss - } - - scope:blacksmith_county = { #You curry favor with the blacksmith's guild - add_county_modifier = { - modifier = guild_rights_protected_modifier - years = 20 - } - } - - scope:great_swordsmith = { - add_opinion = { - target = root - modifier = insulted_opinion - } - } - } -} - -fp2_struggle.1011 = { # The Masterwork, by Ola Jentzsch - type = character_event - title = fp2_struggle.1011.t - desc = fp2_struggle.1011.desc - theme = realm - - left_portrait = { - character = root - animation = admiration - } - right_portrait = { - character = scope:great_swordsmith - animation = marshal - } - - artifact = { # To display the artifact in the event-window - target = scope:amazing_toledo_sword - position = lower_right_portrait - } - - trigger = { - has_fp2_dlc_trigger = yes - scope:great_swordsmith = { - is_available_healthy_ai_adult = yes - } - } - - immediate = { - - save_scope_as = owner - set_artifact_rarity_illustrious = yes - - create_artifact = { - name = awesome_toledo_sword_name - creator = scope:great_swordsmith - description = awesome_toledo_sword_desc - visuals = sword - type = sword - modifier = artifact_amazing_toledo_sword_modifier - wealth = scope:wealth # This comes from the scripted effect above - quality = scope:quality # This comes from the scripted effect above - save_scope_as = amazing_toledo_sword # Allows the sword to be accessed via scope after its creation - } - } - - option = { #Martiello, the hammer - name = fp2_struggle.1011.a - - trigger = { - root = { - culture = { has_cultural_pillar = language_iberian } - } - } - - scope:amazing_toledo_sword = { set_artifact_name = martiello_name } - - custom_tooltip = fp2_struggle.1011.swordsmith_leaves - hidden_effect = { - remove_courtier_or_guest = scope:great_swordsmith - } - } - - option = { #Tiniebra, the darkness - name = fp2_struggle.1011.b - - trigger = { - root = { - culture = { has_cultural_pillar = language_iberian } - } - } - - scope:amazing_toledo_sword = { set_artifact_name = tiniebra_name } - - custom_tooltip = fp2_struggle.1011.swordsmith_leaves - hidden_effect = { - remove_courtier_or_guest = scope:great_swordsmith - } - } - - option = { #Vermejo, the red - name = fp2_struggle.1011.c - - trigger = { - root = { - culture = { has_cultural_pillar = language_iberian } - } - } - - scope:amazing_toledo_sword = { set_artifact_name = vermejo_name } - - custom_tooltip = fp2_struggle.1011.swordsmith_leaves - hidden_effect = { - remove_courtier_or_guest = scope:great_swordsmith - } - } - - option = { #Jargonça, like the blue gemstone. - name = fp2_struggle.1011.d - - trigger = { - root = { - culture = { has_cultural_pillar = language_iberian } - } - } - - scope:amazing_toledo_sword = { set_artifact_name = jargonca_name } - - custom_tooltip = fp2_struggle.1011.swordsmith_leaves - hidden_effect = { - remove_courtier_or_guest = scope:great_swordsmith - } - } - - option = { #Suhayl, the glorious. - name = fp2_struggle.1011.e - - trigger = { - root = { - culture = { has_cultural_pillar = language_arabic } - } - } - - scope:amazing_toledo_sword = { set_artifact_name = suhayl_name } - - custom_tooltip = fp2_struggle.1011.swordsmith_leaves - hidden_effect = { - remove_courtier_or_guest = scope:great_swordsmith - } - } - - option = { #al-Battar, the cutter - name = fp2_struggle.1011.f - - trigger = { - root = { - culture = { has_cultural_pillar = language_arabic } - } - } - - scope:amazing_toledo_sword = { set_artifact_name = albattar_name } - - custom_tooltip = fp2_struggle.1011.swordsmith_leaves - hidden_effect = { - remove_courtier_or_guest = scope:great_swordsmith - } - } - - option = { #Qazeeb, of the strong handle - name = fp2_struggle.1011.g - - trigger = { - root = { - culture = { has_cultural_pillar = language_arabic } - } - } - - scope:amazing_toledo_sword = { set_artifact_name = qazeeb_name } - - custom_tooltip = fp2_struggle.1011.swordsmith_leaves - hidden_effect = { - remove_courtier_or_guest = scope:great_swordsmith - } - } - - option = { #Zumurrud, like the blinding emerald - name = fp2_struggle.1011.h - - trigger = { - root = { - culture = { has_cultural_pillar = language_arabic } - } - } - - scope:amazing_toledo_sword = { set_artifact_name = zumurrud_name } - - custom_tooltip = fp2_struggle.1011.swordsmith_leaves - hidden_effect = { - remove_courtier_or_guest = scope:great_swordsmith - } - } - - option = { #Ortzi, like the thunder - name = fp2_struggle.1011.i - - trigger = { - root = { - culture = { has_cultural_pillar = language_basque } - } - } - - scope:amazing_toledo_sword = { set_artifact_name = ortzi_name } - - custom_tooltip = fp2_struggle.1011.swordsmith_leaves - hidden_effect = { - remove_courtier_or_guest = scope:great_swordsmith - } - } - - option = { #Gaueko, the night spirit - name = fp2_struggle.1011.j - - trigger = { - root = { - culture = { has_cultural_pillar = language_basque } - } - } - - scope:amazing_toledo_sword = { set_artifact_name = gaueko_name } - - custom_tooltip = fp2_struggle.1011.swordsmith_leaves - hidden_effect = { - remove_courtier_or_guest = scope:great_swordsmith - } - } - - option = { #Gorri, the red one - name = fp2_struggle.1011.k - - trigger = { - root = { - culture = { has_cultural_pillar = language_basque } - } - } - - scope:amazing_toledo_sword = { set_artifact_name = gorri_name } - - custom_tooltip = fp2_struggle.1011.swordsmith_leaves - hidden_effect = { - remove_courtier_or_guest = scope:great_swordsmith - } - } - - option = { #Aiztoto, the little knife - name = fp2_struggle.1011.l - - trigger = { - root = { - culture = { has_cultural_pillar = language_basque } - } - } - - scope:amazing_toledo_sword = { set_artifact_name = aiztoto_name } - - custom_tooltip = fp2_struggle.1011.swordsmith_leaves - hidden_effect = { - remove_courtier_or_guest = scope:great_swordsmith - } - } - - option = { #Escremire, the fencer - name = fp2_struggle.1011.m - - trigger = { - root = { - culture = { has_cultural_pillar = language_occitano_romance } - } - } - - scope:amazing_toledo_sword = { set_artifact_name = escremire_name } - - custom_tooltip = fp2_struggle.1011.swordsmith_leaves - hidden_effect = { - remove_courtier_or_guest = scope:great_swordsmith - } - } - - option = { #Folha, the leaf - name = fp2_struggle.1011.n - - trigger = { - root = { - culture = { has_cultural_pillar = language_occitano_romance } - } - } - - scope:amazing_toledo_sword = { set_artifact_name = folha_name } - - custom_tooltip = fp2_struggle.1011.swordsmith_leaves - hidden_effect = { - remove_courtier_or_guest = scope:great_swordsmith - } - } - - option = { #Proeza, valour - name = fp2_struggle.1011.o - - trigger = { - root = { - culture = { has_cultural_pillar = language_occitano_romance } - } - } - - scope:amazing_toledo_sword = { set_artifact_name = proeza_name } - - custom_tooltip = fp2_struggle.1011.swordsmith_leaves - hidden_effect = { - remove_courtier_or_guest = scope:great_swordsmith - } - } - - option = { #Trebalhar, the tormenter - name = fp2_struggle.1011.p - - trigger = { - root = { - culture = { has_cultural_pillar = language_occitano_romance } - } - } - - scope:amazing_toledo_sword = { set_artifact_name = trebalhar_name } - - custom_tooltip = fp2_struggle.1011.swordsmith_leaves - hidden_effect = { - remove_courtier_or_guest = scope:great_swordsmith - } - } - - option = { #Sufax, like the great hero in days of old - name = fp2_struggle.1011.q - - trigger = { - root = { - culture = { has_cultural_pillar = language_berber } - } - } - - scope:amazing_toledo_sword = { set_artifact_name = sufax_name } - - custom_tooltip = fp2_struggle.1011.swordsmith_leaves - hidden_effect = { - remove_courtier_or_guest = scope:great_swordsmith - } - } - - option = { #Toumellalt, the white one. - name = fp2_struggle.1011.r - - trigger = { - root = { - culture = { has_cultural_pillar = language_berber } - } - } - - scope:amazing_toledo_sword = { set_artifact_name = toumellalt_name } - - custom_tooltip = fp2_struggle.1011.swordsmith_leaves - hidden_effect = { - remove_courtier_or_guest = scope:great_swordsmith - } - } - - option = { #Ayugu, the yoke. - name = fp2_struggle.1011.s - - trigger = { - root = { - culture = { has_cultural_pillar = language_berber } - } - } - - scope:amazing_toledo_sword = { set_artifact_name = ayugu_name } - - custom_tooltip = fp2_struggle.1011.swordsmith_leaves - hidden_effect = { - remove_courtier_or_guest = scope:great_swordsmith - } - } - - option = { #Well, "Ironsoul" of course - name = fp2_struggle.1011.u - - trigger = { - root = { - culture = { - NOT = { - has_cultural_pillar = language_iberian - has_cultural_pillar = language_arabic - has_cultural_pillar = language_basque - has_cultural_pillar = language_occitano_romance - has_cultural_pillar = language_berber - } - } - } - } - - scope:amazing_toledo_sword = { set_artifact_name = ironsoul_name } - - custom_tooltip = fp2_struggle.1011.swordsmith_leaves - hidden_effect = { - remove_courtier_or_guest = scope:great_swordsmith - } - } - - option = { #I quite like "Mistletoe"... - name = fp2_struggle.1011.v - - trigger = { - root = { - culture = { - NOT = { - has_cultural_pillar = language_iberian - has_cultural_pillar = language_arabic - has_cultural_pillar = language_basque - has_cultural_pillar = language_occitano_romance - has_cultural_pillar = language_berber - } - } - } - } - - scope:amazing_toledo_sword = { set_artifact_name = mistletoe_name } - - custom_tooltip = fp2_struggle.1011.swordsmith_leaves - hidden_effect = { - remove_courtier_or_guest = scope:great_swordsmith - } - } - - option = { #Moor-cleaver, what else? - name = fp2_struggle.1011.w - - trigger = { - OR = { has_religion = religion:eastern_orthodox_religion has_religion = religion:catholic_religion has_religion = religion:protestant_religion } - root = { - culture = { - NOT = { - has_cultural_pillar = language_iberian - has_cultural_pillar = language_arabic - has_cultural_pillar = language_basque - has_cultural_pillar = language_occitano_romance - has_cultural_pillar = language_berber - } - } - } - } - - stress_impact = { - compassionate = minor_stress_impact_gain - } - - scope:amazing_toledo_sword = { set_artifact_name = moormurder_name } - - custom_tooltip = fp2_struggle.1011.swordsmith_leaves - hidden_effect = { - remove_courtier_or_guest = scope:great_swordsmith - } - } - - option = { #Usurper's blade seem fitting, giving what we did to the guilds... - name = fp2_struggle.1011.x - - trigger = { - root = { - culture = { - NOT = { - has_cultural_pillar = language_iberian - has_cultural_pillar = language_arabic - has_cultural_pillar = language_basque - has_cultural_pillar = language_occitano_romance - has_cultural_pillar = language_berber - } - } - } - } - - scope:amazing_toledo_sword = { set_artifact_name = usurperblade_name } - - custom_tooltip = fp2_struggle.1011.swordsmith_leaves - hidden_effect = { - remove_courtier_or_guest = scope:great_swordsmith - } - } -} - -fp2_struggle.1012 = { # Soul of Iron (3), by Ola Jentzsch - type = character_event - title = fp2_struggle.1012.t - desc = fp2_struggle.1012.desc - theme = realm - - left_portrait = { - character = root - animation = admiration - } - right_portrait = { - character = scope:great_swordsmith - animation = marshal - } - - artifact = { # To display the artifact in the event-window - target = scope:toledo_sword - position = lower_right_portrait - } - - trigger = { - has_fp2_dlc_trigger = yes - scope:great_swordsmith = { - is_available_healthy_ai_adult = yes - } - } - - immediate = { - - save_scope_as = owner - set_artifact_rarity_masterwork = yes - - create_artifact = { - name = toledo_sword_name - creator = scope:great_swordsmith - description = toledo_sword_desc - visuals = sword - type = sword - modifier = artifact_masterwork_toledo_sword_modifier - wealth = scope:wealth # This comes from the scripted effect above - quality = scope:quality # This comes from the scripted effect above - save_scope_as = toledo_sword # Allows the sword to be accessed via scope after its creation - } - } - - option = { #It is...exquisite. You may go in peace. - name = fp2_struggle.1012.a - flavor = fp2_struggle.1012.swordsmith_leaves - - ai_chance = { #Only greedy AI wouldn't pick this option. - base = 10 - ai_value_modifier = { - ai_greed = -1 - } - } - - remove_courtier_or_guest = scope:great_swordsmith - } - - option = { #It is as promised. May I not convince you to stay and serve me? - name = fp2_struggle.1012.b - - ai_chance = { #Only greedy would pick this option. - base = 10 - ai_value_modifier = { - ai_greed = 1 - } - } - - custom_tooltip = fp2_struggle.1012_swordsmith_stays - - remove_treasury_or_gold = major_treasury_or_gold_value #this guy is expensive! - } -} - -################################### -# Death of a Councilman -# By Ola Jentzsch -################################### -scripted_trigger fp2_struggle.1020_minority_councillor_faith_trigger = { - save_temporary_scope_as = fp2_struggle_1020_temp_councillor - is_ai = yes - NOT = { is_spouse_of = root } - root.capital_county.faith = { - faith_hostility_level = { - target = scope:fp2_struggle_1020_temp_councillor.faith - value >= faith_hostile_level - } - } -} - -fp2_struggle.1020 = { - type = character_event - title = fp2_struggle.1020.t - desc = { - desc = fp2_struggle.1020_desc_opening - first_valid = { - triggered_desc = { - trigger = { - scope:minority_councillor = { - death_reason = death_beaten_by_mob - } - } - desc = fp2_struggle.1020_desc_beaten_by_mob - } - triggered_desc = { - trigger = { - scope:minority_councillor = { - death_reason = death_burned_by_mob - } - } - desc = fp2_struggle.1020_desc_burned_by_mob - } - triggered_desc = { - trigger = { - scope:minority_councillor = { - death_reason = death_hanged_and_disemboweled_by_mob - } - } - desc = fp2_struggle.1020_desc_hanged_and_disemboweled_by_mob - } - triggered_desc = { - trigger = { - scope:minority_councillor = { - death_reason = death_crucified_by_mob - } - } - desc = fp2_struggle.1020_desc_crucified_by_mob - } - triggered_desc = { - trigger = { - scope:minority_councillor = { - death_reason = death_defenestrated_by_mob - } - } - desc = fp2_struggle.1020_desc_defenestrated_by_mob - } - triggered_desc = { - trigger = { - scope:minority_councillor = { - death_reason = death_molten_silver_by_mob - } - } - desc = fp2_struggle.1020_desc_molten_silver_by_mob - } - triggered_desc = { - trigger = { - scope:minority_councillor = { - death_reason = death_torn_to_pieces_by_mob - } - } - desc = fp2_struggle.1020_desc_torn_to_pieces_by_mob - } - } - first_valid = { - triggered_desc = { - trigger = { - scope:councillor_executor = { - exists = var:relative_created - } - } - desc = fp2_struggle.1020_desc_councillor_had_family - } - triggered_desc = { - trigger = { - scope:minority_councillor = { - fp2_struggle.1020_minority_councillor_faith_trigger = yes - } - } - desc = fp2_struggle.1020_desc_councillor_had_no_family_faith - } - } - } - - theme = dread - cooldown = { years = 15 } - override_background = { reference = council_chamber } - - left_portrait = { - character = root - animation = disbelief - } - right_portrait = { - character = scope:councillor_executor - animation = anger - } - - lower_left_portrait = scope:minority_councillor - - - trigger = { - has_fp2_dlc_trigger = yes - - any_councillor = { fp2_struggle.1020_minority_councillor_faith_trigger = yes } - - capital_county = { county_control < low_county_control_limit } #root's capital having low control isn't strictly necessary, but adds to the emergent feeling here - } - - immediate = { - - random_councillor = { #this is the dead councillor - limit = { fp2_struggle.1020_minority_councillor_faith_trigger = yes } - save_scope_as = minority_councillor - } - - capital_county = { save_scope_as = unrest_capital } #so we can use the capital for loc - - scope:minority_councillor = { #and this is how they met their untimely end - random_list = { - 10 = { - death = { - death_reason = death_beaten_by_mob - } - } - 10 = { - death = { - death_reason = death_burned_by_mob - } - } - 20 = { - death = { - death_reason = death_hanged_and_disemboweled_by_mob - } - } - 20 = { - death = { - death_reason = death_crucified_by_mob - } - } - 10 = { - death = { - death_reason = death_defenestrated_by_mob - } - } - 20 = { - death = { - death_reason = death_molten_silver_by_mob - } - } - 10 = { - death = { - death_reason = death_torn_to_pieces_by_mob - } - } - } - } - - if = { #now let's see if there's any relative of the late councillor that could be considered relevant! - limit = { - any_powerful_vassal = { - is_ai = yes - is_close_or_extended_family_of = scope:minority_councillor - is_powerful_vassal = yes - } - } - random_powerful_vassal = { - limit = { - is_ai = yes - is_close_or_extended_family_of = scope:minority_councillor - is_powerful_vassal = yes - } - save_scope_as = councillor_executor - set_variable = relative_created #this variable is for use in triggers later - } - } - - else_if = { - limit = { - any_powerful_vassal = { - is_ai = yes - is_close_family_of = scope:minority_councillor - } - } - random_powerful_vassal = { - limit = { - is_ai = yes - is_close_family_of = scope:minority_councillor - } - save_scope_as = councillor_executor - set_variable = relative_created - } - } - - else_if = { - limit = { - any_powerful_vassal = { - is_ai = yes - is_close_or_extended_family_of = scope:minority_councillor - } - } - random_powerful_vassal = { - limit = { - is_ai = yes - is_close_or_extended_family_of = scope:minority_councillor - } - save_scope_as = councillor_executor - set_variable = relative_created - } - } - - else_if = { - limit = { - any_neighboring_and_across_water_top_liege_realm_owner = { - is_ai = yes - is_close_or_extended_family_of = scope:minority_councillor - OR = { - fp2_character_involved_in_struggle_trigger = yes - fp2_character_interloper_in_struggle_trigger = yes - } - } - } - random_neighboring_and_across_water_top_liege_realm_owner = { - limit = { - is_ai = yes - is_close_or_extended_family_of = scope:minority_councillor - OR = { - fp2_character_involved_in_struggle_trigger = yes - fp2_character_interloper_in_struggle_trigger = yes - } - } - save_scope_as = councillor_executor - set_variable = relative_created - } - } - - else_if = { - limit = { - any_ruler = { - is_ai = yes - is_close_or_extended_family_of = scope:minority_councillor - } - } - random_ruler = { - limit = { - is_ai = yes - is_close_or_extended_family_of = scope:minority_councillor - } - save_scope_as = councillor_executor - set_variable = relative_created - } - } - - else_if = { - limit = { - any_courtier = { - is_ai = yes - is_close_or_extended_family_of = scope:minority_councillor - } - } - random_courtier = { - limit = { - is_ai = yes - is_close_or_extended_family_of = scope:minority_councillor - } - save_scope_as = councillor_executor - set_variable = relative_created - } - } - - else = { #if no relevant relative was found, we instead create a community leader to fire option b with! - create_character = { - age = { 20 80 } - location = root.capital_province - template = merchant_template - culture = scope:minority_councillor.culture - faith = scope:minority_councillor.faith - save_scope_as = councillor_executor - } - hidden_effect = { - scope:councillor_executor = { #just because, I want more rotund people - add_character_modifier = { - modifier = obese_modifier - } - } - } - } - - scope:minority_councillor = { - every_close_or_extended_family_member = { - custom = all_family_members - if = { - limit = { - is_ai = yes - this != root - } - add_opinion = { - target = root - opinion = -20 - modifier = blames_for_death_of_relative_opinion - } - } - } - } - } - - - option = { #Make amends to councillor's dynasty - name = fp2_struggle.1020.a - - trigger = { - scope:councillor_executor = { - exists = var:relative_created - } - } - - ai_chance = { #rational and somewhat honorable AIs pick this option - base = 10 - ai_value_modifier = { - ai_rationality = 0.5 - ai_honor = 0.3 - #but bold and vengeful ones do not - ai_boldness = -0.5 - ai_vengefulness = -0.5 - } - } - - stress_impact = { - #arrogant characters don't care for this - arrogant = minor_stress_impact_gain - callous = minor_stress_impact_gain - stubborn = minor_stress_impact_gain - - #socially awkward ones aren't fond of it either - paranoid = minor_stress_impact_gain - shy = minor_stress_impact_gain - } - - add_character_modifier = { - modifier = compelling_apology_modifier - years = 10 - } - - scope:minority_councillor = { - every_close_or_extended_family_member = { - custom = all_family_members - if = { - limit = { is_ai = yes } - add_opinion = { - target = root - opinion = 10 - modifier = made_amends_opinion - } - } - } - } - } - - option = { #Pay restitution to councillor's people - name = fp2_struggle.1020.b - - trigger = { - scope:councillor_executor = { - NOT = { exists = var:relative_created } - } - } - - ai_chance = { #compassionate AIs takes this option - base = 10 - ai_value_modifier = { - ai_compassion = 0.7 - ai_honor = 0.3 - #but zealous and vengeful ones do not - ai_zeal = -0.5 - ai_vengefulness = -0.5 - } - } - - stress_impact = { - #arrogant characters don't wanna do this - arrogant = minor_stress_impact_gain - callous = minor_stress_impact_gain - stubborn = minor_stress_impact_gain - - #nor those who hate the people - paranoid = minor_stress_impact_gain - vengeful = minor_stress_impact_gain - } - - remove_treasury_or_gold = medium_treasury_or_gold_value #restitution isn't free! - - add_character_modifier = { - modifier = restitution_to_minorities_modifier - years = 15 - } - } - - option = { #Hunt down the perpetrators - name = fp2_struggle.1020.c - - ai_chance = { #energetic and vengeful AI picks this option. - base = 10 - ai_value_modifier = { - ai_energy = 0.5 - ai_vengefulness = 0.7 - #but compassionate ones might not - ai_compassion = -0.7 - } - } - - stress_impact = { #this is cruel and a lot of effort... - compassionate = minor_stress_impact_gain - forgiving = minor_stress_impact_gain - lazy = minor_stress_impact_gain - } - - - add_character_modifier = { - modifier = memorable_public_execution_modifier - years = 10 - } - - - add_prestige = minor_prestige_gain - - if = { - limit = { exists = var:relative_created } - scope:councillor_executor = { - add_opinion = { - target = root - opinion = 20 - modifier = avenged_relative_opinion - - } - } - } - } - - option = { #Restore order in the capital - name = fp2_struggle.1020.d - - ai_chance = { #rational and compassionate AIs pick this option - base = 10 - ai_value_modifier = { - ai_rationality = 0.9 - ai_compassion = 0.3 - #but bold and zealous ones do not - ai_boldness = -0.5 - ai_zeal = -0.5 - } - } - - stress_impact = { - #cruel or lazy characters don't bother with this - callous = minor_stress_impact_gain - lazy = minor_stress_impact_gain - sadistic = minor_stress_impact_gain - - #and vengeful ones would rather pursue revenge. - vengeful = minor_stress_impact_gain - } - - if = { - limit = { exists = var:relative_created } - scope:councillor_executor = { - add_opinion = { - target = root - opinion = -10 - modifier = ignored_demands_opinion - } - } - } - - add_prestige = minor_prestige_gain - - root.capital_county = { change_county_control = medium_county_control_gain } - } -} - -################################### -# The Vision -# By Ola Jentzsch -################################### -fp2_struggle.1050 = { - type = character_event - title = fp2_struggle.1050.t - desc = { - first_valid = { - desc = fp2_struggle.1050.desc_opening - } - first_valid = { - triggered_desc = { - trigger = { - OR = { has_religion = religion:eastern_orthodox_religion has_religion = religion:catholic_religion has_religion = religion:protestant_religion } - scope:visionary_spouse= { - has_OR = { religion = religion:eastern_orthodox_religion religion = religion:catholic_religion religion = religion:protestant_religion } - } - } - desc = fp2_struggle.1050.desc_christian - } - triggered_desc = { - trigger = { - has_religion = religion:islam_religion - scope:visionary_spouse= { - has_religion = religion:islam_religion - } - } - desc = fp2_struggle.1050.desc_islamic - } - triggered_desc = { - trigger = { - has_religion = religion:folkgerman_religion - scope:visionary_spouse= { - has_religion = religion:folkgerman_religion - } - } - desc = fp2_struggle.1050.desc_rampaging_barbarian_heathen - } - desc = fp2_struggle.1050.desc_non_barbarian_heathen - } - first_valid = { - triggered_desc = { - trigger = { - root = { - OR = { - culture = culture:andalusian - culture = culture:bedouin - } - } - scope:visionary_spouse = { - OR = { - culture = culture:andalusian - culture = culture:bedouin - } - } - } - desc = fp2_struggle.1050.desc_islamic_heritage - } - triggered_desc = { - trigger = { - has_religion = religion:catholic_religion - scope:visionary_spouse= { - has_religion = religion:catholic_religion - } - } - desc = fp2_struggle.1050.desc_christian_bling_reference_drop - } - desc = fp2_struggle.1050.desc_middle_neutral_version - } - first_valid = { - triggered_desc = { - trigger = { - scope:visionary_spouse = { - OR = { - has_relation_lover = root - has_relation_soulmate = root - } - } - } - desc = fp2_struggle.1050.desc_love_and_warmth_ending - } - desc = fp2_struggle.1050.desc_no_love_and_warmth_ending - } - } - - theme = death - override_background = { reference = battlefield } ## - - left_portrait = { - character = root - animation = disapproval - } - right_portrait = { - character = scope:visionary_spouse - animation = paranoia - } - - - trigger = { - has_fp2_dlc_trigger = yes - - is_landed_or_landless_administrative = yes - - any_spouse = { is_courtier = yes } - - fp2_character_involved_in_struggle_trigger = yes - - struggle:iberian_struggle = { is_struggle_phase = struggle_iberia_phase_hostility } - } - - cooldown = { #this event shouldn't fire too often, since the context with the spouse's dream is pretty specific. - years = 100 - } - - - immediate = { - - random_spouse = { - weight = { - base = 1 - modifier = { - factor = 5 - this = primary_spouse - } - } - save_scope_as = visionary_spouse - } - - scope:visionary_spouse = { - add_character_modifier = { - modifier = foreboding_visions_modifier - years = 10 - } - } - - hidden_effect = { - scope:visionary_spouse = { - contract_disease_effect = { DISEASE = ill TREATMENT_EVENT = no } - } - } - } - - option = { - name = fp2_struggle.1050.a - - trigger = { - faith = { - OR = { - has_doctrine_parameter = witchcraft_illegal - has_doctrine_parameter = witchcraft_shunned - } - } - } - - ai_chance = { #bold, vengeful and zealous AI goes for this option - base = 10 - ai_value_modifier = { - ai_boldness = 0.5 - ai_vengefulness = 0.7 - ai_zeal = 0.7 - ai_compassion = -1 #whereas compassionate, rational and honorable ones really, really doesn't - ai_rationality = -1 - ai_honor = -0.5 - } - } - - stress_impact = { - compassionate = major_stress_impact_gain #compassionate people don't accuse their spouse of being a witch - craven = minor_stress_impact_gain #cravens don't dare throw her in jail - trusting = medium_stress_impact_gain #and trusting people don't accuse her either - eccentric = minor_stress_impact_loss - } - - custom_tooltip = fp2_struggle.1050.spouse_imprisoned #you throw your spouse into the dungeon for being a suspected witch - hidden_effect = { - scope:visionary_spouse = { - hard_imprison_character_effect = { - TARGET = this - IMPRISONER = root - } - } - } - } - - option = { - name = fp2_struggle.1050.b - - ai_chance = { #lazy zealous AI pick this option - base = 10 - ai_value_modifier = { - ai_zeal = 0.8 - ai_energy = -0.7 - ai_vengefulness = -0.7 - } - } - - stress_impact = { - cynical = minor_stress_impact_gain #cynics don't really put their faith in God - } - - duel = { #this duel is root trying to make their spouse feel better. - skill = diplomacy - value = medium_skill_rating - - 20 = { - compare_modifier = { - value = scope:duel_value - multiplier = 2 - } - modifier = { - add = 15 - has_trait = compassionate - } - modifier = { - add = 20 - has_trait = zealous - } - send_interface_toast = { - title = comforting_spouse_visionary_toast.success - left_icon = root - right_icon = scope:visionary_spouse - - scope:visionary_spouse = { - add_opinion = { - target = root - modifier = comforted_opinion - } - } - custom_tooltip = fp2_struggle.1050.condition_might_improve - hidden_effect = { - scope:visionary_spouse = { - recover_from_disease_effect = { DISEASE = ill } - } - } - } - } - 20 = { - compare_modifier = { - value = scope:duel_value - multiplier = -1 - } - modifier = { - add = 20 - has_trait = callous - } - modifier = { - add = 10 - has_trait = sadistic - } - send_interface_toast = { - title = comforting_spouse_visionary.failure - left_icon = root - right_icon = scope:visionary_spouse - - scope:visionary_spouse = { - add_opinion = { - target = root - modifier = failed_comfort_opinion - } - } - - custom_tooltip = fp2_struggle.1050.condition_might_get_worse - hidden_effect = { - scope:visionary_spouse = { - add_character_modifier = { - modifier = mysterious_prophetess_illness_modifier - years = 5 - } - } - } - } - } - } - } - - option = { #Come, tell me more of your visions - name = fp2_struggle.1050.c - - ai_chance = { #compassionate AIs pick this option - base = 10 - ai_value_modifier = { - ai_compassion = 1 - ai_energy = 0.5 - ai_vengefulness = -0.5 - } - } - - stress_impact = { #unpleasant types don't pick this option... - arrogant = minor_stress_impact_gain - callous = medium_stress_impact_gain - sadistic = medium_stress_impact_gain - eccentric = minor_stress_impact_loss - } - - scope:visionary_spouse = { - if = { - limit = { - OR = { - has_relation_lover = root - has_relation_soulmate = root - } - } - add_opinion = { - target = root - modifier = listened_opinion - } - } - else = { - progress_towards_lover_effect = { - CHARACTER = root - REASON = lover_comforted_nightmare - OPINION = 0 - } - } - } - - custom_tooltip = fp2_struggle.1050.condition_might_improve - hidden_effect = { - scope:visionary_spouse = { - recover_from_disease_effect = { DISEASE = ill } - } - } - - add_character_modifier = { - modifier = frightened_by_portent_modifier - years = 10 - } - } - - option = { #Leave me be, I am planning my next conquest - name = fp2_struggle.1050.d - - ai_chance = { #Ambitious AIs pick this option - base = 10 - ai_value_modifier = { - ai_boldness = 0.5 - ai_energy = 0.7 - ai_greed = 0.5 - ai_compassion = -0.7 - } - } - - stress_impact = { - compassionate = minor_stress_impact_gain - eccentric = minor_stress_impact_gain - } - - scope:visionary_spouse = { - add_opinion = { - target = root - modifier = failed_comfort_opinion - } - } - - custom_tooltip = fp2_struggle.1050.condition_might_get_very_worse - hidden_effect = { - random = { - chance = 90 - scope:visionary_spouse = { - add_character_modifier = { - modifier = mysterious_prophetess_illness_modifier - years = 5 - } - add_trait = depressed_1 - } - } - } - } -} - -################################### -# Disorderly Market -# By Hugo Cortell -################################### VSCODE: Use control + / to comment/uncomment entire blocks of code. And control + shift + [ (or ]) to fold/unfold a block! -scripted_trigger fp2_struggle_2000_check_holds_city_scripted_trigger = { - title_province = { has_holding_type = city_holding } - exists = holder - holder != root -} - -fp2_struggle.2000 = { - type = character_event - title = fp2_struggle.2000.t - desc = fp2_struggle.2000.desc - theme = stewardship - cooldown = { years = 5 } - override_background = { reference = market } - left_portrait = root - right_portrait = { - character = scope:fp2_2000_market_inspector - animation = anger - } - - trigger = { - has_fp2_dlc_trigger = yes - has_religion = religion:islam_religion - faith = { - OR = { - has_doctrine = tenet_tax_nonbelievers - has_doctrine = special_doctrine_jizya - has_doctrine = tenet_religious_legal_pronouncements - has_doctrine = tenet_legalism - } - } - - exists = cp:councillor_steward - cp:councillor_steward = { is_available_ai_adult = yes } - exists = cp:councillor_court_chaplain - cp:councillor_court_chaplain = { is_available_ai_adult = yes } - - any_sub_realm_barony = { - fp2_struggle_2000_check_holds_city_scripted_trigger = yes - } - - any_pool_character = { - province = root.capital_province - has_no_particular_noble_roots_trigger = yes - is_available_healthy_ai_adult = yes - } - } - - immediate = { - random_sub_realm_barony = { - limit = { fp2_struggle_2000_check_holds_city_scripted_trigger = yes } - county = { save_scope_as = se_2000_county } - } - - cp:councillor_steward = { save_scope_as = 2000_scoped_steward } - cp:councillor_court_chaplain = { save_scope_as = 2000_scoped_chaplain } - - create_character = { - age = { 20 50 } - location = root.capital_province - gender_female_chance = root_faith_dominant_gender_female_chance - trait = just - trait = craven - trait = patient - trait = temperate - culture = root.culture - faith = root.faith - - dynasty = none - after_creation = { - add_gold = { minor_gold_value medium_gold_value } - add_prestige = { minor_prestige_gain medium_prestige_gain } - add_piety = { medium_piety_gain major_piety_gain } - } - - save_scope_as = fp2_2000_market_inspector - } - if = { # RoCo - limit = { - has_dlc_feature = royal_court - employs_court_position = chief_qadi_court_position - any_court_position_holder = { - type = chief_qadi_court_position - is_available_ai_adult = yes - } - } - random_court_position_holder = { - type = chief_qadi_court_position - limit = { - is_available_ai_adult = yes - } - save_scope_as = fp2_2000_chief_qadi - } - } - } - - option = { # Mandatory lunatic option (now rakish) - name = fp2_struggle.2000.f - trigger = { has_trait = rakish } - stress_impact = { - chaste = major_stress_impact_gain - zealous = major_stress_impact_gain - } - - flavor = fp2_struggle.2000.f.desc - send_interface_toast = { - type = event_stewardship_good_with_text - title = fp2_struggle.2000.f.notif - desc = fp2_struggle.2000.f.notif.desc - - stress_impact = { chaste = medium_stress_impact_gain } - - scope:2000_scoped_chaplain = { - add_opinion = { - target = root - modifier = impious_opinion - opinion = -25 - } - } - - add_piety = major_piety_loss - - scope:se_2000_county = { - add_county_modifier = { - modifier = fp2_free_market_boom_modifier - years = 5 - } - } - add_character_modifier = { - modifier = fp2_lenient_towards_foreign_merchants_modifier - years = 5 - } - } - - ai_chance = { - base = 15 - } - } - - option = { # Guards! Purge! - name = fp2_struggle.2000.e - - trigger = { - OR = { - has_trait = reaver - has_trait = order_member - has_trait = aggressive_attacker - } - } - stress_impact = { - just = major_stress_impact_gain - forgiving = major_stress_impact_gain - calm = minor_stress_impact_gain - trusting = medium_stress_impact_gain - } - - if = { - limit = { has_trait = sadistic } # Small detail - send_interface_toast = { - type = event_toast_effect_good - title = fp2_ruthless_market_oversight_modifier - left_icon = root - - add_dread = medium_dread_gain - scope:se_2000_county = { - add_county_modifier = { - modifier = fp2_ruthless_market_oversight_modifier - years = 5 - } - } - } - } - else = { - send_interface_toast = { - type = event_toast_effect_bad - title = fp2_ruthless_market_oversight_modifier - left_icon = root - - add_dread = medium_dread_gain - scope:se_2000_county = { - add_county_modifier = { - modifier = fp2_ruthless_market_oversight_modifier - years = 5 - } - } - } - } - - ai_chance = { - base = 5 - modifier = { - add = 15 - OR = { - has_trait = sadistic - has_trait = zealous - has_trait = wrathful - } - } - modifier = { - add = -40 - has_trait = compassionate - } - } - } - - option = { # Intervene with threat of calling judge - name = fp2_struggle.2000.a - flavor = fp2_struggle.2000.a.desc - - duel = { - skill = diplomacy - value = medium_skill_rating - - 30 = { - desc = fp2_struggle.2000.a.a - - compare_modifier = { - value = scope:duel_value - multiplier = 2.5 - } - modifier = { - add = 5 - has_trait = fickle - } - modifier = { - add = 20 - has_trait = craven - } - modifier = { - add = 3 - has_trait = lazy - } - modifier = { - add = 3 - has_trait = arbitrary - } - - send_interface_toast = { - type = event_toast_effect_bad - title = fp2_struggle.2000.a.a.notif - - if = { # RoCo - limit = { - exists = scope:fp2_2000_chief_qadi - } - reverse_add_opinion = { - target = scope:fp2_2000_chief_qadi - modifier = respect_opinion - opinion = 15 - } - } - - scope:se_2000_county = { - add_county_modifier = { - modifier = fp2_inefficient_market_oversight_modifier - years = 5 - } - } - } - } - 70 = { - desc = fp2_struggle.2000.a.b - - compare_modifier = { - value = scope:duel_value - multiplier = 2.5 - } - - modifier = { - add = 5 - has_trait = humble - } - modifier = { - add = 5 - has_trait = ambitious - } - modifier = { - add = 10 - has_trait = gregarious - } - modifier = { - add = 15 - has_trait = just - } - - send_interface_toast = { - type = event_toast_effect_good - title = fp2_struggle.2000.a.b.notif - left_icon = scope:2000_scoped_steward - - scope:se_2000_county = { - add_county_modifier = { - modifier = fp2_smooth_market_oversight_modifier - years = 5 - } - } - } - } - } - - ai_chance = { - base = 60 - modifier = { - add = 25 - has_trait = just - } - modifier = { - add = -25 - has_trait = arbitrary - } - modifier = { - add = -15 - has_trait = lazy - } - modifier = { - add = -5 - has_trait = arrogant - } - } - } - - option = { # Let the free market decide, free from tradition - name = fp2_struggle.2000.d - flavor = fp2_struggle.2000.d.desc - - stress_impact = { - zealous = major_stress_impact_gain - humble = medium_stress_impact_gain - content = medium_stress_impact_gain - just = minor_stress_impact_gain - temperate = medium_stress_impact_gain - } - - reverse_add_opinion = { - target = scope:2000_scoped_chaplain - modifier = impious_opinion - opinion = -30 - } - reverse_add_opinion = { - target = scope:2000_scoped_steward - modifier = respect_opinion - opinion = 15 - } - - send_interface_toast = { - type = event_toast_effect_good - title = fp2_free_market_boom_modifier - left_icon = scope:2000_scoped_steward - - add_piety = medium_piety_loss - - scope:se_2000_county = { - add_county_modifier = { - modifier = fp2_free_market_boom_modifier - years = 6 - } - } - } - - ai_chance = { - base = 0 - modifier = { - add = 15 - has_trait = greedy - } - modifier = { - add = -40 - has_trait = zealous - } - } - } - - option = { # Reprimand the inspector - name = fp2_struggle.2000.b - flavor = fp2_struggle.2000.b.desc - - stress_impact = { compassionate = medium_stress_impact_gain } - add_dread = miniscule_dread_gain - - send_interface_toast = { - type = event_stewardship_good_with_text - title = fp2_struggle.2000.b.notif - desc = fp2_struggle.2000.b.notif.desc - - scope:se_2000_county = { - add_county_modifier = { - modifier = fp2_smooth_market_oversight_modifier - years = 5 - } - } - - scope:2000_scoped_chaplain = { - add_opinion = { - target = root - modifier = cruelty_opinion - opinion = -15 - } - } - } - - ai_chance = { - base = 34 - modifier = { - add = 15 - OR = { - has_trait = sadistic - has_trait = callous - } - } - modifier = { - add = 5 - has_trait = impatient - } - modifier = { - add = 3 - has_trait = diligent - } - modifier = { - add = -25 - has_trait = compassionate - } - modifier = { - add = -15 - OR = { - has_trait = trusting - has_trait = calm - has_trait = forgiving - } - } - modifier = { - add = -5 - has_trait = humble - } - } - } - - after = { scope:fp2_2000_market_inspector = { silent_disappearance_effect = yes } } -} - -################################### -# Desperate Villagers Seek New Lord -# By Hugo Cortell -################################### -scripted_trigger fp2_struggle_2001_desperate_county_scripted_trigger = { - NOT = { root = { has_claim_on = prev } } - trigger_if = { # Checking that we are not offering up the capital of a duke or higher - limit = { - holder = { - highest_held_title_tier >= tier_duchy - } - } - this != holder.capital_county - } - - holder = { # Balance, malus must not affect players - is_ai = yes - top_liege = { is_ai = yes } - } - - OR = { - county_opinion < 0 - county_control < 81 # Note: if considered too restrictive for normal play, update to != 100 - } - - squared_distance = { - target = root.capital_province - value < squared_distance_medium - } -} - -fp2_struggle.2001 = { - type = character_event - title = fp2_struggle.2001.t - desc = { - desc = fp2_struggle.2001.desc - triggered_desc = { - trigger = { - is_allied_to = scope:fp2_2001_desperate_county.holder - } - desc = fp2_struggle.2001.desc.extra.a - } - triggered_desc = { - trigger = { - has_truce = scope:fp2_2001_desperate_county.holder - } - desc = fp2_struggle.2001.desc.extra.b - } - } - - theme = vassal - cooldown = { years = 20 } - left_portrait = { - character = root - animation = personality_rational - } - right_portrait = { - character = scope:fp2_2001_desperate_elder - animation = beg - } - lower_right_portrait = scope:fp2_2001_desperate_county.holder.top_liege - - trigger = { - has_fp2_dlc_trigger = yes - struggle:iberian_struggle = { - is_struggle_phase = struggle_iberia_phase_hostility - - } - - any_neighboring_and_across_water_top_liege_realm_owner = { - fp2_character_involved_in_struggle_trigger = yes - any_sub_realm_county = { - fp2_struggle_2001_desperate_county_scripted_trigger = yes - } - } - } - - immediate = { - if = { - limit = { exists = cp:councillor_court_chaplain } - cp:councillor_court_chaplain = { save_scope_as = 2001_scoped_chaplain } - } - - random_neighboring_and_across_water_top_liege_realm_owner = { - limit = { - fp2_character_involved_in_struggle_trigger = yes - any_sub_realm_county = { fp2_struggle_2001_desperate_county_scripted_trigger = yes } - } - random_sub_realm_county = { - limit = { fp2_struggle_2001_desperate_county_scripted_trigger = yes } - save_scope_as = fp2_2001_desperate_county - } - } - - create_character = { - age = { 38 71 } - location = scope:fp2_2001_desperate_county.title_province - gender_female_chance = root_faith_dominant_gender_female_chance - trait = peasant_leader - random_traits = yes - culture = scope:fp2_2001_desperate_county.culture - random_faith = { - root.faith = { trigger = { always = yes } } - scope:fp2_2001_desperate_county.faith = { trigger = { always = yes } } - } - dynasty = none - after_creation = { add_gold = medium_gold_value } - - save_scope_as = fp2_2001_desperate_elder - } - - # AI war-savviness calc variables - scope:fp2_2001_desperate_county.holder.top_liege = { save_temporary_scope_as = target_military } - set_variable = { - name = ai_strength_multiplier # This is how much stronger root has to be (could even be used for custom loc! but the script is complex enough as it is) - value = 1.25 - } - if = { # Calculate if AI can win war, decision of war requires traits AND for it to be favourable. This calcs if it is favourable - limit = { - is_ai = yes # Are you AI? - scope:fp2_2001_desperate_county.holder.top_liege = { - NOT = { - is_at_war_with = root - is_ai = no # Enemy must be AI (prevents AI from attacking player characters, otherwise it would feel as if the attack was random) - } - } - - # Actual strength is calc below, thanks to joe - root_military_strength_higher_than_military_target_value > target_military_strength_root_value - } - save_scope_as = fp2_se_2001_ai_war_winnable # Acts as boolean for wether or not the AI has a chance at winning - } - remove_variable = ai_strength_multiplier - - # Option exclusivity stuffs, easier to keep track of logic - if = { # Faith - limit = { - OR = { - has_trait = holy_warrior - has_trait = devoted - has_trait = heresiarch - has_trait = order_member - has_trait = crusader_king - has_trait = faith_warrior - } - NOT = { - faith = scope:fp2_2001_desperate_elder.faith - has_trait = excommunicated - } - } - save_scope_as = fp2_2001_exclusive_option_faith - } - else_if = { # Greedy - limit = { - OR = { - has_trait = greedy - has_trait = avaricious - has_trait = logistician - } - } - save_scope_as = fp2_2001_exclusive_option_greed - } - } - - option = { # Pay tribute to me - name = fp2_struggle.2001.d - custom_tooltip = fp2_struggle.2001.a.desc - - trigger = { - exists = scope:fp2_2001_exclusive_option_greed - NOT = { exists = scope:fp2_2001_exclusive_option_faith } - - OR = { # Tricks autoformatter into showing trait icons (wasteful) - has_trait = greedy - has_trait = avaricious - has_trait = logistician - } - } - - stress_impact = { - compassionate = minor_stress_impact_gain - humble = minor_stress_impact_gain - content = minor_stress_impact_gain - } - - save_scope_value_as = { - name = fp2_se_2001_eventchoiceramifications - value = flag:demand_tribute - } - - send_interface_toast = { - type = event_toast_effect_good - title = fp2_struggle.2001.a.notif - left_icon = root - right_icon = scope:fp2_2001_desperate_elder - - add_unpressed_claim = scope:fp2_2001_desperate_county - } - - send_interface_toast = { - type = event_stewardship_good_with_text - title = fp2_struggle.2001.d.notif - desc = fp2_struggle.2001.d.notif.desc - left_icon = scope:fp2_2001_desperate_elder - - scope:fp2_2001_desperate_elder = { - pay_treasury_or_gold = { - target = root - value = medium_treasury_or_gold_value - } - } - } - - if = { - limit = { exists = cp:councillor_steward } - cp:councillor_steward = { - add_opinion = { - target = root - modifier = pleased_opinion - opinion = 15 - } - } - } - - hidden_effect = { - trigger_event = { - id = fp2_struggle.2002 - years = 5 - } - } - add_character_modifier = { - modifier = fp2_2001_promise_reminder - years = 5 - } - - ai_chance = { - base = 0 - modifier = { - add = 10 - exists = scope:fp2_se_2001_ai_war_winnable - has_trait = brave - } - modifier = { - add = 5 - exists = scope:fp2_se_2001_ai_war_winnable - has_trait = compassionate - } - modifier = { - add = 40 - exists = scope:fp2_se_2001_ai_war_winnable - has_trait = greedy - } - } - } - - option = { # Are you willing to give up your god for it? - trigger = { - exists = scope:fp2_2001_exclusive_option_faith - - OR = { - has_trait = holy_warrior # Tricking the autoformatter into showing relevant trait - has_trait = devoted - has_trait = heresiarch - has_trait = order_member - has_trait = crusader_king - has_trait = faith_warrior - } - } - name = fp2_struggle.2001.b - - custom_tooltip = fp2_struggle.2001.a.desc - if = { - limit = { exists = scope:2001_scoped_chaplain } - custom_tooltip = fp2_struggle.2001.a.a.desc - } - - send_interface_toast = { - type = event_toast_effect_good - title = fp2_struggle.2001.a.notif - left_icon = root - right_icon = scope:fp2_2001_desperate_elder - - add_unpressed_claim = scope:fp2_2001_desperate_county - } - - send_interface_toast = { - type = event_stewardship_good_with_text - title = fp2_struggle.2001.b.notif - desc = fp2_struggle.2001.b.notif.desc - left_icon = scope:fp2_2001_desperate_elder - - if = { - limit = { exists = scope:2001_scoped_chaplain } - scope:2001_scoped_chaplain = { - add_opinion = { - target = root - modifier = pleased_opinion - opinion = 40 - } - } - save_scope_value_as = { - name = fp2_se_2001_eventchoiceramifications - value = flag:demand_conversion_chap # yes - } - } - else = { - save_scope_value_as = { - name = fp2_se_2001_eventchoiceramifications - value = flag:demand_conversion_no_chap # no - } - } - } - - every_powerful_vassal = { - limit = { faith = root.faith } - custom = fp2_every_major_vassal_notifier - add_opinion = { - target = root - modifier = respect_opinion - opinion = 15 - } - } - - scope:fp2_2001_desperate_county = { set_county_faith = root.faith } - - hidden_effect = { - scope:fp2_2001_desperate_elder = { set_character_faith_with_conversion = root.faith } - trigger_event = { - id = fp2_struggle.2002 - years = 5 - } - } - add_character_modifier = { - modifier = fp2_2001_promise_reminder - years = 5 - } - - ai_chance = { - base = 0 - modifier = { - add = 15 - exists = scope:fp2_se_2001_ai_war_winnable - has_trait = brave - } - modifier = { - add = 5 - exists = scope:fp2_se_2001_ai_war_winnable - has_trait = just - } - modifier = { - add = 50 - exists = scope:fp2_se_2001_ai_war_winnable - has_trait = zealous - } - modifier = { - add = -5 - exists = scope:fp2_se_2001_ai_war_winnable - has_trait = lazy - } - } - } - - option = { # You have my word - name = fp2_struggle.2001.a - custom_tooltip = fp2_struggle.2001.b.desc # Three extra years for not attaching any strings - - stress_impact = { - craven = minor_stress_impact_gain - shy = minor_stress_impact_gain - lazy = minor_stress_impact_gain - arrogant = major_stress_impact_gain - } - if = { - limit = { - exists = scope:fp2_2001_exclusive_option_greed - NOT = { exists = scope:fp2_2001_exclusive_option_faith } - } - stress_impact = { - greedy = medium_stress_impact_gain - avaricious = minor_stress_impact_gain - } - } - - send_interface_toast = { - type = event_toast_effect_good - title = fp2_struggle.2001.a.notif - left_icon = root - right_icon = scope:fp2_2001_desperate_elder - - add_unpressed_claim = scope:fp2_2001_desperate_county - } - - every_powerful_vassal = { - custom = fp2_every_major_vassal_notifier - add_opinion = { - target = root - modifier = respect_opinion - opinion = 15 - } - } - - hidden_effect = { - trigger_event = { - id = fp2_struggle.2002 - years = 10 - } - } - add_character_modifier = { - modifier = fp2_2001_promise_reminder - years = 10 - } - - ai_chance = { - base = 0 - modifier = { - add = 25 - exists = scope:fp2_se_2001_ai_war_winnable - has_trait = brave - } - modifier = { - add = 15 - exists = scope:fp2_se_2001_ai_war_winnable - has_trait = just - } - modifier = { - add = 15 - exists = scope:fp2_se_2001_ai_war_winnable - has_trait = compassionate - } - modifier = { - add = -35 - exists = scope:fp2_se_2001_ai_war_winnable - has_trait = arrogant - } - modifier = { - add = -15 - exists = scope:fp2_se_2001_ai_war_winnable - has_trait = lazy - } - } - } - - option = { # Prove it to me, point your spears at your liege (rise up) - name = fp2_struggle.2001.c - custom_tooltip = fp2_struggle.2001.a.desc - - trigger = { - scope:fp2_2001_desperate_county = { - can_title_create_faction = { - type = peasant_faction - target = scope:fp2_2001_desperate_county.holder - } - } - - NOT = { - exists = scope:fp2_2001_exclusive_option_greed - exists = scope:fp2_2001_exclusive_option_faith - } - } - - stress_impact = { - craven = medium_stress_impact_gain - content = minor_stress_impact_gain - } - - save_scope_value_as = { - name = fp2_se_2001_eventchoiceramifications - value = flag:peasant_revolt - } - - send_interface_toast = { - type = event_toast_effect_good - title = fp2_struggle.2001.a.notif - left_icon = root - right_icon = scope:fp2_2001_desperate_elder - - add_unpressed_claim = scope:fp2_2001_desperate_county - } - - every_powerful_vassal = { - custom = fp2_every_major_vassal_notifier - add_opinion = { - target = root - modifier = respect_opinion - opinion = 10 - } - } - - scope:fp2_2001_desperate_county = { # Create faction - title_create_faction = { - type = peasant_faction - target = scope:fp2_2001_desperate_county.holder - } - holder = { - every_targeting_faction = { # go through all existing factions - if = { - limit = { - any_faction_county_member = { this = scope:fp2_2001_desperate_county } # check if least one member belongs to the county - } - save_scope_as = fp2_se_2001_peasant_faction - } - } - } - } - - hidden_effect = { - trigger_event = { - id = fp2_struggle.2002 - years = 5 - } - } - add_character_modifier = { - modifier = fp2_2001_promise_reminder - years = 5 - } - - ai_chance = { - base = 0 - modifier = { - add = 15 - exists = scope:fp2_se_2001_ai_war_winnable - has_trait = brave - } - modifier = { - add = 25 - exists = scope:fp2_se_2001_ai_war_winnable - has_trait = ambitious - } - modifier = { - add = 10 - exists = scope:fp2_se_2001_ai_war_winnable - has_trait = just - } - modifier = { - add = -15 - exists = scope:fp2_se_2001_ai_war_winnable - has_trait = arrogant - } - modifier = { - add = -5 - exists = scope:fp2_se_2001_ai_war_winnable - has_trait = lazy - } - } - } - - option = { # Betray and inform ruler of treachery - name = fp2_struggle.2001.f - - stress_impact = { - compassionate = major_stress_impact_gain - forgiving = major_stress_impact_gain - } - - scope:fp2_2001_desperate_elder = { - death = { - death_reason = death_execution - killer = root - } - } - - if = { - limit = { is_allied_to = scope:fp2_2001_desperate_county.holder } # You stood by your allies - every_powerful_vassal = { - custom = fp2_every_major_vassal_notifier - add_opinion = { - target = root - modifier = respect_opinion - opinion = 10 - } - } - - if = { - limit = { NOT = { has_trait = arrogant } } - scope:fp2_2001_desperate_county.holder = { - progress_towards_friend_effect = { - REASON = friend_informed_ally_of_betrayal - CHARACTER = root - OPINION = 0 - } - - add_opinion = { - target = root - modifier = pleased_opinion - opinion = 25 - } - } - } - } - else = { - every_powerful_vassal = { # Your vassals question your integrity - custom = fp2_every_major_vassal_notifier - limit = { - NOR = { - has_trait = arbitrary - has_trait = sadistic - has_trait = arrogant - } - } - add_opinion = { - target = root - modifier = disgusted_opinion - opinion = -10 - } - } - - scope:fp2_2001_desperate_county.holder = { - add_opinion = { - target = root - modifier = respect_opinion - opinion = 40 - } - progress_towards_friend_effect = { - REASON = friend_informed_ally_of_betrayal - CHARACTER = root - OPINION = 0 - } - } - } - - ai_chance = { - base = 0 - modifier = { - add = 5 - has_trait = deceitful - is_allied_to = scope:fp2_2001_desperate_county.holder - } - - modifier = { - add = -25 - NOT = { is_allied_to = scope:fp2_2001_desperate_county.holder } - has_trait = brave - } - modifier = { - add = -15 - NOT = { is_allied_to = scope:fp2_2001_desperate_county.holder } - has_trait = just - } - modifier = { - add = -25 - NOT = { is_allied_to = scope:fp2_2001_desperate_county.holder } - has_trait = compassionate - } - modifier = { - add = 35 - NOT = { is_allied_to = scope:fp2_2001_desperate_county.holder } - has_trait = arrogant - } - modifier = { - add = 10 - NOT = { is_allied_to = scope:fp2_2001_desperate_county.holder } - has_trait = sadistic - } - modifier = { - add = 15 - NOT = { is_allied_to = scope:fp2_2001_desperate_county.holder } - has_trait = deceitful - } - } - } - - option = { # Dismiss - name = fp2_struggle.2001.e - custom_tooltip = fp2_struggle.2001.e.desc - stress_impact = { compassionate = minor_stress_impact_gain } - - scope:fp2_2001_desperate_county.holder.top_liege.capital_province.county = { - if = { - limit = { root = { is_allied_to = scope:fp2_2001_desperate_county.holder } } - hidden_effect = { # Hides effect if allied - add_county_modifier = { - modifier = fp2_forsaken_turned_levies_modifier - years = 6 - } - } - } - else = { - add_county_modifier = { - modifier = fp2_forsaken_turned_levies_modifier - years = 5 - } - } - } - - save_scope_as = did_not_call_next_event - - ai_chance = { - base = 100 - modifier = { - add = 25 - exists = scope:fp2_se_2001_ai_war_winnable - has_trait = craven - } - modifier = { - add = -45 - exists = scope:fp2_se_2001_ai_war_winnable - } - } - } - - after = { - if = { - limit = { exists = scope:fp2_se_2001_peasant_faction } - scope:fp2_2001_desperate_elder = { save_scope_as = peasant_leader } - scope:fp2_2001_desperate_county = { save_scope_as = peasant_county } - scope:fp2_se_2001_peasant_faction = { - - setup_peasant_leader_effect = yes - - faction_start_war = {} - faction_spawn_member_county_armies_effect = { - FACTION = scope:fp2_se_2001_peasant_faction - ARMY_OWNER = scope:fp2_2001_desperate_elder - PEASANT_ARMY_NAME = peasant_faction_event_troops - } - } - } - - if = { - limit = { - exists = scope:did_not_call_next_event - scope:fp2_2001_desperate_elder = { is_alive = yes } - } - scope:fp2_2001_desperate_elder = { - silent_disappearance_effect = yes - } - } - } -} - -# QUEST FUNCTION, check if player managed to complete objective -fp2_struggle.2002 = { - hidden = yes - - immediate = { # VICTORY STATE BELOW - if = { - limit = { scope:fp2_2001_desperate_county.holder.top_liege = root.top_liege } # check if lands belong to your state/kingdom/side - send_interface_toast = { - type = event_toast_effect_good - title = fp2_struggle.2002.t.a - left_icon = root - right_icon = scope:fp2_2001_desperate_elder - - - if = { - limit = { exists = scope:fp2_se_2001_eventchoiceramifications } - if = { - limit = { scope:fp2_se_2001_eventchoiceramifications = flag:demand_conversion_chap } # You keet your promise to god - add_piety = major_piety_gain - } - else_if = { - limit = { scope:fp2_se_2001_eventchoiceramifications = flag:demand_conversion_no_chap } # Without a chap, this is more impressive but less pious - add_piety = medium_piety_gain - add_prestige = medium_prestige_gain - } - else_if = { - limit = { scope:fp2_se_2001_eventchoiceramifications = flag:peasant_revolt } # You lead peasants into battle and won - add_prestige = minor_prestige_gain - } - else = { - debug_log = "Scope fp2_se_2001_eventchoiceramifications exists but has not been assigned a valid value!" - debug_log_scopes = yes - } - } - - scope:fp2_2001_desperate_county = { - add_county_modifier = { - modifier = county_listened_to_locals_modifier - years = 12 - } - change_county_control = major_county_control_gain - } - } - } - else = { # FAILURE STATE BELOW - send_interface_toast = { - type = event_toast_effect_bad - title = fp2_struggle.2002.t.b - left_icon = root - right_icon = scope:fp2_2001_desperate_elder - - add_prestige = minor_prestige_loss - - if = { - limit = { exists = scope:fp2_se_2001_eventchoiceramifications } - if = { - limit = { scope:fp2_se_2001_eventchoiceramifications = flag:demand_conversion_chap } # You failed to keep your promise to god - add_piety = medium_piety_loss - scope:2001_scoped_chaplain = { - add_opinion = { - target = root - modifier = impious_opinion - opinion = -40 - } - } - } - else_if = { - limit = { scope:fp2_se_2001_eventchoiceramifications = flag:demand_conversion_no_chap } # Without a chap, this is more impressive but less pious - add_piety = minor_piety_loss - add_prestige = minor_prestige_loss - } - else_if = { - limit = { scope:fp2_se_2001_eventchoiceramifications = flag:demand_tribute } # Being a weasel makes you look petty - add_prestige = medium_prestige_loss - } - else_if = { - limit = { scope:fp2_se_2001_eventchoiceramifications = flag:peasant_revolt } # You took their lives in exchange for freedom, yet returned nothing - add_piety = minor_piety_loss - add_prestige = major_prestige_loss - show_as_tooltip = { - scope:fp2_2001_desperate_county = { # This will happen anyways, but showing it creates more impact - holder = { - top_liege.capital_province.county = { - add_county_modifier = { - modifier = fp2_forsaken_turned_levies_modifier - years = 8 - } - } - } - } - } - } - else = { - debug_log = "Scope fp2_se_2001_eventchoiceramifications exists but has not been assigned a valid value!" - debug_log_scopes = yes - } - } - - every_powerful_vassal = { - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -10 - } - } - - hidden_effect = { - scope:fp2_2001_desperate_county = { - change_county_control = medium_county_control_gain - holder = { - top_liege.capital_province.county = { - add_county_modifier = { - modifier = fp2_forsaken_turned_levies_modifier - years = 8 - } - } - } - } - } - } - } - - scope:fp2_2001_desperate_elder = { - silent_disappearance_effect = yes - } - } -} - -################################### -# Lost Migratory Birds -# By Hugo Cortell -################################### -scripted_trigger fp2_struggle_2003_check_has_city_scripted_trigger = { - title_province = { has_holding_type = city_holding } - exists = holder -} - -fp2_struggle.2003 = { - type = character_event - title = fp2_struggle.2003.t - desc = fp2_struggle.2003.desc - theme = stewardship - override_background = { reference = army_camp } - cooldown = { years = 50 } - left_portrait = root - right_portrait = { - character = scope:fp2_2003_merc_actor - animation = loss_1 # Note: two_handed_1_aggressive could also be used - } - - trigger = { - has_fp2_dlc_trigger = yes - struggle:iberian_struggle ?= { - OR = { - is_struggle_phase = struggle_iberia_phase_opportunity - is_struggle_phase = struggle_iberia_phase_hostility - } - } - - any_sub_realm_barony = { fp2_struggle_2003_check_has_city_scripted_trigger = yes } - } - - immediate = { - random_sub_realm_barony = { - limit = { fp2_struggle_2003_check_has_city_scripted_trigger = yes } - county = { save_scope_as = fp2_2003_county_town } - } - - create_character = { - age = { 20 50 } - location = root.capital_province - gender_female_chance = root_faith_dominant_gender_female_chance - trait = wrathful - trait = greedy - trait = impatient - trait = callous - trait = wounded_2 - culture = root.culture - faith = root.faith - - dynasty = none - after_creation = { - add_gold = { 0 minor_gold_value } - add_prestige = { minor_prestige_loss minor_prestige_gain } - add_piety = { medium_piety_loss minor_piety_gain } - add_character_flag = single_combat_duel_armor - } - - save_scope_as = fp2_2003_merc_actor - } - } - - option = { # Give them farming work - name = fp2_struggle.2003.d - flavor = fp2_struggle.2003.d.desc - - trigger = { - OR= { - has_trait = lunatic_genetic - has_trait = logistician - has_trait = comfort_eater - has_trait = improvident - stewardship > extremely_high_skill_rating - } - gold > medium_gold_value # Locals need to be paid in advance - } - stress_impact = { greedy = major_stress_impact_gain } - - send_interface_toast = { - title = fp2_struggle.2003.e.notif.c - desc = fp2_struggle.2003.e.notif.c.desc - - remove_treasury_or_gold = medium_treasury_or_gold_value - scope:fp2_2003_county_town = { - add_county_modifier = { - modifier = fp2_mercs_turned_farmers_modifier - years = 20 - } - holder = { - add_character_modifier = { - modifier = fp2_mercenary_acquaintances_modifier - years = 8 # Bonus effect - } - } - } - } - - ai_chance = { - base = 30 - modifier = { - add = 1000 - has_trait = possessed_genetic - } - } - } - - option = { # Offer them a stable job - name = fp2_struggle.2003.b - flavor = fp2_struggle.2003.b.desc - - trigger = { # Locks the lunatic option (remove this trigger if you want more than 4 options) - OR = { - NOR= { - has_trait = lunatic_genetic - has_trait = logistician - has_trait = comfort_eater - has_trait = improvident - stewardship > extremely_high_skill_rating - } - gold < medium_gold_value # Peasants might need to be paid real gold, but mercs do not mind working on debt money - } - } - - stress_impact = { greedy = minor_stress_impact_gain } - - remove_treasury_or_gold = medium_treasury_or_gold_value - send_interface_toast = { - type = event_toast_effect_good - title = fp2_veteran_mercenaries_as_instructors_modifier - left_icon = root - - scope:fp2_2003_county_town = { - add_county_modifier = { - modifier = fp2_veteran_mercenaries_as_instructors_modifier - years = 12 - } - hidden_effect = { - holder = { - add_character_modifier = { - modifier = fp2_mercenary_acquaintances_modifier - years = 12 - } - } - } - } - } - - show_as_tooltip = { - scope:fp2_2003_county_town = { - holder = { - add_character_modifier = { - modifier = fp2_mercenary_acquaintances_modifier - years = 12 - } - } - } - } - - ai_chance = { - base = 25 - modifier = { - add = 5 - has_trait = ambitious - } - modifier = { - add = 5 - has_trait = generous - } - modifier = { - add = -50 - has_trait = greedy - } - } - } - - option = { # Implore them to leave - name = fp2_struggle.2003.a - stress_impact = { shy = minor_stress_impact_gain } - - trigger = { - NOT = { has_trait = lunatic_genetic } # Cuts down the options to four in case of lunacy event, lunatics do not negotiate. - } - - duel = { - skill = diplomacy - value = high_skill_rating - - 10 = { - compare_modifier = { - value = scope:duel_value - multiplier = -1.5 - } - modifier = { - add = 5 - has_trait = fickle - } - modifier = { - add = 20 - has_trait = craven - } - modifier = { - add = 15 - has_trait = lazy - } - modifier = { - add = 10 - has_trait = wrathful - } - modifier = { - add = 10 - has_trait = shy - } - modifier = { - add = 2 - has_trait = trusting - } - modifier = { - add = 3 - has_trait = stubborn - } - - send_interface_toast = { - type = event_toast_effect_bad - title = fp2_struggle.2003.a.a.notif - left_icon = root - - add_prestige = medium_prestige_loss - - scope:fp2_2003_county_town.title_province = { - add_province_modifier = { - modifier = recently_looted_modifier - years = 5 - } - } - } - } - 12 = { - compare_modifier = { - value = scope:duel_value - multiplier = 1.5 - } - - modifier = { - add = 5 - has_trait = calm - } - modifier = { - add = 5 - has_trait = vengeful - } - modifier = { - add = 5 - has_trait = honest - } - modifier = { - add = 10 - has_trait = gregarious - } - modifier = { - add = 15 - has_trait = just - } - modifier = { - add = 15 - has_trait = brave - } - - send_interface_toast = { - type = event_toast_effect_good - title = fp2_struggle.2003.a.b.notif - left_icon = root - - add_prestige = medium_prestige_gain - scope:fp2_2003_county_town = { - add_county_modifier = { - modifier = county_listened_to_locals_modifier - years = 5 - } - } - } - } - } - - ai_chance = { - base = 60 - modifier = { - add = 5 - has_trait = just - } - modifier = { - add = 25 - has_trait = gregarious - } - modifier = { - add = -5 - has_trait = arrogant - } - } - } - - option = { # Preemptive strike - name = fp2_struggle.2003.c - flavor = fp2_struggle.2003.c.desc - - stress_impact = { trusting = minor_stress_impact_gain } # Craven do not suffer a penalty, because they only plan the fight, not partake in it - - duel = { - skill = martial - value = high_skill_rating - - 10 = { - desc = fp2_struggle.2003.c.a - - compare_modifier = { - value = scope:duel_value - multiplier = -2.5 - } - - modifier = { # Relevant skills are those that could be used in urban warfare - add = 5 - has_trait = fickle - } - modifier = { - add = 1 - has_trait = just - } - modifier = { - add = 1 - has_trait = arrogant - } - modifier = { - add = 3 - has_trait = wrathful - } - modifier = { - add = 5 - has_trait = arbitrary - } - modifier = { - add = 3 - has_trait = lazy - } - - modifier = { - add = 5 - has_trait = open_terrain_expert - } - modifier = { - add = 2 - has_trait = reckless - } - modifier = { # "what does an INN even look like anyway?" - add = 3 - has_trait = reclusive - } - - show_as_tooltip = { - scope:fp2_2003_county_town = { - add_county_modifier = { - modifier = fp2_local_garrison_slaughtered_modifier - years = 5 - } - title_province = { - add_province_modifier = { - modifier = recently_looted_modifier - years = 5 - } - } - } - } - - hidden_effect = { - send_interface_toast = { - type = event_toast_effect_bad - title = fp2_local_garrison_slaughtered_modifier - left_icon = root - - scope:fp2_2003_county_town = { # Failure outcome - add_county_modifier = { - modifier = fp2_local_garrison_slaughtered_modifier - years = 5 - } - hidden_effect = { - title_province = { - add_province_modifier = { - modifier = recently_looted_modifier - years = 5 - } - } - } - } - } - } - } - 10 = { - desc = fp2_struggle.2003.c.b - - compare_modifier = { - value = scope:duel_value - multiplier = 2.5 - } - - modifier = { - add = 5 - has_trait = calm - } - modifier = { - add = 5 - has_trait = diligent - } - modifier = { - add = 3 - has_trait = callous - } - - modifier = { - add = 7 - OR = { - has_trait = intellect_good_2 - has_trait = intellect_good_3 - } - } - modifier = { - add = -15 - OR = { - has_trait = intellect_bad_1 - has_trait = intellect_bad_2 - } - } - modifier = { - add = -25 - OR = { - has_trait = intellect_bad_3 - has_trait = dull - } - } - modifier = { - add = 10 - has_trait = shrewd - } - - - modifier = { - add = 20 - has_trait = strategist - } - modifier = { # If you know how buildings are structured, you can raid them better - add = 5 - has_trait = architect - } - modifier = { - add = 5 - has_trait = flexible_leader - } - modifier = { - add = 15 - has_trait = organizer - } - modifier = { - add = 3 - has_trait = cautious_leader - } - - add_gold = minor_gold_value - add_prestige = medium_prestige_gain - send_interface_toast = { - type = event_toast_effect_good - title = fp2_struggle.2003.c.b.notif - left_icon = root - - scope:fp2_2003_county_town = { # Success - add_county_modifier = { - modifier = fp2_elite_tactics_for_civil_guards_modifier - years = 5 - } - } - } - } - } - - ai_chance = { - base = 15 - modifier = { - add = 5 - has_trait = brave - } - modifier = { - add = 15 - has_trait = wrathful - } - modifier = { - add = 5 - has_trait = deceitful - } - modifier = { - add = -25 - has_trait = trusting - } - modifier = { - add = -10 - has_trait = craven - } - } - } - - option = { # Let the local handle it - name = fp2_struggle.2003.e - flavor = fp2_struggle.2003.e.desc - - stress_impact = { - compassionate = major_stress_impact_gain - just = medium_stress_impact_gain - paranoid = minor_stress_impact_gain - } - - random_list = { - 50 = { # Looted - send_interface_toast = { - type = event_toast_effect_bad - title = fp2_struggle.2003.e.notif.a - - scope:fp2_2003_county_town = { - title_province = { - add_province_modifier = { - modifier = recently_looted_modifier - years = 5 - } - } - } - } - } - 25 = { # Massacre - send_interface_toast = { - type = event_toast_effect_bad - title = fp2_struggle.2003.e.notif.b - desc = fp2_struggle.2003.e.notif.b.desc - - scope:fp2_2003_county_town = { - add_county_modifier = { - modifier = fp2_mercs_slaughtered_populance_modifier - years = 5 - } - } - } - } - 25 = { # Farming outcome - send_interface_toast = { - type = event_toast_effect_good - title = fp2_struggle.2003.e.notif.c - desc = fp2_struggle.2003.e.notif.c.desc - - scope:fp2_2003_county_town = { - add_county_modifier = { - modifier = fp2_mercs_turned_farmers_modifier - years = 15 - } - } - } - } - } - } - - after = { - scope:fp2_2003_merc_actor = { silent_disappearance_effect = yes } - } -} - -################################### -# Ship building event -# By Hugo Cortell -################################### -fp2_struggle.2004 = { - type = character_event - title = fp2_struggle.2004.t - desc = fp2_struggle.2004.desc - - theme = crown - override_background = { reference = council_chamber } - left_portrait = { - character = root - animation = personality_rational - } - right_portrait = { - character = cp:councillor_steward - animation = personality_content - } - lower_right_portrait = { character = cp:councillor_marshal } - cooldown = { years = 150 } - - trigger = { - has_fp2_dlc_trigger = yes - current_year > 1025 - top_liege = root - - realm_size >= minor_realm_size - - exists = cp:councillor_marshal - cp:councillor_marshal = { is_available_ai_adult = yes } - exists = cp:councillor_steward - cp:councillor_steward = { - is_available_ai_adult = yes - NOT = { has_character_flag = fp2_2004_critical_success_achieved } - } - - any_sub_realm_county = { - is_coastal_county = yes - NOT = { has_county_modifier = fp2_successful_shipyards_modifier } - } - } - - weight_multiplier = { - modifier = { - add = 5 - current_year > 1066 - } - modifier = { - add = 25 - current_year > 1450 # Caravel time - } - modifier = { - add = 25 - current_year > 1550 - } - } - immediate = { - cp:councillor_marshal = { save_scope_as = 2004_scoped_marshal } - cp:councillor_steward = { - save_scope_as = 2004_scoped_steward - if = { - limit = { has_character_flag = fp2_2004_critical_success_achieved } - remove_character_flag = fp2_2004_critical_success_achieved # For debug - } - } - - random_sub_realm_county = { - limit = { is_coastal_county = yes } - save_scope_as = fp2_2004_dockyards - } - } - option = { # WE WILL BUILD BOATS OF PURE SILVER (MR addition) - name = fp2_struggle.2004.c - flavor = fp2_struggle.2004.c.desc - - remove_treasury_or_gold = major_treasury_or_gold_value - scope:2004_scoped_steward = { - add_opinion = { - target = root - modifier = dismissive_opinion - opinion = -15 - } - } - scope:2004_scoped_marshal = { - add_opinion = { - target = root - modifier = dismissive_opinion - opinion = -20 - } - } - - scope:2004_scoped_steward = { - duel = { - skill = learning - value = high_skill_rating - - 25 = { # Failure Outcome - compare_modifier = { - value = scope:duel_value - multiplier = -1.5 - min = -24 - } - modifier = { # Someone is sneaking in iron powder to cheap out! - add = 5 - has_trait = avaricious - } - - custom_tooltip = fp2_struggle.2005.desc.alt.a - scope:fp2_2004_dockyards = { - add_county_modifier = { - modifier = fp2_successful_shipyards_modifier - years = 20 - } - } - } - 5 = { # Success Outcome - compare_modifier = { - value = scope:duel_value - multiplier = 1.5 - min = -4 - } - modifier = { - add = 5 - has_trait = calm - } - modifier = { - add = 15 - has_trait = diligent - } - modifier = { - add = 2 - has_trait = ambitious - } - modifier = { - add = 3 - has_trait = patient - } - modifier = { - add = 25 - has_trait = shrewd - } - modifier = { - add = 10 - has_trait = overseer - } - modifier = { - add = 8 - has_trait = strategist - } - modifier = { - add = 15 - has_trait = architect - } - modifier = { - add = 10 - has_trait = scholar - } - modifier = { - add = 15 - has_trait = military_engineer - } - modifier = { - add = 3 - has_trait = logistician - } - modifier = { - add = 6 - has_trait = journaller - } - modifier = { # Building a ship of silver means you must know your construction material - add = 5 - has_trait = education_stewardship_1 # You sorta know how silver operates - } - modifier = { - add = 8 - has_trait = education_stewardship_2 # You understand the properties of silver - } - modifier = { - add = 10 - has_trait = education_stewardship_3 # You can bite silver and tell if it is real or not (others can only do it with gold) - } - modifier = { - add = 15 - has_trait = education_stewardship_4 # Your tounge is capable of taking appart the anatomical structure of the silver thanks to your PhD in home economics - } - modifier = { - add = 20 - has_trait = education_stewardship_5 # Like the above, except cooler, and my script comment has better spelling - } - - root = { save_scope_as = fp2_2004_silver_boat_floats } - show_as_tooltip = { - root = { add_prestige = major_prestige_gain } - scope:fp2_2004_dockyards = { - add_county_modifier = { - modifier = fp2_successful_shipyards_modifier - years = 45 - } - } - } - } - } - } - save_scope_as = fp2_2004_alt_option - if = { - limit = { is_developer_testing_trigger = yes } - custom_tooltip = debug_generic_option_shortened_trigger_can_disable - trigger_event = { - id = fp2_struggle.2005 - days = 2 - } - } - else = { - trigger_event = { - id = fp2_struggle.2005 - years = { 4 10 } - } - } - } - - option = { # I will sponsor your endeavour - Side with Steward - name = fp2_struggle.2004.a - - remove_treasury_or_gold = major_treasury_or_gold_value - - scope:2004_scoped_steward = { - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 35 - } - } - scope:2004_scoped_marshal = { - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -15 - } - } - - scope:2004_scoped_steward = { - duel = { - desc = outcome_in_a_few_years - skill = learning - value = high_skill_rating - - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -2.5 - } - desc = fp2_struggle.2004.a.a.desc - - modifier = { - add = 10 - has_trait = lazy - } - modifier = { - add = 10 - has_trait = fickle - } - modifier = { - add = 5 - has_trait = stubborn - } - modifier = { - add = 2 - has_trait = gregarious - } - modifier = { - add = 30 - has_trait = dull - } - modifier = { - add = 5 - has_trait = drunkard - } - modifier = { - add = 7 - has_trait = irritable - } - modifier = { - add = 3 - has_trait = rakish - } - modifier = { - add = 10 - has_trait = profligate - } - - show_as_tooltip = { - root = { - add_character_modifier = { - modifier = fp2_advanced_maritime_technology_modifier - years = 50 - } - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 2.5 - } - desc = fp2_struggle.2004.a.b.desc - - modifier = { - add = 5 - has_trait = calm - } - modifier = { - add = 15 - has_trait = diligent - } - modifier = { - add = 2 - has_trait = ambitious - } - modifier = { - add = 3 - has_trait = patient - } - modifier = { - add = 25 - has_trait = shrewd - } - modifier = { - add = 10 - has_trait = overseer - } - modifier = { - add = 8 - has_trait = strategist - } - modifier = { - add = 15 - has_trait = architect - } - modifier = { - add = 10 - has_trait = scholar - } - modifier = { - add = 15 - has_trait = military_engineer - } - modifier = { - add = 3 - has_trait = logistician - } - modifier = { - add = 6 - has_trait = journaller - } - - add_character_flag = fp2_2004_critical_success_achieved - show_as_tooltip = { - root = { - add_character_modifier = { - modifier = fp2_advanced_maritime_technology_modifier - years = 60 - } - } - scope:fp2_2004_dockyards = { - add_county_modifier = { - modifier = fp2_successful_shipyards_modifier - years = 60 - } - } - } - } - } - } - hidden_effect = { - if = { - limit = { is_developer_testing_trigger = yes } - custom_tooltip = debug_generic_option_shortened_trigger_can_disable - trigger_event = { - id = fp2_struggle.2005 - days = 2 - } - } - else = { - trigger_event = { - id = fp2_struggle.2005 - years = { 5 9 } - } - } - } - - ai_chance = { - base = 0 - modifier = { - add = 50 - treasury_or_gold > medium_treasury_or_gold_value - } - ai_value_modifier = { - ai_boldness = 0.2 - ai_greed = -0.3 - ai_rationality = 0.2 - } - } - } - - option = { # No, it is a waste of money - Side with marshal - name = fp2_struggle.2004.b - flavor = fp2_struggle.2004.b.desc - - scope:2004_scoped_marshal = { - add_opinion = { - target = root - modifier = pleased_opinion - opinion = 15 - } - } - - scope:2004_scoped_steward = { - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -15 - } - add_opinion = { - target = scope:2004_scoped_marshal - modifier = angry_opinion - opinion = -25 - } - } - - ai_chance = { base = 50 } - } -} - -fp2_struggle.2005 = { - type = character_event - title = { - first_valid = { - triggered_desc = { - trigger = { - exists = scope:fp2_2004_alt_option - } - desc = { - first_valid = { - triggered_desc = { - trigger = { - exists = scope:fp2_2004_silver_boat_floats - } - desc = fp2_struggle.2005.desc.alt.b - } - desc = fp2_struggle.2005.desc.alt.a - } - } - } - triggered_desc = { - trigger = { - scope:2004_scoped_steward = { has_character_flag = fp2_2004_critical_success_achieved } - } - desc = fp2_struggle.2005.t.alt - } - desc = fp2_struggle.2005.t - } - } - - immediate = { - if = { - limit = { root = root } # Check if scoped port town is still under your control - save_scope_as = port_under_control - } - - # MIA checks - if = { # Assign current steward - limit = { exists = cp:councillor_steward } - cp:councillor_steward = { save_scope_as = 2005_scoped_steward } - } - else_if = { # Otherwise assign chaplain - limit = { exists = cp:councillor_court_chaplain } - cp:councillor_court_chaplain = { save_scope_as = 2005_scoped_steward } - } - else = { # Fallback, get whoever is most qualified in court - random_courtier_or_guest = { - limit = { learning > high_skill_rating } - random = { - chance = 15 - add_character_flag = fp2_2004_critical_success_achieved - } - save_scope_as = 2005_scoped_steward - } - if = { - limit = { - NOT = { exists = scope:2005_scoped_steward } - } - random_courtier_or_guest = { save_scope_as = 2005_scoped_steward } - } - } - - if = { - limit = { - scope:2004_scoped_steward != scope:2005_scoped_steward - OR = { - scope:2005_scoped_steward = cp:councillor_steward - scope:2005_scoped_steward = cp:councillor_court_chaplain - } - } - if = { - limit = { learning > high_skill_rating } - random = { - chance = 25 - add_character_flag = fp2_2004_critical_success_achieved - } - save_scope_as = 2005_scoped_steward - } - } - } - - desc = { - triggered_desc = { # Alt option - trigger = { exists = scope:fp2_2004_alt_option } - desc = { - first_valid = { - triggered_desc = { - trigger = { - exists = scope:fp2_2004_silver_boat_floats - } - desc = fp2_struggle.2005.desc.alt.b.desc - } - desc = fp2_struggle.2005.desc.alt.a.desc - } - triggered_desc = { # Lost dockyards - trigger = { scope:fp2_2004_dockyards.holder.top_liege != root.top_liege } - desc = fp2_struggle.2005.desc.cirt.a.notif - } - } - } - triggered_desc = { - trigger = { NOT = { exists = scope:fp2_2004_alt_option } } - desc = { - triggered_desc = { # Crtitical success explanation - trigger = { - scope:2005_scoped_steward = { has_character_flag = fp2_2004_critical_success_achieved } - } - desc = fp2_struggle.2005.desc.cirt.notif - } - triggered_desc = { # Lost dockyards - trigger = { - scope:2005_scoped_steward = { has_character_flag = fp2_2004_critical_success_achieved } - scope:fp2_2004_dockyards.holder.top_liege != root.top_liege - } - desc = fp2_struggle.2005.desc.cirt.a.notif - } - - # Original (Steward) designer is MIA - triggered_desc = { - trigger = { - scope:2004_scoped_steward != scope:2005_scoped_steward - } - desc = fp2_struggle.2005.desc.newdesigner.notif - } - - triggered_desc = { # Intro (non-crit) - trigger = { - NOT = { scope:2005_scoped_steward = { has_character_flag = fp2_2004_critical_success_achieved } } - } - desc = fp2_struggle.2005.desc.intro - } - - # Describe bottom of the ship - random_valid = { - desc = fp2_struggle.2005.desc.bottom.a - desc = fp2_struggle.2005.desc.bottom.b - desc = fp2_struggle.2005.desc.bottom.c - desc = fp2_struggle.2005.desc.bottom.d - } - - # Describe main feature(s) - random_valid = { - desc = fp2_struggle.2005.desc.unique.a - desc = fp2_struggle.2005.desc.unique.b - desc = fp2_struggle.2005.desc.unique.c - desc = fp2_struggle.2005.desc.unique.d - desc = fp2_struggle.2005.desc.unique.e - } - - # Describe sails (updated to propulsion) - random_valid = { - desc = fp2_struggle.2005.desc.sails.a - desc = fp2_struggle.2005.desc.sails.b - desc = fp2_struggle.2005.desc.sails.c - desc = fp2_struggle.2005.desc.sails.d - } - - first_valid = { - triggered_desc = { - trigger = { scope:2005_scoped_steward = { has_character_flag = fp2_2004_critical_success_achieved } } - desc = fp2_struggle.2005.desc.outro.crit - } - desc = fp2_struggle.2005.desc.outro - } - } - } - } - - theme = martial - override_background = { reference = docks } - left_portrait = { - character = root - triggered_animation = { - trigger = { - exists = scope:fp2_2004_alt_option - NOT = { exists = scope:fp2_2004_silver_boat_floats } - } - animation = anger - } - triggered_animation = { - trigger = { exists = scope:fp2_2004_alt_option } - animation = ecstasy - } - animation = war_over_win - } - right_portrait = { - character = scope:2005_scoped_steward - animation = throne_room_writer - } - - option = { # ALT Accept - trigger = { - exists = scope:fp2_2004_alt_option - exists = scope:fp2_2004_silver_boat_floats - } - name = fp2_struggle.2005.a - - add_prestige = major_prestige_gain - scope:fp2_2004_dockyards = { - add_county_modifier = { - modifier = fp2_successful_shipyards_modifier - years = 45 - } - } - } - - option = { # ALT Accept (Failure Version) - trigger = { - exists = scope:fp2_2004_alt_option - NOT = { exists = scope:fp2_2004_silver_boat_floats } - } - name = artifact.4050.a # Reusage of loc key - - scope:fp2_2004_dockyards = { - add_county_modifier = { - modifier = fp2_successful_shipyards_modifier - years = 20 - } - } - } - - option = { # Accept - trigger = { - NOT = { - exists = scope:fp2_2004_alt_option - scope:2005_scoped_steward = { has_character_flag = fp2_2004_critical_success_achieved } - } - } - name = fp2_struggle.2005.a - - add_character_modifier = { - modifier = fp2_advanced_maritime_technology_modifier - years = 50 - } - } - - option = { # Crit Accept - trigger = { - NOT = { exists = scope:fp2_2004_alt_option } - scope:2005_scoped_steward = { has_character_flag = fp2_2004_critical_success_achieved } - } - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { scope:fp2_2004_dockyards.holder.top_liege = top_liege } - desc = fp2_struggle.2005.a - } - desc = fp2_struggle.2005.a.a - } - } - } - - add_character_modifier = { - modifier = fp2_advanced_maritime_technology_modifier - years = 60 - } - scope:fp2_2004_dockyards = { - add_county_modifier = { - modifier = fp2_successful_shipyards_modifier - years = 60 - } - } - } - - after = { - if = { - limit = { - OR = { - scope:2004_scoped_steward = { has_character_flag = fp2_2004_critical_success_achieved } - scope:2005_scoped_steward = { has_character_flag = fp2_2004_critical_success_achieved } - } - } - scope:2004_scoped_steward = { remove_character_flag = fp2_2004_critical_success_achieved } - scope:2005_scoped_steward = { remove_character_flag = fp2_2004_critical_success_achieved } - } - } -} - -################################### -# The Borders of Faith -# By Hugo Cortell -################################### -scripted_trigger fp2_event2006_check_if_right_vassal_target = { - holder != root - holder = { - is_available_ai_adult = yes - faith = root.faith - NOT = { has_trait = cynical } - OR = { - any_secret = { type = secret_non_believer } - AND = { # Fallback, get non-devout follower - piety < 51 - NOT = { has_trait = zealous } - } - } - } -} - -fp2_struggle.2006 = { - type = character_event - title = fp2_struggle.2006.t - desc = fp2_struggle.2006.desc - cooldown = { years = 20 } - - theme = faith - override_background = { reference = council_chamber } - left_portrait = { - character = root - animation = shock - } - right_portrait = { - character = scope:fp2_2006_vassal_in_crisis - animation = stress - } - lower_left_portrait = { - trigger = { exists = scope:2006_scoped_chaplain } - character = scope:2006_scoped_chaplain - } - - trigger = { - has_fp2_dlc_trigger = yes - root.top_liege = root - any_sub_realm_county = { - fp2_event2006_check_if_right_vassal_target = yes - - holder = { - any_neighboring_top_liege_realm_owner = { - faith != root.faith - } - } - } - } - - immediate = { - if = { - limit = { exists = cp:councillor_court_chaplain } - cp:councillor_court_chaplain = { save_scope_as = 2006_scoped_chaplain } - } - random_sub_realm_county = { - limit = { fp2_event2006_check_if_right_vassal_target = yes } - holder = { - save_scope_as = fp2_2006_vassal_in_crisis - random_neighboring_top_liege_realm_owner = { - limit = { faith != root.faith } - faith = { save_scope_as = fp2_2006_foreign_faith } - } - } - } - } - - option = { # Im a witch! And you can be one too! - trigger = { - has_trait = witch - OR = { - NOT = { # Not witch - scope:fp2_2006_vassal_in_crisis = { - any_secret = { type = secret_witch } - } - } - scope:fp2_2006_vassal_in_crisis = { # Witch but does not walk the path of witchery with you - any_secret = { - type = secret_witch - NOT = { is_known_by = root } - } - } - } - } - name = fp2_struggle.2006.e - - if = { - limit = { - any_secret = { - type = secret_witch - } - } - random_secret = { - type = secret_witch - reveal_to = scope:fp2_2006_vassal_in_crisis - } - } - send_interface_toast = { - type = event_witchcraft_good - title = fp2_struggle.2006.e.notif.t - left_icon = scope:fp2_2006_vassal_in_crisis - - scope:fp2_2006_vassal_in_crisis = { - if = { - limit = { - any_secret = { type = secret_witch } - has_trait = witch - } - custom_tooltip = fp2_struggle.2006.e.alreadywitch - } - else = { - hidden_effect = { give_witch_secret_or_trait_effect = yes } - show_as_tooltip = { add_trait = witch } - } - show_as_tooltip = { - random_secret = { - type = secret_witch - reveal_to = root - } - } - if = { - limit = { can_set_relation_friend_trigger = { CHARACTER = root } } - set_relation_friend = { reason = friend_guided_right_path target = root } - } - add_opinion = { - target = root - modifier = fp2_tolerated_me_opinion - } - if = { - limit = { - trait_is_criminal_in_faith_trigger = { - TRAIT = trait:witch - GENDER_CHARACTER = scope:fp2_2006_vassal_in_crisis - FAITH = scope:fp2_2006_vassal_in_crisis.faith - } - NOT = { - trait_is_criminal_in_faith_trigger = { - TRAIT = trait:witch - GENDER_CHARACTER = scope:fp2_2006_vassal_in_crisis - FAITH = scope:fp2_2006_foreign_faith - } - } - } - hidden_effect = { set_character_faith_with_conversion = scope:fp2_2006_foreign_faith } - custom_tooltip = fp2_struggle.2006.e.tacticalwitchfaithchange - } - - hidden_effect = { - if = { - limit = { - any_secret = { - type = secret_witch - } - } - random_secret = { - type = secret_witch - reveal_to = root - } - } - root = { - random_secret = { - type = secret_witch - reveal_to = scope:fp2_2006_vassal_in_crisis - } - } - } - } - } - - ai_chance = { - base = 80 - ai_value_modifier = { - ai_honor = -0.3 - ai_rationality = 0.5 - ai_zeal = -0.9 - } - } - } - - option = { # (Threaten to) Denounce heretic - trigger = { - OR = { - has_trait = schemer - has_trait = devoted - intrigue > medium_skill_rating - } - } - name = fp2_struggle.2006.d - stress_impact = { - compassionate = medium_stress_impact_gain - gallant = medium_stress_impact_gain - } - - add_dread = miniscule_dread_gain - hidden_effect = { - scope:fp2_2006_vassal_in_crisis = { - if = { - limit = { any_secret = { NOT = { secret_type = secret_non_believer } } } - add_secret = { type = secret_non_believer } - } - } - } - - add_hook = { - target = scope:fp2_2006_vassal_in_crisis - type = threat_hook - } - random_secret = { - type = secret_non_believer - reveal_to = root - } - - scope:fp2_2006_vassal_in_crisis = { - add_opinion = { - target = root - modifier = betrayed_me_opinion - opinion = -40 - } - } - - ai_chance = { - base = 30 - ai_value_modifier = { - ai_compassion = -0.5 - ai_honor = -0.8 - ai_rationality = 0.1 - ai_zeal = 0.3 - ai_vengefulness = 0.3 - ai_greed = 0.2 - } - } - } - - option = { # I will fix him myself - name = fp2_struggle.2006.b - stress_impact = { - cynical = minor_stress_impact_gain - } - - duel = { - skill = learning - value = medium_skill_rating - - 15 = { - desc = fp2_struggle.2006.b.a.desc - compare_modifier = { - value = scope:duel_value - multiplier = -1.5 - } - modifier = { - add = 10 - has_trait = fickle - } - modifier = { - add = 10 - has_trait = heresiarch - } - modifier = { - add = 2 - has_trait = impotent - } - modifier = { - add = 5 - has_trait = irritable - } - modifier = { - add = 5 - has_trait = dull - } - modifier = { - add = 10 - has_trait = depressed_genetic - } - modifier = { - add = 10 - has_trait = arrogant - } - modifier = { - add = 5 - has_trait = arbitrary - } - modifier = { - add = 10 - has_trait = lazy - } - modifier = { - add = 2 - has_trait = stubborn - } - modifier = { - add = 5 - has_trait = craven - } - - send_interface_toast = { - type = event_toast_effect_bad - title = fp2_struggle.2006.generic.notif.a.t - left_icon = scope:fp2_2006_vassal_in_crisis - - scope:fp2_2006_vassal_in_crisis = { - hidden_effect = { set_character_faith_with_conversion = scope:fp2_2006_foreign_faith } - show_as_tooltip = { set_character_faith = scope:fp2_2006_foreign_faith } - - progress_towards_rival_effect = { - REASON = rival_fraternising_enemy - CHARACTER = root - OPINION = 0 - } - add_opinion = { - target = root - modifier = fp2_questioned_my_faith_opinion - } - } - } - } - 15 = { - desc = fp2_struggle.2006.b.b.desc - compare_modifier = { - value = scope:duel_value - multiplier = 1.5 - } - modifier = { - add = 10 - has_trait = calm - } - modifier = { - add = 10 - has_trait = humble - } - modifier = { - add = 3 - has_trait = forgiving - } - modifier = { - add = 5 - has_trait = honest - } - modifier = { - add = 10 - has_trait = humble - } - modifier = { - add = 3 - has_trait = patient - } - modifier = { - add = 20 - has_trait = zealous - } - modifier = { - add = 4 - has_trait = compassionate - } - modifier = { - add = 20 - has_trait = theologian # Could be it's own option, but I can't think of what argument could be used... - } - modifier = { - add = 10 - has_trait = devoted - } - modifier = { - add = 2 - has_trait = lifestyle_poet - } - modifier = { - add = 10 - has_trait = saint - } - - send_interface_toast = { - type = event_toast_effect_good - title = fp2_struggle.2006.generic.notif.b.t - left_icon = scope:fp2_2006_vassal_in_crisis - - add_piety = medium_piety_gain - progress_towards_friend_effect = { - REASON = friend_guided_right_path - CHARACTER = scope:fp2_2006_vassal_in_crisis - OPINION = 0 - } - if = { - limit = { - this != root - } - add_opinion = { - target = root - modifier = fp2_reassured_faith_opinion - } - } - } - } - } - - ai_chance = { - base = 45 - ai_value_modifier = { - ai_compassion = 0.2 - ai_sociability = 0.3 - ai_zeal = 0.2 - } - } - } - - option = { # One-on-One time - name = fp2_struggle.2006.c - flavor = fp2_struggle.2006.c.desc - - trigger = { - NAND = { - has_trait = witch - OR = { - has_trait = schemer - has_trait = devoted - intrigue > medium_skill_rating - } - } - } - stress_impact = { zealous = minor_stress_impact_gain } - - scope:fp2_2006_vassal_in_crisis = { - progress_towards_friend_effect = { - REASON = friend_religious_tolerance - CHARACTER = root - OPINION = 0 - } - add_opinion = { - target = root - modifier = fp2_tolerated_me_opinion - } - random = { - chance = 50 - hidden_effect = { set_character_faith_with_conversion = scope:fp2_2006_foreign_faith } - show_as_tooltip = { set_character_faith = scope:fp2_2006_foreign_faith } - } - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_compassion = 0.1 - ai_rationality = 0.6 - ai_zeal = -0.7 - } - } - } - - option = { # Someone call a priest! - name = fp2_struggle.2006.a - flavor = fp2_struggle.2006.a.desc - show_as_unavailable = { NOT = { exists = scope:2006_scoped_chaplain } } # Replaces trigger, teases player to possibility. - stress_impact = { - honest = medium_stress_impact_gain - humble = minor_stress_impact_gain - trusting = medium_stress_impact_gain - } - - scope:fp2_2006_vassal_in_crisis = { - add_opinion = { - target = root - modifier = betrayed_me_opinion - opinion = -20 - } - } - scope:2006_scoped_chaplain = { - duel = { - skill = learning - value = medium_skill_rating - - 10 = { - desc = fp2_struggle.2006.a.a - compare_modifier = { - value = scope:duel_value - multiplier = -1.25 - } - modifier = { - add = 15 - scope:fp2_2006_vassal_in_crisis = { has_trait = paranoid } - } - modifier = { - add = 10 - has_trait = fickle - } - modifier = { - add = 10 - has_trait = heresiarch - } - modifier = { - add = 2 - has_trait = impotent - } - modifier = { - add = 5 - has_trait = irritable - } - modifier = { - add = 5 - has_trait = dull - } - modifier = { - add = 10 - has_trait = depressed_genetic - } - modifier = { - add = 10 - has_trait = arrogant - } - modifier = { - add = 5 - has_trait = arbitrary - } - modifier = { - add = 10 - has_trait = lazy - } - modifier = { - add = 2 - has_trait = stubborn - } - modifier = { - add = 5 - has_trait = craven - } - modifier = { - factor = 2 - scope:fp2_2006_vassal_in_crisis = { has_trait = paranoid } - } - - root = { - hidden_effect = { - scope:fp2_2006_vassal_in_crisis = { - if = { - limit = { any_secret = { type = secret_non_believer } } - progress_towards_rival_effect = { # "HE MUST BE ON TO ME!" - REASON = rival_faith_tested - CHARACTER = scope:2006_scoped_chaplain - OPINION = 0 - } - add_opinion = { - target = scope:2006_scoped_chaplain - modifier = fp2_questioned_my_faith_opinion - } - } - } - } - send_interface_toast = { - type = event_toast_effect_bad - title = fp2_struggle.2006.generic.notif.a.t - left_icon = scope:fp2_2006_vassal_in_crisis - - scope:fp2_2006_vassal_in_crisis = { - show_as_tooltip = { set_character_faith = scope:fp2_2006_foreign_faith } - hidden_effect = { set_character_faith_with_conversion = scope:fp2_2006_foreign_faith } - - add_opinion = { - target = scope:2006_scoped_chaplain - modifier = fp2_questioned_my_faith_opinion - opinion = -35 - } - } - } - } - } - 5 = { - trigger = { - scope:fp2_2006_vassal_in_crisis = { - NOT = { has_trait = paranoid } - } - } - desc = fp2_struggle.2006.a.b - compare_modifier = { - value = scope:duel_value - multiplier = -1.25 - } - modifier = { - add = 10 - has_trait = fickle - } - modifier = { - add = 10 - has_trait = heresiarch - } - modifier = { - add = 2 - has_trait = impotent - } - modifier = { - add = 5 - has_trait = irritable - } - modifier = { - add = 5 - has_trait = dull - } - modifier = { - add = 10 - has_trait = depressed_genetic - } - modifier = { - add = 10 - has_trait = arrogant - } - modifier = { - add = 5 - has_trait = arbitrary - } - modifier = { - add = 10 - has_trait = lazy - } - modifier = { - add = 2 - has_trait = stubborn - } - modifier = { - add = 5 - has_trait = craven - } - - root = { - hidden_effect = { - scope:fp2_2006_vassal_in_crisis = { - if = { - limit = { any_secret = { type = secret_non_believer } } - progress_towards_rival_effect = { # "HE MUST BE ON TO ME!" - REASON = rival_faith_tested - CHARACTER = scope:2006_scoped_chaplain - OPINION = 0 - } - add_opinion = { - target = scope:2006_scoped_chaplain - modifier = fp2_questioned_my_faith_opinion - } - } - } - } - send_interface_toast = { - type = event_toast_effect_bad - title = fp2_struggle.2006.generic.notif.a.t - left_icon = scope:fp2_2006_vassal_in_crisis - - scope:fp2_2006_vassal_in_crisis = { - remove_trait = trusting - if = { - limit = { is_ai = yes } - add_stress = monumental_stress_gain # Unbalanced for players, fun when seeing it happen to unrelated AI - } - else = { add_stress = medium_stress_gain } # (there is no notification) - add_opinion = { - target = scope:2006_scoped_chaplain - modifier = fp2_questioned_my_faith_opinion - opinion = -25 - } - } - } - } - } - 20 = { - desc = fp2_struggle.2006.a.c - compare_modifier = { - value = scope:duel_value - multiplier = 1.5 - } - modifier = { - add = 10 - has_trait = calm - } - modifier = { - add = 10 - has_trait = humble - } - modifier = { - add = 3 - has_trait = forgiving - } - modifier = { - add = 5 - has_trait = honest - } - modifier = { - add = 10 - has_trait = humble - } - modifier = { - add = 3 - has_trait = patient - } - modifier = { - add = 20 - has_trait = zealous - } - modifier = { - add = 4 - has_trait = compassionate - } - modifier = { - add = 15 - has_trait = theologian - } - modifier = { - add = 10 - has_trait = devoted - } - modifier = { - add = 2 - has_trait = lifestyle_poet - } - modifier = { - add = 10 - has_trait = saint - } - - hidden_effect = { - scope:fp2_2006_vassal_in_crisis = { add_piety = minor_piety_gain } - scope:2006_scoped_chaplain = { add_piety = medium_piety_gain } - } - root = { - send_interface_toast = { - type = event_toast_effect_good - title = fp2_struggle.2006.generic.notif.b.t - left_icon = scope:fp2_2006_vassal_in_crisis - - scope:fp2_2006_vassal_in_crisis = { - progress_towards_friend_effect = { - REASON = friend_guided_right_path - CHARACTER = scope:2006_scoped_chaplain - OPINION = 0 - } - add_opinion = { - target = scope:2006_scoped_chaplain - modifier = fp2_reassured_faith_opinion - } - } - } - } - } - } - } - - ai_chance = { - base = 45 - ai_value_modifier = { - ai_compassion = -0.1 - ai_energy = -0.1 - ai_honor = -0.1 - ai_rationality = 0.2 - ai_sociability = -0.2 - ai_zeal = 0.3 - } - } - } -} - -################################### -# A Castle Worthy of Iberia -# By Hugo Cortell -################################### -scripted_trigger fp2_struggle_2007_can_build_castle_trigger = { # Ensures that the selected building spot adheres to the game's rules on holding placement. - any_county_province = { has_holding = no } - trigger_if = { - limit = { any_county_province = { has_holding_type = castle_holding } } - any_county_province = { has_holding_type = church_holding } - any_county_province = { has_holding_type = city_holding } - } - exists = holder - holder != scope:fp2_2007_scoped_steward -} - -fp2_struggle.2007 = { - type = character_event - title = fp2_struggle.2007.t - desc = { - first_valid = { - triggered_desc = { - trigger = { scope:fp2_2007_castle_holder = ROOT } - desc = fp2_struggle.2007.desc.a - } - desc = fp2_struggle.2007.desc.b - } - } - - theme = realm - cooldown = { years = 20 } - override_background = { reference = garden } - left_portrait = { - character = root - animation = personality_rational - } - right_portrait = { - character = scope:fp2_2007_scoped_steward - animation = chancellor - } - lower_left_portrait = scope:2007_vassal_sponsor - lower_right_portrait = scope:fp2_2007_castle_holder - - trigger = { - has_fp2_dlc_trigger = yes - is_ai = no # Overpowered for AI, player only. - struggle:iberian_struggle = { - is_struggle_phase = struggle_iberia_phase_hostility - - } - - root.top_liege = root - exists = cp:councillor_steward - cp:councillor_steward = { is_available_ai_adult = yes } - - any_vassal = { # Last minute pre RC fixes - NOT = { - religion = root.religion - this = cp:councillor_steward - } - } - any_realm_county = { fp2_struggle_2007_can_build_castle_trigger = yes } - - save_temporary_scope_value_as = { - name = fp2_2007_wealth_barrier - value = { - value = main_building_tier_1_cost - multiply = 0.8 - round = yes - } - } - OR = { - gold > scope:fp2_2007_wealth_barrier - OR = { - has_trait = architect - AND = { - has_royal_court = yes - employs_court_position = royal_architect_court_position - any_court_position_holder = { - type = royal_architect_court_position - is_available_ai_adult = yes - } - } - } - } - } - - immediate = { - cp:councillor_steward = { save_scope_as = fp2_2007_scoped_steward } - if = { - limit = { - any_court_position_holder = { - type = royal_architect_court_position - is_available_ai_adult = yes - } - } - random_court_position_holder = { - type = royal_architect_court_position - save_scope_as = fp2_2007_roco_architect - } - } - random_vassal = { - limit = { - NOT = { - religion = root.religion - this = scope:fp2_2007_scoped_steward - } - } - save_scope_as = 2007_vassal_sponsor - } - - random_realm_county = { - limit = { fp2_struggle_2007_can_build_castle_trigger = yes } - random_county_province = { - limit = { has_holding = no } - save_scope_as = fp2_2007_free_real_estate - } - holder = { save_scope_as = fp2_2007_castle_holder } - } - - # Get Different Faith (updated to whole religion) - struggle:iberian_struggle = { - random_involved_ruler = { - limit = { - religion != root.religion - faith = { save_temporary_scope_as = temp_involved_faith } - struggle:iberian_struggle = { is_faith_involved_in_struggle = scope:temp_involved_faith } - } - religion = { save_scope_as = fp2_2007_foreign_faith } - } - if = { # Fallback - limit = { NOT = { exists = scope:fp2_2007_foreign_faith } } - get_random_faith_effect = { FORBIDROOTFAITH = yes } - scope:random_faith.religion = { save_scope_as = fp2_2007_foreign_faith } - } - } - - # Get castileans or proto-castileans - if = { - limit = { culture = { has_cultural_parameter = architect_trait_prestige } } - culture = { save_scope_as = fp2_2007_allegedprotocastilean } - } - - save_scope_value_as = { - name = fp2_2007_same_faith_construction_cost - value = { - value = main_building_tier_1_cost - multiply = 0.75 - round = yes - } - } - save_scope_value_as = { - name = fp2_2007_different_faith_construction_cost - value = { - value = main_building_tier_1_cost - multiply = 0.65 - round = yes - } - } - save_scope_value_as = { - name = fp2_2007_diy_construction_cost - value = { - value = main_building_tier_1_cost - multiply = 0.6 - round = yes - } - } - - # Set dynamic loc keys for powerful vassals - religion = { save_scope_as = dyloc_powerful_vassal_faith } - culture = { save_scope_as = dyloc_powerful_vassal_culture } - } - - option = { # Same Faith (or) Castilean architect - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { exists = scope:fp2_2007_allegedprotocastilean } - desc = fp2_struggle.2007.a.castile - } - desc = fp2_struggle.2007.a - } - } - } - flavor = { - first_valid = { - triggered_desc = { - trigger = { exists = scope:fp2_2007_allegedprotocastilean } - desc = fp2_struggle.2007.a.castile.favor - } - desc = fp2_struggle.2007.a.major_vassal_flavor - } - } - show_as_unavailable = { gold < scope:fp2_2007_same_faith_construction_cost } - - if = { # Proto-Castilean - limit = { exists = scope:fp2_2007_allegedprotocastilean } - every_powerful_vassal = { - limit = { culture = root.culture } - custom = fp2_every_major_same_culture_vassal_notifier - add_opinion = { - target = root - modifier = pleased_opinion - opinion = 10 - } - } - } - show_as_tooltip = { - remove_treasury_or_gold = scope:fp2_2007_same_faith_construction_cost - scope:fp2_2007_free_real_estate = { - begin_create_holding = { - type = castle_holding - refund_cost = { - gold = 95 - } - } - } - add_hook_if_possible_effect = { # General effect - TARGET = scope:fp2_2007_castle_holder - TYPE = indebted_hook - YEARS = 8 - } # Hooks get their own notifications, therefore I will not show them on the main effect - } - hidden_effect = { - send_interface_toast = { - type = event_toast_effect_good - title = fp2_struggle.2007.t - left_icon = root - right_icon = scope:fp2_2007_castle_holder - - remove_treasury_or_gold = scope:fp2_2007_same_faith_construction_cost - custom_tooltip = fp2_struggle.2007.a.notif - hidden_effect = { - scope:fp2_2007_free_real_estate = { - begin_create_holding = { - type = castle_holding - refund_cost = { - gold = 95 - } - } - } - add_hook_if_possible_effect = { # General effect - TARGET = scope:fp2_2007_castle_holder - TYPE = indebted_hook - YEARS = 8 - } - } - } - } - } - - option = { # Foreign (different faith) architect - name = fp2_struggle.2007.b - flavor = fp2_struggle.2007.b.flavor - show_as_unavailable = { gold < scope:fp2_2007_different_faith_construction_cost } - hidden_effect = { scope:2007_vassal_sponsor = { remove_treasury_or_gold = medium_treasury_or_gold_value } } - - every_powerful_vassal = { - custom = fp2_every_major_same_faith_vassal_notifier - limit = { religion = root.religion } - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -15 - } - } - every_powerful_vassal = { - custom = fp2_every_major_different_faith_vassal_notifier - limit = { religion != root.religion } - add_opinion = { - target = root - modifier = respect_opinion - opinion = 15 - } - } - scope:fp2_2007_free_real_estate.county = { - if = { - limit = { religion = scope:fp2_2007_foreign_faith } - add_county_modifier = { - modifier = modifier_religious_understanding_modifier - years = 12 - } - } - else_if = { - limit = { religion != root.religion } - add_county_modifier = { - modifier = invested_in_province_modifier - years = 5 - } - } - } - - show_as_tooltip = { - remove_treasury_or_gold = scope:fp2_2007_different_faith_construction_cost - scope:fp2_2007_free_real_estate = { - begin_create_holding = { - type = castle_holding - refund_cost = { - gold = 95 - } - } - } - add_hook_if_possible_effect = { - TARGET = scope:fp2_2007_castle_holder - TYPE = indebted_hook - YEARS = 8 - } - } - hidden_effect = { - send_interface_toast = { - type = event_toast_effect_good - title = fp2_struggle.2007.t - left_icon = scope:2007_vassal_sponsor - right_icon = scope:fp2_2007_castle_holder - - remove_treasury_or_gold = scope:fp2_2007_different_faith_construction_cost - custom_tooltip = fp2_struggle.2007.a.notif - hidden_effect = { - scope:fp2_2007_free_real_estate = { - begin_create_holding = { - type = castle_holding - refund_cost = { - gold = 95 - } - } - } - add_hook_if_possible_effect = { # General effect - TARGET = scope:fp2_2007_castle_holder - TYPE = indebted_hook - YEARS = 8 - } - } - } - } - } - - option = { # I will build it myself - name = fp2_struggle.2007.c - flavor = fp2_struggle.2007.c.flavor - - trigger = { has_trait = architect } - - duel = { - skill = learning - value = very_high_skill_rating - - 60 = { - desc = fp2_struggle.2007.c.notif.a.desc - compare_modifier = { - value = scope:duel_value - multiplier = 1 # Should be -1 but it has already been balanced - } - - send_interface_toast = { - type = event_toast_effect_bad - title = fp2_struggle.2007.c.notif.a.t - left_icon = root - right_icon = scope:fp2_2007_castle_holder - - add_prestige = major_prestige_loss - reverse_add_opinion = { - target = scope:fp2_2007_scoped_steward - modifier = disappointed_opinion - opinion = -10 - } - } - } - 40 = { - desc = fp2_struggle.2007.c.notif.b.desc - compare_modifier = { - value = scope:duel_value - multiplier = 1 - } - modifier = { - add = fp2_2007_calculate_architect_competence - always = yes - } - - show_as_tooltip = { - remove_treasury_or_gold = scope:fp2_2007_diy_construction_cost - if = { - limit = { exists = scope:fp2_2007_allegedprotocastilean } - add_prestige = minor_prestige_gain - } - - scope:fp2_2007_free_real_estate = { - begin_create_holding = { - type = castle_holding - refund_cost = { - gold = medium_gold_value - } - } - } - add_hook_if_possible_effect = { # General effect - TARGET = scope:fp2_2007_castle_holder - TYPE = indebted_hook - YEARS = 8 - } - } - hidden_effect = { - send_interface_toast = { - type = event_toast_effect_good - title = fp2_struggle.2007.t - left_icon = root - right_icon = scope:fp2_2007_castle_holder - - remove_treasury_or_gold = scope:fp2_2007_diy_construction_cost - if = { - limit = { exists = scope:fp2_2007_allegedprotocastilean } - add_prestige = minor_prestige_gain - } - custom_tooltip = fp2_struggle.2007.a.notif - } - hidden_effect = { - scope:fp2_2007_free_real_estate = { - begin_create_holding = { - type = castle_holding - refund_cost = { - gold = medium_gold_value - } - } - } - add_hook_if_possible_effect = { - TARGET = scope:fp2_2007_castle_holder - TYPE = indebted_hook - YEARS = 8 - } - } - } - } - } - } - - option = { # RoCo - name = fp2_struggle.2007.c.roco - - trigger = { - NOT = { has_trait = architect } - exists = scope:fp2_2007_roco_architect - } - scope:fp2_2007_roco_architect = { - duel = { - skill = learning - value = very_high_skill_rating - - 55 = { - desc = fp2_struggle.2007.c.notif.a.desc - - compare_modifier = { - value = scope:duel_value - multiplier = 1 - } - - root = { - send_interface_toast = { - type = event_toast_effect_bad - title = fp2_struggle.2007.c.notif.a.t - left_icon = scope:fp2_2007_roco_architect - right_icon = scope:fp2_2007_castle_holder - - add_prestige = medium_prestige_loss - } - } - hidden_effect = { add_prestige = medium_prestige_loss } - } - 45 = { - compare_modifier = { - value = scope:duel_value - multiplier = 1 - } - modifier = { - add = fp2_2007_calculate_architect_competence - always = yes - } - - root = { - show_as_tooltip = { - remove_treasury_or_gold = scope:fp2_2007_diy_construction_cost - scope:fp2_2007_free_real_estate = { - begin_create_holding = { - type = castle_holding - refund_cost = { - gold = minor_gold_value - } - } - } - add_hook_if_possible_effect = { - TARGET = scope:fp2_2007_castle_holder - TYPE = indebted_hook - YEARS = 8 - } - } - hidden_effect = { - send_interface_toast = { - type = event_toast_effect_good - title = fp2_struggle.2007.t - left_icon = scope:fp2_2007_roco_architect - right_icon = scope:fp2_2007_castle_holder - - remove_treasury_or_gold = scope:fp2_2007_diy_construction_cost - custom_tooltip = fp2_struggle.2007.a.notif - } - hidden_effect = { - scope:fp2_2007_free_real_estate = { - begin_create_holding = { - type = castle_holding - refund_cost = { - gold = minor_gold_value - } - } - } - add_hook_if_possible_effect = { - TARGET = scope:fp2_2007_castle_holder - TYPE = indebted_hook - YEARS = 8 - } - } - } - } - } - } - } - } - - option = { # Leave it be - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { scope:fp2_2007_castle_holder = root } - desc = fp2_struggle.2007.d.alt - } - desc = fp2_struggle.2007.d - } - } - } - - if = { - limit = { scope:fp2_2007_castle_holder != root } - reverse_add_opinion = { - target = scope:fp2_2007_scoped_steward - modifier = disappointed_opinion - opinion = -15 - } - reverse_add_opinion = { - target = scope:fp2_2007_castle_holder - modifier = disappointed_opinion - opinion = -20 - } - } - if = { - limit = { exists = cp:councillor_marshal } - reverse_add_opinion = { - target = cp:councillor_marshal - modifier = disappointed_opinion - opinion = -10 - } - } - } -} - -################################### -# Misdeeds of The Chaplain -# By Hugo Cortell -################################### -scripted_trigger fp2_struggle_2008_check_actor_eligibility_scripted_trigger = { - is_available_ai_adult = yes - intrigue > low_skill_rating - - NOT = { - has_trait = just - has_trait = compassionate - has_trait = generous - has_trait = content - has_trait = honest - has_relation_soulmate = root - } - - trigger_if = { # Instead of an event weight, we just increase the reqs for friends to dicrease overhead - limit = { - has_relation_friend = root - has_relation_lover = root - } - OR = { - has_trait = greedy - has_trait = deceitful - has_trait = callous - } - } -} - -fp2_struggle.2008 = { - type = character_event - title = fp2_struggle.2008.t - desc = fp2_struggle.2008.desc - - theme = secret - cooldown = { years = 30 } - override_background = { reference = study } - left_portrait = { - character = scope:fps_2008_misdeed_actor - animation = fear - } - right_portrait = { - character = root - animation = disapproval - } - - trigger = { - has_fp2_dlc_trigger = yes - root.top_liege = root - - trigger_if = { - limit = { exists = struggle:iberian_struggle } - struggle:iberian_struggle = { - is_struggle_phase = struggle_iberia_phase_hostility - - } - } - - OR = { # This play changes depending on the actor - AND = { # Chaplain - exists = cp:councillor_court_chaplain - cp:councillor_court_chaplain = { fp2_struggle_2008_check_actor_eligibility_scripted_trigger = yes } - } - AND = { # Steward - exists = cp:councillor_steward - cp:councillor_steward = { fp2_struggle_2008_check_actor_eligibility_scripted_trigger = yes } - } - AND = { # Spymaster - exists = cp:councillor_spymaster - cp:councillor_spymaster = { fp2_struggle_2008_check_actor_eligibility_scripted_trigger = yes } - } - } - } - - immediate = { - random_councillor = { - limit = { - OR = { - this = root.cp:councillor_court_chaplain - this = root.cp:councillor_steward - this = root.cp:councillor_spymaster - } - fp2_struggle_2008_check_actor_eligibility_scripted_trigger = yes - } - weight = { # Weight based on personality. In combination with the scripted trigger this means: Must be greedy, dishonourable, not incompetent. - base = 1 - modifier = { - ai_greed > 0 - factor = 1 - } - modifier = { - ai_honor < 0 - factor = 1 - } - } - save_scope_as = fps_2008_misdeed_actor - } - - scope:fps_2008_misdeed_actor = { - if = { - limit = { has_council_position = councillor_steward } - add_gold = medium_gold_value # Small detail - } - else = { add_gold = minor_gold_value } - - if = { - limit = { - faith = { - exists = religious_head - NOT = { - religious_head = root - religious_head = scope:fps_2008_misdeed_actor - } - } - } - faith.religious_head = { - save_scope_as = fp2_2008_relevant_head_of_faith - } - } - } - root.capital_county = { save_scope_as = fp2_2008_capital } - } - - option = { # Special (thanks QA!) option, denounce publicly (might get killed by mob) - name = fp2_struggle.2008.d - flavor = fp2_struggle.2008.d.flavor - trigger = { - OR = { - has_trait = sadistic - has_trait = schemer - has_trait = peasant_leader - has_trait = augustus - has_trait = contrite - has_trait = august - has_trait = diplomat - } - } - stress_impact = { - just = medium_stress_impact_gain - trusting = minor_stress_impact_gain - temperate = minor_stress_impact_gain - patient = minor_stress_impact_gain - shy = minor_stress_impact_gain - compassionate = minor_stress_impact_gain - } - - every_powerful_vassal = { - limit = { faith = root.faith } - custom = fp2_every_major_vassal_notifier - add_opinion = { - target = root - modifier = cruelty_opinion - opinion = -20 - } - } - - random_list = { - 85 = { - hidden_effect = { - scope:fps_2008_misdeed_actor = { save_temporary_scope_as = assassin } # Used for loc - send_interface_toast = { - type = event_toast_effect_good - title = char_interaction.0050.a - left_icon = scope:fps_2008_misdeed_actor - - capital_county = { - add_county_modifier = { - modifier = governance_1054_satisfied_peasants_modifier - years = 15 - } - } - scope:assassin = { custom_tooltip = hold_court.8221.imprison_alone } # This uses that loc - hidden_effect = { - rightfully_imprison_character_effect = { # The autoformatter was a bit (very, very) fiddly with this - TARGET = scope:fps_2008_misdeed_actor - IMPRISONER = root - } - } - } - } - scope:fps_2008_misdeed_actor = { - add_opinion = { - target = root - modifier = publicly_ridiculed - opinion = -30 - } - } - show_as_tooltip = { - rightfully_imprison_character_effect = { - TARGET = scope:fps_2008_misdeed_actor - IMPRISONER = root - } - capital_county = { - add_county_modifier = { - modifier = governance_1054_satisfied_peasants_modifier - years = 15 - } - } - } - } - 15 = { - scope:fps_2008_misdeed_actor = { - add_opinion = { - target = root - modifier = publicly_ridiculed - opinion = -80 - } - } - if = { - limit = { has_trait = sadistic } # Once again, rewarding physcos with little details - send_interface_toast = { - type = event_toast_effect_good - title = char_interaction.0050.a - left_icon = scope:fps_2008_misdeed_actor - - scope:fps_2008_misdeed_actor = { death = { death_reason = death_beaten_by_mob } } - capital_county = { - add_county_modifier = { - modifier = governance_1054_satisfied_peasants_modifier - years = 30 - } - } - } - } - else = { - send_interface_toast = { - type = event_toast_effect_bad - title = char_interaction.0050.a - left_icon = scope:fps_2008_misdeed_actor - - scope:fps_2008_misdeed_actor = { death = { death_reason = death_beaten_by_mob } } - capital_county = { - add_county_modifier = { - modifier = governance_1054_satisfied_peasants_modifier - years = 30 - } - } - } - } - } - } - } - - option = { # Imprison chaplain outright - name = fp2_struggle.2008.a - stress_impact = { trusting = minor_stress_impact_gain } - - rightfully_imprison_character_effect = { - TARGET = scope:fps_2008_misdeed_actor - IMPRISONER = root - } - if = { - limit = { - scope:fps_2008_misdeed_actor = cp:councillor_court_chaplain - exists = scope:fp2_2008_relevant_head_of_faith - } - scope:fps_2008_misdeed_actor.faith = { - religious_head = { - add_opinion = { - target = root - modifier = rude_opinion - opinion = -10 - } - } - } - } - - scope:fp2_2008_capital = { - add_county_modifier = { - modifier = fp2_improved_administrative_checks_modifier - years = 15 - } - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_honor = 0.85 - ai_zeal = 0.3 - } - } - } - - - # Threaten, gain hook and modifier for work harder - option = { # Combined general output (threaten into teaching you how to forge like they do) - name = fp2_struggle.2008.b.a - flavor = fp2_struggle.2008.b.flavor - stress_impact = { - just = minor_stress_impact_gain - honest = medium_stress_impact_gain - } - - send_interface_toast = { - type = event_toast_effect_good - title = yearly_0001_improved_intrigue - left_icon = ROOT - right_icon = scope:fps_2008_misdeed_actor - - add_intrigue_lifestyle_xp = major_lifestyle_experience # Originally it gave you the accomplished forger perk. Was removed because it let you bypass the learning tree. - } - reverse_add_opinion = { - target = scope:fps_2008_misdeed_actor - modifier = extorted_me_opinion - opinion = -25 - years = 10 - } - - scope:fps_2008_misdeed_actor = { - progress_towards_rival_effect = { - REASON = rival_defrauded_realm - CHARACTER = root - OPINION = 0 - } - } - - if = { # Has its own notification - limit = { - can_add_hook = { - target = scope:fps_2008_misdeed_actor - type = threat_hook - } - } - add_hook = { - target = scope:fps_2008_misdeed_actor - type = threat_hook - years = 7 - } - } - - ai_chance = { base = 0 } # AI should never use these OP options - } - - - option = { # Go hand in hand stealing state money - name = fp2_struggle.2008.c - flavor = fp2_struggle.2008.c.flavor - - stress_impact = { - just = medium_stress_impact_gain - zealous = minor_stress_impact_gain - } - - scope:fp2_2008_capital = { - add_county_modifier = { - modifier = county_corruption_inefficient_tax_collection_modifier - years = 15 - } - } - - scope:fps_2008_misdeed_actor = { - if = { - limit = { - can_add_hook = { - target = root - type = minor_crime_accomplice_hook - } - } - - if = { - limit = { root = { scope:fps_2008_misdeed_actor = cp:councillor_steward } } # CPs cannot have CPs, therefore must be rescoped into root to access - pay_short_term_gold = { - target = root - gold = minor_gold_value - } - } - add_hook = { - target = root - type = minor_crime_accomplice_hook - years = 15 - } - } - } - if = { - limit = { - can_add_hook = { - target = scope:fps_2008_misdeed_actor - type = minor_crime_accomplice_hook - } - } - add_hook = { - target = scope:fps_2008_misdeed_actor - type = minor_crime_accomplice_hook - years = 15 - } - } - add_gold = medium_gold_value - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_greed = 0.95 - ai_energy = 0.25 - } - } - } -} - -################################### -# Thiefs of Garduna / Catching Thieves of Myth -# By Hugo Cortell -################################### -fp2_struggle.2009 = { - type = character_event - title = fp2_struggle.2009.t - desc = fp2_struggle.2009.desc - - theme = intrigue_skulduggery_focus - cooldown = { years = 150 } # Not actually necessary but adding anyway - override_background = { reference = corridor_night } - left_portrait = { - character = scope:fp2_2009_marshal - animation = marshal - outfit_tags = { emotion_angry_decal } # WAD, the decal does render and functions as intended - } - lower_left_portrait = { - character = root - } - right_portrait = { - character = scope:fp2_2009_garduna_young_thief - animation = fear - hide_info = yes - outfit_tags = { - mena_stealth_hood - religious_zoroastrian_high_clothes - } - } - - trigger = { - is_ai = no - has_fp2_dlc_trigger = yes - top_liege = this - exists = cp:councillor_marshal - fp2_character_any_involvement_iberian_struggle_trigger = yes - - exists = struggle:iberian_struggle - exists = primary_title - struggle:iberian_struggle = { - any_involved_ruler = { # Redundancy check in response to errors on automated tests, should (theoretically) not be necessary - this != root # Alternative point of failure could be "this" being null, but that would cause errors outside my event. - exists = primary_title - top_liege = this - primary_title = { is_mercenary_company = no } - is_landed = yes - count > 1 # Redundancy check in response to more errors on nigtly. Now on the bottom of the block. Reduced by one to total 3. - } - - OR = { - is_struggle_phase = struggle_iberia_phase_opportunity - is_struggle_phase = struggle_iberia_phase_conciliation - } - } - - realm_size > 3 # Needed to get all the realms where corruption can happen - } - - weight_multiplier = { - base = 0.5 - modifier = { - add = 0.5 - is_ai = no - } - } - - immediate = { - struggle:iberian_struggle = { # Struggle existance is already verified by event trigger - random_involved_ruler = { - limit = { - this != root # Otherwise you might be the other involved ruler - exists = primary_title - top_liege = this - primary_title = { is_mercenary_company = no } - is_landed = yes - } - save_scope_as = fp2_2009_involved_ruler - } - } - cp:councillor_marshal = { save_scope_as = fp2_2009_marshal } - create_character = { - age = { 16 27 } - location = root.location - gender_female_chance = 30 - trait = education_intrigue_2 - trait = shy - trait = honest - trait = paranoid - random_traits = yes - diplomacy = { 2 7 } - martial = { 3 6 } - stewardship = { 4 7 } - intrigue = { 8 22 } - culture = culture:basque - religion = religion:catholic_religion - dynasty = none - after_creation = { add_gold = minor_gold_value } - - save_scope_as = fp2_2009_garduna_young_thief - } - - if = { - limit = { - exists = global_var:fp2_struggle_2009_thief_king_char - global_var:fp2_struggle_2009_thief_king_char = { is_available_ai_adult = yes } - } - global_var:fp2_struggle_2009_thief_king_char = { save_scope_as = fp2_2009_garduna_guild_master } - } - else = { - create_character = { # Guild Master - age = { 24 52 } - location = scope:fp2_2009_involved_ruler.location - gender_female_chance = { - if = { - limit = { scope:fp2_2009_involved_ruler.location.county.faith = { has_doctrine = doctrine_gender_male_dominated } } - add = 0 - } - else_if = { - limit = { scope:fp2_2009_involved_ruler.location.county.faith = { has_doctrine = doctrine_gender_female_dominated } } - add = 100 - } - else = { - add = 50 - } - } - trait = education_intrigue_4 - trait = deceitful - trait = shrewd - random_traits = yes - diplomacy = { 6 16 } - martial = { 8 15 } - stewardship = { 10 17 } - intrigue = { 8 16 } - culture = culture:basque - religion = religion:catholic_religion - dynasty = none - after_creation = { - add_gold = major_gold_value - add_prestige = major_prestige_gain - add_piety = minor_piety_gain - random = { - chance = 10 - add_trait = one_eyed - } - random = { - chance = 10 - add_trait = one_legged - } - random = { - chance = 5 - add_trait = schemer - } - random = { - chance = 33 - add_trait = wild_oat - } - if = { - limit = { is_female = yes } - give_nickname = nick_the_Queen_of_Thieves - } - else = { give_nickname = nick_the_King_of_Thieves } - } - - save_scope_as = fp2_2009_garduna_guild_master - } - } - set_global_variable = { - name = fp2_struggle_2009_thief_king_char - value = scope:fp2_2009_garduna_guild_master - } - - if = { - limit = { - any_court_position_holder = { - type = executioner_court_position - is_available_ai_adult = yes - } - } - random_court_position_holder = { - type = executioner_court_position - save_scope_as = fp2_2009_roco_executioner - } - } - - # Get locations - root.capital_county = { save_scope_as = fp2_2009_capital_county } - scope:fp2_2009_involved_ruler.capital_county = { save_scope_as = fp2_2009_involved_capital_county } - random_sub_realm_county = { - limit = { this != scope:fp2_2009_capital_county } - save_scope_as = fp2_2009_random_flavor_county_ichi - } - random_sub_realm_county = { - limit = { - NOT = { - this = scope:fp2_2009_capital_county - this = scope:fp2_2009_random_flavor_county_ichi - } - } - save_scope_as = fp2_2009_random_flavor_county_ni - } - - # Logic for "Hire the guild" option, prevents the AI from acting un-wise - if = { # Player has access by default - limit = { is_ai = no } - save_scope_as = fp2_2009_hire_guild_unlocked - } - else_if = { # Forbid AI on AI agression - limit = { - NOT = { - is_ai = yes - scope:fp2_2009_involved_ruler = { is_ai = yes } - } - } - save_scope_as = fp2_2009_hire_guild_unlocked - } - else_if = { # Ensure AI on Player agression is justified - limit = { - is_ai = yes - scope:fp2_2009_involved_ruler = { - is_ai = no - save_temporary_opinion_value_as = { - name = opinion_of_root_temp_value - target = root - } - } - - # AI behaviour must be on brand with personality and/or circumstance to ensure narrative cohesion - scope:opinion_of_root_temp_value < -10 - OR = { - has_trait = deceitful - has_trait = wrathful - has_trait = ambitious - has_trait = vengeful - has_trait = arrogant - has_trait = callous - is_at_war_with = scope:fp2_2009_involved_ruler - has_relation_nemesis = scope:fp2_2009_involved_ruler - } - } - save_scope_as = fp2_2009_hire_guild_unlocked - } - } - - option = { # BECOME THE KING OF PIRA- err THIEVES!!1! - name = fp2_struggle.2009.a - flavor = fp2_struggle.2009.a.flavor - trigger = { - NOT = { age < 14 } - OR = { - has_trait = gallant - has_trait = adventurer - has_trait = berserker - has_trait = peasant_leader - has_trait = viking - has_trait = reaver - prowess > very_high_skill_rating - has_trait = lunatic_genetic - } - } - scope:fp2_2009_marshal = { - add_opinion = { - target = root - modifier = impressed_opinion - opinion = 20 - } - } - trigger_event = { - id = fp2_struggle.2010 - days = { 6 31 } - } - - stress_impact = { - compassionate = minor_stress_impact_gain - craven = minor_stress_impact_gain - content = medium_stress_impact_gain - eccentric = medium_stress_impact_loss - } - - ai_chance = { - base = 8 # Prevents too many kings of thieves from showing up - modifier = { - add = 25 - has_trait = just - } - ai_value_modifier = { - ai_boldness = 0.7 - ai_compassion = -0.1 - ai_greed = 0.3 - ai_energy = 0.5 - ai_honor = -0.1 - ai_rationality = -0.2 - ai_sociability = 0.3 - ai_vengefulness = 0.5 - } - } - } - - option = { # Demand info - name = fp2_struggle.2009.b - - hidden_effect = { - scope:fp2_2009_garduna_young_thief = { add_trait = depressed_1 } - save_scope_as = fp2_2009_thief_permanence_scope - } - - every_sub_realm_county = { - limit = { - county_control < 100 - } - custom = all_realm_county - change_county_control = 5 - } - add_courtier = scope:fp2_2009_garduna_young_thief - scope:fp2_2009_garduna_young_thief = { - custom_tooltip = fp2_struggle.2009.b.blues - add_opinion = { - target = root - modifier = was_spared - opinion = 20 - } - } - - stress_impact = { - wrathful = minor_stress_impact_gain - vengeful = minor_stress_impact_gain - sadistic = minor_stress_impact_gain - } - ai_chance = { - base = 45 - ai_value_modifier = { - ai_boldness = -0.1 - ai_compassion = 0.65 - ai_honor = 0.2 - ai_rationality = 0.9 - } - } - - hidden_effect = { - save_scope_value_as = { - name = fp2_2009_event_outcome - value = flag:cleared_out - } - trigger_event = { - id = fp2_struggle.2021 - days = { 450 3000 } - } - } - } - - option = { # Ask for a cut - name = fp2_struggle.2009.c - trigger = { - is_ai = no # Option disabled for AI rulers - NOR = { - has_trait = gallant - has_trait = adventurer - has_trait = berserker - has_trait = peasant_leader - has_trait = viking - has_trait = reaver - prowess > very_high_skill_rating - has_trait = lunatic_genetic - } - } - - add_gold = medium_gold_value - scope:fp2_2009_capital_county = { add_thieves_guild_modifier_effect = yes } - scope:fp2_2009_random_flavor_county_ichi = { change_county_control = -15 } - scope:fp2_2009_random_flavor_county_ni = { change_county_control = -15 } - - scope:fp2_2009_marshal = { - if = { - limit = { has_trait = just } - add_opinion = { - target = root - modifier = disgusted_opinion - opinion = -35 - } - } - else = { - if = { - limit = { has_trait = greedy } - add_opinion = { - target = root - modifier = respect_opinion # Greedy people respect "the grind" - opinion = 10 - } - } - else = { - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -15 - } - } - } - } - - stress_impact = { - generous = medium_stress_impact_gain - content = minor_stress_impact_gain - just = major_stress_impact_gain - } - - hidden_effect = { - save_scope_value_as = { - name = fp2_2009_event_outcome - value = flag:paid_off - } - trigger_event = { - id = fp2_struggle.2021 - days = { 450 3000 } - } - } - } - - option = { # Hire the guild to mess with a foreign ruler (work for me) - name = fp2_struggle.2009.d - trigger = { exists = scope:fp2_2009_hire_guild_unlocked } # Prevents AI from acting un-intelligently - - scope:fp2_2009_involved_capital_county = { add_thieves_guild_modifier_effect = yes } - pay_short_term_gold = { - target = scope:fp2_2009_garduna_young_thief - gold = minor_gold_value - - } - - # Notifies the player on the recieving end of an event outcome that involves them. - scope:fp2_2009_involved_ruler = { # Hopefuly this will encoureage interaction in MP games. - trigger_event = { - id = fp2_struggle.2012 - days = { 1 2 } - } - } - - stress_impact = { - brave = minor_stress_impact_gain - honest = medium_stress_impact_gain - compassionate = minor_stress_impact_gain - } - ai_chance = { - base = 25 - modifier = { - add = 45 - is_at_war_with = scope:fp2_2009_involved_ruler - } - modifier = { - add = 100 # hatred can cloud the mind - has_relation_nemesis = scope:fp2_2009_involved_ruler - } - ai_value_modifier = { - ai_boldness = 0.7 - ai_compassion = -0.2 - ai_greed = -0.1 - ai_honor = -0.4 - ai_rationality = 0.7 - ai_vengefulness = 0.95 - } - } - - hidden_effect = { - save_scope_value_as = { - name = fp2_2009_event_outcome - value = flag:worked_together - } - trigger_event = { - id = fp2_struggle.2021 - days = { 450 3000 } - } - } - } - - option = { # Gift the thieve's the head to the foreign ruler - name = fp2_struggle.2009.e - - scope:fp2_2009_garduna_young_thief = { - if = { - limit = { exists = scope:fp2_2009_roco_executioner } # ROCO flaire - death = { - death_reason = death_execution - killer = scope:fp2_2009_roco_executioner - } - } - else = { - death = { - death_reason = death_execution - killer = scope:fp2_2009_marshal - } - } - save_scope_as = fp2_2009_thief_permanence_scope - } - custom_tooltip = fp2_struggle.2009.e.a - hidden_effect = { - random_list = { - 55 = {} # nothing happens - 45 = { - random_list = { - 33 = { scope:fp2_2009_random_flavor_county_ichi = { change_county_control = -15 } } - 33 = { scope:fp2_2009_random_flavor_county_ni = { change_county_control = -15 } } - 33 = { scope:fp2_2009_capital_county = { change_county_control = -15 } } - } - } - } - } - - scope:fp2_2009_involved_ruler = { - if = { - limit = { - OR = { - has_trait = wrathful - has_trait = vengeful - has_trait = sadistic - } - } - add_opinion = { - target = root - modifier = gift_opinion - opinion = 40 - } - progress_towards_friend_effect = { # very nice - REASON = friend_gave_severed_head - CHARACTER = root - OPINION = 0 - } - } - else = { - add_opinion = { - target = root - modifier = gift_opinion # nice - opinion = 30 - } - } - } - - # Notifies the player on the recieving end that they have recieved a delightful gift - root = { save_scope_as = fp2_2009_has_gifted_head } - scope:fp2_2009_involved_ruler = { - trigger_event = { - id = fp2_struggle.2012 - days = { 1 2 } - } - } - - stress_impact = { - compassionate = medium_stress_impact_gain - forgiving = minor_stress_impact_gain - } - ai_chance = { - base = 35 - ai_value_modifier = { - ai_boldness = 0.2 - ai_compassion = -0.45 - ai_honor = 0.8 - ai_rationality = 0.1 - ai_sociability = 0.5 - } - } - - hidden_effect = { - save_scope_value_as = { - name = fp2_2009_event_outcome - value = flag:lobbed_head - } - trigger_event = { - id = fp2_struggle.2021 - days = { 450 3000 } - } - } - } - - option = { # Debug option to quickly trigger 2021 - name = debug_generic_option - trigger = { is_developer_testing_trigger = yes } - - custom_tooltip = debug_generic_option_shortened_trigger_can_disable - hidden_effect = { - save_scope_value_as = { - name = fp2_2009_event_outcome - value = flag:cleared_out # modify this with the flag you need - } - trigger_event = { id = fp2_struggle.2021 } - } - } - - after = { - if = { - limit = { NOT = { exists = scope:fp2_2009_thief_permanence_scope } } - scope:fp2_2009_garduna_young_thief = { silent_disappearance_effect = yes } - } - } -} - -fp2_struggle.2010 = { # 2009 duel follow-up - type = character_event - title = fp2_struggle.2010.t - desc = fp2_struggle.2010.desc - trigger = { scope:fp2_2009_garduna_guild_master = { is_available_ai_adult = yes } } - - theme = battle - override_background = { reference = corridor_night } - left_portrait = { - character = root - animation = throne_room_one_handed_passive_1 - } - right_portrait = { - character = scope:fp2_2009_garduna_guild_master - animation = war_over_win - outfit_tags = { - western_stealth_hood - sub_saharan_high_nobility - mena_war_legwear - } - } - - option = { # Duel - name = fp2_struggle.2010.b - - root = { save_scope_as = fp2_2010_root_in_duel } # Used in invalidation check for player's death - scope:fp2_2009_garduna_guild_master = { - set_variable = { - name = signature_weapon - value = flag:dagger - } - } - configure_start_single_combat_effect = { - SC_INITIATOR = root - SC_ATTACKER = root - SC_DEFENDER = scope:fp2_2009_garduna_guild_master - FATALITY = always - FIXED = no - LOCALE = temple - OUTPUT_EVENT = fp2_struggle.2011 - INVALIDATION_EVENT = fp2_struggle.2011 # If the thief dies, you still win. If you die, 2011 runs a check and fails to trigger. - } - - ai_chance = { # Stress for craven was already taken when setting off in this quest - base = 50 - ai_value_modifier = { ai_boldness = 0.5 } - } - } - - option = { # Pay protection money - name = fp2_struggle.2010.c - - pay_treasury_or_gold = { # Cowardice tax (costs more than hireing them) - target = scope:fp2_2009_garduna_guild_master - value = major_treasury_or_gold_value - } - - stress_impact = { - brave = major_stress_impact_gain - just = major_stress_impact_gain - arrogant = major_stress_impact_gain - vengeful = medium_stress_impact_gain - } - ai_chance = { - base = 50 - modifier = { # Nobody wants to be indebted to a thief - add = -25 - gold < major_gold_value - } - ai_value_modifier = { ai_greed = -0.5 } - } - - hidden_effect = { - save_scope_value_as = { - name = fp2_2009_event_outcome - value = flag:paid_off - } - trigger_event = { - id = fp2_struggle.2021 - days = { 450 3000 } - } - } - } -} - -fp2_struggle.2011 = { # You become the KING OF THIEVES - hidden = yes - immediate = { - if = { - limit = { - exists = scope:fp2_2011_reuse_gate - root = scope:fp2_2010_root_in_duel - } - send_interface_toast = { - type = event_toast_effect_good - desc = fp2_struggle.2011.desc - title = fp2_struggle.2011.a - right_icon = ROOT - - if = { # Standard practice from EP1 onwards dictates that we ought not to overwrite positive nicknames (?) - limit = { - OR = { - has_any_nickname = no - has_bad_nickname = yes - } - } - give_nickname = nick_the_Thief_Slayer - } - add_prestige = major_prestige_gain - add_gold = minor_gold_value - } - } - else = { - save_scope_as = fp2_2011_reuse_gate - trigger_event = { - id = fp2_struggle.2011 - days = 1 - } - } - } -} - -fp2_struggle.2012 = { # Displays letter notifying involved player/character that an action taken by 2009's root is affecting them - type = letter_event - sender = scope:fp2_2012_sender # Animation is WAD - opening = { - desc = { - first_valid = { - triggered_desc = { - trigger = { exists = scope:fp2_2009_has_gifted_head } - desc = fp2_struggle.2012.t.alt - } - desc = fp2_struggle.2012.t - } - } - } - desc = { - first_valid = { - triggered_desc = { - trigger = { exists = scope:fp2_2009_has_gifted_head } - desc = fp2_struggle.2012.desc.alt - } - desc = fp2_struggle.2012.desc - } - } - - immediate = { - # Logic for deciding who is the author of the letter - if = { - limit = { exists = scope:fp2_2009_has_gifted_head } # If the event is the alt version where you gift the head - scope:fp2_2009_has_gifted_head = { save_scope_as = fp2_2012_sender } - } - else_if = { - limit = { exists = cp:councillor_spymaster } # Else cycle through possible chancellors - cp:councillor_spymaster = { save_scope_as = fp2_2012_sender } - } - else_if = { - limit = { exists = cp:councillor_marshal } - cp:councillor_marshal = { save_scope_as = fp2_2012_sender } - } - else_if = { - limit = { exists = cp:councillor_court_chaplain } - cp:councillor_court_chaplain = { save_scope_as = fp2_2012_sender } - } - else = { root = { save_scope_as = fp2_2012_sender } } # If all fails, you wrote the report yourself, about yourself, for yourself. - } - - option = { - name = fp2_struggle.2012.a - trigger = { NOT = { exists = scope:fp2_2009_has_gifted_head } } - - show_as_tooltip = { scope:fp2_2009_involved_capital_county = { add_thieves_guild_modifier_effect = yes } } # Has already happened, only to display info - } - - option = { - name = fp2_struggle.2012.a.alt - trigger = { exists = scope:fp2_2009_has_gifted_head } - - scope:fp2_2009_involved_capital_county = { change_county_control = 10 } - } -} - -################################### -# The Secret to Freedom -# By Hugo Cortell -################################### -fp2_struggle.2013 = { - type = character_event - title = fp2_struggle.2013.t - desc = fp2_struggle.2013.desc - theme = secret - cooldown = { years = 2 } - override_background = { - trigger = { scope:fp2_2013_prisoner_with_a_secret = { is_in_prison_type = house_arrest } } - reference = sitting_room - } - override_background = { - trigger = { always = yes } - reference = dungeon - } - left_portrait = { - character = root - animation = scheme - } - right_portrait = { - character = scope:fp2_2013_prisoner_with_a_secret - triggered_animation = { - trigger = { scope:fp2_2013_prisoner_with_a_secret = { is_in_prison_type = house_arrest } } - animation = beg - } - animation = prisondungeon - override_imprisonment_visuals = yes - } - - trigger = { - has_fp2_dlc_trigger = yes - any_prisoner = { - save_temporary_scope_as = temp_prisoner_with_secret # Prevents prisoner from revealing their own secret, which would be cool, but would require new loc - any_known_secret = { - secret_owner = { - this != scope:temp_prisoner_with_secret - top_liege = this - fp2_character_any_involvement_iberian_struggle_trigger = yes - } - NOT = { is_known_by = root } - } - } - } - - immediate = { - random_prisoner = { - limit = { - save_temporary_scope_as = temp_prisoner_with_secret - any_known_secret = { - secret_owner = { - this != scope:temp_prisoner_with_secret - top_liege = this - fp2_character_any_involvement_iberian_struggle_trigger = yes - } - NOT = { is_known_by = root } - } - } - save_scope_as = fp2_2013_prisoner_with_a_secret - every_known_secret = { - limit = { - secret_owner = { - this != scope:fp2_2013_prisoner_with_a_secret - top_liege = this - } - NOT = { is_known_by = root } - } - secret_owner = { save_scope_as = fp2_2013_secret_owner } - save_scope_as = fp2_2013_secret_to_tell - } - - stress_impact = { - brave = medium_stress_impact_gain - gallant = medium_stress_impact_gain - confider = major_stress_impact_gain - } - } - } - - option = { # Agree - name = fp2_struggle.2013.a - - show_as_tooltip = { - custom_tooltip = fp2_struggle.2013.a.a - scope:fp2_2013_prisoner_with_a_secret = { release_from_prison = yes } - } - hidden_effect = { - send_interface_toast = { - type = event_toast_effect_good - title = witch.2010.message - left_icon = ROOT - right_icon = scope:fp2_2013_secret_owner - - scope:fp2_2013_secret_to_tell = { reveal_to = root } - scope:fp2_2013_prisoner_with_a_secret = { release_from_prison = yes } - } - } - - ai_chance = { - base = 15 - ai_value_modifier = { - ai_boldness = -0.1 - ai_compassion = 0.2 - ai_honor = 0.1 - ai_rationality = 0.4 - ai_sociability = 0.1 - ai_vengefulness = 0.1 - } - } - } - - option = { # Torture - name = fp2_struggle.2013.b - - add_dread = minor_dread_gain - duel = { - skill = intrigue - value = medium_skill_rating - - 40 = { # Success - modifier = { - add = intrigue # Your intrigue level should make up for most of the 10 missing points to make this a 50 50 - always = yes - } - modifier = { - add = 15 # Enjoy your job and it wont feel like work! - has_trait = sadistic - } - modifier = { - add = 35 - has_trait = torturer - } - modifier = { - add = 5 # Iberia is home to many plants you should not rub against your skin, great for tickle-torture :D - has_trait = lifestyle_herbalist - } - modifier = { - add = 5 - scope:fp2_2013_prisoner_with_a_secret = { has_trait = lazy } - } - modifier = { - add = 15 # Quickly changes their mind about wanting to resist torture - scope:fp2_2013_prisoner_with_a_secret = { has_trait = fickle } - } - - custom_tooltip = fp2_struggle.2013.a.a - hidden_effect = { - send_interface_toast = { - type = event_toast_effect_good - title = witch.2010.message - left_icon = ROOT - right_icon = scope:fp2_2013_secret_owner - - scope:fp2_2013_secret_to_tell = { reveal_to = root } - } - } - } - 60 = { # You fail - desc = fp2_struggle.2013.b.b - modifier = { - add = scope:fp2_2013_prisoner_with_a_secret.prowess # This is a battle of your skill in torture (intrigue) against the will of your oponent (prowess, usually lower) - always = yes - } - modifier = { - add = 5 - scope:fp2_2013_prisoner_with_a_secret = { has_trait = brave } - } - modifier = { - add = 5 # Being stubborn is as much a blessing as it is a curse, in this case, it is the former - scope:fp2_2013_prisoner_with_a_secret = { has_trait = stubborn } - } - modifier = { - add = 5 - scope:fp2_2013_prisoner_with_a_secret = { has_trait = diligent } - } - modifier = { - add = 5 # They know nothing good can come from revealing information, what will the bargain with otherwise? - scope:fp2_2013_prisoner_with_a_secret = { has_trait = paranoid } - } - modifier = { - add = 2 # Maybe god is still on your side? Maybe it is a test? - scope:fp2_2013_prisoner_with_a_secret = { has_trait = zealous } - } - modifier = { - add = 2 - scope:fp2_2013_prisoner_with_a_secret = { has_trait = callous } - } - modifier = { - add = 15 # I imagine this is sort of a lalatina moment - scope:fp2_2013_prisoner_with_a_secret = { has_trait = flagellant } - } - modifier = { - add = 10 # They are used to not revealing info under preassure, though torture is a bit more than they are used to... - scope:fp2_2013_prisoner_with_a_secret = { has_trait = confider } - } - - send_interface_toast = { - type = event_toast_effect_bad - title = ease_tension_toast.failure - left_icon = ROOT - right_icon = scope:fp2_2013_prisoner_with_a_secret - } - } - } - reverse_add_opinion = { - target = scope:fp2_2013_prisoner_with_a_secret - modifier = tortured_me - opinion = -60 # 15 point reduction because there was a weak justification - years = 30 - } - scope:fp2_2013_prisoner_with_a_secret = { - add_character_modifier = { - modifier = recently_tortured - years = 5 - } - } - - stress_impact = { - compassionate = major_stress_impact_gain - just = medium_stress_impact_gain - forgiving = medium_stress_impact_gain - } - ai_chance = { - base = 15 - modifier = { - add = 25 - has_trait = torturer - } - modifier = { - add = 15 - has_trait = sadistic - } - ai_value_modifier = { - ai_boldness = 0.8 - ai_compassion = -0.5 - ai_greed = 0.6 - ai_honor = -0.9 - ai_vengefulness = 0.2 - } - } - } - - option = { # Send as gift - name = fp2_struggle.2013.c - flavor = fp2_struggle.2013.c.desc - trigger = { scope:fp2_2013_secret_owner = { is_ai = yes } } - - custom_tooltip = fp2_struggle.2013.c.a - scope:fp2_2013_prisoner_with_a_secret = { release_from_prison = yes } - trigger_event = { - id = fp2_struggle.2014 - days = { 1 4 } - } - - ai_chance = { - base = 5 - ai_value_modifier = { - ai_boldness = -0.1 - ai_compassion = 0.2 - ai_greed = -0.5 - ai_energy = -0.1 - ai_honor = 0.3 - ai_sociability = 0.3 - ai_vengefulness = -0.2 - ai_zeal = -0.1 - } - } - } - - option = { # Dismiss - name = fp2_struggle.2013.d - - random = { - chance = 5 - modifier = { - add = 10 - has_trait = depressed - } - modifier = { - add = 5 - health < fine_health - } - show_as_tooltip = { custom_tooltip = fp2_struggle.2013.a.a } - hidden_effect = { - if = { - limit = { is_ai = no } - send_interface_toast = { - type = event_toast_effect_good - title = witch.2010.message - left_icon = ROOT - right_icon = scope:fp2_2013_secret_owner - - scope:fp2_2013_secret_to_tell = { reveal_to = root } - } - } - } - } - - ai_chance = { - base = 65 - ai_value_modifier = { - ai_boldness = -0.2 - ai_greed = -0.15 - ai_energy = -0.1 - ai_honor = 0.6 - ai_sociability = 0.1 - ai_vengefulness = -0.1 - } - } - } -} - -fp2_struggle.2014 = { - type = letter_event - sender = scope:fp2_2013_secret_owner - opening = fp2_struggle.2014.t - desc = { - desc = fp2_struggle.2014.desc.start - first_valid = { - triggered_desc = { - trigger = { scope:fp2_2014_ai_secret_outcome = flag:prison } - desc = fp2_struggle.2014.desc.heavy.outcome.prison - } - triggered_desc = { - trigger = { scope:fp2_2014_ai_secret_outcome = flag:death } - desc = fp2_struggle.2014.desc.heavy.outcome.death - } - desc = fp2_struggle.2014.desc.light - } - } - - trigger = { - scope:fp2_2013_secret_owner = { is_available_ai_adult = yes } - scope:fp2_2013_prisoner_with_a_secret = { is_available_ai_adult = yes } - } - - on_trigger_fail = { - if = { - limit = { # Fallback - foreign ruler has died! - NOT = { - scope:fp2_2013_secret_owner = { - is_alive = yes - is_available_ai_adult = yes - } - } - } - send_interface_toast = { - type = event_death_neutral - desc = death_management.1007.t - left_icon = scope:fp2_2013_secret_owner - } - } - if = { - limit = { # Fallback - prisoner has died! - NOT = { scope:fp2_2013_prisoner_with_a_secret = { is_alive = yes } } - } - send_interface_toast = { - scope:fp2_2013_prisoner_with_a_secret = { save_temporary_scope_as = dead_character } - type = event_death_neutral - desc = death_management.1006.desc - left_icon = scope:fp2_2013_prisoner_with_a_secret - } - } - } - - immediate = { # LOGIC FOR AI RESPONSE - save_scope_value_as = { # Calculate how "strong" a secret is - name = fp2_2014_secret_strength - value = { - value = 0 - if = { - limit = { scope:fp2_2013_secret_to_tell = { is_criminal_for = scope:fp2_2013_secret_owner } } - add = 10 - } - if = { - limit = { scope:fp2_2013_secret_to_tell = { is_shunned_for = scope:fp2_2013_secret_owner } } - add = 5 - } - if = { - limit = { scope:fp2_2013_secret_to_tell = { secret_is_always_interesting_trigger = yes } } - add = 5 - } - } - } - if = { # IS THIS SECRET A THREAT TO ME? - limit = { scope:fp2_2014_secret_strength >= 10 } - scope:fp2_2013_secret_owner = { - hidden_effect = { - add_opinion = { - target = scope:fp2_2013_prisoner_with_a_secret - modifier = betrayed_me_opinion - opinion = -50 - } - } - add_opinion = { - target = root - modifier = did_not_tell_my_secret - opinion = 45 - } - progress_towards_friend_effect = { - REASON = friend_kept_my_secret - CHARACTER = root - OPINION = 0 - } - if = { - limit = { - has_dlc_feature = court_artifacts - any_character_artifact = { - NOT = { has_variable = historical_unique_artifact } - artifact_high_rarity_trigger = yes - artifact_can_be_gift_to_trigger = { RECIPIENT = root } - } - } - random_character_artifact = { - limit = { - NOT = { has_variable = historical_unique_artifact } - artifact_high_rarity_trigger = yes - artifact_can_be_gift_to_trigger = { RECIPIENT = root } - } - set_owner = root # If it breaks, use set_artifact_owner - } - } - - save_opinion_value_as = { - name = fp2_2014_opinion_of_swine - target = scope:fp2_2013_prisoner_with_a_secret - } - } - if = { # YES, AND I MUST HIDE IT (prison outcome) - limit = { - scope:fp2_2013_secret_owner = { - NAND = { - has_trait = paranoid - ai_compassion < 30 - } - } - } - save_scope_value_as = { - name = fp2_2014_ai_secret_outcome - value = flag:prison - } - scope:fp2_2013_secret_owner = { - rightfully_imprison_character_effect = { - TARGET = scope:fp2_2013_prisoner_with_a_secret - IMPRISONER = scope:fp2_2013_secret_owner - } - } - } - else = { # YES, AND I WILL TAKE NO CHANCES (execution outcome) - save_scope_value_as = { - name = fp2_2014_ai_secret_outcome - value = flag:death - } - - scope:fp2_2013_prisoner_with_a_secret = { - death = { - death_reason = death_torture - killer = scope:fp2_2013_secret_owner - } - } - } - } - else = { # NO, ACTUALLY THIS IS NOT A BIG DEAL (release outcome) - scope:fp2_2013_secret_owner = { - hidden_effect = { - add_opinion = { - target = scope:fp2_2013_prisoner_with_a_secret - modifier = betrayed_me_opinion - opinion = -25 - } - } - add_opinion = { - target = root - modifier = did_not_tell_my_secret - opinion = 25 - } - if = { - limit = { - has_dlc_feature = court_artifacts - any_character_artifact = { - NOT = { has_variable = historical_unique_artifact } - artifact_low_rarity_trigger = yes - artifact_can_be_gift_to_trigger = { RECIPIENT = root } - } - } - random_character_artifact = { - limit = { - NOT = { has_variable = historical_unique_artifact } - artifact_low_rarity_trigger = yes - artifact_can_be_gift_to_trigger = { RECIPIENT = root } - } - set_owner = root - } - } - else = { - progress_towards_friend_effect = { - REASON = friend_protected_secrets - CHARACTER = root - OPINION = 0 - } - } - } - save_scope_value_as = { - name = fp2_2014_ai_secret_outcome - value = flag:release - } - } - } - - option = { - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { NOT = { scope:fp2_2014_ai_secret_outcome = flag:release } } - desc = south_asia.0039.a - } - desc = fp2_struggle.2014.b - } - } - } - } -} - -################################### -# Letter on The Back -# By Hugo Cortell -################################### -# (a post-it saying kick me) -################################### -scripted_trigger fp2_struggle_2015_vassal_check_trigger = { - is_available_ai_adult = yes - exists = location # Under no circumstance should it be necessary to need to check this - NOT = { has_trait = compassionate } -} - -fp2_struggle.2015 = { - type = character_event - title = fp2_struggle.2015.t - desc = fp2_struggle.2015.desc - cooldown = { years = 25 } - - theme = murder_scheme - override_background = { reference = council_chamber } - left_portrait = { - character = root - animation = chancellor - } - right_portrait = { - character = scope:fp2_struggle_2015_peasant_to_murder - animation = personality_forgiving - } - lower_right_portrait = scope:fp2_struggle_2015_murder_requester_vassal - - trigger = { - is_ai = no # Murder schemes are heavy for performance - has_fp2_dlc_trigger = yes - root.top_liege = root - - any_powerful_vassal = { - fp2_struggle_2015_vassal_check_trigger = yes - opinion = { # Redundant second time around - target = root - value < 30 - } - } - } - - immediate = { - random_vassal = { # From joe - limit = { - is_powerful_vassal = yes - fp2_struggle_2015_vassal_check_trigger = yes - opinion = { - target = root - value < 30 - } - } - save_opinion_value_as = { - name = liege_opinion - target = root - } - - save_scope_as = fp2_struggle_2015_murder_requester_vassal # Makes sure that one exists, even if [ThreadIndex != UINT32_MAX] causes the loop to skip a beat - } - while = { - limit = { - any_powerful_vassal = { - fp2_struggle_2015_vassal_check_trigger = yes - opinion = { - target = root - value < scope:liege_opinion - } - } - } - random_vassal = { - limit = { - is_powerful_vassal = yes - fp2_struggle_2015_vassal_check_trigger = yes - opinion = { - target = root - value < scope:liege_opinion - } - } - save_opinion_value_as = { - name = liege_opinion - target = root - } - save_scope_as = fp2_struggle_2015_murder_requester_vassal - } - } - - create_character = { - location = scope:fp2_struggle_2015_murder_requester_vassal.location - template = generic_peasant_character - diplomacy = { 8 13 } # High stat - trait = trusting - random_traits = yes - faith = scope:fp2_struggle_2015_murder_requester_vassal.location.county.faith - culture = scope:fp2_struggle_2015_murder_requester_vassal.location.county.culture - save_scope_as = fp2_struggle_2015_peasant_to_murder - } - - hidden_effect = { - scope:fp2_struggle_2015_peasant_to_murder = { - reverse_add_opinion = { - target = scope:fp2_struggle_2015_murder_requester_vassal - modifier = annoyed_opinion - opinion = -100 - } - } - - add_courtier = scope:fp2_struggle_2015_peasant_to_murder - } - } - - option = { # Comply and kill the unsuspecting courtier - name = fp2_struggle.2015.a - - trigger = { is_ai = no } - duel = { - skill = intrigue - value = average_skill_rating - - 10 = { - desc = fp2_struggle.2015.a.a - compare_modifier = { - value = scope:duel_value - multiplier = -1.25 - } - - send_interface_toast = { - type = event_intrigue_bad - title = murder_outcome.2302.t - left_icon = scope:fp2_struggle_2015_peasant_to_murder - - reverse_add_opinion = { - target = scope:fp2_struggle_2015_murder_requester_vassal - modifier = disappointed_opinion - opinion = -15 - } - - remove_courtier_or_guest = scope:fp2_struggle_2015_peasant_to_murder - custom_tooltip = fp2_struggle.2015.a.murder_scheme - hidden_effect = { - scope:fp2_struggle_2015_murder_requester_vassal = { - start_scheme = { - type = murder - target_character = scope:fp2_struggle_2015_peasant_to_murder - } - } - } - } - reverse_add_opinion = { - target = scope:fp2_struggle_2015_peasant_to_murder - modifier = suspicion_opinion - opinion = -20 - } - - } - 10 = { - compare_modifier = { - value = scope:duel_value - multiplier = 1.25 - } - - modifier = { - add = { - value = intrigue - multiply = 2 - round = yes - } - always = yes - } - modifier = { - add = 35 - has_trait = lifestyle_herbalist - } - modifier = { - add = 5 - has_trait = drunkard # You know how to disguise drinks - } - modifier = { - add = 15 - has_perk = swift_execution_perk - } - modifier = { - add = 10 # They add up - has_perk = a_job_done_right_perk - } - - send_interface_toast = { - type = event_intrigue_good - title = fp2_struggle.2015.a.b - left_icon = scope:fp2_struggle_2015_murder_requester_vassal - - scope:fp2_struggle_2015_peasant_to_murder = { - death = { - killer = ROOT - death_reason = death_poison - } - } - reverse_add_opinion = { - target = scope:fp2_struggle_2015_murder_requester_vassal - modifier = helped_me_in_time_of_need - opinion = 40 - } - } - add_secret = { - type = secret_murder - target = scope:fp2_struggle_2015_peasant_to_murder - } - random_secret = { - type = secret_murder - limit = { - secret_target = scope:fp2_struggle_2015_peasant_to_murder - } - save_scope_as = fp2_2015_murder_secret - } - - if = { # AHA! YOU FOOL! I TRICKED YOU INTO COMMITING A CRIME! - limit = { - scope:fp2_struggle_2015_murder_requester_vassal = { - OR = { - has_relation_rival = ROOT - has_secret_relation_rival = ROOT # ??? - has_relation_nemesis = ROOT - - AND = { - has_dread_level_towards = { - target = ROOT - level <= 1 - } - OR = { - AND = { - has_trait = deceitful - opinion = { - target = root - value < -25 - } - } - AND = { - ai_boldness > 9 - ai_compassion < 1 - ai_honor < -29 - ai_vengefulness > -1 - } - } - } - } - } - } - - trigger_event = { # Usually I would use a notification but... - id = fp2_struggle.2016 # The narrative impact of a full letter is greater, it makes sure the betrayal stings. This vassal wrote just to rub salt in your eyes. - days = { 3 4 } - } - } - } - } - - stress_impact = { - compassionate = medium_stress_impact_gain - gallant = minor_stress_impact_gain - } - } - - option = { # Ignore the letter - name = fp2_struggle.2015.b - - trigger = { is_ai = no } - send_interface_toast = { - type = event_toast_effect_good - title = murder_outcome.4302.t - left_icon = scope:fp2_struggle_2015_murder_requester_vassal - right_icon = scope:fp2_struggle_2015_peasant_to_murder - - show_as_tooltip = { add_courtier = scope:fp2_struggle_2015_peasant_to_murder } - reverse_add_opinion = { - target = scope:fp2_struggle_2015_murder_requester_vassal - modifier = broke_promise - } - } - - custom_tooltip = fp2_struggle.2015.a.murder_scheme - hidden_effect = { - scope:fp2_struggle_2015_murder_requester_vassal = { - start_scheme = { - type = murder - target_character = scope:fp2_struggle_2015_peasant_to_murder - } - } - } - } - - option = { # Warn the courtier about this (vassal may find out) - name = fp2_struggle.2015.c - - random_list = { - 75 = { - desc = fp2_struggle.2015.c.b - - send_interface_toast = { - type = event_intrigue_good - title = fp2_struggle.2015.c.b - left_icon = scope:fp2_struggle_2015_peasant_to_murder - right_icon = scope:fp2_struggle_2015_murder_requester_vassal - - scope:fp2_struggle_2015_peasant_to_murder = { silent_disappearance_effect = yes } - reverse_add_opinion = { - target = scope:fp2_struggle_2015_murder_requester_vassal - modifier = helped_me_in_time_of_need - opinion = 25 # -15 points for suspicion (where is the body?) - } - } - } - 25 = { - desc = fp2_struggle.2015.c.a - send_interface_toast = { - type = event_intrigue_bad - title = fp2_struggle.2015.c.a - left_icon = scope:fp2_struggle_2015_peasant_to_murder - right_icon = scope:fp2_struggle_2015_murder_requester_vassal - - scope:fp2_struggle_2015_peasant_to_murder = { death = { death_reason = death_mysterious } } - reverse_add_opinion = { - target = scope:fp2_struggle_2015_murder_requester_vassal - modifier = broke_promise - } - - stress_impact = { - forgiving = minor_stress_impact_gain - humble = minor_stress_impact_gain - just = minor_stress_impact_gain - compassionate = minor_stress_impact_gain - trusting = minor_stress_impact_gain - gallant = minor_stress_impact_gain - } - } - } - } - } -} - -fp2_struggle.2016 = { - type = letter_event - sender = scope:fp2_struggle_2015_murder_requester_vassal - opening = fp2_struggle.2016.t - desc = fp2_struggle.2016.desc - - option = { # Tricked, backstabbed and quite possibly, out-smarted by your cunning vassal/rival - name = fp2_struggle.2016.a - - hidden_effect = { scope:fp2_2015_murder_secret = { reveal_to = scope:fp2_struggle_2015_murder_requester_vassal } } - scope:fp2_struggle_2015_murder_requester_vassal = { - blackmail_target_with_secret_effect = { - SECRET = scope:fp2_2015_murder_secret - TARGET = ROOT - } - } - progress_towards_rival_effect = { - CHARACTER = scope:fp2_struggle_2015_murder_requester_vassal - REASON = rival_tricked_murder - OPINION = default_rival_opinion - } - add_opinion = { - target = scope:fp2_struggle_2015_murder_requester_vassal - modifier = betrayed_me_opinion - opinion = -60 - } - } -} - -################################### -# RETURN OF THE THIEF KING -# By Hugo Cortell -################################### -# Directors liked the original very much +#fp2_struggle.0501 = { # Fullscreen Intro Event +# type = character_event +# window = fullscreen_event +# title = fp2_struggle.0501.t +# desc = { +# desc = fp2_struggle.0501.desc +# first_valid = { +# triggered_desc = { +# trigger = { +# any_character_struggle = { +# involvement = involved +# is_struggle_type = iberian_struggle +# } +# } +# desc = fp2_struggle.0501.desc.involved +# } +# triggered_desc = { +# trigger = { +# any_character_struggle = { +# involvement = interloper +# is_struggle_type = iberian_struggle +# } +# } +# desc = fp2_struggle.0501.desc.interloper +# } +# } +# } +# theme = realm +# trigger = { # we need to prevent this from firing for all players when a new player joins in MP +# is_ai = no +# NOT = { has_character_flag = fp2_struggle_intro_event_flag } +# fp2_character_any_involvement_iberian_struggle_trigger = yes +# } +# override_background = { reference = fp2_fullscreen_intro } +# override_sound = { reference = "event:/DLC/FP2/SFX/UI/fp2_struggle_ui_intro_animate" } +# +# cooldown = { years = 100 } +# +# widgets = { +# widget = { +# gui = "event_window_widget_struggle_info" +# container = "dynamic_content_widget" +# controller = struggle_info +# setup_scope = { struggle:iberian_struggle = { save_scope_as = struggle } } +# } +# } +# immediate = { +# play_music_cue = "mx_Struggle_Opening" +# add_character_flag = fp2_struggle_intro_event_flag +# save_scope_value_as = { +# name = start +# value = yes +# } +# } +# option = { +# name = fp2_struggle.0501.a +# clicksound = "event:/DLC/FP2/SFX/UI/fp2_struggle_start_select" +# } +#} +# +#################################### +## Struggle Endings +## by Joe Parkin +## 0900-0912 +#################################### +#fp2_struggle.0900 = { # Hostility +# type = character_event +# window = fullscreen_event +# title = fp2_struggle.0900.t +# desc = { +# first_valid = { +# triggered_desc = { +# trigger = { +# culture = { +# OR = { +# this = culture:basque +# any_parent_culture = { this = culture:basque } +# has_cultural_pillar = language_basque +# } +# } +# } +# desc = fp2_struggle.0900.opening.basque +# } +# triggered_desc = { +# trigger = { +# culture = { +# OR = { +# this = culture:andalusian +# any_parent_culture = { this = culture:andalusian } +# has_cultural_pillar = language_arabic +# } +# } +# } +# desc = fp2_struggle.0900.opening.andalusian +# } +# triggered_desc = { +# trigger = { +# culture = { has_cultural_pillar = heritage_iberian } +# } +# desc = fp2_struggle.0900.opening.iberian +# } +# desc = fp2_struggle.0900.opening +# } +# desc = fp2_struggle.0900.desc +# } +# theme = court +# override_background = { reference = fp2_fullscreen_hostility } +# override_sound = { reference = "event:/DLC/FP2/SFX/UI/fp2_struggle_ui_intro_end_animate" } +# +# immediate = { +# # Add all involved rulers to a list, for ping event +# play_music_cue = "mx_Struggle_ending_hostility" +# fp2_struggle_ending_involved_list_effect = yes +# give_nickname = nick_the_conquistador +# dynasty = { add_dynasty_prestige = 10000 } +# } +# +# # Faith victory +# option = { +# name = fp2_struggle.0900.a +# if = { +# limit = { exists = house } +# house = { +# add_house_modifier = { +# modifier = fp2_struggle_hostility_house_faith_modifier +# } +# } +# } +# # Piety reward for faith victory +# add_piety = 1000 +# custom_description_no_bullet = { text = fp2_struggle_house_tt } +# custom_tooltip = fp2_struggle_hostility_holy_cb_tt +# custom_tooltip = fp2_struggle_hostility_conversion_holy_tt +# stress_impact = { +# cynical = medium_stress_impact_gain +# } +# ai_chance = { +# base = 100 +# ai_value_modifier = { +# ai_zeal = 1 +# } +# } +# } +# +# # Culture victory +# option = { +# name = fp2_struggle.0900.b +# # Renown reward for culture victory +# if = { +# limit = { exists = house } +# dynasty = { add_dynasty_prestige = 1000 } +# house = { +# add_house_modifier = { +# modifier = fp2_struggle_hostility_house_culture_modifier +# } +# } +# } +# custom_description_no_bullet = { text = fp2_struggle_house_tt } +# custom_tooltip = fp2_struggle_hostility_culture_cb_tt +# custom_tooltip = fp2_struggle_hostility_conversion_culture_tt +# # All Involved cultures lose acceptance of each other +# custom_tooltip = { +# text = fp2_struggle_hostility_culture_tt +# fp2_struggle_hostility_cultural_acceptance_effect = yes +# } +# stress_impact = { +# humble = medium_stress_impact_gain +# } +# ai_chance = { +# base = 100 +# } +# } +# +# # Combined victory +# option = { +# name = fp2_struggle.0900.c +# # Reduced renown and piety rewards for combined +# if = { +# limit = { exists = house } +# house = { +# add_house_modifier = { +# modifier = fp2_struggle_hostility_house_combined_modifier +# years = 200 +# } +# } +# } +# add_prestige = 3000 +# custom_description_no_bullet = { text = fp2_struggle_house_tt } +# custom_tooltip = fp2_struggle_hostility_holy_cb_tt +# custom_tooltip = culture_parameter_cb_lower_piety_level_requirement +# custom_tooltip = fp2_struggle_hostility_culture_cb_tt +# custom_tooltip = fp2_struggle_hostility_conversion_holy_tt +# custom_tooltip = fp2_struggle_hostility_conversion_culture_tt +# # All Involved cultures lose acceptance of each other +# custom_tooltip = { +# text = fp2_struggle_hostility_culture_large_tt +# fp2_struggle_hostility_cultural_acceptance_large_effect = yes +# } +# stress_impact = { +# humble = medium_stress_impact_gain +# cynical = medium_stress_impact_gain +# } +# ai_chance = { +# base = 100 +# ai_value_modifier = { +# ai_zeal = 2 +# ai_boldness = 1 +# } +# } +# } +# +# after = { +# # Notify & End Struggle +# save_scope_as = fp2_loc_struggle_ender # Loc used to use root, this fixes it +# every_player = { +# limit = { fp2_does_this_player_care_about_the_fate_of_iberia = yes } # Needs to be checked before the struggle ends due to race condition issues +# add_to_list = player_to_notify # Making a list so stuff is tiggered after the struggle ends, to make extra sure I don't break anything. +# } +# +# struggle:iberian_struggle = { end_struggle = struggle_iberia_ending_hostility_decision } +# every_in_list = { # Then we *actually* notify palyers, making sure the struggle has already ended +# list = player_to_notify +# trigger_event = fp2_struggle.0910 +# } +# } +#} +# +#fp2_struggle.0910 = { +# type = character_event +# window = fullscreen_event +# title = fp2_struggle.0900.t +# desc = { +# first_valid = { +# triggered_desc = { +# trigger = { is_in_list = struggle_involvees } +# desc = fp2_struggle.0910.opening.involved +# } +# desc = fp2_struggle.0910.opening +# } +# desc = fp2_struggle.0910.desc +# first_valid = { +# triggered_desc = { +# trigger = { +# scope:struggle_ender.house = { has_house_modifier = fp2_struggle_hostility_house_faith_modifier } +# } +# desc = fp2_struggle.0910.closing.faith +# } +# triggered_desc = { +# trigger = { +# scope:struggle_ender.house = { has_house_modifier = fp2_struggle_hostility_house_culture_modifier } +# } +# desc = fp2_struggle.0910.closing.culture +# } +# desc = fp2_struggle.0910.closing.combined +# } +# } +# theme = court +# override_background = { reference = fp2_fullscreen_hostility } +# override_sound = { reference = "event:/DLC/FP2/SFX/UI/fp2_struggle_ui_intro_end_animate" } +# +# immediate = { +# play_music_cue = "mx_Struggle_ending_hostility" +# ##### Major Effects ##### +# show_as_tooltip = { +# scope:struggle_ender = { +# #dynasty = { add_dynasty_prestige = 10000 } +# fp2_struggle_hostility_ender_effect = yes +# } +# } +# # Hispania is available! +# custom_tooltip = fp2_struggle_can_create_empire_of_hispania_tt +# # Choose Holy War boost, Culture War boost, or both +# scope:struggle_ender.house = { +# switch = { +# trigger = has_house_modifier +# fp2_struggle_hostility_house_faith_modifier = { +# show_as_tooltip = { add_house_modifier = fp2_struggle_hostility_house_faith_modifier } +# custom_description_no_bullet = { text = fp2_struggle_house_tt } +# custom_tooltip = fp2_struggle_hostility_holy_cb_tt +# } +# fp2_struggle_hostility_house_culture_modifier = { +# show_as_tooltip = { add_house_modifier = fp2_struggle_hostility_house_culture_modifier } +# custom_description_no_bullet = { text = fp2_struggle_house_tt } +# custom_tooltip = fp2_struggle_hostility_culture_cb_tt +# custom_tooltip = fp2_struggle_hostility_culture_tt +# } +# fp2_struggle_hostility_house_combined_modifier = { +# show_as_tooltip = { add_house_modifier = fp2_struggle_hostility_house_combined_modifier } +# custom_description_no_bullet = { text = fp2_struggle_house_tt } +# custom_tooltip = fp2_struggle_hostility_holy_cb_tt +# custom_tooltip = fp2_struggle_hostility_culture_cb_tt +# custom_tooltip = fp2_struggle_hostility_culture_large_tt +# } +# } +# } +# } +# +# # Ok +# option = { +# name = { +# text = fp2_struggle.0910.a +# trigger = { is_in_list = struggle_involvees } +# } +# name = { +# text = fp2_struggle.0910.b +# trigger = { +# NOT = { is_in_list = struggle_involvees } +# } +# } +# } +#} +# +#fp2_struggle.0901 = { # Compromise +# type = character_event +# window = fullscreen_event +# title = fp2_struggle.0901.t +# desc = { +# first_valid = { +# triggered_desc = { +# trigger = { +# culture = { +# OR = { +# this = culture:basque +# any_parent_culture = { this = culture:basque } +# has_cultural_pillar = language_basque +# } +# } +# } +# desc = fp2_struggle.0900.opening.basque +# } +# triggered_desc = { +# trigger = { +# culture = { +# OR = { +# this = culture:andalusian +# any_parent_culture = { this = culture:andalusian } +# has_cultural_pillar = language_arabic +# } +# } +# } +# desc = fp2_struggle.0900.opening.andalusian +# } +# triggered_desc = { +# trigger = { +# culture = { has_cultural_pillar = heritage_iberian } +# } +# desc = fp2_struggle.0900.opening.iberian +# } +# desc = fp2_struggle.0900.opening +# } +# desc = fp2_struggle.0901.desc +# } +# theme = court +# override_background = { reference = fp2_fullscreen_compromise } +# override_sound = { reference = "event:/DLC/FP2/SFX/UI/fp2_struggle_ui_intro_end_animate" } +# +# immediate = { +# play_music_cue = "mx_Struggle_ending_compromise" +# # Independent/Split De Jure Duchies will become De Jure Kingdoms +# if = { +# limit = { +# title:e_spain = { +# any_in_de_jure_hierarchy = { fp2_struggle_ending_compromise_independent_duchy_trigger = yes } +# } +# } +# custom_tooltip = { +# text = fp2_struggle_compromise_create_new_kingdoms_tt +# fp2_struggle_compromise_duchies_to_kingdoms_effect = yes +# } +# } +# # Move duchies to right kingdoms +# fp2_struggle_compromise_transfer_duchies_effect = yes +# # Turn kingdoms to empires +# fp2_struggle_compromise_kingdoms_to_empires_effect = yes +# # distribute small kingdoms +# fp2_struggle_compromise_distribute_kingdoms_to_neighbouring_empires_effect = yes +# # assign the new title to existing characters +# fp2_struggle_compromise_distribute_the_actual_titles = yes +# +# # Set up truces +# fp2_struggle_compromise_truce_effect = yes +# +# ##### Major Effects ##### +# fp2_struggle_compromise_ender_effect = yes +# +# # Tooltips! +# fp2_struggle_compromise_tooltip_effect = yes +# +# ##### Minor Effects ##### +# # Self-sufficiency modifiers for each independent realm +# fp2_struggle_compromise_modifier_rewards_effect = yes +# set_global_variable = { +# name = fp2_struggle_compromise_ending +# value = yes +# } +# # Add all involved rulers to a list, for ping event +# fp2_struggle_ending_involved_list_effect = yes +# } +# +# # Ok +# option = { +# name = fp2_struggle.0901.a +# if = { +# limit = { +# any_in_list = { +# list = kingdom_empire +# this = root.primary_title +# } +# } +# custom_tooltip = fp2_struggle.0901.tt +# } +# } +# +# after = { +# stress_impact = { +# arrogant = medium_stress_impact_gain +# } +# +# # Notify & End Struggle +# save_scope_as = fp2_loc_struggle_ender # Loc used to use root, this fixes it +# every_player = { +# limit = { fp2_does_this_player_care_about_the_fate_of_iberia = yes } # Needs to be checked before the struggle ends due to race condition issues +# add_to_list = player_to_notify # Making a list so stuff is tiggered after the struggle ends, to make extra sure I don't break anything. +# } +# +# struggle:iberian_struggle = { end_struggle = struggle_iberia_ending_compromise_decision } +# every_in_list = { # Then we *actually* notify palyers, making sure the struggle has already ended +# list = player_to_notify +# trigger_event = fp2_struggle.0911 +# } +# } +#} +# +#fp2_struggle.0911 = { +# type = character_event +# window = fullscreen_event +# title = fp2_struggle.0901.t +# desc = { +# first_valid = { +# triggered_desc = { +# trigger = { is_in_list = struggle_involvees } +# desc = fp2_struggle.0910.opening.involved +# } +# desc = fp2_struggle.0910.opening +# } +# desc = fp2_struggle.0911.desc +# } +# theme = court +# override_background = { reference = fp2_fullscreen_compromise } +# override_sound = { reference = "event:/DLC/FP2/SFX/UI/fp2_struggle_ui_intro_end_animate" } +# +# immediate = { +# play_music_cue = "mx_Struggle_ending_compromise" +# ##### Major Effects ##### +# show_as_tooltip = { +# scope:struggle_ender = { fp2_struggle_compromise_ender_effect = yes } +# } +# # Independent/Split De Jure Duchies will become De Jure Kingdoms +# custom_tooltip = fp2_struggle_compromise_create_new_kingdoms_tt +# # RIP Hispania +# fp2_struggle_compromise_tooltip_effect = yes +# +# ##### Minor Effects ##### +# if = { +# limit = { +# any_in_list = { +# list = kingdom_empire +# OR = { +# this = root.primary_title +# this = root.primary_title.de_jure_liege +# this = root.primary_title.de_jure_liege.de_jure_liege +# } +# } +# } +# custom_tooltip = fp2_struggle.0901.tt +# } +# if = { +# limit = { is_in_list = struggle_involvees } +# show_as_tooltip = { +# fp2_struggle_compromise_modifier_rewards_personal_house_effect = yes +# fp2_struggle_compromise_modifier_rewards_personal_county_effect = yes +# } +# } +# } +# +# # Ok +# option = { +# name = { +# text = fp2_struggle.0911.a +# trigger = { is_in_list = struggle_involvees } +# } +# name = { +# text = fp2_struggle.0910.b +# trigger = { +# NOT = { is_in_list = struggle_involvees } +# } +# } +# } +#} +# +#fp2_struggle.0902 = { # Conciliation +# type = character_event +# window = fullscreen_event +# title = fp2_struggle.0902.t +# desc = { +# first_valid = { +# triggered_desc = { +# trigger = { +# culture = { +# OR = { +# this = culture:basque +# any_parent_culture = { this = culture:basque } +# has_cultural_pillar = language_basque +# } +# } +# } +# desc = fp2_struggle.0900.opening.basque +# } +# triggered_desc = { +# trigger = { +# culture = { +# OR = { +# this = culture:andalusian +# any_parent_culture = { this = culture:andalusian } +# has_cultural_pillar = language_arabic +# } +# } +# } +# desc = fp2_struggle.0900.opening.andalusian +# } +# triggered_desc = { +# trigger = { +# culture = { has_cultural_pillar = heritage_iberian } +# } +# desc = fp2_struggle.0900.opening.iberian +# } +# desc = fp2_struggle.0900.opening +# } +# desc = fp2_struggle.0902.desc +# } +# theme = court +# override_background = { reference = fp2_fullscreen_conciliation } +# override_sound = { reference = "event:/DLC/FP2/SFX/UI/fp2_struggle_ui_intro_end_animate" } +# +# immediate = { +# play_music_cue = "mx_Struggle_ending_conciliation" +# set_global_variable = { +# name = fp2_struggle_conciliation_ending +# value = yes +# } +# # Add all involved rulers to a list, for ping event +# fp2_struggle_ending_involved_list_effect = yes +# +# # Add all involved cultures with counties to a list, for marriage and holy war checks +# fp2_struggle_ending_culture_list_effect = yes +# +# # Change cultural acceptance +# fp2_struggle_conciliation_cultural_acceptance_effect = yes +# +# ##### Major Effects ##### +# fp2_struggle_conciliation_ender_effect = yes +# fp2_struggle_conciliation_tooltip_effect = yes +# fp2_struggle_conciliation_modifier_rewards_effect = yes +# } +# +# # +# option = { +# name = fp2_struggle.0902.a +# } +# +# after = { +# stress_impact = { +# arrogant = medium_stress_impact_gain +# zealous = medium_stress_impact_gain +# } +# +# # Notify & End Struggle +# save_scope_as = fp2_loc_struggle_ender # Loc used to use root, this fixes it +# every_player = { +# limit = { fp2_does_this_player_care_about_the_fate_of_iberia = yes } # Needs to be checked before the struggle ends due to race condition issues +# add_to_list = player_to_notify # Making a list so stuff is tiggered after the struggle ends, to make extra sure I don't break anything. +# } +# +# struggle:iberian_struggle = { end_struggle = struggle_iberia_ending_conciliation_decision } +# every_in_list = { # Then we *actually* notify palyers, making sure the struggle has already ended +# list = player_to_notify +# trigger_event = fp2_struggle.0912 +# } +# } +#} +# +#fp2_struggle.0912 = { +# type = character_event +# window = fullscreen_event +# title = fp2_struggle.0902.t +# desc = { +# first_valid = { +# triggered_desc = { +# trigger = { is_in_list = struggle_involvees } +# desc = fp2_struggle.0910.opening.involved +# } +# desc = fp2_struggle.0910.opening +# } +# desc = fp2_struggle.0912.desc +# } +# theme = court +# override_background = { reference = fp2_fullscreen_conciliation } +# override_sound = { reference = "event:/DLC/FP2/SFX/UI/fp2_struggle_ui_intro_end_animate" } +# +# immediate = { +# play_music_cue = "mx_Struggle_ending_conciliation" +# ##### Major Effects ##### +# show_as_tooltip = { +# scope:struggle_ender = { fp2_struggle_conciliation_ender_effect = yes } +# } +# fp2_struggle_conciliation_tooltip_effect = yes +# +# ##### Minor Effects ##### +# # All involved rulers gain diff culture opinion and learn language scheme power +# if = { +# limit = { is_in_list = struggle_involvees } +# show_as_tooltip = { fp2_struggle_conciliation_modifier_rewards_personal_effect = yes } +# } +# } +# +# # Ok +# option = { +# name = { +# text = fp2_struggle.0912.a +# trigger = { is_in_list = struggle_involvees } +# } +# name = { +# text = fp2_struggle.0910.b +# trigger = { +# NOT = { is_in_list = struggle_involvees } +# } +# } +# } +#} +# +#################################### +## Stoking the Fire +## By Ola Jentzsch +#################################### +#scripted_trigger fp2_struggle_1000_tension_county_trigger = { +# is_landless_type_title = no +# any_county_province = { geographical_region = world_europe_west_iberia } +# faith = { save_temporary_scope_as = compare_faith } +# root = { +# faith = { +# faith_hostility_level = { target = scope:compare_faith value > faith_astray_level } +# } +# } +#} +#scripted_trigger fp2_struggle_1000_tension_councillor_trigger = { +# faith = { this = root.faith } +# is_available_healthy_ai_adult = yes +# OR = { +# has_trait = zealous +# has_trait = wrathful +# has_trait = deceitful +# has_trait = sadistic +# has_trait = holy_warrior +# has_trait = callous +# } +# NOR = { +# has_trait = compassionate +# has_trait = just +# } +#} +# +#fp2_struggle.1000 = { +# type = character_event +# title = fp2_struggle.1000.t +# desc = fp2_struggle.1000.desc +# theme = dread +# +# left_portrait = { +# character = root +# animation = stress +# } +# right_portrait = { +# character = scope:tension_councillor +# animation = scheme +# } +# +# +# trigger = { +# has_fp2_dlc_trigger = yes +# fp2_character_involved_in_struggle_trigger = yes +# custom_description = { +# text = empty_spooky_trigger #This is entirely pointless, but code likes it, so ghost away! +# any_held_county = { fp2_struggle_1000_tension_county_trigger = yes } +# OR = { +# any_councillor = { fp2_struggle_1000_tension_councillor_trigger = yes } +# any_vassal = { fp2_struggle_1000_tension_councillor_trigger = yes } +# exists = cp:councillor_marshal +# } +# } +# OR = { +# capital_province = { geographical_region = world_europe_west_iberia } +# culture = { has_cultural_pillar = heritage_iberian } +# } +# } +# +# cooldown = { #this shouldn't fire too often +# years = 50 +# } +# +# immediate = { #We need a province and a suitable councillor; this fixes that. +# random_held_county = { +# limit = { fp2_struggle_1000_tension_county_trigger = yes } +# save_scope_as = tension_county +# } +# if = { +# limit = { +# any_councillor = { +# fp2_struggle_1000_tension_councillor_trigger = yes +# } +# } +# random_councillor = { +# limit = { +# fp2_struggle_1000_tension_councillor_trigger = yes +# } +# save_scope_as = tension_councillor +# } +# } +# else_if = { +# limit = { +# any_vassal = { +# fp2_struggle_1000_tension_councillor_trigger = yes +# } +# } +# random_vassal = { +# limit = { +# fp2_struggle_1000_tension_councillor_trigger = yes +# } +# save_scope_as = tension_councillor +# } +# } +# else = { +# random_councillor = { +# limit = { +# has_council_position = councillor_marshal +# } +# save_scope_as = tension_councillor +# } +# } +# +# if = { #this code checks if there is an eligible person for the 4th option +# limit = { +# any_vassal = { +# is_available_healthy_ai_adult = yes +# faith = scope:tension_county.faith +# } +# } +# random_vassal = { +# limit = { +# is_available_healthy_ai_adult = yes +# faith = scope:tension_county.faith +# } +# save_scope_as = minority_courtier +# } +# } +# else_if = { +# limit = { +# any_courtier = { +# is_available_healthy_ai_adult = yes +# faith = scope:tension_county.faith +# } +# } +# random_courtier = { +# limit = { +# is_available_healthy_ai_adult = yes +# faith = scope:tension_county.faith +# } +# save_scope_as = minority_courtier +# } +# } +# } +# +# option = { #Let us spread some hatred...discreetly. +# name = fp2_struggle.1000.a +# +# ai_chance = { #Cruel and fanatical characters pick this option +# base = 10 +# ai_value_modifier = { +# ai_zeal = 1 +# ai_vengefulness = 0.5 +# ai_compassion = -1 +# ai_honor = -1 +# } +# } +# +# stress_impact = { +# # Righteous characters find this a very unappealing option. +# compassionate = medium_stress_impact_gain +# gallant = medium_stress_impact_gain +# honest = medium_stress_impact_gain +# just = medium_stress_impact_gain +# paragon = medium_stress_impact_gain +# # As do lazy ones. +# lazy = minor_stress_impact_gain +# } +# +# scope:tension_councillor = { +# add_opinion = { +# target = root +# opinion = 10 +# modifier = took_my_advice_opinion +# } +# } +# +# +# add_character_modifier = { +# modifier = fanatical_recruits_modifier +# years = 10 +# } +# +# duel = { #You try to create a hate campaign - and get away with it. +# skill = intrigue +# value = average_skill_rating +# +# 20 = { +# compare_modifier = { +# value = scope:duel_value +# multiplier = 2 +# } +# send_interface_toast = { +# title = stoke_tension_toast.success +# left_icon = root +# +# add_dread = minor_dread_gain +# +# scope:tension_county = { +# add_county_modifier = { +# modifier = riots_and_murders_province_modifier +# years = 5 +# } +# } +# } +# } +# +# 20 = { +# compare_modifier = { +# value = scope:duel_value +# multiplier = -1 +# } +# send_interface_toast = { +# title = stoke_tension_toast.failure +# left_icon = root +# add_character_modifier = { +# modifier = hate_monger_modifier +# years = 10 +# } +# +# scope:tension_county = { +# add_county_modifier = { +# modifier = riots_and_murders_province_modifier +# years = 5 +# } +# } +# } +# } +# } +# } +# +# option = { #I trust you to handle it +# name = fp2_struggle.1000.b +# +# trigger = { +# intrigue <= medium_skill_rating +# } +# +# show_unlock_reason = no +# +# ai_chance = { #Cruel and fanatical characters pick this option +# base = 10 +# ai_value_modifier = { +# ai_zeal = 0.5 +# ai_rationality = 0.2 +# ai_compassion = -0.5 +# ai_honor = -1 +# } +# } +# +# stress_impact = { +# # Righteous characters find this a very unappealing option. +# compassionate = medium_stress_impact_gain +# gallant = medium_stress_impact_gain +# honest = medium_stress_impact_gain +# just = medium_stress_impact_gain +# paragon = medium_stress_impact_gain +# # As do lazy ones. +# lazy = miniscule_stress_impact_gain +# } +# +# if = { +# limit = { +# intrigue <= medium_skill_rating +# } +# custom_tooltip = bad_intrigue.tt +# } +# +# scope:tension_councillor = { +# if = { +# limit = { +# intrigue >= average_skill_level +# } +# add_opinion = { +# target = root +# opinion = 10 +# modifier = trusted_me_opinion +# } +# } +# else = { +# add_opinion = { +# target = root +# opinion = -10 +# modifier = unfair_expectations_opinion +# } +# } +# } +# +# add_character_modifier = { +# modifier = fanatical_recruits_modifier +# years = 10 +# } +# +# +# +# scope:tension_councillor = { +# duel = { +# skill = intrigue +# value = average_skill_rating +# +# 20 = { +# compare_modifier = { +# value = scope:duel_value +# multiplier = 2 +# } +# root = { +# send_interface_toast = { +# title = delegated_stoke_tension_toast.success +# left_icon = scope:tension_councillor +# +# scope:tension_county = { +# add_county_modifier = { +# modifier = riots_and_murders_province_modifier +# years = 5 +# } +# } +# } +# } +# } +# 20 = { +# compare_modifier = { +# value = scope:duel_value +# multiplier = -1 +# } +# root = { +# send_interface_toast = { +# title = stoke_tension_toast.failure +# left_icon = scope:tension_councillor +# +# root = { +# add_character_modifier = { +# modifier = hate_monger_modifier +# years = 10 +# } +# } +# scope:tension_councillor = { +# add_character_modifier = { +# modifier = hate_monger_modifier +# years = 10 +# } +# } +# scope:tension_county = { +# add_county_modifier = { +# modifier = riots_and_murders_province_modifier +# years = 5 +# } +# } +# } +# } +# } +# } +# } +# } +# +# option = { #"No, I shall try to ease the tensions." +# name = fp2_struggle.1000.c +# +# ai_chance = { #just and compassionate characters pick this option +# base = 10 +# ai_value_modifier = { +# ai_honor = 0.8 +# ai_compassion = 0.7 +# ai_rationality = 0.2 +# ai_zeal = -0.8 +# ai_vengefulness = -0.7 +# } +# } +# +# stress_impact = { +# # Aggressive characters find this an unappealing option. +# wrathful = minor_stress_impact_gain +# zealous = minor_stress_impact_gain +# sadistic = minor_stress_impact_gain +# vengeful = minor_stress_impact_gain +# } +# +# scope:tension_councillor = { +# add_opinion = { +# target = root +# opinion = -10 +# modifier = disappointed_opinion +# } +# } +# +# duel = { +# skill = diplomacy +# value = high_skill_rating +# +# 30 = { +# compare_modifier = { +# value = scope:duel_value +# multiplier = 2 +# } +# send_interface_toast = { +# title = ease_tension_toast.success +# left_icon = root +# +# add_character_modifier = { +# modifier = tolerance_gospel_modifier +# years = 10 +# } +# +# scope:tension_county = { +# add_county_modifier = { +# modifier = tensions_eased_province_modifier +# years = 5 +# } +# } +# } +# } +# 20 = { +# compare_modifier = { +# value = scope:duel_value +# multiplier = -1 +# } +# send_interface_toast = { +# title = ease_tension_toast.failure +# left_icon = root +# scope:tension_county = { +# add_county_modifier = { +# modifier = riots_and_murders_province_modifier +# years = 5 +# } +# } +# } +# } +# } +# } +# +# option = { #"If I cannot stop this madness... +# name = fp2_struggle.1000.d +# +# trigger = { +# exists = scope:minority_courtier +# +# scope:tension_county = { +# this != root.capital_county +# } +# } +# +# ai_chance = { #just and compassionate characters pick this option +# base = 10 +# ai_value_modifier = { +# ai_honor = 0.3 +# ai_compassion = 0.3 +# ai_rationality = 0.8 +# ai_zeal = -0.8 +# ai_vengefulness = -0.7 +# ai_greed = -1 +# } +# } +# +# stress_impact = { +# # Aggressive characters find this unappealing +# wrathful = minor_stress_impact_gain +# zealous = major_stress_impact_gain +# sadistic = minor_stress_impact_gain +# vengeful = minor_stress_impact_gain +# +# #As do power-mongers, you're giving away a whole province! +# ambitious = minor_stress_impact_gain +# stubborn = minor_stress_impact_gain +# greedy = minor_stress_impact_gain +# arrogant = minor_stress_impact_gain +# paranoid = minor_stress_impact_gain +# +# } +# +# scope:minority_courtier = { +# add_opinion = { +# target = root +# opinion = 20 +# modifier = received_title_county +# } +# } +# +# create_title_and_vassal_change = { +# type = granted +# save_scope_as = change +# add_claim_on_loss = yes +# } +# +# scope:tension_county = { +# change_title_holder = { +# holder = scope:minority_courtier +# change = scope:change +# } +# } +# +# resolve_title_and_vassal_change = scope:change +# +# add_stress = medium_stress_loss +# +# scope:tension_councillor = { +# add_opinion = { +# target = root +# opinion = -10 +# modifier = disappointed_opinion +# } +# } +# +# scope:tension_county = { +# add_county_modifier = { +# modifier = tensions_eased_province_modifier +# years = 10 +# } +# } +# } +#} +# +#################################### +## War Widows +## By Ola Jentzsch +#################################### +## Idea by Isabella welch +#################################### +# +#scripted_trigger fp2_struggle.1001_weird_option_traits = { # These, presumably, makes you even more sympathethic to widows and orphans, or likely to take an ill-thought out decision. +# OR = { +# has_character_modifier = associates_with_strange_peasants_modifier +# has_trait = bastard +# has_trait = legitimized_bastard +# has_trait = intellect_bad_3 +# has_trait = intellect_bad_2 +# has_trait = improvident +# has_trait = lifestyle_reveler +# has_trait = pregnant +# has_trait = lunatic +# has_trait = eccentric +# } +#} +# +#scripted_trigger fp2_struggle.1001_expectant_vassal_or_courtier_traits = { # This is about the personality the pregnant courtier should have to get this idea to begin with +# has_trait = pregnant +# is_available_ai = yes +# NOR = { +# has_trait = callous +# has_trait = content +# has_trait = arrogant +# has_trait = dull +# } +#} +# +#fp2_struggle.1001 = { +# type = character_event +# title = fp2_struggle.1001.t +# desc = fp2_struggle.1001.desc +# theme = faith +# cooldown = { years = 50 } +# +# left_portrait = { +# character = root +# animation = personality_cynical +# } +# right_portrait = { +# character = scope:expectant_courtier +# animation = happiness +# } +# +# trigger = { +# has_fp2_dlc_trigger = yes +# OR = { +# any_vassal = { +# fp2_struggle.1001_expectant_vassal_or_courtier_traits = yes +# } +# any_courtier = { +# fp2_struggle.1001_expectant_vassal_or_courtier_traits = yes +# } +# } +# gold >= medium_gold_value_check +# +# any_truce_target = { } +# } +# +# immediate = { +# random_vassal = { +# limit = { +# fp2_struggle.1001_expectant_vassal_or_courtier_traits = yes +# is_spouse_of = root +# } +# +# alternative_limit = { +# fp2_struggle.1001_expectant_vassal_or_courtier_traits = yes +# any_player_heir = { is_spouse_of = prev } +# } +# alternative_limit = { +# fp2_struggle.1001_expectant_vassal_or_courtier_traits = yes +# is_councillor = yes +# } +# alternative_limit = { +# fp2_struggle.1001_expectant_vassal_or_courtier_traits = yes +# is_powerful_vassal = yes +# } +# +# alternative_limit = { +# fp2_struggle.1001_expectant_vassal_or_courtier_traits = yes +# } +# +# save_scope_as = expectant_courtier +# } +# +# if = { +# limit = { +# NOT = { +# exists = scope:expectant_courtier +# } +# } +# random_courtier = { +# limit = { +# fp2_struggle.1001_expectant_vassal_or_courtier_traits = yes +# is_spouse_of = root +# } +# alternative_limit = { +# fp2_struggle.1001_expectant_vassal_or_courtier_traits = yes +# any_player_heir = { is_spouse_of = prev } +# } +# alternative_limit = { +# fp2_struggle.1001_expectant_vassal_or_courtier_traits = yes +# is_councillor = yes +# } +# alternative_limit = { +# fp2_struggle.1001_expectant_vassal_or_courtier_traits = yes +# } +# save_scope_as = expectant_courtier +# } +# } +# } +# +# +# +# option = { #A good idea! I shall create such a fund. +# name = fp2_struggle.1001.a +# +# stress_impact = { +# # Arrogant or cruel characters find this an unappealing option. +# arbitrary = medium_stress_impact_gain +# arrogant = medium_stress_impact_gain +# sadistic = medium_stress_impact_gain +# +# # As do, of course, greedy ones. +# greedy = medium_stress_impact_gain +# +# # As do callous and content ones, to an extent. +# callous = minor_stress_impact_gain +# content = minor_stress_impact_gain +# +# # But generous and compassionate characters like it. +# compassionate = minor_stress_impact_loss +# generous = medium_stress_impact_loss +# } +# +# ai_chance = { #Just and compassionate characters pick this option +# base = 10 +# ai_value_modifier = { +# ai_honor = 0.5 +# ai_compassion = 1 +# ai_vengefulness = -0.2 +# ai_greed = -0.5 +# } +# } +# +# remove_treasury_or_gold = major_treasury_or_gold_value +# +# scope:expectant_courtier = { +# add_opinion = { +# target = root +# opinion = 20 +# modifier = pleased_opinion +# } +# } +# +# +# add_character_modifier = { +# modifier = nursing_salaries_for_single_mothers_modifier +# years = 20 +# } +# } +# +# option = { #Widows I will support, but not whores! +# name = fp2_struggle.1001.b +# flavor = fp2_struggle.1001.b.tt +# trigger = { +# fp2_struggle.1001_weird_option_traits = no +# trait_is_shunned_or_criminal_in_faith_trigger = { +# FAITH = faith +# TRAIT = trait:adulterer +# GENDER_CHARACTER = dummy_female +# } +# } +# +# stress_impact = { +# # Truly righteous characters wouldn't say this. +# compassionate = minor_stress_impact_gain +# gallant = minor_stress_impact_gain +# generous = minor_stress_impact_gain +# humble = minor_stress_impact_gain +# just = minor_stress_impact_gain +# +# # And greedy ones still don't wanna pay up +# greedy = minor_stress_impact_gain +# } +# +# ai_chance = { #Zealous AI characters pick this option +# base = 10 +# ai_value_modifier = { +# ai_zeal = 1 +# ai_compassion = -0.8 +# } +# } +# +# remove_treasury_or_gold = medium_treasury_or_gold_value +# add_piety = minor_piety_gain +# add_character_modifier = { +# modifier = widows_and_widowers_amazing_funds_modifier +# years = 20 +# } +# +# scope:expectant_courtier = { +# if = { +# limit = { +# has_trait = zealous +# } +# add_opinion = { +# target = root +# opinion = 10 +# modifier = pleased_opinion +# } +# } +# else = { +# add_opinion = { +# target = root +# opinion = -10 +# modifier = slightly_disappointed_opinion +# } +# } +# } +# } +# +# +# option = { #But they can come stay at my court! We have food in abundance! +# name = fp2_struggle.1001.c +# flavor = fp2_struggle.1001.c.tt +# trigger = { +# fp2_struggle.1001_weird_option_traits = yes +# } +# +# stress_impact = { +# # Cheap or shy character's don't like this +# greedy = medium_stress_impact_gain +# shy = medium_stress_impact_gain +# +# #Nor do those wo really care about the appearance and glory of their courts +# +# ambitious = minor_stress_impact_gain +# arrogant = medium_stress_impact_gain +# temperate = medium_stress_impact_gain +# august = medium_stress_impact_gain +# born_in_the_purple = minor_stress_impact_gain +# +# # But hypersocial hippies love it +# +# humble = minor_stress_impact_loss +# gregarious = minor_stress_impact_loss +# eccentric = minor_stress_impact_loss +# } +# +# ai_chance = { #Deranged or hypersocial but irrational AI characters pick this option +# base = 10 +# ai_value_modifier = { +# ai_boldness = 0.5 +# ai_energy = 0.8 +# ai_rationality = -0.8 +# } +# } +# +# scope:expectant_courtier = { +# if = { +# limit = { +# OR = { +# has_character_modifier = associates_with_strange_peasants_modifier +# has_trait = bastard +# has_trait = legitimized_bastard +# has_trait = intellect_bad_3 +# has_trait = intellect_bad_2 +# has_trait = improvident +# has_trait = gregarious +# } has_trait = lunatic +# } +# add_opinion = { +# target = root +# opinion = 10 +# modifier = pleased_opinion +# } +# } +# else = { +# add_opinion = { +# target = root +# opinion = -10 +# modifier = perplexed_opinion +# } +# } +# } +# if = { +# limit = { +# root = { +# faith = { +# OR = { +# trait_is_virtue = gregarious +# trait_is_virtue = humble +# trait_is_virtue = generous +# } +# } +# } +# } +# add_piety = medium_piety_gain +# } +# else = { +# add_piety = minor_piety_gain +# } +# add_character_modifier = { +# modifier = destitute_single_mothers_modifier +# years = 15 +# } +# } +# +# option = { #Surely, my benevolent vassals can help funding this. +# name = fp2_struggle.1001.d +# +# trigger = { +# any_vassal = { +# count = all +# is_ai = yes +# } +# } +# +# stress_impact = { +# # Careful or dilpomatically minded characters won't do this. +# content = medium_stress_impact_gain +# diplomat = medium_stress_impact_gain +# paranoid = medium_stress_impact_gain +# } +# +# ai_chance = { #Economic AI characters pick this option, while the careful don't. +# base = 10 +# ai_value_modifier = { +# ai_compassion = 0.5 +# ai_greed = 0.5 +# ai_rationality = -0.5 +# } +# } +# +# remove_treasury_or_gold = minor_treasury_or_gold_value +# +# custom_tooltip = fp2_struggle.1001.specialdescpositive +# custom_tooltip = fp2_struggle.1001.specialdescnegative +# hidden_effect = { +# every_vassal = { +# IF = { +# limit = { +# NOT = { +# has_trait = pregnant +# } +# } +# IF = { +# limit = { +# OR = { +# has_trait = compassionate +# has_trait = generous +# has_trait = just +# } +# } +# add_opinion = { +# target = root +# opinion = 10 +# modifier = funded_righteous_cause_opinion +# } +# } +# ELSE = { +# add_opinion = { +# target = root +# opinion = -10 +# modifier = extorted_me_opinion +# } +# } +# } +# } +# } +# +# scope:expectant_courtier = { +# IF = { +# limit = { +# is_vassal_of = root #if she is, she gets angry because now SHE is expected to pay for this... +# } +# add_opinion = { +# target = root +# opinion = -20 +# modifier = extorted_me_opinion +# } +# } +# ELSE = { +# add_opinion = { +# target = root +# opinion = 10 +# modifier = pleased_opinion +# } +# } +# } +# +# add_character_modifier = { +# modifier = nursing_salaries_for_single_mothers_modifier +# years = 20 +# } +# } +# +# option = { #I am your king, not a wet nurse! +# name = fp2_struggle.1001.e +# +# stress_impact = { +# # Benevolent characters wouldn't ignore this. +# compassionate = medium_stress_impact_gain +# gallant = medium_stress_impact_gain +# generous = medium_stress_impact_gain +# +# # nor would those who are truly competent or just. +# administrator = minor_stress_impact_gain +# ambitious = minor_stress_impact_gain +# diligent = minor_stress_impact_gain +# just = minor_stress_impact_gain +# eccentric = minor_stress_impact_gain +# } +# +# ai_chance = { #Callous or cheap AI characters pick this option +# base = 10 +# ai_value_modifier = { +# ai_rationality = 0.5 +# ai_greed = 0.5 +# ai_honor = -0.7 +# ai_compassion = -0.7 +# } +# } +# +# scope:expectant_courtier = { +# add_opinion = { +# target = root +# opinion = -20 +# modifier = hurt_opinion +# } +# } +# +# random = { +# chance = 50 +# send_interface_toast = { +# left_icon = root +# title = not_my_problem_toast +# add_character_modifier = { +# modifier = starving_single_mothers_and_children_modifier +# years = 15 +# } +# } +# } +# } +#} +# +#################################### +## Andalusian Advancements +## By Ola Jentzsch +#################################### +## Inspired by an idea by Isabella welch ########################################## -fp2_struggle.2021 = { # Main event - type = character_event - title = fp2_struggle.2021.t - desc = { - desc = fp2_struggle.2021.desc - first_valid = { - triggered_desc = { - trigger = { scope:fp2_2009_event_outcome = flag:cleared_out } - desc = fp2_struggle.2021.desc.alt.cutout - } - triggered_desc = { - trigger = { scope:fp2_2009_event_outcome = flag:paid_off } - desc = fp2_struggle.2021.desc.alt.paidoff - } - triggered_desc = { - trigger = { scope:fp2_2009_event_outcome = flag:worked_together } - desc = fp2_struggle.2021.desc.alt.work - } - triggered_desc = { - trigger = { scope:fp2_2009_event_outcome = flag:lobbed_head } - desc = fp2_struggle.2021.desc.alt.behead - } - } - desc = { desc = fp2_struggle.2021.desc.outro } - } - theme = secret - override_background = { - trigger = { scope:fp2_2009_event_outcome = flag:cleared_out } - reference = alley_day - } - override_background = { - trigger = { scope:fp2_2009_event_outcome = flag:paid_off } - reference = tavern - } - override_background = { - trigger = { scope:fp2_2009_event_outcome = flag:worked_together } - reference = throne_room - } - override_background = { - trigger = { scope:fp2_2009_event_outcome = flag:lobbed_head } - reference = alley_night - } - left_portrait = { - character = root - animation = personality_rational - } - right_portrait = { - character = scope:fp2_2009_garduna_guild_master - animation = scheme - outfit_tags = { - western_stealth_hood - sub_saharan_high_nobility - mena_war_legwear - } - } - - trigger = { - fp2_character_involved_in_struggle_trigger = yes # To check that the struggle is still going on - exists = primary_title - scope:fp2_2009_garduna_guild_master = { - is_available_ai_adult = yes - OR = { # Is this char still looking for adventure or have they settled down? - is_pool_character = yes - is_pool_guest = yes - } - } - } - - immediate = { - title:c_napoli.title_province = { # Originally, the thieves were going to set up a guild there, but thats not very nice. - county = { - save_scope_as = fp2_2021_old_napoly - holder.top_liege = { - save_scope_as = fp2_2021_angry_italian # So instead you just get an opinion debuff for narrative impact. - } # If this were not such a strange event, I would actually make it affect the character mechanically. But there is little excuse here. - } - } - - # Spy Network Logic, once upon a time used to be elegant. - if = { - limit = { exists = struggle:iberian_struggle } - struggle:iberian_struggle = { - if = { - limit = { # Theoretically, effects which do not meet its conditions (the limit) are skipped over. However, the nightly has proven that wrong. - any_involved_ruler = { # As such we take a _much_ more conservative approach of triple checking everything. - exists = primary_title - has_any_secrets = yes - this != root - } - } - random_involved_ruler = { - limit = { - exists = primary_title - has_any_secrets = yes - this != root - } - random_secret = { save_scope_as = fp2_2021_secreto_numero_ichi } - } - - if = { - limit = { - any_involved_ruler = { - exists = primary_title - has_any_secrets = yes - NOT = { - this = root - any_secret = { this = scope:fp2_2021_secreto_numero_ichi } - } - } - } - random_involved_ruler = { - limit = { - exists = primary_title - has_any_secrets = yes - NOT = { - this = root - any_secret = { this = scope:fp2_2021_secreto_numero_ichi } - } - } - random_secret = { save_scope_as = fp2_2021_secreto_numero_ni } - } - } - } - } - } - - if = { - limit = { exists = cp:councillor_spymaster } - cp:councillor_spymaster = { save_scope_as = fp2_2021_spymaster } - } - - hidden_effect = { # Hides exceptions from players, fix is not necessary - scope:fp2_2009_garduna_guild_master = { - save_scope_as = dueltarget # For Loc - move_to_pool_at = root.location # Fixes endless loop where the thief gets stretched across half the map - } - } - } - - option = { # Send off to italy - name = fp2_struggle.2021.a - - scope:fp2_2009_garduna_guild_master = { - pay_short_term_gold = { - target = ROOT - gold = minor_gold_value - } - } - custom_tooltip = fp2_struggle.2021.a.a - scope:fp2_2021_angry_italian = { - add_opinion = { - target = root - modifier = raided_me_opinion - opinion = -40 - } - } - - hidden_effect = { # Possible random outcomes - random_list = { - 10 = { # "Retires", buys a house in italy and lives as an old man happily ever after (just like your dog went to a farm when it got old) - scope:fp2_2009_garduna_guild_master = { silent_disappearance_effect = yes } - - modifier = { - add = 30 - scope:fp2_2009_event_outcome = flag:lobbed_head - } - modifier = { - add = 20 - scope:fp2_2009_event_outcome = flag:worked_together - } - } - 30 = { # He just sorta roams around italy - scope:fp2_2009_garduna_guild_master = { move_to_pool_at = scope:fp2_2021_angry_italian.location } - - modifier = { - add = 10 - scope:fp2_2009_event_outcome = flag:cleared_out - } - } - 10 = { # Joins napolitan court - scope:fp2_2009_garduna_guild_master = { remove_nickname = yes } # Becomes a functional member of society - scope:fp2_2021_angry_italian = { - add_courtier = scope:fp2_2009_garduna_guild_master - - add_opinion = { - target = scope:fp2_2009_garduna_guild_master - modifier = impressed_opinion - opinion = 20 - } - reverse_add_opinion = { - target = scope:fp2_2009_garduna_guild_master - modifier = opinion_welcomed_with_tea - } - } - - modifier = { - add = 20 - scope:fp2_2009_event_outcome = flag:paid_off - } - } - } - } - } - - option = { # Recruit into court (cures courtier's depression if they were a member of the thief-king's gang) - name = fp2_struggle.2021.b - - pay_short_term_gold = { - target = scope:fp2_2009_garduna_guild_master - gold = medium_gold_value - } - every_powerful_vassal = { - limit = { NOT = { has_trait = forgiving } } - custom = fp2_every_major_vassal_notifier - add_opinion = { - target = root - modifier = suspicion_opinion - opinion = -15 - } - } - add_courtier = scope:fp2_2009_garduna_guild_master - if = { - limit = { exists = scope:fp2_2009_garduna_young_thief } - remove_trait = depressed_1 # My old boss survived! (though the rest are dead but shhh) - } - - hidden_effect = { - scope:fp2_2009_garduna_guild_master = { - add_opinion = { - target = root - modifier = hired_me_opinion - opinion = 15 - } - - if = { # There can only be one top dog, one master of the shadows. - limit = { scope:fp2_2021_spymaster != scope:fp2_2009_garduna_young_thief } - random = { - chance = 25 - set_relation_rival = { - target = scope:fp2_2021_spymaster - reason = rival_garduna_young_thief - } - } - } - } - } - } - - option = { # Establish a spy network - name = fp2_struggle.2021.c - flavor = fp2_struggle.2021.c.flavor - - trigger = { - OR = { - exists = scope:fp2_2021_secreto_numero_ichi - exists = scope:fp2_2021_secreto_numero_ni - } - } - - pay_short_term_gold = { - target = scope:fp2_2009_garduna_guild_master - gold = major_gold_value - } - - custom_tooltip = fp2_struggle.2021.c.a # Perhaps it can mention the spymaster? - hidden_effect = { # Note: You might end up learning secrets you already know, this is WAD - if = { - limit = { - exists = scope:fp2_2021_secreto_numero_ichi - exists = scope:fp2_2021_secreto_numero_ni - } - - send_interface_toast = { - type = event_intrigue_good - title = fp2_struggle.2021.c.spynet.a - - scope:fp2_2021_secreto_numero_ichi = { reveal_to = root } - scope:fp2_2021_secreto_numero_ni = { reveal_to = root } - } - } - else = { - if = { - limit = { exists = scope:fp2_2021_secreto_numero_ichi } - send_interface_toast = { - type = event_intrigue_good - title = fp2_struggle.2021.c.spynet.a - - scope:fp2_2021_secreto_numero_ichi = { reveal_to = root } - } - } - else_if = { - limit = { exists = scope:fp2_2021_secreto_numero_ni } - send_interface_toast = { - type = event_intrigue_good - title = fp2_struggle.2021.c.spynet.a - - scope:fp2_2021_secreto_numero_ni = { reveal_to = root } - } - } - } - } - - scope:fp2_2009_garduna_guild_master = { silent_disappearance_effect = yes } - } - - option = { # Duel option (get title late) - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { scope:fp2_2009_event_outcome = flag:lobbed_head } - desc = fp2_struggle.2021.d.alt - } - desc = fp2_struggle.2021.d - } - } - } - trigger = { NOT = { age < 14 } } - - custom_tooltip = fp2_struggle.2021.d.b - show_as_tooltip = { - if = { - limit = { - OR = { - has_any_nickname = no - has_bad_nickname = yes - } - } - give_nickname = nick_the_Thief_Slayer - } - } - ROOT = { save_scope_as = fp2_2021_root_in_duel } - scope:fp2_2009_garduna_guild_master = { - set_variable = { - name = signature_weapon - value = flag:dagger - } - } - - if = { # Changes the background to match, you cannot use conditional values on scripted effects - limit = { scope:fp2_2009_event_outcome = flag:cleared_out } - configure_start_single_combat_effect = { - SC_INITIATOR = root - SC_ATTACKER = root - SC_DEFENDER = scope:fp2_2009_garduna_guild_master - FATALITY = always - FIXED = no - LOCALE = alley_day - OUTPUT_EVENT = fp2_struggle.2022 - INVALIDATION_EVENT = fp2_struggle.2022 - } - } - else_if = { - limit = { scope:fp2_2009_event_outcome = flag:paid_off } - configure_start_single_combat_effect = { - SC_INITIATOR = root - SC_ATTACKER = root - SC_DEFENDER = scope:fp2_2009_garduna_guild_master - FATALITY = always - FIXED = no - LOCALE = tavern - OUTPUT_EVENT = fp2_struggle.2022 - INVALIDATION_EVENT = fp2_struggle.2022 - } - } - else_if = { - limit = { scope:fp2_2009_event_outcome = flag:worked_together } - configure_start_single_combat_effect = { - SC_INITIATOR = root - SC_ATTACKER = root - SC_DEFENDER = scope:fp2_2009_garduna_guild_master - FATALITY = always - FIXED = no - LOCALE = throne_room - OUTPUT_EVENT = fp2_struggle.2022 - INVALIDATION_EVENT = fp2_struggle.2022 - } - } - else_if = { - limit = { scope:fp2_2009_event_outcome = flag:lobbed_head } - configure_start_single_combat_effect = { - SC_INITIATOR = root - SC_ATTACKER = root - SC_DEFENDER = scope:fp2_2009_garduna_guild_master - FATALITY = always - FIXED = no - LOCALE = alley_night - OUTPUT_EVENT = fp2_struggle.2022 - INVALIDATION_EVENT = fp2_struggle.2022 - } - } - } - - after = { remove_global_variable = fp2_struggle_2009_thief_king_char } -} - -fp2_struggle.2022 = { # You become the KING OF THIEVES again, well, late is better than never... - hidden = yes - immediate = { - if = { - limit = { - exists = scope:fp2_2022_reuse_gate - root = scope:fp2_2021_root_in_duel - } - send_interface_toast = { - type = event_toast_effect_good - title = fp2_struggle.2021.d.a - right_icon = ROOT - if = { - limit = { - OR = { - has_any_nickname = no - has_bad_nickname = yes - } - } - give_nickname = nick_the_Thief_Slayer - } - add_prestige = medium_prestige_gain # Penalty for finishing the job late - add_gold = minor_gold_value - } - } - else = { - save_scope_as = fp2_2022_reuse_gate - trigger_event = { - id = fp2_struggle.2022 - days = 1 - } - } - } -} - -################################### -# The Price of War -# by Veronica Pazos -################################### -# You pawn your crown to get some gold to help in your war -############################################################## -fp2_struggle.3001 = { - type = character_event - title = fp2_struggle.3001.t - desc = { - desc = fp2_struggle.3001.desc - first_valid = { - triggered_desc = { - trigger = { - is_at_war = yes - } - desc = fp2_struggle.3001.desc_war_intro - } - triggered_desc = { - trigger = { - is_at_war = no - } - desc = fp2_struggle.3001.desc_no_war_intro - } - } - desc = fp2_struggle.3001.desc_outro - } - - theme = crown - cooldown = { years = 5 } #in case you don't sell your crown you'll have to wait to get the chance again - override_background = { reference = council_chamber } - left_portrait = { - character = root - animation = worry - } - right_portrait = { - character = cp:councillor_steward - animation = personality_rational - } - - trigger = { - has_fp2_dlc_trigger = yes #dlc check - is_available_even_at_war_adult = yes - primary_title.tier >= tier_kingdom #so we make sure you have an actual crown - OR = { #someone has to suggest this - exists = cp:councillor_steward - any_courtier = { - stewardship >= medium_skill_rating - } - } - gold < minor_gold_value #you don't have much gold - NOT = { has_character_flag = sold_crown_charmod } #you haven't sold your crown before - struggle:iberian_struggle = { - NOT = { is_struggle_phase = struggle_iberia_phase_compromise } #you're not in the compromise phase - } - } - - weight_multiplier = { #more likely to trigger the poorer you are - modifier = { - add = 0.25 - gold <= 25 - } - modifier = { - add = 0.25 - gold <= 20 - } - modifier = { - add = 0.5 - gold <= 15 - } - modifier = { - add = 0.5 - gold <= 10 - } - } - - immediate = { - play_music_cue = "mx_cue_touching_moment" - if = { - limit = { - exists = cp:councillor_steward - } - cp:councillor_steward = { save_scope_as = struggle_3001_steward } - } - else = { - random_courtier = { - limit = { - stewardship >= medium_skill_rating - } - save_scope_as = struggle_3001_steward - } - } - if = { - limit = { - has_any_artifact = yes - any_character_artifact = { artifact_type = helmet } #we check if you have a crown artifact - } - random_character_artifact = { - limit = { artifact_type = helmet } - save_scope_as = struggle_3001_crown_artifact - } - } - if = { - limit = { - is_married = yes - } - primary_spouse = { - save_scope_as = struggle_3001_spouse - } - } - } - - option = { #sell your own crown - name = fp2_struggle.3001.a - flavor = fp2_struggle.3001.a_flavour - add_character_flag = sold_crown_charmod #you lose your crown - give_nickname = nick_the_crownless #now everyone knows - add_gold = medium_gold_max_value - add_prestige = major_prestige_loss - stress_impact = { - arrogant = medium_stress_impact_gain - humble = minor_stress_loss - } - - ai_chance = { - base = 5 - modifier = { - add = 5 - gold <= 15 - } - ai_value_modifier = { - ai_greed = 0.15 - ai_rationality = 0.2 - } - } - } - - option = { #sell artifact crown instead - name = fp2_struggle.3001.b - trigger = { #triggers if you actually have one - any_character_artifact = { - artifact_slot_type = helmet - } - } - add_gold = medium_gold_value - add_prestige = minor_prestige_loss - destroy_artifact = scope:struggle_3001_crown_artifact - stress_impact = { - greedy = minor_stress_impact_gain - } - - ai_chance = { - base = 5 - modifier = { - add = 5 - gold <= 15 - } - ai_value_modifier = { - ai_greed = -0.3 - ai_rationality = 0.2 - } - } - } - - option = { #but my spouse also has a crown... - name = fp2_struggle.3001.c - flavor = fp2_struggle.3001.c_flavour - trigger = { - is_married = yes #you have a spouse - scope:struggle_3001_spouse = { - NOT = { has_character_flag = sold_crown_charmod } #and you didn't sell their crown - } - } - add_gold = medium_gold_value - add_prestige = minor_prestige_loss - if = { - limit = { - scope:struggle_3001_spouse = { - has_trait = humble - } - } - scope:struggle_3001_spouse = { - add_opinion = { - target = ROOT - opinion = -25 #they are displeased - modifier = struggle_3001_spouse_crown_modifier - } - add_character_flag = sold_crown_charmod #your spouse loses their crown - } - } - else = { - scope:struggle_3001_spouse = { - add_opinion = { - target = ROOT - opinion = -75 #they REALLY hate you - modifier = struggle_3001_spouse_crown_modifier - } - add_character_flag = sold_crown_charmod #your spouse loses their crown - } - } - stress_impact = { - generous = medium_stress_impact_gain - compassionate = medium_stress_impact_gain - } - - ai_chance = { - base = 10 - modifier = { - add = 5 - gold <= 15 - } - ai_value_modifier = { - ai_greed = 0.5 - } - } - } - - option = { #I'll be dead before losing my crown - name = fp2_struggle.3001.d - stress_impact = { - base = medium_stress_gain #you really need money - } - - ai_chance = { - base = 5 - } - } -} - -################################### -# Order of the Hatchet -# By Veronica Pazos -################################### -# Order of the Hachet - Woman are defending your city -####################################################### -fp2_struggle.3011 = { - type = character_event - title = fp2_struggle.3011.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - faith = { has_doctrine = doctrine_gender_female_dominated } - } - desc = fp2_struggle.3011.desc_men #reverse genre event - } - desc = fp2_struggle.3011.desc - } - desc = fp2_struggle.3011.desc_outro - } - - theme = realm - cooldown = { years = 20 } - left_portrait = { - character = root - animation = personality_rational - } - right_portrait = { - character = cp:councillor_marshal - animation = marshal - } - lower_right_portrait = scope:bishop - - trigger = { - has_fp2_dlc_trigger = yes - fp2_character_any_involvement_iberian_struggle_trigger = yes #there's an ongoing struggle (includes dlc check) - is_available_even_at_war_adult = yes - is_landed_or_landless_administrative = yes - any_character_war = { - war_days >= 30 #a battle has likely happened - } - exists = cp:councillor_marshal #someone tells you about the incident - exists = cp:councillor_court_chaplain - faith = { - NOT = { has_doctrine = doctrine_gender_equal } #checks that this is unusual - } - OR = { #checks again that this makes sense, Ola Jentzsch's note - has_game_rule = default_gender_equality - has_game_rule = inversed_gender_equality - } - struggle:iberian_struggle = { #there's a struggle going on - OR = { - is_struggle_phase = struggle_iberia_phase_hostility - is_struggle_phase = struggle_iberia_phase_opportunity - } - } - any_sub_realm_barony = { - exists = holder - title_province = { has_holding_type = city_holding } - } - } - - weight_multiplier = { - base = 1 - } - - immediate = { - cp:councillor_marshal = { save_scope_as = struggle_3011_marshal } - cp:councillor_court_chaplain = { save_scope_as = bishop } - random_sub_realm_barony = { - limit = { - exists = holder - title_province = { has_holding_type = city_holding } - } - county = { save_scope_as = struggle_3011_county_town } - } - } - - option = { #that's dope - name = fp2_struggle.3011.a - scope:struggle_3011_county_town = { - add_county_modifier = { - modifier = fp2_order_of_the_hachet_modifier - years = 5 - } - } - scope:bishop = { - add_opinion = { - target = ROOT - opinion = -25 - modifier = angry_opinion - } - } - every_vassal = { - custom = custom.every_zealous_callous_or_sadistic_vassal - limit = { - OR = { - has_trait = zealous - has_trait = callous - } - } - add_opinion = { - target = ROOT - opinion = -10 - modifier = annoyed_opinion - } - } - stress_impact = { - zealous = medium_stress_impact_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_zeal = -1 #zealous AI will never pick this - ai_compassion = 0.2 - ai_honor = 0.2 - } - } - } - - option = { #ridiculous - name = { - trigger = { - faith = { has_doctrine = doctrine_gender_male_dominated } - } - text = fp2_struggle.3011.b - } - name = { - trigger = { - faith = { has_doctrine = doctrine_gender_female_dominated } - } - text = fp2_struggle.3011.b_men - } - scope:bishop = { - add_opinion = { - target = ROOT - opinion = 10 - modifier = grateful_opinion - } - } - if = { - limit = { - faith = { has_doctrine = doctrine_gender_male_dominated } - } - every_courtier = { - custom = custom.every_female_courtier - limit = { - is_female = yes - } - add_opinion = { - target = ROOT - opinion = -10 - modifier = insult_opinion - } - } - } - else_if = { - limit = { - faith = { has_doctrine = doctrine_gender_female_dominated } - } - every_courtier = { - custom = custom.every_male_courtier - limit = { - is_male = yes - } - add_opinion = { - target = ROOT - opinion = -10 - modifier = insult_opinion - } - } - } - stress_impact = { - cynical = medium_stress_impact_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_zeal = 0.2 - ai_rationality = -0.2 - } - } - } - - option = { #witches! - name = fp2_struggle.3011.c - trigger = { - has_trait = zealous - } - add_dread = medium_dread_gain - add_character_modifier = { - modifier = fp2_punished_order_of_the_hachet_modifier - years = 5 - } - - ai_chance = { #zealous AI will pick this option - base = 1 - ai_value_modifier = { - ai_zeal = 0.8 - ai_energy = -0.7 - ai_vengefulness = 0.5 - } - } - } - - option = { #I shall save these damsels in distress! - name = fp2_struggle.3011.d - trigger = { - faith = { has_doctrine = doctrine_gender_male_dominated } - OR = { - has_trait = gallant - has_trait = arrogant - culture = { - has_cultural_tradition = tradition_chanson_de_geste - } - } - } - random_list = { #how does that go - 75 = { - add_stress = medium_stress_gain - } - 25 = { - add_stress = medium_stress_impact_loss - } - } - - ai_chance = { - base = 10 - } - } -} - -################################### -# The Wrath of Heaven -# By Veronica Pazos -################################### -# "Lightning stones" in a siege -################################### -fp2_struggle.3021 = { - type = character_event - title = fp2_struggle.3021.t - desc = fp2_struggle.3021.desc - - theme = martial - left_portrait = { - character = root - animation = personality_cynical - } - right_portrait = { - character = scope:struggle_3021_knight - animation = shock - } - lower_right_portrait = scope:struggle_3021_courtier - - trigger = { - has_fp2_dlc_trigger = yes - fp2_character_any_involvement_iberian_struggle_trigger = yes - is_available_even_at_war_adult = yes - NOT = { has_character_flag = had_event_struggle_3021 } #so you don't research the same thing again - struggle:iberian_struggle = { #there's some kind of hostility going on - is_struggle_phase = struggle_iberia_phase_hostility - - } - any_knight = { #someone sees this - is_available_healthy_ai_adult = yes - } - any_courtier = { #someone will research this - is_available_healthy_ai_adult = yes - count > 0 - } - any_directly_owned_province = { #we have a castle to use it on - has_holding_type = castle_holding - NOT = { has_province_modifier = fp2_lightning_stones_modifier } - } - } - - weight_multiplier = { - base = 1 - modifier = { - add = 1 - is_at_war = yes - } - } - - immediate = { - add_character_flag = had_event_struggle_3021 - random_knight = { - limit = { - is_available_healthy_ai_adult = yes - } - save_scope_as = struggle_3021_knight - } - every_courtier = { #get your courtiers - limit = { - is_available_ai_adult = yes - this != root.primary_spouse #you shouldn't lose your spouse or heir because of this - this != root.player_heir - } - add_to_list = struggle_3021_courtier_list - } - ordered_in_list = { #sort through to pick the one with highest learning - list = struggle_3021_courtier_list - order_by = learning - max = 1 - save_scope_as = struggle_3021_courtier - } - random_directly_owned_province = { #this is where we can try it - limit = { - has_holding_type = castle_holding - } - save_scope_as = lightning_stones_province - } - } - - option = { #we need to research this stuff - name = fp2_struggle.3021.a - - scope:struggle_3021_courtier = { #This is who is doing the research - duel = { - skill = learning #The skill needed for research - value = average_skill_rating #Found in 00_basic_values.txt - An 8 in this case - 12 = { #Success - We keep the weight values fairly close to our skill values so they can be affected. 20 is a good max. - compare_modifier = { - value = scope:duel_value - multiplier = 2 #This multiplies the *difference* between the skill and the target. Meaning folks with good skills will be much more likely to get it. - min = -5 #This prevents truly terrible people from completely losing the chance to succeed. - } - desc = good_struggle_3021_courtier_desc - root = { - send_interface_toast = { - title = good_stone_research_title - left_icon = scope:struggle_3021_courtier - scope:lightning_stones_province = { - add_province_modifier = { - modifier = fp2_lightning_stones_modifier - } - } - } - } - } - 14 = { #Failure! - compare_modifier = { - value = scope:duel_value - multiplier = -2 #This multiplies and inverts the *difference* between the skill and the target. Meaning folks with bad skills will be much more likely to get this. - } - desc = bad_struggle_3021_courtier_desc - root = { - send_interface_toast = { #send a toast - title = bad_stone_research_title - desc = bad_struggle_3021_courtier_desc - left_icon = scope:struggle_3021_courtier - scope:struggle_3021_courtier = { - death = { death_reason = death_accident } - } - } - } - } - } - } - - stress_impact = { - zealous = medium_stress_impact_gain - } - } - - option = { #this is not the greatest idea - name = fp2_struggle.3021.b - reverse_add_opinion = { - target = scope:struggle_3021_courtier - modifier = insulted_opinion - opinion = -15 - } - stress_impact = { - base = minor_stress_impact_loss - zealous = medium_stress_impact_gain - craven = minor_stress_impact_loss - brave = medium_stress_impact_gain - } - } - - option = { #we can maybe use this in a feast - name = fp2_struggle.3021.c - trigger = { - OR = { - has_trait = vengeful - has_trait = deceitful - has_trait = arbitrary - has_trait = callous - intrigue >= high_skill_rating - has_lifestyle = intrigue_lifestyle - } - } - - duel = { - skill = learning - target = scope:struggle_3021_courtier - 30 = { #it works - compare_modifier = { - value = scope:duel_value - multiplier = 0.5 - } - desc = good_struggle_3021_courtier_desc - root = { - send_interface_toast = { - title = good_stone_research_title - left_icon = scope:struggle_3021_courtier - - add_character_modifier = { - modifier = fp2_lightning_stones_poison_modifier - years = 5 - } - } - } - } - 70 = { #it doesnt work - compare_modifier = { - value = scope:duel_value - } - desc = bad_struggle_3021_courtier_desc - root = { - send_interface_toast = { #send a toast - title = bad_stone_research_title - desc = bad_struggle_3021_courtier_desc - left_icon = scope:struggle_3021_courtier - - scope:struggle_3021_courtier = { - death = { death_reason = death_accident } - } - } - } - } - } - - stress_impact = { - forgiving = medium_stress_impact_gain - honest = medium_stress_impact_gain - compassionate = medium_stress_impact_gain - zealous = medium_stress_impact_gain - } - ai_chance = { - base = 10 - ai_value_modifier = { - ai_boldness = 0.2 - ai_vengefulness = 1 - } - } - } - - option = { #god's punihsment! - name = fp2_struggle.3021.d - trigger = { - OR = { - has_trait = zealous - stress >= high_medium_stress - } - } - add_piety = minor_piety_gain - stress_impact = { - zealous = minor_stress_loss - } - } - - option = { #lightning stones for the lightning stone god - name = fp2_struggle.3021.e - trigger = { - religion = { is_in_family = rf_pagan } - } - add_piety = medium_piety_gain - } -} +#scripted_trigger neighboring_ruler_proper_culture_trigger = { +# OR = { +# culture = culture:andalusian +# culture = culture:bedouin +# culture = culture:baranis +# culture = culture:butr +# culture = culture:levantine +# culture = culture:sephardi +# } +#} +# +#fp2_struggle.1002 = { +# type = character_event +# title = fp2_struggle.1002.t +# desc = { #Different flavor depending on time period +# first_valid = { +# triggered_desc = { +# trigger = { current_date <= 1030.1.1 } +# desc = fp2_struggle.1002.desc_early_golden_age +# } +# triggered_desc = { +# trigger = { +# current_year >= 1250 +# OR = { has_religion = religion:eastern_orthodox_religion has_religion = religion:catholic_religion has_religion = religion:protestant_religion } +# } +# desc = fp2_struggle.1002.desc_post_golden_age_christian #this triggers the latinized names of the polymaths +# } +# triggered_desc = { +# trigger = { current_year >= 1250 } +# desc = fp2_struggle.1002.desc_post_golden_age_unchristian #or their arabic ones +# } +# triggered_desc = { +# trigger = { current_year >= 1030 } +# desc = fp2_struggle.1002.desc_late_golden_age +# } +# } +# first_valid = { +# triggered_desc = { #tests if the event would fire one of the historical physicians +# trigger = { +# AND = { +# current_year > 976 +# current_year < 1010 +# } +# exists = global_var:albucasis_created +# exists = scope:albucasis_physician +# scope:great_physician = scope:albucasis_physician #this is a measure taken so that the loc gets tied to the appropriate character +# } +# desc = fp2_struggle.1002.desc_albucasis #this is the dialogue text if Albucasis spawns +# } +# triggered_desc = { #tests if the event would fire one of the historical physicians +# trigger = { +# AND = { +# current_year > 1125 +# current_year < 1165 +# } +# exists = global_var:avenzoar_created +# exists = scope:avenzoar_physician +# scope:great_physician = scope:avenzoar_physician +# } +# desc = fp2_struggle.1002.desc_avenzoar #this is the dialogue if Avenzoar spawns +# } +# triggered_desc = { #tests if the event would fire one of the historical physicians +# trigger = { +# AND = { +# current_year > 1140 +# current_year < 1180 +# } +# exists = global_var:tufail_created +# exists = scope:tufail_physician +# scope:great_physician = scope:tufail_physician +# } +# desc = fp2_struggle.1002.desc_tufail #this is the dialogue if Ibn Tufail spawns +# } +# triggered_desc = { #this defaults to a random Andalusian physician +# trigger = { current_year >= 1050 } ## +# desc = fp2_struggle.1002.desc_no_historical_physician_late +# } +# desc = fp2_struggle.1002.desc_no_historical_physician_early +# } +# first_valid = { #if root has a court physician, it changes the narrative a bit. +# triggered_desc = { +# trigger = { +# court_physician_available_trigger = yes +# OR = { has_religion = religion:eastern_orthodox_religion has_religion = religion:catholic_religion has_religion = religion:protestant_religion } +# } +# desc = fp2_struggle.1002.desc_has_physician_and_is_christian #in this case, the slur "heathen" is used +# } +# triggered_desc = { +# trigger = { court_physician_available_trigger = yes } +# desc = fp2_struggle.1002.desc_has_physician_but_not_christian #in this case, the slur "eccentric" is used +# } +# triggered_desc = { +# trigger = { OR = { has_religion = religion:eastern_orthodox_religion has_religion = religion:catholic_religion has_religion = religion:protestant_religion } } +# desc = fp2_struggle.1002.desc_has_no_physician_but_is_christian #in this case, the slur "heathen" is used +# } +# desc = fp2_struggle.1002.desc_has_no_physician #default option should all else fail +# } +# } +# +# theme = medicine +# override_background = { reference = throne_room } +# +# left_portrait = { +# character = root +# animation = personality_content +# } +# right_portrait = { +# character = scope:great_physician +# animation = personality_rational #polymaths should always have this pose :D +# } +# +# lower_left_portrait = scope:neighboring_ruler #this is the ruler that's angry with the polymath +# +# lower_right_portrait = scope:scoped_physician #this is your court physician if you have one +# +# cooldown = { years = 100 } +# +# trigger = { +# has_fp2_dlc_trigger = yes +# #any_character_to_title_neighboring_county = { #this searches for a neighboring province that has the xenophilic tradition, which is this event's dynamic way of checking for Andalusian culture or cultures derived from it. +# any_neighboring_and_across_water_top_liege_realm_owner = { +# culture = { +# OR = { +# has_cultural_tradition = tradition_xenophilic +# has_cultural_tradition = tradition_medicinal_plants +# has_cultural_tradition = tradition_fp2_malleable_subjects +# } +# } +# } +# +# root.capital_province = { #so that it only triggers for people close to Andalusia +# OR = { +# geographical_region = world_europe_west_iberia +# geographical_region = world_europe_west_francia +# geographical_region = world_europe_south_italy +# } +# } +# +# NOT = { #So that it doesn't fire for the Andalusians themselves, because that'd make the narrative weird +# culture = culture:andalusian +# } +# +# NOT = { #So that it doesn't fire for the Umayyads when they control Iberia +# AND = { +# culture = culture:levantine +# root.capital_province = { geographical_region = world_europe_west_iberia } +# } +# } +# +# any_neighboring_and_across_water_top_liege_realm_owner = { +# is_ai = yes +# } +# } +# +# weight_multiplier = { +# base = 0.4 +# modifier = { +# OR = { +# AND = { +# current_year > 976 +# current_year < 1010 +# } +# AND = { +# current_year > 1125 +# current_year < 1180 +# } +# } +# add = 1.6 +# } +# modifier = { +# neighboring_ruler_proper_culture_trigger = yes +# add = 0.5 +# } +# } +# +# +# immediate = { +# +# random_neighboring_and_across_water_top_liege_realm_owner = { #this searches for a neighboring ruler with the proper cultural tradition, which is this event's dynamic way of checking for Andalusian culture or cultures derived from it. +# limit = { +# culture = { +# OR = { +# has_cultural_tradition = tradition_xenophilic +# has_cultural_tradition = tradition_medicinal_plants +# has_cultural_tradition = tradition_fp2_malleable_subjects +# } +# } +# } +# culture = { save_scope_as = xenophilic_culture } #this is mostly used for error-checking because the debug log is unclear. +# } +# +# if = { #This looks to see if one of three historical physicians will be used in the event +# limit = { #their rough period of activity +# AND = { +# current_year > 976 +# current_year < 1010 +# } +# NOT = { exists = global_var:albucasis_created } #makes sure that he wasn't already spawned by the event elsewhere +# is_ai = no +# scope:xenophilic_culture = culture:andalusian +# } +# create_character = { +# age = { 40 70 } #their rough age during the period of their flourishing +# location = root.capital_province +# name = "Abu al-Qasim Al-Zahrawi" #Albucasis +# gender = male +# template = scholar_character +# trait = intellect_good_3 #He was one of the Middle Ages' greatest geniuses +# trait = lifestyle_herbalist +# trait = lifestyle_physician +# trait = education_learning_4 +# random_traits_list = { #his personality, extrapolated from my research +# count = 3 +# ambitious = {} +# compassionate = {} +# calm = {} +# diligent = {} +# humble = {} +# patient = {} +# } +# random_traits_list = { #this is to hint to the player why he was exiled from the previous court +# count = 1 +# fornicator = {} +# deviant = {} +# sodomite = {} +# } +# culture = culture:andalusian +# dynasty = none +# faith = faith:muwalladi +# save_scope_as = albucasis_physician #this is needed to get the loc right +# } +# set_global_variable = albucasis_created +# scope:albucasis_physician = { +# save_scope_as = great_physician #this is to create one easy, generic scope for use in the rest of the event +# } +# } +# +# else_if = { +# limit = { #their rough period of activity +# AND = { +# current_year > 1125 +# current_year < 1165 +# } +# NOT = { exists = global_var:avenzoar_created } #makes sure that he wasn't already spawned by the event elsewhere +# is_ai = no +# scope:xenophilic_culture = culture:andalusian +# } +# create_character = { +# age = { 31 71 } #their rough age during the period of their flourishing +# location = root.capital_province +# name = "Abū Marwān ibn Zuhr" #Avenzoar +# gender = male +# template = scholar_character +# trait = intellect_good_2 +# trait = scholar +# trait = lifestyle_physician +# trait = education_learning_4 +# random_traits_list = { #his personality, extrapolated from my research +# count = 3 +# diligent = {} +# cynical = {} +# humble = {} +# vengeful = {} #He was bitter over having been exiled from Morocco +# } +# random_traits_list = { #this is to hint to the player why he was exiled from the previous court +# count = 1 +# fornicator = {} +# deviant = {} +# sodomite = {} +# murderer = {} +# } +# culture = culture:andalusian +# dynasty = none +# faith = faith:muwalladi +# save_scope_as = avenzoar_physician +# } +# +# set_global_variable = avenzoar_created +# scope:avenzoar_physician = { +# save_scope_as = great_physician +# } +# } +# +# else_if = { +# limit = { #their rough period of activity +# AND = { +# current_year > 1140 +# current_year < 1180 +# } +# NOT = { exists = global_var:tufail_created } #makes sure that he wasn't already spawned by the event elsewhere +# is_ai = no +# scope:xenophilic_culture = culture:andalusian +# } +# create_character = { +# age = { 35 75 } #their rough age during the period of their flourishing +# location = root.capital_province +# name = "Abū Bakr ibn Tufail" #Ibn Tufail +# gender = male +# template = scholar_character +# trait = intellect_good_2 +# trait = theologian +# trait = lifestyle_physician +# trait = education_learning_3 +# trait = journaller #He was an avid writer +# random_traits_list = { #his personality, extrapolated from my research +# count = 3 +# diligent = {} +# calm = {} +# humble = {} +# trusting = {} +# } +# random_traits_list = { #this is to hint to the player why he was exiled from the previous court +# count = 1 +# fornicator = {} +# deviant = {} +# sodomite = {} +# witch = {} +# } +# culture = culture:andalusian +# dynasty = none +# faith = faith:muwalladi +# save_scope_as = tufail_physician +# } +# set_global_variable = tufail_created +# scope:tufail_physician = { +# save_scope_as = great_physician +# } +# } +# +# +# else = { #or it defaults to a random one +# create_character = { +# age = { 32 50 } +# location = root.capital_province +# template = scholar_character +# trait = intellect_good_1 +# trait = education_learning_3 +# trait = lifestyle_physician +# random_traits_list = { +# count = 3 +# ambitious = {} +# calm = {} +# diligent = {} +# cynical = {} +# humble = {} +# patient = {} +# } +# random_traits_list = { ##his is to hint to the player why he was exiled from the previous court +# count = 1 +# fornicator = {} +# deviant = {} +# sodomite = {} +# incestuous = {} +# witch = {} +# } +# culture = scope:xenophilic_culture +# faith = faith:muwalladi +# save_scope_as = great_physician +# } +# } +# +# hidden_effect = { +# scope:great_physician = { +# add_trait_xp = { +# trait = lifestyle_physician +# value = 100 +# } +# } +# } +# +# random_neighboring_and_across_water_top_liege_realm_owner = { +# limit = { +# AND = { +# neighboring_ruler_proper_culture_trigger = yes #the event prefers the neighboring ruler to be of these cultures, since it makes the most sense histrically for the scholar to have been at that court. +# is_ai = yes +# } +# } +# alternative_limit = { is_ai = yes} +# save_scope_as = neighboring_ruler +# } +# +# if = { #if you have a court physician already, he has a stake in this! +# limit = { +# court_physician_available_trigger = yes +# } +# save_court_physician_as_effect = { SCOPE_NAME = scoped_physician } +# } +# } +# +# option = { #I could use a new physician... +# name = fp2_struggle.1002.a +# +# ai_chance = { #rational AIs pick this option +# base = 10 +# ai_value_modifier = { +# ai_rationality = 0.7 +# ai_zeal = -0.7 +# } +# } +# +# stress_impact = { +# # Conservative characters don't want to do this. +# content = minor_stress_impact_gain +# +# # Nor do self-absorbed ones +# arrogant = minor_stress_impact_gain +# callous = minor_stress_impact_gain +# greedy = minor_stress_impact_gain +# } +# +# remove_treasury_or_gold = major_treasury_or_gold_value #this guy is expensive! +# +# add_courtier = scope:great_physician #he's added to root's court +# +# court_position_grant_effect = { +# EMPLOYER = root +# CANDIDATE = scope:great_physician +# POS = court_physician +# } +# +# scope:great_physician = { #naturally, the polymath likes to get a new job +# add_opinion = { +# target = root +# opinion = 10 +# modifier = hired_me_opinion +# } +# } +# +# scope:neighboring_ruler = { #but the neighboring ruler gets angry that you harbor him +# progress_towards_rival_effect = { +# REASON = rival_harbored_polymath +# CHARACTER = root +# OPINION = 0 +# } +# } +# +# add_character_modifier = { #while you get inspired! +# modifier = inspired_medicine_modifier +# years = 20 +# } +# } +# +# option = { #I do not need you, I can read myself. +# name = fp2_struggle.1002.b +# flavor = fp2_struggle.1002.b.tt +# +# trigger = { #This only fires after Avicenna's life, as his books are referenced. +# current_year >= 1030 +# learning >= medium_skill_rating #and you have to be at least somewhat learned to have this option appear, otherwise it'd be superflous +# NOT = { +# exists = scope:scoped_physician +# } +# } +# +# ai_chance = { #energetic, overconfident AI chooses this +# base = 10 +# ai_value_modifier = { +# ai_energy = 0.7 +# ai_boldness = 0.6 +# ai_rationality = 0.4 +# ai_zeal = -0.6 +# ai_greed = -0.6 +# } +# } +# +# stress_impact = { +# # Conservative, dull or cheap characters won't do this +# content = minor_stress_impact_gain +# greedy = minor_stress_impact_gain +# lazy = minor_stress_impact_gain +# zealous = minor_stress_impact_gain +# dull = medium_stress_impact_gain +# } +# +# custom_tooltip = fp2_struggle.1002.physicianleaves +# +# remove_short_term_gold = minor_gold_value #books are expensive! +# +# if = { +# limit = { has_lifestyle = learning_lifestyle } +# add_learning_lifestyle_xp = medium_lifestyle_experience +# } +# +# if = { #your physician gets disappointed for your lack of trust in them +# limit = { exists = scope:scoped_physician } +# scope:scoped_physician = { +# add_opinion = { +# target = root +# opinion = -10 +# modifier = disappointed_opinion +# } +# } +# } +# +# duel = { #you try to read Arabic books +# skill = learning +# value = medium_skill_rating +# +# 20 = { +# compare_modifier = { +# value = scope:duel_value +# multiplier = 2 +# } +# send_interface_toast = { #you succeed! +# title = reading_avicenna_toast.success +# left_icon = root +# root = { +# add_character_modifier = { +# modifier = inspired_medicine_modifier +# years = 20 +# } +# } +# } +# } +# 20 = { +# compare_modifier = { +# value = scope:duel_value +# multiplier = -1 +# } +# send_interface_toast = { #you misunderstod something! +# title = reading_avicenna_toast.failure +# left_icon = root +# root = { +# add_character_modifier = { +# modifier = misread_medicine_incompetence_modifier +# years = 20 +# } +# } +# } +# } +# } +# } +# +# +# option = { #What do I need you for? I can read Greek myself +# name = fp2_struggle.1002.c +# flavor = fp2_struggle.1002.c.tt +# +# trigger = { #This triggers for the early period, before the Canon of Medicine was published. +# current_date <= 1030.1.1 +# learning >= medium_skill_rating +# NOT = { +# exists = scope:scoped_physician +# } +# } +# +# ai_chance = { #energetic AI are the most likely to attempt this in this early time period +# base = 10 +# ai_value_modifier = { +# ai_energy = 0.8 +# ai_rationality = 0.2 +# ai_zeal = -0.2 +# } +# } +# +# stress_impact = { +# # Conservative, dull or cheap characters won't do this +# content = minor_stress_impact_gain +# greedy = minor_stress_impact_gain +# lazy = minor_stress_impact_gain +# zealous = minor_stress_impact_gain +# dull = medium_stress_impact_gain +# } +# +# custom_tooltip = fp2_struggle.1002.physicianleaves +# +# remove_short_term_gold = minor_gold_value #books are really expensive in this early period +# +# if = { +# limit = { has_lifestyle = learning_lifestyle } +# add_learning_lifestyle_xp = medium_lifestyle_experience +# } +# +# if = { +# limit = { exists = scope:scoped_physician } #your physician still gets disappointed in you +# scope:scoped_physician = { +# add_opinion = { +# target = root +# opinion = -10 +# modifier = disappointed_opinion +# } +# } +# } +# +# duel = { #this duel is difficult - it's mostly an option for extremely learned or overconfident rulers. +# skill = learning +# value = high_skill_rating +# +# 20 = { +# compare_modifier = { +# value = scope:duel_value +# multiplier = 2 +# } +# send_interface_toast = { +# title = reading_hippocrates_toast.success #You can read greek! +# left_icon = root +# root = { +# add_character_modifier = { +# modifier = medical_insights_modifier +# years = 20 +# } +# } +# } +# } +# 20 = { +# compare_modifier = { +# value = scope:duel_value +# multiplier = -1 +# } +# send_interface_toast = { +# title = reading_hippocrates_toast.failure #apparently, your Greek skills aren't all you cranked them up to be. +# left_icon = root +# root = { +# add_character_modifier = { +# modifier = cannot_read_greek_modifier +# years = 20 +# } +# } +# } +# } +# } +# } +# +# option = { #I will send you back from whence you came...in chains. +# name = fp2_struggle.1002.d +# +# ai_chance = { #but vengeful ones sure love it! +# base = 10 +# ai_value_modifier = { +# ai_vengefulness = 0.8 +# ai_honor = -0.2 +# } +# } +# +# stress_impact = { +# #Caring, carefree or just characters won't do this +# generous = minor_stress_impact_gain +# gregarious = minor_stress_impact_gain +# just = minor_stress_impact_gain +# trusting = minor_stress_impact_gain +# compassionate = major_stress_impact_gain +# forgiving = major_stress_impact_gain +# +# #But arbitrary bastards love it +# arbitrary = minor_stress_impact_loss +# } +# +# scope:great_physician = { #the polymath, naturally, gets sad that you send him back to his disgruntled former employer. +# add_opinion = { +# target = root +# opinion = -40 +# modifier = left_me_to_wolves_opinion +# } +# } +# +# if = { #but your current physician is very happy! +# limit = { exists = scope:scoped_physician } +# scope:scoped_physician = { +# add_opinion = { +# target = root +# opinion = 20 +# modifier = let_me_keep_my_job_opinion +# } +# } +# } +# +# scope:neighboring_ruler = { #as is the neighboring ruler, especially if he is your friend +# if = { +# limit = { +# has_relation_friend = root +# } +# add_opinion = { +# target = root +# modifier = strengthened_friendship_opinion +# } +# } +# else = { +# progress_towards_friend_effect = { +# REASON = friend_returned_refugee +# CHARACTER = root +# OPINION = 0 +# } +# } +# } +# +# add_dread = minor_dread_gain #you gain some dread for doing this, naturally +# +# custom_tooltip = fp2_struggle.1001.physician_imprisoned +# hidden_effect = { +# if = { +# limit = { +# scope:neighboring_ruler = { +# is_ruler = yes +# } +# } +# scope:great_physician = { #while the polymath gets to languish in a dungeon +# hard_imprison_character_effect = { +# TARGET = this +# IMPRISONER = scope:neighboring_ruler +# } +# } +# } +# else = { +# scope:great_physician = { +# silent_disappearance_effect = yes +# } +# } +# } +# } +# +# option = { #Wash my hands? Are you insane?" +# name = fp2_struggle.1002.e +# +# trigger = { #This only triggers for Christianity and similar faiths +# faith = { +# has_doctrine_parameter = theocracy_temple_lease +# NOR = { +# has_doctrine_parameter = legalism_modified_law_costs +# has_doctrine_parameter = literalist_debate_enabled +# } +# } +# NOT = { has_lifestyle = learning_lifestyle } #So that this doesn't fire if you have the "Wash your hands" perk +# } +# +# ai_chance = { #and fanatics don't care about hygiene...apparently +# base = 10 +# ai_value_modifier = { +# ai_zeal = 0.8 +# ai_rationality = -0.8 +# } +# } +# +# stress_impact = { +# # Innovative or nervous chracters wouldn't pick this option. +# ambitious = minor_stress_impact_gain +# craven = minor_stress_impact_gain +# +# #But stubborn or content ones would +# content = minor_stress_impact_loss +# lazy = minor_stress_impact_loss +# stubborn = minor_stress_impact_loss +# eccentric = minor_stress_impact_loss +# } +# +# custom_tooltip = fp2_struggle.1002.physicianleaves +# +# if = { #your physician, again, loves that they get to keep their job +# limit = { exists = scope:scoped_physician } +# scope:scoped_physician = { +# add_opinion = { +# target = root +# opinion = 20 +# modifier = let_me_keep_my_job_opinion +# } +# } +# } +# +# add_piety = medium_piety_gain #and your faith rewards you for turning away the heathen +# +# add_character_modifier = { #but you're rolling in filth +# modifier = rolling_in_filth_modifier +# years = 5 +# } +# } +# +# +# +# option = { #Begone, innovation should only come from God. +# name = fp2_struggle.1002.f +# +# trigger = { +# current_year >= 1065 #because this option refers to developments in islam that happened within the Seljuk empire +# faith = { #it checks for doctrines, rather than islam itself, to make the event more dynamic +# OR = { +# has_doctrine_parameter = legalism_modified_law_costs +# has_doctrine_parameter = literalist_debate_enabled +# has_doctrine_parameter = religious_legal_pronouncements_law_cost_reduction +# } +# } +# } +# +# ai_chance = { #zealous AIs pick this, but it's not entirely unrational - just hostile to new ideas. +# base = 10 +# ai_value_modifier = { +# ai_zeal = 0.8 +# ai_rationality = -0.2 +# } +# } +# +# stress_impact = { +# #True rationalists abhor this option +# ambitious = medium_stress_impact_gain +# diligent = medium_stress_impact_gain +# +# #But stubborn and fanatical ones like it +# content = minor_stress_impact_loss +# stubborn = minor_stress_impact_loss +# zealous = minor_stress_impact_loss +# eccentric = minor_stress_impact_loss +# } +# +# custom_tooltip = fp2_struggle.1002.physicianleaves +# +# if = { #your physician, again, loves that they get to keep their job +# limit = { exists = scope:scoped_physician } +# scope:scoped_physician = { +# add_opinion = { +# target = root +# opinion = 20 +# modifier = let_me_keep_my_job_opinion +# } +# } +# } +# +# scope:neighboring_ruler = { #the neighboring ruler likes that you rebuked the polymath, at least +# add_opinion = { +# target = root +# opinion = 10 +# modifier = rejected_my_enemy_opinion +# } +# } +# +# add_character_modifier = { #but you draw closer to the Nizamiyah movement, rejecting innovation. +# modifier = anti_innovation_muslim_modifier +# years = 15 +# } +# } +#} +# +#################################### +## Soul of Iron +## By Ola Jentzsch +#################################### +#fp2_struggle.1010 = { # Soul of Iron, by Ola Jentzsch +# type = character_event +# title = fp2_struggle.1010.t +# desc = fp2_struggle.1010.desc +# theme = realm +# +# left_portrait = { +# character = root +# animation = happiness #root smells an opportunity! +# } +# right_portrait = { +# character = scope:great_swordsmith +# animation = scheme #he's a scheming bastard, kinda +# } +# +# +# trigger = { #The province must also be involved in the Iberian struggle +# is_ai = no +# has_fp2_dlc_trigger = yes +# any_held_county = { +# any_county_province = { +# has_building_or_higher = blacksmiths_01 #This event needs ROOT to have a blacksmith building +# } +# } +# fp2_character_involved_in_struggle_trigger = yes +# } +# +# cooldown = { years = 100 } +# +# immediate = { +# +# random_held_county = { #this is to find the county that has the blacksmith +# limit = { +# any_county_province = { +# has_building_or_higher = blacksmiths_01 +# } +# } +# save_scope_as = blacksmith_county #this scopes it - note that it might be the same county as toledo_county; that is intentional. +# } +# +# title:b_toledo = { save_scope_as = toledo_holding } #this is used in the localization +# +# title:c_toledo = { save_scope_as = toledo_county } #this is used in option c, as well as the localization +# +# create_character = { #this is the mighty blacksmith that the event needs +# age = { 45 55 } #he's experienced and aging, but not old +# location = root.capital_province +# gender_female_chance = root_faith_dominant_gender_female_chance #could be female, if given the right context. +# trait = intellect_good_3 #he's a genius craftsman +# trait = strong #and a blacksmith... +# trait = arrogant #he's supremely gifted, but also extremely arrogant, Fëanor basically +# random_traits_list = { #the rest of his questionable personality +# count = 2 +# ambitious = {} +# diligent = {} +# callous = {} +# greedy = {} +# patient = {} +# stubborn = {} +# vengeful = {} +# } +# random_traits_list = { #something fun to give him character! +# count = 1 +# one_eyed = {} +# scarred = {} +# } +# culture = scope:toledo_county.culture +# religion = religion:catholic_religion +# dynasty = none +# save_scope_as = great_swordsmith #this saves him as a scope so we can get nice effects to bounce off him! +# } +# +# hidden_effect = { +# scope:great_swordsmith = { +# add_character_modifier = { +# modifier = master_smith_npc_modifier #this is a neat modifier he gets as a master smith. it's pretty powerful, giving a boost to Stewardship and gold income, but since he's an NPC, it doesn't matter much. It's mostly to create flavor if the player actually examines his stats. +# } +# } +# } +# } +# +# +# option = { #Let us make a compromise +# name = fp2_struggle.1010.a +# flavor = toledo_compromise_flavor +# +# trigger = { #root needs to control Toledo, and it needs to have a blacksmith building. +# any_held_county = { +# any_county_province = { +# barony = title:b_toledo +# has_building_or_higher = blacksmiths_01 +# } +# } +# scope:toledo_county = { #so that this option doesn't fire twice +# NOT = { has_county_modifier = toledo_steel_county_modifier } +# } +# } +# +# ai_chance = { #Smart, patient AIs pick this option, others are more likely to go for a bolder approach. +# base = 10 +# ai_value_modifier = { +# ai_rationality = 1 +# ai_honor = 0.5 +# ai_boldness = -0.5 +# ai_zeal = -0.5 +# } +# } +# +# stress_impact = { #arrogant or visionless rulers dislike this option +# arrogant = minor_stress_impact_gain +# callous = minor_stress_impact_gain +# content = minor_stress_impact_gain +# wrathful = minor_stress_impact_gain +# } +# +# remove_short_term_gold = major_gold_value #someone still has to be bribed here +# +# scope:toledo_county = { +# add_county_modifier = { +# modifier = toledo_steel_county_modifier +# } +# } +# +# scope:toledo_county = { +# add_county_modifier = { +# modifier = governance_1041_quarreling_guilds_modifier +# years = 20 +# } +# } +# } +# +# option = { #Whatever knowledge you possess, I shall draw it out. +# name = fp2_struggle.1010.b +# flavor = fp2_struggle.1010.swordsmith_imprisoned +# +# trigger = { +# OR = { +# has_trait = schemer +# has_trait = torturer +# has_trait = paranoid +# dread >= high_dread +# } +# NAND = { +# any_held_county = { +# any_county_province = { +# barony = title:b_toledo +# has_building_or_higher = blacksmiths_01 +# } +# } +# scope:toledo_county = { #so that this option doesn't fire twice +# NOT = { has_county_modifier = toledo_steel_county_modifier } +# } +# } +# } +# +# +# scope:great_swordsmith = { #while the great swordsmiths gets to languish in a dungeon +# hard_imprison_character_effect = { +# TARGET = this +# IMPRISONER = root +# } +# } +# +# +# ai_chance = { #Compassionate or just AI wouldn't do this, but hateful paranoid psychopats, sure! Perhaps the smith even deserved it... +# base = 10 +# ai_value_modifier = { +# ai_vengefulness = 1 +# ai_honor = -1 +# } +# } +# +# stress_impact = { #this is not what a Buddha would do +# compassionate = major_stress_impact_gain +# generous = medium_stress_impact_gain +# gregarious = medium_stress_impact_gain +# just = medium_stress_impact_gain +# } +# +# add_dread = minor_dread_gain #you gain some dread for doing this, naturally +# +# scope:great_swordsmith = { +# add_character_modifier = { +# modifier = recently_tortured +# years = 5 +# } +# } +# +# +# add_character_modifier = { +# modifier = tortured_smith_spilling_secrets_modifier +# years = 25 +# } +# +# custom_tooltip = fp2_struggle.1010.compassionate_courtiers +# hidden_effect = { #Compassionate or righteous courtiers will secretly dislike this +# every_courtier = { +# IF = { +# limit = { +# OR = { +# has_trait = compassionate +# has_trait = just +# } +# } +# add_opinion = { +# target = root +# opinion = -10 +# modifier = cruelty_opinion +# } +# } +# } +# } +# } +# +# option = { #You shall have it, if you make swords for my armies +# name = fp2_struggle.1010.c +# flavor = fp2_struggle.1010.smithgoesaway +# +# ai_chance = { #ambitious AIs pick this option +# base = 10 +# ai_value_modifier = { +# ai_energy = 0.7 +# ai_vengefulness = 0.7 +# } +# } +# +# stress_impact = { +# content = minor_stress_impact_gain +# craven = minor_stress_impact_gain +# greedy = minor_stress_impact_gain +# just = minor_stress_impact_gain +# } +# +# remove_treasury_or_gold = major_treasury_or_gold_value #this guy is expensive! +# +# add_character_modifier = { #as promised, your armies gets equipped with Toledo steel! +# modifier = toledo_steel_armaments_modifier +# years = 50 +# } +# +# scope:blacksmith_county = { #the great smith usurps the blacksmiths' guild, with your blessing +# add_county_modifier = { +# modifier = county_corruption_uncooperative_guilds_modifier +# years = 10 +# } +# } +# +# custom_tooltip = fp2_struggle.1010.paranoid_rivals #your neighbors gets really paranoid when they learn about this +# hidden_effect = { +# struggle:iberian_struggle = { +# every_involved_ruler = { +# limit = { +# NOT = { is_allied_to = root } +# character_is_realm_neighbor = root +# } +# add_opinion = { +# target = root +# opinion = -20 +# modifier = threatened_by_buildup_opinion +# } +# } +# } +# } +# } +# +# option = { #Make me Iberia's finest blade, and all the smithies shall be yours +# name = fp2_struggle.1010.d +# +# flavor = fp2_struggle.1010.smithmakesweapon #the master swordsmiths stays in your court for the time being, to make the great sword he promised you. +# +# add_courtier = scope:great_swordsmith +# +# hidden_effect = { +# scope:great_swordsmith = { +# set_knight_status = forbid #this is to prevent him being auto-turned into a knight during his stay, as he tends to get quite high prowess. The player can still make him a knight manually if they insist on it. +# } +# } +# +# ai_chance = { #Self-absorbed AIs pick this option +# base = 10 +# ai_value_modifier = { +# ai_greed = 0.7 +# ai_boldness = 0.7 +# } +# } +# +# stress_impact = { #this is an extravagant option, not for the humble or temperate - but just people don't like it either, since it still lets the blacksmith usurp the guilds. +# humble = minor_stress_impact_gain +# just = minor_stress_impact_gain +# temperate = minor_stress_impact_gain +# } +# +# remove_short_term_gold = major_gold_value #this guy knows what he's worth! +# +# scope:blacksmith_county = { #the guild gets usurped by the arrogant master smith! +# add_county_modifier = { +# modifier = county_corruption_uncooperative_guilds_modifier +# years = 10 +# } +# } +# +# hidden_effect = { #this looks weird in the tooltip otherwise! +# random_list = { #I recommend increasing the odds for the special cool sword when testing this event! +# 25 = { #You have a 25% chance of getting a really cool sword here! +# trigger = { is_ai = no } #this option is just for players, to create less inflation on awesume swords. +# trigger_event = { +# id = fp2_struggle.1011 +# days = { 30 60 } +# } +# } +# 75 = { #but you can still get a nice toledo blade! +# trigger_event = { +# id = fp2_struggle.1012 +# days = { 30 60 } +# } +# } +# } +# } +# } +# +# option = { #I will not anger the guilds for your vanity. +# name = fp2_struggle.1010.e +# +# flavor = fp2_struggle.1010.swordsmith_leaves +# +# ai_chance = { #Lazy or worried AI pick this option +# base = 10 +# ai_value_modifier = { +# ai_energy = -0.7 +# ai_greed = 0.3 +# ai_boldness = -0.5 +# } +# } +# +# stress_impact = { #this is not the option for opportunists, but a good option for some humble stress loss +# ambitious = major_stress_impact_gain +# diligent = medium_stress_impact_gain +# content = minor_stress_impact_loss +# humble = minor_stress_impact_loss +# temperate = minor_stress_impact_loss +# paranoid = minor_stress_impact_loss +# } +# +# scope:blacksmith_county = { #You curry favor with the blacksmith's guild +# add_county_modifier = { +# modifier = guild_rights_protected_modifier +# years = 20 +# } +# } +# +# scope:great_swordsmith = { +# add_opinion = { +# target = root +# modifier = insulted_opinion +# } +# } +# } +#} +# +#fp2_struggle.1011 = { # The Masterwork, by Ola Jentzsch +# type = character_event +# title = fp2_struggle.1011.t +# desc = fp2_struggle.1011.desc +# theme = realm +# +# left_portrait = { +# character = root +# animation = admiration +# } +# right_portrait = { +# character = scope:great_swordsmith +# animation = marshal +# } +# +# artifact = { # To display the artifact in the event-window +# target = scope:amazing_toledo_sword +# position = lower_right_portrait +# } +# +# trigger = { +# has_fp2_dlc_trigger = yes +# scope:great_swordsmith = { +# is_available_healthy_ai_adult = yes +# } +# } +# +# immediate = { +# +# save_scope_as = owner +# set_artifact_rarity_illustrious = yes +# +# create_artifact = { +# name = awesome_toledo_sword_name +# creator = scope:great_swordsmith +# description = awesome_toledo_sword_desc +# visuals = sword +# type = sword +# modifier = artifact_amazing_toledo_sword_modifier +# wealth = scope:wealth # This comes from the scripted effect above +# quality = scope:quality # This comes from the scripted effect above +# save_scope_as = amazing_toledo_sword # Allows the sword to be accessed via scope after its creation +# } +# } +# +# option = { #Martiello, the hammer +# name = fp2_struggle.1011.a +# +# trigger = { +# root = { +# culture = { has_cultural_pillar = language_iberian } +# } +# } +# +# scope:amazing_toledo_sword = { set_artifact_name = martiello_name } +# +# custom_tooltip = fp2_struggle.1011.swordsmith_leaves +# hidden_effect = { +# remove_courtier_or_guest = scope:great_swordsmith +# } +# } +# +# option = { #Tiniebra, the darkness +# name = fp2_struggle.1011.b +# +# trigger = { +# root = { +# culture = { has_cultural_pillar = language_iberian } +# } +# } +# +# scope:amazing_toledo_sword = { set_artifact_name = tiniebra_name } +# +# custom_tooltip = fp2_struggle.1011.swordsmith_leaves +# hidden_effect = { +# remove_courtier_or_guest = scope:great_swordsmith +# } +# } +# +# option = { #Vermejo, the red +# name = fp2_struggle.1011.c +# +# trigger = { +# root = { +# culture = { has_cultural_pillar = language_iberian } +# } +# } +# +# scope:amazing_toledo_sword = { set_artifact_name = vermejo_name } +# +# custom_tooltip = fp2_struggle.1011.swordsmith_leaves +# hidden_effect = { +# remove_courtier_or_guest = scope:great_swordsmith +# } +# } +# +# option = { #Jargonça, like the blue gemstone. +# name = fp2_struggle.1011.d +# +# trigger = { +# root = { +# culture = { has_cultural_pillar = language_iberian } +# } +# } +# +# scope:amazing_toledo_sword = { set_artifact_name = jargonca_name } +# +# custom_tooltip = fp2_struggle.1011.swordsmith_leaves +# hidden_effect = { +# remove_courtier_or_guest = scope:great_swordsmith +# } +# } +# +# option = { #Suhayl, the glorious. +# name = fp2_struggle.1011.e +# +# trigger = { +# root = { +# culture = { has_cultural_pillar = language_arabic } +# } +# } +# +# scope:amazing_toledo_sword = { set_artifact_name = suhayl_name } +# +# custom_tooltip = fp2_struggle.1011.swordsmith_leaves +# hidden_effect = { +# remove_courtier_or_guest = scope:great_swordsmith +# } +# } +# +# option = { #al-Battar, the cutter +# name = fp2_struggle.1011.f +# +# trigger = { +# root = { +# culture = { has_cultural_pillar = language_arabic } +# } +# } +# +# scope:amazing_toledo_sword = { set_artifact_name = albattar_name } +# +# custom_tooltip = fp2_struggle.1011.swordsmith_leaves +# hidden_effect = { +# remove_courtier_or_guest = scope:great_swordsmith +# } +# } +# +# option = { #Qazeeb, of the strong handle +# name = fp2_struggle.1011.g +# +# trigger = { +# root = { +# culture = { has_cultural_pillar = language_arabic } +# } +# } +# +# scope:amazing_toledo_sword = { set_artifact_name = qazeeb_name } +# +# custom_tooltip = fp2_struggle.1011.swordsmith_leaves +# hidden_effect = { +# remove_courtier_or_guest = scope:great_swordsmith +# } +# } +# +# option = { #Zumurrud, like the blinding emerald +# name = fp2_struggle.1011.h +# +# trigger = { +# root = { +# culture = { has_cultural_pillar = language_arabic } +# } +# } +# +# scope:amazing_toledo_sword = { set_artifact_name = zumurrud_name } +# +# custom_tooltip = fp2_struggle.1011.swordsmith_leaves +# hidden_effect = { +# remove_courtier_or_guest = scope:great_swordsmith +# } +# } +# +# option = { #Ortzi, like the thunder +# name = fp2_struggle.1011.i +# +# trigger = { +# root = { +# culture = { has_cultural_pillar = language_basque } +# } +# } +# +# scope:amazing_toledo_sword = { set_artifact_name = ortzi_name } +# +# custom_tooltip = fp2_struggle.1011.swordsmith_leaves +# hidden_effect = { +# remove_courtier_or_guest = scope:great_swordsmith +# } +# } +# +# option = { #Gaueko, the night spirit +# name = fp2_struggle.1011.j +# +# trigger = { +# root = { +# culture = { has_cultural_pillar = language_basque } +# } +# } +# +# scope:amazing_toledo_sword = { set_artifact_name = gaueko_name } +# +# custom_tooltip = fp2_struggle.1011.swordsmith_leaves +# hidden_effect = { +# remove_courtier_or_guest = scope:great_swordsmith +# } +# } +# +# option = { #Gorri, the red one +# name = fp2_struggle.1011.k +# +# trigger = { +# root = { +# culture = { has_cultural_pillar = language_basque } +# } +# } +# +# scope:amazing_toledo_sword = { set_artifact_name = gorri_name } +# +# custom_tooltip = fp2_struggle.1011.swordsmith_leaves +# hidden_effect = { +# remove_courtier_or_guest = scope:great_swordsmith +# } +# } +# +# option = { #Aiztoto, the little knife +# name = fp2_struggle.1011.l +# +# trigger = { +# root = { +# culture = { has_cultural_pillar = language_basque } +# } +# } +# +# scope:amazing_toledo_sword = { set_artifact_name = aiztoto_name } +# +# custom_tooltip = fp2_struggle.1011.swordsmith_leaves +# hidden_effect = { +# remove_courtier_or_guest = scope:great_swordsmith +# } +# } +# +# option = { #Escremire, the fencer +# name = fp2_struggle.1011.m +# +# trigger = { +# root = { +# culture = { has_cultural_pillar = language_occitano_romance } +# } +# } +# +# scope:amazing_toledo_sword = { set_artifact_name = escremire_name } +# +# custom_tooltip = fp2_struggle.1011.swordsmith_leaves +# hidden_effect = { +# remove_courtier_or_guest = scope:great_swordsmith +# } +# } +# +# option = { #Folha, the leaf +# name = fp2_struggle.1011.n +# +# trigger = { +# root = { +# culture = { has_cultural_pillar = language_occitano_romance } +# } +# } +# +# scope:amazing_toledo_sword = { set_artifact_name = folha_name } +# +# custom_tooltip = fp2_struggle.1011.swordsmith_leaves +# hidden_effect = { +# remove_courtier_or_guest = scope:great_swordsmith +# } +# } +# +# option = { #Proeza, valour +# name = fp2_struggle.1011.o +# +# trigger = { +# root = { +# culture = { has_cultural_pillar = language_occitano_romance } +# } +# } +# +# scope:amazing_toledo_sword = { set_artifact_name = proeza_name } +# +# custom_tooltip = fp2_struggle.1011.swordsmith_leaves +# hidden_effect = { +# remove_courtier_or_guest = scope:great_swordsmith +# } +# } +# +# option = { #Trebalhar, the tormenter +# name = fp2_struggle.1011.p +# +# trigger = { +# root = { +# culture = { has_cultural_pillar = language_occitano_romance } +# } +# } +# +# scope:amazing_toledo_sword = { set_artifact_name = trebalhar_name } +# +# custom_tooltip = fp2_struggle.1011.swordsmith_leaves +# hidden_effect = { +# remove_courtier_or_guest = scope:great_swordsmith +# } +# } +# +# option = { #Sufax, like the great hero in days of old +# name = fp2_struggle.1011.q +# +# trigger = { +# root = { +# culture = { has_cultural_pillar = language_berber } +# } +# } +# +# scope:amazing_toledo_sword = { set_artifact_name = sufax_name } +# +# custom_tooltip = fp2_struggle.1011.swordsmith_leaves +# hidden_effect = { +# remove_courtier_or_guest = scope:great_swordsmith +# } +# } +# +# option = { #Toumellalt, the white one. +# name = fp2_struggle.1011.r +# +# trigger = { +# root = { +# culture = { has_cultural_pillar = language_berber } +# } +# } +# +# scope:amazing_toledo_sword = { set_artifact_name = toumellalt_name } +# +# custom_tooltip = fp2_struggle.1011.swordsmith_leaves +# hidden_effect = { +# remove_courtier_or_guest = scope:great_swordsmith +# } +# } +# +# option = { #Ayugu, the yoke. +# name = fp2_struggle.1011.s +# +# trigger = { +# root = { +# culture = { has_cultural_pillar = language_berber } +# } +# } +# +# scope:amazing_toledo_sword = { set_artifact_name = ayugu_name } +# +# custom_tooltip = fp2_struggle.1011.swordsmith_leaves +# hidden_effect = { +# remove_courtier_or_guest = scope:great_swordsmith +# } +# } +# +# option = { #Well, "Ironsoul" of course +# name = fp2_struggle.1011.u +# +# trigger = { +# root = { +# culture = { +# NOT = { +# has_cultural_pillar = language_iberian +# has_cultural_pillar = language_arabic +# has_cultural_pillar = language_basque +# has_cultural_pillar = language_occitano_romance +# has_cultural_pillar = language_berber +# } +# } +# } +# } +# +# scope:amazing_toledo_sword = { set_artifact_name = ironsoul_name } +# +# custom_tooltip = fp2_struggle.1011.swordsmith_leaves +# hidden_effect = { +# remove_courtier_or_guest = scope:great_swordsmith +# } +# } +# +# option = { #I quite like "Mistletoe"... +# name = fp2_struggle.1011.v +# +# trigger = { +# root = { +# culture = { +# NOT = { +# has_cultural_pillar = language_iberian +# has_cultural_pillar = language_arabic +# has_cultural_pillar = language_basque +# has_cultural_pillar = language_occitano_romance +# has_cultural_pillar = language_berber +# } +# } +# } +# } +# +# scope:amazing_toledo_sword = { set_artifact_name = mistletoe_name } +# +# custom_tooltip = fp2_struggle.1011.swordsmith_leaves +# hidden_effect = { +# remove_courtier_or_guest = scope:great_swordsmith +# } +# } +# +# option = { #Moor-cleaver, what else? +# name = fp2_struggle.1011.w +# +# trigger = { +# OR = { has_religion = religion:eastern_orthodox_religion has_religion = religion:catholic_religion has_religion = religion:protestant_religion } +# root = { +# culture = { +# NOT = { +# has_cultural_pillar = language_iberian +# has_cultural_pillar = language_arabic +# has_cultural_pillar = language_basque +# has_cultural_pillar = language_occitano_romance +# has_cultural_pillar = language_berber +# } +# } +# } +# } +# +# stress_impact = { +# compassionate = minor_stress_impact_gain +# } +# +# scope:amazing_toledo_sword = { set_artifact_name = moormurder_name } +# +# custom_tooltip = fp2_struggle.1011.swordsmith_leaves +# hidden_effect = { +# remove_courtier_or_guest = scope:great_swordsmith +# } +# } +# +# option = { #Usurper's blade seem fitting, giving what we did to the guilds... +# name = fp2_struggle.1011.x +# +# trigger = { +# root = { +# culture = { +# NOT = { +# has_cultural_pillar = language_iberian +# has_cultural_pillar = language_arabic +# has_cultural_pillar = language_basque +# has_cultural_pillar = language_occitano_romance +# has_cultural_pillar = language_berber +# } +# } +# } +# } +# +# scope:amazing_toledo_sword = { set_artifact_name = usurperblade_name } +# +# custom_tooltip = fp2_struggle.1011.swordsmith_leaves +# hidden_effect = { +# remove_courtier_or_guest = scope:great_swordsmith +# } +# } +#} +# +#fp2_struggle.1012 = { # Soul of Iron (3), by Ola Jentzsch +# type = character_event +# title = fp2_struggle.1012.t +# desc = fp2_struggle.1012.desc +# theme = realm +# +# left_portrait = { +# character = root +# animation = admiration +# } +# right_portrait = { +# character = scope:great_swordsmith +# animation = marshal +# } +# +# artifact = { # To display the artifact in the event-window +# target = scope:toledo_sword +# position = lower_right_portrait +# } +# +# trigger = { +# has_fp2_dlc_trigger = yes +# scope:great_swordsmith = { +# is_available_healthy_ai_adult = yes +# } +# } +# +# immediate = { +# +# save_scope_as = owner +# set_artifact_rarity_masterwork = yes +# +# create_artifact = { +# name = toledo_sword_name +# creator = scope:great_swordsmith +# description = toledo_sword_desc +# visuals = sword +# type = sword +# modifier = artifact_masterwork_toledo_sword_modifier +# wealth = scope:wealth # This comes from the scripted effect above +# quality = scope:quality # This comes from the scripted effect above +# save_scope_as = toledo_sword # Allows the sword to be accessed via scope after its creation +# } +# } +# +# option = { #It is...exquisite. You may go in peace. +# name = fp2_struggle.1012.a +# flavor = fp2_struggle.1012.swordsmith_leaves +# +# ai_chance = { #Only greedy AI wouldn't pick this option. +# base = 10 +# ai_value_modifier = { +# ai_greed = -1 +# } +# } +# +# remove_courtier_or_guest = scope:great_swordsmith +# } +# +# option = { #It is as promised. May I not convince you to stay and serve me? +# name = fp2_struggle.1012.b +# +# ai_chance = { #Only greedy would pick this option. +# base = 10 +# ai_value_modifier = { +# ai_greed = 1 +# } +# } +# +# custom_tooltip = fp2_struggle.1012_swordsmith_stays +# +# remove_treasury_or_gold = major_treasury_or_gold_value #this guy is expensive! +# } +#} +# +#################################### +## Death of a Councilman +## By Ola Jentzsch +#################################### +#scripted_trigger fp2_struggle.1020_minority_councillor_faith_trigger = { +# save_temporary_scope_as = fp2_struggle_1020_temp_councillor +# is_ai = yes +# NOT = { is_spouse_of = root } +# root.capital_county.faith = { +# faith_hostility_level = { +# target = scope:fp2_struggle_1020_temp_councillor.faith +# value >= faith_hostile_level +# } +# } +#} +# +#fp2_struggle.1020 = { +# type = character_event +# title = fp2_struggle.1020.t +# desc = { +# desc = fp2_struggle.1020_desc_opening +# first_valid = { +# triggered_desc = { +# trigger = { +# scope:minority_councillor = { +# death_reason = death_beaten_by_mob +# } +# } +# desc = fp2_struggle.1020_desc_beaten_by_mob +# } +# triggered_desc = { +# trigger = { +# scope:minority_councillor = { +# death_reason = death_burned_by_mob +# } +# } +# desc = fp2_struggle.1020_desc_burned_by_mob +# } +# triggered_desc = { +# trigger = { +# scope:minority_councillor = { +# death_reason = death_hanged_and_disemboweled_by_mob +# } +# } +# desc = fp2_struggle.1020_desc_hanged_and_disemboweled_by_mob +# } +# triggered_desc = { +# trigger = { +# scope:minority_councillor = { +# death_reason = death_crucified_by_mob +# } +# } +# desc = fp2_struggle.1020_desc_crucified_by_mob +# } +# triggered_desc = { +# trigger = { +# scope:minority_councillor = { +# death_reason = death_defenestrated_by_mob +# } +# } +# desc = fp2_struggle.1020_desc_defenestrated_by_mob +# } +# triggered_desc = { +# trigger = { +# scope:minority_councillor = { +# death_reason = death_molten_silver_by_mob +# } +# } +# desc = fp2_struggle.1020_desc_molten_silver_by_mob +# } +# triggered_desc = { +# trigger = { +# scope:minority_councillor = { +# death_reason = death_torn_to_pieces_by_mob +# } +# } +# desc = fp2_struggle.1020_desc_torn_to_pieces_by_mob +# } +# } +# first_valid = { +# triggered_desc = { +# trigger = { +# scope:councillor_executor = { +# exists = var:relative_created +# } +# } +# desc = fp2_struggle.1020_desc_councillor_had_family +# } +# triggered_desc = { +# trigger = { +# scope:minority_councillor = { +# fp2_struggle.1020_minority_councillor_faith_trigger = yes +# } +# } +# desc = fp2_struggle.1020_desc_councillor_had_no_family_faith +# } +# } +# } +# +# theme = dread +# cooldown = { years = 15 } +# override_background = { reference = council_chamber } +# +# left_portrait = { +# character = root +# animation = disbelief +# } +# right_portrait = { +# character = scope:councillor_executor +# animation = anger +# } +# +# lower_left_portrait = scope:minority_councillor +# +# +# trigger = { +# has_fp2_dlc_trigger = yes +# +# any_councillor = { fp2_struggle.1020_minority_councillor_faith_trigger = yes } +# +# capital_county = { county_control < low_county_control_limit } #root's capital having low control isn't strictly necessary, but adds to the emergent feeling here +# } +# +# immediate = { +# +# random_councillor = { #this is the dead councillor +# limit = { fp2_struggle.1020_minority_councillor_faith_trigger = yes } +# save_scope_as = minority_councillor +# } +# +# capital_county = { save_scope_as = unrest_capital } #so we can use the capital for loc +# +# scope:minority_councillor = { #and this is how they met their untimely end +# random_list = { +# 10 = { +# death = { +# death_reason = death_beaten_by_mob +# } +# } +# 10 = { +# death = { +# death_reason = death_burned_by_mob +# } +# } +# 20 = { +# death = { +# death_reason = death_hanged_and_disemboweled_by_mob +# } +# } +# 20 = { +# death = { +# death_reason = death_crucified_by_mob +# } +# } +# 10 = { +# death = { +# death_reason = death_defenestrated_by_mob +# } +# } +# 20 = { +# death = { +# death_reason = death_molten_silver_by_mob +# } +# } +# 10 = { +# death = { +# death_reason = death_torn_to_pieces_by_mob +# } +# } +# } +# } +# +# if = { #now let's see if there's any relative of the late councillor that could be considered relevant! +# limit = { +# any_powerful_vassal = { +# is_ai = yes +# is_close_or_extended_family_of = scope:minority_councillor +# is_powerful_vassal = yes +# } +# } +# random_powerful_vassal = { +# limit = { +# is_ai = yes +# is_close_or_extended_family_of = scope:minority_councillor +# is_powerful_vassal = yes +# } +# save_scope_as = councillor_executor +# set_variable = relative_created #this variable is for use in triggers later +# } +# } +# +# else_if = { +# limit = { +# any_powerful_vassal = { +# is_ai = yes +# is_close_family_of = scope:minority_councillor +# } +# } +# random_powerful_vassal = { +# limit = { +# is_ai = yes +# is_close_family_of = scope:minority_councillor +# } +# save_scope_as = councillor_executor +# set_variable = relative_created +# } +# } +# +# else_if = { +# limit = { +# any_powerful_vassal = { +# is_ai = yes +# is_close_or_extended_family_of = scope:minority_councillor +# } +# } +# random_powerful_vassal = { +# limit = { +# is_ai = yes +# is_close_or_extended_family_of = scope:minority_councillor +# } +# save_scope_as = councillor_executor +# set_variable = relative_created +# } +# } +# +# else_if = { +# limit = { +# any_neighboring_and_across_water_top_liege_realm_owner = { +# is_ai = yes +# is_close_or_extended_family_of = scope:minority_councillor +# OR = { +# fp2_character_involved_in_struggle_trigger = yes +# fp2_character_interloper_in_struggle_trigger = yes +# } +# } +# } +# random_neighboring_and_across_water_top_liege_realm_owner = { +# limit = { +# is_ai = yes +# is_close_or_extended_family_of = scope:minority_councillor +# OR = { +# fp2_character_involved_in_struggle_trigger = yes +# fp2_character_interloper_in_struggle_trigger = yes +# } +# } +# save_scope_as = councillor_executor +# set_variable = relative_created +# } +# } +# +# else_if = { +# limit = { +# any_ruler = { +# is_ai = yes +# is_close_or_extended_family_of = scope:minority_councillor +# } +# } +# random_ruler = { +# limit = { +# is_ai = yes +# is_close_or_extended_family_of = scope:minority_councillor +# } +# save_scope_as = councillor_executor +# set_variable = relative_created +# } +# } +# +# else_if = { +# limit = { +# any_courtier = { +# is_ai = yes +# is_close_or_extended_family_of = scope:minority_councillor +# } +# } +# random_courtier = { +# limit = { +# is_ai = yes +# is_close_or_extended_family_of = scope:minority_councillor +# } +# save_scope_as = councillor_executor +# set_variable = relative_created +# } +# } +# +# else = { #if no relevant relative was found, we instead create a community leader to fire option b with! +# create_character = { +# age = { 20 80 } +# location = root.capital_province +# template = merchant_template +# culture = scope:minority_councillor.culture +# faith = scope:minority_councillor.faith +# save_scope_as = councillor_executor +# } +# hidden_effect = { +# scope:councillor_executor = { #just because, I want more rotund people +# add_character_modifier = { +# modifier = obese_modifier +# } +# } +# } +# } +# +# scope:minority_councillor = { +# every_close_or_extended_family_member = { +# custom = all_family_members +# if = { +# limit = { +# is_ai = yes +# this != root +# } +# add_opinion = { +# target = root +# opinion = -20 +# modifier = blames_for_death_of_relative_opinion +# } +# } +# } +# } +# } +# +# +# option = { #Make amends to councillor's dynasty +# name = fp2_struggle.1020.a +# +# trigger = { +# scope:councillor_executor = { +# exists = var:relative_created +# } +# } +# +# ai_chance = { #rational and somewhat honorable AIs pick this option +# base = 10 +# ai_value_modifier = { +# ai_rationality = 0.5 +# ai_honor = 0.3 +# #but bold and vengeful ones do not +# ai_boldness = -0.5 +# ai_vengefulness = -0.5 +# } +# } +# +# stress_impact = { +# #arrogant characters don't care for this +# arrogant = minor_stress_impact_gain +# callous = minor_stress_impact_gain +# stubborn = minor_stress_impact_gain +# +# #socially awkward ones aren't fond of it either +# paranoid = minor_stress_impact_gain +# shy = minor_stress_impact_gain +# } +# +# add_character_modifier = { +# modifier = compelling_apology_modifier +# years = 10 +# } +# +# scope:minority_councillor = { +# every_close_or_extended_family_member = { +# custom = all_family_members +# if = { +# limit = { is_ai = yes } +# add_opinion = { +# target = root +# opinion = 10 +# modifier = made_amends_opinion +# } +# } +# } +# } +# } +# +# option = { #Pay restitution to councillor's people +# name = fp2_struggle.1020.b +# +# trigger = { +# scope:councillor_executor = { +# NOT = { exists = var:relative_created } +# } +# } +# +# ai_chance = { #compassionate AIs takes this option +# base = 10 +# ai_value_modifier = { +# ai_compassion = 0.7 +# ai_honor = 0.3 +# #but zealous and vengeful ones do not +# ai_zeal = -0.5 +# ai_vengefulness = -0.5 +# } +# } +# +# stress_impact = { +# #arrogant characters don't wanna do this +# arrogant = minor_stress_impact_gain +# callous = minor_stress_impact_gain +# stubborn = minor_stress_impact_gain +# +# #nor those who hate the people +# paranoid = minor_stress_impact_gain +# vengeful = minor_stress_impact_gain +# } +# +# remove_treasury_or_gold = medium_treasury_or_gold_value #restitution isn't free! +# +# add_character_modifier = { +# modifier = restitution_to_minorities_modifier +# years = 15 +# } +# } +# +# option = { #Hunt down the perpetrators +# name = fp2_struggle.1020.c +# +# ai_chance = { #energetic and vengeful AI picks this option. +# base = 10 +# ai_value_modifier = { +# ai_energy = 0.5 +# ai_vengefulness = 0.7 +# #but compassionate ones might not +# ai_compassion = -0.7 +# } +# } +# +# stress_impact = { #this is cruel and a lot of effort... +# compassionate = minor_stress_impact_gain +# forgiving = minor_stress_impact_gain +# lazy = minor_stress_impact_gain +# } +# +# +# add_character_modifier = { +# modifier = memorable_public_execution_modifier +# years = 10 +# } +# +# +# add_prestige = minor_prestige_gain +# +# if = { +# limit = { exists = var:relative_created } +# scope:councillor_executor = { +# add_opinion = { +# target = root +# opinion = 20 +# modifier = avenged_relative_opinion +# +# } +# } +# } +# } +# +# option = { #Restore order in the capital +# name = fp2_struggle.1020.d +# +# ai_chance = { #rational and compassionate AIs pick this option +# base = 10 +# ai_value_modifier = { +# ai_rationality = 0.9 +# ai_compassion = 0.3 +# #but bold and zealous ones do not +# ai_boldness = -0.5 +# ai_zeal = -0.5 +# } +# } +# +# stress_impact = { +# #cruel or lazy characters don't bother with this +# callous = minor_stress_impact_gain +# lazy = minor_stress_impact_gain +# sadistic = minor_stress_impact_gain +# +# #and vengeful ones would rather pursue revenge. +# vengeful = minor_stress_impact_gain +# } +# +# if = { +# limit = { exists = var:relative_created } +# scope:councillor_executor = { +# add_opinion = { +# target = root +# opinion = -10 +# modifier = ignored_demands_opinion +# } +# } +# } +# +# add_prestige = minor_prestige_gain +# +# root.capital_county = { change_county_control = medium_county_control_gain } +# } +#} +# +#################################### +## The Vision +## By Ola Jentzsch +#################################### +#fp2_struggle.1050 = { +# type = character_event +# title = fp2_struggle.1050.t +# desc = { +# first_valid = { +# desc = fp2_struggle.1050.desc_opening +# } +# first_valid = { +# triggered_desc = { +# trigger = { +# OR = { has_religion = religion:eastern_orthodox_religion has_religion = religion:catholic_religion has_religion = religion:protestant_religion } +# scope:visionary_spouse= { +# has_OR = { religion = religion:eastern_orthodox_religion religion = religion:catholic_religion religion = religion:protestant_religion } +# } +# } +# desc = fp2_struggle.1050.desc_christian +# } +# triggered_desc = { +# trigger = { +# has_religion = religion:islam_religion +# scope:visionary_spouse= { +# has_religion = religion:islam_religion +# } +# } +# desc = fp2_struggle.1050.desc_islamic +# } +# triggered_desc = { +# trigger = { +# has_religion = religion:folkgerman_religion +# scope:visionary_spouse= { +# has_religion = religion:folkgerman_religion +# } +# } +# desc = fp2_struggle.1050.desc_rampaging_barbarian_heathen +# } +# desc = fp2_struggle.1050.desc_non_barbarian_heathen +# } +# first_valid = { +# triggered_desc = { +# trigger = { +# root = { +# OR = { +# culture = culture:andalusian +# culture = culture:bedouin +# } +# } +# scope:visionary_spouse = { +# OR = { +# culture = culture:andalusian +# culture = culture:bedouin +# } +# } +# } +# desc = fp2_struggle.1050.desc_islamic_heritage +# } +# triggered_desc = { +# trigger = { +# has_religion = religion:catholic_religion +# scope:visionary_spouse= { +# has_religion = religion:catholic_religion +# } +# } +# desc = fp2_struggle.1050.desc_christian_bling_reference_drop +# } +# desc = fp2_struggle.1050.desc_middle_neutral_version +# } +# first_valid = { +# triggered_desc = { +# trigger = { +# scope:visionary_spouse = { +# OR = { +# has_relation_lover = root +# has_relation_soulmate = root +# } +# } +# } +# desc = fp2_struggle.1050.desc_love_and_warmth_ending +# } +# desc = fp2_struggle.1050.desc_no_love_and_warmth_ending +# } +# } +# +# theme = death +# override_background = { reference = battlefield } ## +# +# left_portrait = { +# character = root +# animation = disapproval +# } +# right_portrait = { +# character = scope:visionary_spouse +# animation = paranoia +# } +# +# +# trigger = { +# has_fp2_dlc_trigger = yes +# +# is_landed_or_landless_administrative = yes +# +# any_spouse = { is_courtier = yes } +# +# fp2_character_involved_in_struggle_trigger = yes +# +# struggle:iberian_struggle = { is_struggle_phase = struggle_iberia_phase_hostility } +# } +# +# cooldown = { #this event shouldn't fire too often, since the context with the spouse's dream is pretty specific. +# years = 100 +# } +# +# +# immediate = { +# +# random_spouse = { +# weight = { +# base = 1 +# modifier = { +# factor = 5 +# this = primary_spouse +# } +# } +# save_scope_as = visionary_spouse +# } +# +# scope:visionary_spouse = { +# add_character_modifier = { +# modifier = foreboding_visions_modifier +# years = 10 +# } +# } +# +# hidden_effect = { +# scope:visionary_spouse = { +# contract_disease_effect = { DISEASE = ill TREATMENT_EVENT = no } +# } +# } +# } +# +# option = { +# name = fp2_struggle.1050.a +# +# trigger = { +# faith = { +# OR = { +# has_doctrine_parameter = witchcraft_illegal +# has_doctrine_parameter = witchcraft_shunned +# } +# } +# } +# +# ai_chance = { #bold, vengeful and zealous AI goes for this option +# base = 10 +# ai_value_modifier = { +# ai_boldness = 0.5 +# ai_vengefulness = 0.7 +# ai_zeal = 0.7 +# ai_compassion = -1 #whereas compassionate, rational and honorable ones really, really doesn't +# ai_rationality = -1 +# ai_honor = -0.5 +# } +# } +# +# stress_impact = { +# compassionate = major_stress_impact_gain #compassionate people don't accuse their spouse of being a witch +# craven = minor_stress_impact_gain #cravens don't dare throw her in jail +# trusting = medium_stress_impact_gain #and trusting people don't accuse her either +# eccentric = minor_stress_impact_loss +# } +# +# custom_tooltip = fp2_struggle.1050.spouse_imprisoned #you throw your spouse into the dungeon for being a suspected witch +# hidden_effect = { +# scope:visionary_spouse = { +# hard_imprison_character_effect = { +# TARGET = this +# IMPRISONER = root +# } +# } +# } +# } +# +# option = { +# name = fp2_struggle.1050.b +# +# ai_chance = { #lazy zealous AI pick this option +# base = 10 +# ai_value_modifier = { +# ai_zeal = 0.8 +# ai_energy = -0.7 +# ai_vengefulness = -0.7 +# } +# } +# +# stress_impact = { +# cynical = minor_stress_impact_gain #cynics don't really put their faith in God +# } +# +# duel = { #this duel is root trying to make their spouse feel better. +# skill = diplomacy +# value = medium_skill_rating +# +# 20 = { +# compare_modifier = { +# value = scope:duel_value +# multiplier = 2 +# } +# modifier = { +# add = 15 +# has_trait = compassionate +# } +# modifier = { +# add = 20 +# has_trait = zealous +# } +# send_interface_toast = { +# title = comforting_spouse_visionary_toast.success +# left_icon = root +# right_icon = scope:visionary_spouse +# +# scope:visionary_spouse = { +# add_opinion = { +# target = root +# modifier = comforted_opinion +# } +# } +# custom_tooltip = fp2_struggle.1050.condition_might_improve +# hidden_effect = { +# scope:visionary_spouse = { +# recover_from_disease_effect = { DISEASE = ill } +# } +# } +# } +# } +# 20 = { +# compare_modifier = { +# value = scope:duel_value +# multiplier = -1 +# } +# modifier = { +# add = 20 +# has_trait = callous +# } +# modifier = { +# add = 10 +# has_trait = sadistic +# } +# send_interface_toast = { +# title = comforting_spouse_visionary.failure +# left_icon = root +# right_icon = scope:visionary_spouse +# +# scope:visionary_spouse = { +# add_opinion = { +# target = root +# modifier = failed_comfort_opinion +# } +# } +# +# custom_tooltip = fp2_struggle.1050.condition_might_get_worse +# hidden_effect = { +# scope:visionary_spouse = { +# add_character_modifier = { +# modifier = mysterious_prophetess_illness_modifier +# years = 5 +# } +# } +# } +# } +# } +# } +# } +# +# option = { #Come, tell me more of your visions +# name = fp2_struggle.1050.c +# +# ai_chance = { #compassionate AIs pick this option +# base = 10 +# ai_value_modifier = { +# ai_compassion = 1 +# ai_energy = 0.5 +# ai_vengefulness = -0.5 +# } +# } +# +# stress_impact = { #unpleasant types don't pick this option... +# arrogant = minor_stress_impact_gain +# callous = medium_stress_impact_gain +# sadistic = medium_stress_impact_gain +# eccentric = minor_stress_impact_loss +# } +# +# scope:visionary_spouse = { +# if = { +# limit = { +# OR = { +# has_relation_lover = root +# has_relation_soulmate = root +# } +# } +# add_opinion = { +# target = root +# modifier = listened_opinion +# } +# } +# else = { +# progress_towards_lover_effect = { +# CHARACTER = root +# REASON = lover_comforted_nightmare +# OPINION = 0 +# } +# } +# } +# +# custom_tooltip = fp2_struggle.1050.condition_might_improve +# hidden_effect = { +# scope:visionary_spouse = { +# recover_from_disease_effect = { DISEASE = ill } +# } +# } +# +# add_character_modifier = { +# modifier = frightened_by_portent_modifier +# years = 10 +# } +# } +# +# option = { #Leave me be, I am planning my next conquest +# name = fp2_struggle.1050.d +# +# ai_chance = { #Ambitious AIs pick this option +# base = 10 +# ai_value_modifier = { +# ai_boldness = 0.5 +# ai_energy = 0.7 +# ai_greed = 0.5 +# ai_compassion = -0.7 +# } +# } +# +# stress_impact = { +# compassionate = minor_stress_impact_gain +# eccentric = minor_stress_impact_gain +# } +# +# scope:visionary_spouse = { +# add_opinion = { +# target = root +# modifier = failed_comfort_opinion +# } +# } +# +# custom_tooltip = fp2_struggle.1050.condition_might_get_very_worse +# hidden_effect = { +# random = { +# chance = 90 +# scope:visionary_spouse = { +# add_character_modifier = { +# modifier = mysterious_prophetess_illness_modifier +# years = 5 +# } +# add_trait = depressed_1 +# } +# } +# } +# } +#} +# +#################################### +## Disorderly Market +## By Hugo Cortell +#################################### VSCODE: Use control + / to comment/uncomment entire blocks of code. And control + shift + [ (or ]) to fold/unfold a block! +#scripted_trigger fp2_struggle_2000_check_holds_city_scripted_trigger = { +# title_province = { has_holding_type = city_holding } +# exists = holder +# holder != root +#} +# +#fp2_struggle.2000 = { +# type = character_event +# title = fp2_struggle.2000.t +# desc = fp2_struggle.2000.desc +# theme = stewardship +# cooldown = { years = 5 } +# override_background = { reference = market } +# left_portrait = root +# right_portrait = { +# character = scope:fp2_2000_market_inspector +# animation = anger +# } +# +# trigger = { +# has_fp2_dlc_trigger = yes +# has_religion = religion:islam_religion +# faith = { +# OR = { +# has_doctrine = tenet_tax_nonbelievers +# has_doctrine = special_doctrine_jizya +# has_doctrine = tenet_religious_legal_pronouncements +# has_doctrine = tenet_legalism +# } +# } +# +# exists = cp:councillor_steward +# cp:councillor_steward = { is_available_ai_adult = yes } +# exists = cp:councillor_court_chaplain +# cp:councillor_court_chaplain = { is_available_ai_adult = yes } +# +# any_sub_realm_barony = { +# fp2_struggle_2000_check_holds_city_scripted_trigger = yes +# } +# +# any_pool_character = { +# province = root.capital_province +# has_no_particular_noble_roots_trigger = yes +# is_available_healthy_ai_adult = yes +# } +# } +# +# immediate = { +# random_sub_realm_barony = { +# limit = { fp2_struggle_2000_check_holds_city_scripted_trigger = yes } +# county = { save_scope_as = se_2000_county } +# } +# +# cp:councillor_steward = { save_scope_as = 2000_scoped_steward } +# cp:councillor_court_chaplain = { save_scope_as = 2000_scoped_chaplain } +# +# create_character = { +# age = { 20 50 } +# location = root.capital_province +# gender_female_chance = root_faith_dominant_gender_female_chance +# trait = just +# trait = craven +# trait = patient +# trait = temperate +# culture = root.culture +# faith = root.faith +# +# dynasty = none +# after_creation = { +# add_gold = { minor_gold_value medium_gold_value } +# add_prestige = { minor_prestige_gain medium_prestige_gain } +# add_piety = { medium_piety_gain major_piety_gain } +# } +# +# save_scope_as = fp2_2000_market_inspector +# } +# if = { # RoCo +# limit = { +# has_dlc_feature = royal_court +# employs_court_position = chief_qadi_court_position +# any_court_position_holder = { +# type = chief_qadi_court_position +# is_available_ai_adult = yes +# } +# } +# random_court_position_holder = { +# type = chief_qadi_court_position +# limit = { +# is_available_ai_adult = yes +# } +# save_scope_as = fp2_2000_chief_qadi +# } +# } +# } +# +# option = { # Mandatory lunatic option (now rakish) +# name = fp2_struggle.2000.f +# trigger = { has_trait = rakish } +# stress_impact = { +# chaste = major_stress_impact_gain +# zealous = major_stress_impact_gain +# } +# +# flavor = fp2_struggle.2000.f.desc +# send_interface_toast = { +# type = event_stewardship_good_with_text +# title = fp2_struggle.2000.f.notif +# desc = fp2_struggle.2000.f.notif.desc +# +# stress_impact = { chaste = medium_stress_impact_gain } +# +# scope:2000_scoped_chaplain = { +# add_opinion = { +# target = root +# modifier = impious_opinion +# opinion = -25 +# } +# } +# +# add_piety = major_piety_loss +# +# scope:se_2000_county = { +# add_county_modifier = { +# modifier = fp2_free_market_boom_modifier +# years = 5 +# } +# } +# add_character_modifier = { +# modifier = fp2_lenient_towards_foreign_merchants_modifier +# years = 5 +# } +# } +# +# ai_chance = { +# base = 15 +# } +# } +# +# option = { # Guards! Purge! +# name = fp2_struggle.2000.e +# +# trigger = { +# OR = { +# has_trait = reaver +# has_trait = order_member +# has_trait = aggressive_attacker +# } +# } +# stress_impact = { +# just = major_stress_impact_gain +# forgiving = major_stress_impact_gain +# calm = minor_stress_impact_gain +# trusting = medium_stress_impact_gain +# } +# +# if = { +# limit = { has_trait = sadistic } # Small detail +# send_interface_toast = { +# type = event_toast_effect_good +# title = fp2_ruthless_market_oversight_modifier +# left_icon = root +# +# add_dread = medium_dread_gain +# scope:se_2000_county = { +# add_county_modifier = { +# modifier = fp2_ruthless_market_oversight_modifier +# years = 5 +# } +# } +# } +# } +# else = { +# send_interface_toast = { +# type = event_toast_effect_bad +# title = fp2_ruthless_market_oversight_modifier +# left_icon = root +# +# add_dread = medium_dread_gain +# scope:se_2000_county = { +# add_county_modifier = { +# modifier = fp2_ruthless_market_oversight_modifier +# years = 5 +# } +# } +# } +# } +# +# ai_chance = { +# base = 5 +# modifier = { +# add = 15 +# OR = { +# has_trait = sadistic +# has_trait = zealous +# has_trait = wrathful +# } +# } +# modifier = { +# add = -40 +# has_trait = compassionate +# } +# } +# } +# +# option = { # Intervene with threat of calling judge +# name = fp2_struggle.2000.a +# flavor = fp2_struggle.2000.a.desc +# +# duel = { +# skill = diplomacy +# value = medium_skill_rating +# +# 30 = { +# desc = fp2_struggle.2000.a.a +# +# compare_modifier = { +# value = scope:duel_value +# multiplier = 2.5 +# } +# modifier = { +# add = 5 +# has_trait = fickle +# } +# modifier = { +# add = 20 +# has_trait = craven +# } +# modifier = { +# add = 3 +# has_trait = lazy +# } +# modifier = { +# add = 3 +# has_trait = arbitrary +# } +# +# send_interface_toast = { +# type = event_toast_effect_bad +# title = fp2_struggle.2000.a.a.notif +# +# if = { # RoCo +# limit = { +# exists = scope:fp2_2000_chief_qadi +# } +# reverse_add_opinion = { +# target = scope:fp2_2000_chief_qadi +# modifier = respect_opinion +# opinion = 15 +# } +# } +# +# scope:se_2000_county = { +# add_county_modifier = { +# modifier = fp2_inefficient_market_oversight_modifier +# years = 5 +# } +# } +# } +# } +# 70 = { +# desc = fp2_struggle.2000.a.b +# +# compare_modifier = { +# value = scope:duel_value +# multiplier = 2.5 +# } +# +# modifier = { +# add = 5 +# has_trait = humble +# } +# modifier = { +# add = 5 +# has_trait = ambitious +# } +# modifier = { +# add = 10 +# has_trait = gregarious +# } +# modifier = { +# add = 15 +# has_trait = just +# } +# +# send_interface_toast = { +# type = event_toast_effect_good +# title = fp2_struggle.2000.a.b.notif +# left_icon = scope:2000_scoped_steward +# +# scope:se_2000_county = { +# add_county_modifier = { +# modifier = fp2_smooth_market_oversight_modifier +# years = 5 +# } +# } +# } +# } +# } +# +# ai_chance = { +# base = 60 +# modifier = { +# add = 25 +# has_trait = just +# } +# modifier = { +# add = -25 +# has_trait = arbitrary +# } +# modifier = { +# add = -15 +# has_trait = lazy +# } +# modifier = { +# add = -5 +# has_trait = arrogant +# } +# } +# } +# +# option = { # Let the free market decide, free from tradition +# name = fp2_struggle.2000.d +# flavor = fp2_struggle.2000.d.desc +# +# stress_impact = { +# zealous = major_stress_impact_gain +# humble = medium_stress_impact_gain +# content = medium_stress_impact_gain +# just = minor_stress_impact_gain +# temperate = medium_stress_impact_gain +# } +# +# reverse_add_opinion = { +# target = scope:2000_scoped_chaplain +# modifier = impious_opinion +# opinion = -30 +# } +# reverse_add_opinion = { +# target = scope:2000_scoped_steward +# modifier = respect_opinion +# opinion = 15 +# } +# +# send_interface_toast = { +# type = event_toast_effect_good +# title = fp2_free_market_boom_modifier +# left_icon = scope:2000_scoped_steward +# +# add_piety = medium_piety_loss +# +# scope:se_2000_county = { +# add_county_modifier = { +# modifier = fp2_free_market_boom_modifier +# years = 6 +# } +# } +# } +# +# ai_chance = { +# base = 0 +# modifier = { +# add = 15 +# has_trait = greedy +# } +# modifier = { +# add = -40 +# has_trait = zealous +# } +# } +# } +# +# option = { # Reprimand the inspector +# name = fp2_struggle.2000.b +# flavor = fp2_struggle.2000.b.desc +# +# stress_impact = { compassionate = medium_stress_impact_gain } +# add_dread = miniscule_dread_gain +# +# send_interface_toast = { +# type = event_stewardship_good_with_text +# title = fp2_struggle.2000.b.notif +# desc = fp2_struggle.2000.b.notif.desc +# +# scope:se_2000_county = { +# add_county_modifier = { +# modifier = fp2_smooth_market_oversight_modifier +# years = 5 +# } +# } +# +# scope:2000_scoped_chaplain = { +# add_opinion = { +# target = root +# modifier = cruelty_opinion +# opinion = -15 +# } +# } +# } +# +# ai_chance = { +# base = 34 +# modifier = { +# add = 15 +# OR = { +# has_trait = sadistic +# has_trait = callous +# } +# } +# modifier = { +# add = 5 +# has_trait = impatient +# } +# modifier = { +# add = 3 +# has_trait = diligent +# } +# modifier = { +# add = -25 +# has_trait = compassionate +# } +# modifier = { +# add = -15 +# OR = { +# has_trait = trusting +# has_trait = calm +# has_trait = forgiving +# } +# } +# modifier = { +# add = -5 +# has_trait = humble +# } +# } +# } +# +# after = { scope:fp2_2000_market_inspector = { silent_disappearance_effect = yes } } +#} +# +#################################### +## Desperate Villagers Seek New Lord +## By Hugo Cortell +#################################### +#scripted_trigger fp2_struggle_2001_desperate_county_scripted_trigger = { +# NOT = { root = { has_claim_on = prev } } +# trigger_if = { # Checking that we are not offering up the capital of a duke or higher +# limit = { +# holder = { +# highest_held_title_tier >= tier_duchy +# } +# } +# this != holder.capital_county +# } +# +# holder = { # Balance, malus must not affect players +# is_ai = yes +# top_liege = { is_ai = yes } +# } +# +# OR = { +# county_opinion < 0 +# county_control < 81 # Note: if considered too restrictive for normal play, update to != 100 +# } +# +# squared_distance = { +# target = root.capital_province +# value < squared_distance_medium +# } +#} +# +#fp2_struggle.2001 = { +# type = character_event +# title = fp2_struggle.2001.t +# desc = { +# desc = fp2_struggle.2001.desc +# triggered_desc = { +# trigger = { +# is_allied_to = scope:fp2_2001_desperate_county.holder +# } +# desc = fp2_struggle.2001.desc.extra.a +# } +# triggered_desc = { +# trigger = { +# has_truce = scope:fp2_2001_desperate_county.holder +# } +# desc = fp2_struggle.2001.desc.extra.b +# } +# } +# +# theme = vassal +# cooldown = { years = 20 } +# left_portrait = { +# character = root +# animation = personality_rational +# } +# right_portrait = { +# character = scope:fp2_2001_desperate_elder +# animation = beg +# } +# lower_right_portrait = scope:fp2_2001_desperate_county.holder.top_liege +# +# trigger = { +# has_fp2_dlc_trigger = yes +# struggle:iberian_struggle = { +# is_struggle_phase = struggle_iberia_phase_hostility +# +# } +# +# any_neighboring_and_across_water_top_liege_realm_owner = { +# fp2_character_involved_in_struggle_trigger = yes +# any_sub_realm_county = { +# fp2_struggle_2001_desperate_county_scripted_trigger = yes +# } +# } +# } +# +# immediate = { +# if = { +# limit = { exists = cp:councillor_court_chaplain } +# cp:councillor_court_chaplain = { save_scope_as = 2001_scoped_chaplain } +# } +# +# random_neighboring_and_across_water_top_liege_realm_owner = { +# limit = { +# fp2_character_involved_in_struggle_trigger = yes +# any_sub_realm_county = { fp2_struggle_2001_desperate_county_scripted_trigger = yes } +# } +# random_sub_realm_county = { +# limit = { fp2_struggle_2001_desperate_county_scripted_trigger = yes } +# save_scope_as = fp2_2001_desperate_county +# } +# } +# +# create_character = { +# age = { 38 71 } +# location = scope:fp2_2001_desperate_county.title_province +# gender_female_chance = root_faith_dominant_gender_female_chance +# trait = peasant_leader +# random_traits = yes +# culture = scope:fp2_2001_desperate_county.culture +# random_faith = { +# root.faith = { trigger = { always = yes } } +# scope:fp2_2001_desperate_county.faith = { trigger = { always = yes } } +# } +# dynasty = none +# after_creation = { add_gold = medium_gold_value } +# +# save_scope_as = fp2_2001_desperate_elder +# } +# +# # AI war-savviness calc variables +# scope:fp2_2001_desperate_county.holder.top_liege = { save_temporary_scope_as = target_military } +# set_variable = { +# name = ai_strength_multiplier # This is how much stronger root has to be (could even be used for custom loc! but the script is complex enough as it is) +# value = 1.25 +# } +# if = { # Calculate if AI can win war, decision of war requires traits AND for it to be favourable. This calcs if it is favourable +# limit = { +# is_ai = yes # Are you AI? +# scope:fp2_2001_desperate_county.holder.top_liege = { +# NOT = { +# is_at_war_with = root +# is_ai = no # Enemy must be AI (prevents AI from attacking player characters, otherwise it would feel as if the attack was random) +# } +# } +# +# # Actual strength is calc below, thanks to joe +# root_military_strength_higher_than_military_target_value > target_military_strength_root_value +# } +# save_scope_as = fp2_se_2001_ai_war_winnable # Acts as boolean for wether or not the AI has a chance at winning +# } +# remove_variable = ai_strength_multiplier +# +# # Option exclusivity stuffs, easier to keep track of logic +# if = { # Faith +# limit = { +# OR = { +# has_trait = holy_warrior +# has_trait = devoted +# has_trait = heresiarch +# has_trait = order_member +# has_trait = crusader_king +# has_trait = faith_warrior +# } +# NOT = { +# faith = scope:fp2_2001_desperate_elder.faith +# has_trait = excommunicated +# } +# } +# save_scope_as = fp2_2001_exclusive_option_faith +# } +# else_if = { # Greedy +# limit = { +# OR = { +# has_trait = greedy +# has_trait = avaricious +# has_trait = logistician +# } +# } +# save_scope_as = fp2_2001_exclusive_option_greed +# } +# } +# +# option = { # Pay tribute to me +# name = fp2_struggle.2001.d +# custom_tooltip = fp2_struggle.2001.a.desc +# +# trigger = { +# exists = scope:fp2_2001_exclusive_option_greed +# NOT = { exists = scope:fp2_2001_exclusive_option_faith } +# +# OR = { # Tricks autoformatter into showing trait icons (wasteful) +# has_trait = greedy +# has_trait = avaricious +# has_trait = logistician +# } +# } +# +# stress_impact = { +# compassionate = minor_stress_impact_gain +# humble = minor_stress_impact_gain +# content = minor_stress_impact_gain +# } +# +# save_scope_value_as = { +# name = fp2_se_2001_eventchoiceramifications +# value = flag:demand_tribute +# } +# +# send_interface_toast = { +# type = event_toast_effect_good +# title = fp2_struggle.2001.a.notif +# left_icon = root +# right_icon = scope:fp2_2001_desperate_elder +# +# add_unpressed_claim = scope:fp2_2001_desperate_county +# } +# +# send_interface_toast = { +# type = event_stewardship_good_with_text +# title = fp2_struggle.2001.d.notif +# desc = fp2_struggle.2001.d.notif.desc +# left_icon = scope:fp2_2001_desperate_elder +# +# scope:fp2_2001_desperate_elder = { +# pay_treasury_or_gold = { +# target = root +# value = medium_treasury_or_gold_value +# } +# } +# } +# +# if = { +# limit = { exists = cp:councillor_steward } +# cp:councillor_steward = { +# add_opinion = { +# target = root +# modifier = pleased_opinion +# opinion = 15 +# } +# } +# } +# +# hidden_effect = { +# trigger_event = { +# id = fp2_struggle.2002 +# years = 5 +# } +# } +# add_character_modifier = { +# modifier = fp2_2001_promise_reminder +# years = 5 +# } +# +# ai_chance = { +# base = 0 +# modifier = { +# add = 10 +# exists = scope:fp2_se_2001_ai_war_winnable +# has_trait = brave +# } +# modifier = { +# add = 5 +# exists = scope:fp2_se_2001_ai_war_winnable +# has_trait = compassionate +# } +# modifier = { +# add = 40 +# exists = scope:fp2_se_2001_ai_war_winnable +# has_trait = greedy +# } +# } +# } +# +# option = { # Are you willing to give up your god for it? +# trigger = { +# exists = scope:fp2_2001_exclusive_option_faith +# +# OR = { +# has_trait = holy_warrior # Tricking the autoformatter into showing relevant trait +# has_trait = devoted +# has_trait = heresiarch +# has_trait = order_member +# has_trait = crusader_king +# has_trait = faith_warrior +# } +# } +# name = fp2_struggle.2001.b +# +# custom_tooltip = fp2_struggle.2001.a.desc +# if = { +# limit = { exists = scope:2001_scoped_chaplain } +# custom_tooltip = fp2_struggle.2001.a.a.desc +# } +# +# send_interface_toast = { +# type = event_toast_effect_good +# title = fp2_struggle.2001.a.notif +# left_icon = root +# right_icon = scope:fp2_2001_desperate_elder +# +# add_unpressed_claim = scope:fp2_2001_desperate_county +# } +# +# send_interface_toast = { +# type = event_stewardship_good_with_text +# title = fp2_struggle.2001.b.notif +# desc = fp2_struggle.2001.b.notif.desc +# left_icon = scope:fp2_2001_desperate_elder +# +# if = { +# limit = { exists = scope:2001_scoped_chaplain } +# scope:2001_scoped_chaplain = { +# add_opinion = { +# target = root +# modifier = pleased_opinion +# opinion = 40 +# } +# } +# save_scope_value_as = { +# name = fp2_se_2001_eventchoiceramifications +# value = flag:demand_conversion_chap # yes +# } +# } +# else = { +# save_scope_value_as = { +# name = fp2_se_2001_eventchoiceramifications +# value = flag:demand_conversion_no_chap # no +# } +# } +# } +# +# every_powerful_vassal = { +# limit = { faith = root.faith } +# custom = fp2_every_major_vassal_notifier +# add_opinion = { +# target = root +# modifier = respect_opinion +# opinion = 15 +# } +# } +# +# scope:fp2_2001_desperate_county = { set_county_faith = root.faith } +# +# hidden_effect = { +# scope:fp2_2001_desperate_elder = { set_character_faith_with_conversion = root.faith } +# trigger_event = { +# id = fp2_struggle.2002 +# years = 5 +# } +# } +# add_character_modifier = { +# modifier = fp2_2001_promise_reminder +# years = 5 +# } +# +# ai_chance = { +# base = 0 +# modifier = { +# add = 15 +# exists = scope:fp2_se_2001_ai_war_winnable +# has_trait = brave +# } +# modifier = { +# add = 5 +# exists = scope:fp2_se_2001_ai_war_winnable +# has_trait = just +# } +# modifier = { +# add = 50 +# exists = scope:fp2_se_2001_ai_war_winnable +# has_trait = zealous +# } +# modifier = { +# add = -5 +# exists = scope:fp2_se_2001_ai_war_winnable +# has_trait = lazy +# } +# } +# } +# +# option = { # You have my word +# name = fp2_struggle.2001.a +# custom_tooltip = fp2_struggle.2001.b.desc # Three extra years for not attaching any strings +# +# stress_impact = { +# craven = minor_stress_impact_gain +# shy = minor_stress_impact_gain +# lazy = minor_stress_impact_gain +# arrogant = major_stress_impact_gain +# } +# if = { +# limit = { +# exists = scope:fp2_2001_exclusive_option_greed +# NOT = { exists = scope:fp2_2001_exclusive_option_faith } +# } +# stress_impact = { +# greedy = medium_stress_impact_gain +# avaricious = minor_stress_impact_gain +# } +# } +# +# send_interface_toast = { +# type = event_toast_effect_good +# title = fp2_struggle.2001.a.notif +# left_icon = root +# right_icon = scope:fp2_2001_desperate_elder +# +# add_unpressed_claim = scope:fp2_2001_desperate_county +# } +# +# every_powerful_vassal = { +# custom = fp2_every_major_vassal_notifier +# add_opinion = { +# target = root +# modifier = respect_opinion +# opinion = 15 +# } +# } +# +# hidden_effect = { +# trigger_event = { +# id = fp2_struggle.2002 +# years = 10 +# } +# } +# add_character_modifier = { +# modifier = fp2_2001_promise_reminder +# years = 10 +# } +# +# ai_chance = { +# base = 0 +# modifier = { +# add = 25 +# exists = scope:fp2_se_2001_ai_war_winnable +# has_trait = brave +# } +# modifier = { +# add = 15 +# exists = scope:fp2_se_2001_ai_war_winnable +# has_trait = just +# } +# modifier = { +# add = 15 +# exists = scope:fp2_se_2001_ai_war_winnable +# has_trait = compassionate +# } +# modifier = { +# add = -35 +# exists = scope:fp2_se_2001_ai_war_winnable +# has_trait = arrogant +# } +# modifier = { +# add = -15 +# exists = scope:fp2_se_2001_ai_war_winnable +# has_trait = lazy +# } +# } +# } +# +# option = { # Prove it to me, point your spears at your liege (rise up) +# name = fp2_struggle.2001.c +# custom_tooltip = fp2_struggle.2001.a.desc +# +# trigger = { +# scope:fp2_2001_desperate_county = { +# can_title_create_faction = { +# type = peasant_faction +# target = scope:fp2_2001_desperate_county.holder +# } +# } +# +# NOT = { +# exists = scope:fp2_2001_exclusive_option_greed +# exists = scope:fp2_2001_exclusive_option_faith +# } +# } +# +# stress_impact = { +# craven = medium_stress_impact_gain +# content = minor_stress_impact_gain +# } +# +# save_scope_value_as = { +# name = fp2_se_2001_eventchoiceramifications +# value = flag:peasant_revolt +# } +# +# send_interface_toast = { +# type = event_toast_effect_good +# title = fp2_struggle.2001.a.notif +# left_icon = root +# right_icon = scope:fp2_2001_desperate_elder +# +# add_unpressed_claim = scope:fp2_2001_desperate_county +# } +# +# every_powerful_vassal = { +# custom = fp2_every_major_vassal_notifier +# add_opinion = { +# target = root +# modifier = respect_opinion +# opinion = 10 +# } +# } +# +# scope:fp2_2001_desperate_county = { # Create faction +# title_create_faction = { +# type = peasant_faction +# target = scope:fp2_2001_desperate_county.holder +# } +# holder = { +# every_targeting_faction = { # go through all existing factions +# if = { +# limit = { +# any_faction_county_member = { this = scope:fp2_2001_desperate_county } # check if least one member belongs to the county +# } +# save_scope_as = fp2_se_2001_peasant_faction +# } +# } +# } +# } +# +# hidden_effect = { +# trigger_event = { +# id = fp2_struggle.2002 +# years = 5 +# } +# } +# add_character_modifier = { +# modifier = fp2_2001_promise_reminder +# years = 5 +# } +# +# ai_chance = { +# base = 0 +# modifier = { +# add = 15 +# exists = scope:fp2_se_2001_ai_war_winnable +# has_trait = brave +# } +# modifier = { +# add = 25 +# exists = scope:fp2_se_2001_ai_war_winnable +# has_trait = ambitious +# } +# modifier = { +# add = 10 +# exists = scope:fp2_se_2001_ai_war_winnable +# has_trait = just +# } +# modifier = { +# add = -15 +# exists = scope:fp2_se_2001_ai_war_winnable +# has_trait = arrogant +# } +# modifier = { +# add = -5 +# exists = scope:fp2_se_2001_ai_war_winnable +# has_trait = lazy +# } +# } +# } +# +# option = { # Betray and inform ruler of treachery +# name = fp2_struggle.2001.f +# +# stress_impact = { +# compassionate = major_stress_impact_gain +# forgiving = major_stress_impact_gain +# } +# +# scope:fp2_2001_desperate_elder = { +# death = { +# death_reason = death_execution +# killer = root +# } +# } +# +# if = { +# limit = { is_allied_to = scope:fp2_2001_desperate_county.holder } # You stood by your allies +# every_powerful_vassal = { +# custom = fp2_every_major_vassal_notifier +# add_opinion = { +# target = root +# modifier = respect_opinion +# opinion = 10 +# } +# } +# +# if = { +# limit = { NOT = { has_trait = arrogant } } +# scope:fp2_2001_desperate_county.holder = { +# progress_towards_friend_effect = { +# REASON = friend_informed_ally_of_betrayal +# CHARACTER = root +# OPINION = 0 +# } +# +# add_opinion = { +# target = root +# modifier = pleased_opinion +# opinion = 25 +# } +# } +# } +# } +# else = { +# every_powerful_vassal = { # Your vassals question your integrity +# custom = fp2_every_major_vassal_notifier +# limit = { +# NOR = { +# has_trait = arbitrary +# has_trait = sadistic +# has_trait = arrogant +# } +# } +# add_opinion = { +# target = root +# modifier = disgusted_opinion +# opinion = -10 +# } +# } +# +# scope:fp2_2001_desperate_county.holder = { +# add_opinion = { +# target = root +# modifier = respect_opinion +# opinion = 40 +# } +# progress_towards_friend_effect = { +# REASON = friend_informed_ally_of_betrayal +# CHARACTER = root +# OPINION = 0 +# } +# } +# } +# +# ai_chance = { +# base = 0 +# modifier = { +# add = 5 +# has_trait = deceitful +# is_allied_to = scope:fp2_2001_desperate_county.holder +# } +# +# modifier = { +# add = -25 +# NOT = { is_allied_to = scope:fp2_2001_desperate_county.holder } +# has_trait = brave +# } +# modifier = { +# add = -15 +# NOT = { is_allied_to = scope:fp2_2001_desperate_county.holder } +# has_trait = just +# } +# modifier = { +# add = -25 +# NOT = { is_allied_to = scope:fp2_2001_desperate_county.holder } +# has_trait = compassionate +# } +# modifier = { +# add = 35 +# NOT = { is_allied_to = scope:fp2_2001_desperate_county.holder } +# has_trait = arrogant +# } +# modifier = { +# add = 10 +# NOT = { is_allied_to = scope:fp2_2001_desperate_county.holder } +# has_trait = sadistic +# } +# modifier = { +# add = 15 +# NOT = { is_allied_to = scope:fp2_2001_desperate_county.holder } +# has_trait = deceitful +# } +# } +# } +# +# option = { # Dismiss +# name = fp2_struggle.2001.e +# custom_tooltip = fp2_struggle.2001.e.desc +# stress_impact = { compassionate = minor_stress_impact_gain } +# +# scope:fp2_2001_desperate_county.holder.top_liege.capital_province.county = { +# if = { +# limit = { root = { is_allied_to = scope:fp2_2001_desperate_county.holder } } +# hidden_effect = { # Hides effect if allied +# add_county_modifier = { +# modifier = fp2_forsaken_turned_levies_modifier +# years = 6 +# } +# } +# } +# else = { +# add_county_modifier = { +# modifier = fp2_forsaken_turned_levies_modifier +# years = 5 +# } +# } +# } +# +# save_scope_as = did_not_call_next_event +# +# ai_chance = { +# base = 100 +# modifier = { +# add = 25 +# exists = scope:fp2_se_2001_ai_war_winnable +# has_trait = craven +# } +# modifier = { +# add = -45 +# exists = scope:fp2_se_2001_ai_war_winnable +# } +# } +# } +# +# after = { +# if = { +# limit = { exists = scope:fp2_se_2001_peasant_faction } +# scope:fp2_2001_desperate_elder = { save_scope_as = peasant_leader } +# scope:fp2_2001_desperate_county = { save_scope_as = peasant_county } +# scope:fp2_se_2001_peasant_faction = { +# +# setup_peasant_leader_effect = yes +# +# faction_start_war = {} +# faction_spawn_member_county_armies_effect = { +# FACTION = scope:fp2_se_2001_peasant_faction +# ARMY_OWNER = scope:fp2_2001_desperate_elder +# PEASANT_ARMY_NAME = peasant_faction_event_troops +# } +# } +# } +# +# if = { +# limit = { +# exists = scope:did_not_call_next_event +# scope:fp2_2001_desperate_elder = { is_alive = yes } +# } +# scope:fp2_2001_desperate_elder = { +# silent_disappearance_effect = yes +# } +# } +# } +#} +# +## QUEST FUNCTION, check if player managed to complete objective +#fp2_struggle.2002 = { +# hidden = yes +# +# immediate = { # VICTORY STATE BELOW +# if = { +# limit = { scope:fp2_2001_desperate_county.holder.top_liege = root.top_liege } # check if lands belong to your state/kingdom/side +# send_interface_toast = { +# type = event_toast_effect_good +# title = fp2_struggle.2002.t.a +# left_icon = root +# right_icon = scope:fp2_2001_desperate_elder +# +# +# if = { +# limit = { exists = scope:fp2_se_2001_eventchoiceramifications } +# if = { +# limit = { scope:fp2_se_2001_eventchoiceramifications = flag:demand_conversion_chap } # You keet your promise to god +# add_piety = major_piety_gain +# } +# else_if = { +# limit = { scope:fp2_se_2001_eventchoiceramifications = flag:demand_conversion_no_chap } # Without a chap, this is more impressive but less pious +# add_piety = medium_piety_gain +# add_prestige = medium_prestige_gain +# } +# else_if = { +# limit = { scope:fp2_se_2001_eventchoiceramifications = flag:peasant_revolt } # You lead peasants into battle and won +# add_prestige = minor_prestige_gain +# } +# else = { +# debug_log = "Scope fp2_se_2001_eventchoiceramifications exists but has not been assigned a valid value!" +# debug_log_scopes = yes +# } +# } +# +# scope:fp2_2001_desperate_county = { +# add_county_modifier = { +# modifier = county_listened_to_locals_modifier +# years = 12 +# } +# change_county_control = major_county_control_gain +# } +# } +# } +# else = { # FAILURE STATE BELOW +# send_interface_toast = { +# type = event_toast_effect_bad +# title = fp2_struggle.2002.t.b +# left_icon = root +# right_icon = scope:fp2_2001_desperate_elder +# +# add_prestige = minor_prestige_loss +# +# if = { +# limit = { exists = scope:fp2_se_2001_eventchoiceramifications } +# if = { +# limit = { scope:fp2_se_2001_eventchoiceramifications = flag:demand_conversion_chap } # You failed to keep your promise to god +# add_piety = medium_piety_loss +# scope:2001_scoped_chaplain = { +# add_opinion = { +# target = root +# modifier = impious_opinion +# opinion = -40 +# } +# } +# } +# else_if = { +# limit = { scope:fp2_se_2001_eventchoiceramifications = flag:demand_conversion_no_chap } # Without a chap, this is more impressive but less pious +# add_piety = minor_piety_loss +# add_prestige = minor_prestige_loss +# } +# else_if = { +# limit = { scope:fp2_se_2001_eventchoiceramifications = flag:demand_tribute } # Being a weasel makes you look petty +# add_prestige = medium_prestige_loss +# } +# else_if = { +# limit = { scope:fp2_se_2001_eventchoiceramifications = flag:peasant_revolt } # You took their lives in exchange for freedom, yet returned nothing +# add_piety = minor_piety_loss +# add_prestige = major_prestige_loss +# show_as_tooltip = { +# scope:fp2_2001_desperate_county = { # This will happen anyways, but showing it creates more impact +# holder = { +# top_liege.capital_province.county = { +# add_county_modifier = { +# modifier = fp2_forsaken_turned_levies_modifier +# years = 8 +# } +# } +# } +# } +# } +# } +# else = { +# debug_log = "Scope fp2_se_2001_eventchoiceramifications exists but has not been assigned a valid value!" +# debug_log_scopes = yes +# } +# } +# +# every_powerful_vassal = { +# add_opinion = { +# target = root +# modifier = disappointed_opinion +# opinion = -10 +# } +# } +# +# hidden_effect = { +# scope:fp2_2001_desperate_county = { +# change_county_control = medium_county_control_gain +# holder = { +# top_liege.capital_province.county = { +# add_county_modifier = { +# modifier = fp2_forsaken_turned_levies_modifier +# years = 8 +# } +# } +# } +# } +# } +# } +# } +# +# scope:fp2_2001_desperate_elder = { +# silent_disappearance_effect = yes +# } +# } +#} +# +#################################### +## Lost Migratory Birds +## By Hugo Cortell +#################################### +#scripted_trigger fp2_struggle_2003_check_has_city_scripted_trigger = { +# title_province = { has_holding_type = city_holding } +# exists = holder +#} +# +#fp2_struggle.2003 = { +# type = character_event +# title = fp2_struggle.2003.t +# desc = fp2_struggle.2003.desc +# theme = stewardship +# override_background = { reference = army_camp } +# cooldown = { years = 50 } +# left_portrait = root +# right_portrait = { +# character = scope:fp2_2003_merc_actor +# animation = loss_1 # Note: two_handed_1_aggressive could also be used +# } +# +# trigger = { +# has_fp2_dlc_trigger = yes +# struggle:iberian_struggle ?= { +# OR = { +# is_struggle_phase = struggle_iberia_phase_opportunity +# is_struggle_phase = struggle_iberia_phase_hostility +# } +# } +# +# any_sub_realm_barony = { fp2_struggle_2003_check_has_city_scripted_trigger = yes } +# } +# +# immediate = { +# random_sub_realm_barony = { +# limit = { fp2_struggle_2003_check_has_city_scripted_trigger = yes } +# county = { save_scope_as = fp2_2003_county_town } +# } +# +# create_character = { +# age = { 20 50 } +# location = root.capital_province +# gender_female_chance = root_faith_dominant_gender_female_chance +# trait = wrathful +# trait = greedy +# trait = impatient +# trait = callous +# trait = wounded_2 +# culture = root.culture +# faith = root.faith +# +# dynasty = none +# after_creation = { +# add_gold = { 0 minor_gold_value } +# add_prestige = { minor_prestige_loss minor_prestige_gain } +# add_piety = { medium_piety_loss minor_piety_gain } +# add_character_flag = single_combat_duel_armor +# } +# +# save_scope_as = fp2_2003_merc_actor +# } +# } +# +# option = { # Give them farming work +# name = fp2_struggle.2003.d +# flavor = fp2_struggle.2003.d.desc +# +# trigger = { +# OR= { +# has_trait = lunatic_genetic +# has_trait = logistician +# has_trait = comfort_eater +# has_trait = improvident +# stewardship > extremely_high_skill_rating +# } +# gold > medium_gold_value # Locals need to be paid in advance +# } +# stress_impact = { greedy = major_stress_impact_gain } +# +# send_interface_toast = { +# title = fp2_struggle.2003.e.notif.c +# desc = fp2_struggle.2003.e.notif.c.desc +# +# remove_treasury_or_gold = medium_treasury_or_gold_value +# scope:fp2_2003_county_town = { +# add_county_modifier = { +# modifier = fp2_mercs_turned_farmers_modifier +# years = 20 +# } +# holder = { +# add_character_modifier = { +# modifier = fp2_mercenary_acquaintances_modifier +# years = 8 # Bonus effect +# } +# } +# } +# } +# +# ai_chance = { +# base = 30 +# modifier = { +# add = 1000 +# has_trait = possessed_genetic +# } +# } +# } +# +# option = { # Offer them a stable job +# name = fp2_struggle.2003.b +# flavor = fp2_struggle.2003.b.desc +# +# trigger = { # Locks the lunatic option (remove this trigger if you want more than 4 options) +# OR = { +# NOR= { +# has_trait = lunatic_genetic +# has_trait = logistician +# has_trait = comfort_eater +# has_trait = improvident +# stewardship > extremely_high_skill_rating +# } +# gold < medium_gold_value # Peasants might need to be paid real gold, but mercs do not mind working on debt money +# } +# } +# +# stress_impact = { greedy = minor_stress_impact_gain } +# +# remove_treasury_or_gold = medium_treasury_or_gold_value +# send_interface_toast = { +# type = event_toast_effect_good +# title = fp2_veteran_mercenaries_as_instructors_modifier +# left_icon = root +# +# scope:fp2_2003_county_town = { +# add_county_modifier = { +# modifier = fp2_veteran_mercenaries_as_instructors_modifier +# years = 12 +# } +# hidden_effect = { +# holder = { +# add_character_modifier = { +# modifier = fp2_mercenary_acquaintances_modifier +# years = 12 +# } +# } +# } +# } +# } +# +# show_as_tooltip = { +# scope:fp2_2003_county_town = { +# holder = { +# add_character_modifier = { +# modifier = fp2_mercenary_acquaintances_modifier +# years = 12 +# } +# } +# } +# } +# +# ai_chance = { +# base = 25 +# modifier = { +# add = 5 +# has_trait = ambitious +# } +# modifier = { +# add = 5 +# has_trait = generous +# } +# modifier = { +# add = -50 +# has_trait = greedy +# } +# } +# } +# +# option = { # Implore them to leave +# name = fp2_struggle.2003.a +# stress_impact = { shy = minor_stress_impact_gain } +# +# trigger = { +# NOT = { has_trait = lunatic_genetic } # Cuts down the options to four in case of lunacy event, lunatics do not negotiate. +# } +# +# duel = { +# skill = diplomacy +# value = high_skill_rating +# +# 10 = { +# compare_modifier = { +# value = scope:duel_value +# multiplier = -1.5 +# } +# modifier = { +# add = 5 +# has_trait = fickle +# } +# modifier = { +# add = 20 +# has_trait = craven +# } +# modifier = { +# add = 15 +# has_trait = lazy +# } +# modifier = { +# add = 10 +# has_trait = wrathful +# } +# modifier = { +# add = 10 +# has_trait = shy +# } +# modifier = { +# add = 2 +# has_trait = trusting +# } +# modifier = { +# add = 3 +# has_trait = stubborn +# } +# +# send_interface_toast = { +# type = event_toast_effect_bad +# title = fp2_struggle.2003.a.a.notif +# left_icon = root +# +# add_prestige = medium_prestige_loss +# +# scope:fp2_2003_county_town.title_province = { +# add_province_modifier = { +# modifier = recently_looted_modifier +# years = 5 +# } +# } +# } +# } +# 12 = { +# compare_modifier = { +# value = scope:duel_value +# multiplier = 1.5 +# } +# +# modifier = { +# add = 5 +# has_trait = calm +# } +# modifier = { +# add = 5 +# has_trait = vengeful +# } +# modifier = { +# add = 5 +# has_trait = honest +# } +# modifier = { +# add = 10 +# has_trait = gregarious +# } +# modifier = { +# add = 15 +# has_trait = just +# } +# modifier = { +# add = 15 +# has_trait = brave +# } +# +# send_interface_toast = { +# type = event_toast_effect_good +# title = fp2_struggle.2003.a.b.notif +# left_icon = root +# +# add_prestige = medium_prestige_gain +# scope:fp2_2003_county_town = { +# add_county_modifier = { +# modifier = county_listened_to_locals_modifier +# years = 5 +# } +# } +# } +# } +# } +# +# ai_chance = { +# base = 60 +# modifier = { +# add = 5 +# has_trait = just +# } +# modifier = { +# add = 25 +# has_trait = gregarious +# } +# modifier = { +# add = -5 +# has_trait = arrogant +# } +# } +# } +# +# option = { # Preemptive strike +# name = fp2_struggle.2003.c +# flavor = fp2_struggle.2003.c.desc +# +# stress_impact = { trusting = minor_stress_impact_gain } # Craven do not suffer a penalty, because they only plan the fight, not partake in it +# +# duel = { +# skill = martial +# value = high_skill_rating +# +# 10 = { +# desc = fp2_struggle.2003.c.a +# +# compare_modifier = { +# value = scope:duel_value +# multiplier = -2.5 +# } +# +# modifier = { # Relevant skills are those that could be used in urban warfare +# add = 5 +# has_trait = fickle +# } +# modifier = { +# add = 1 +# has_trait = just +# } +# modifier = { +# add = 1 +# has_trait = arrogant +# } +# modifier = { +# add = 3 +# has_trait = wrathful +# } +# modifier = { +# add = 5 +# has_trait = arbitrary +# } +# modifier = { +# add = 3 +# has_trait = lazy +# } +# +# modifier = { +# add = 5 +# has_trait = open_terrain_expert +# } +# modifier = { +# add = 2 +# has_trait = reckless +# } +# modifier = { # "what does an INN even look like anyway?" +# add = 3 +# has_trait = reclusive +# } +# +# show_as_tooltip = { +# scope:fp2_2003_county_town = { +# add_county_modifier = { +# modifier = fp2_local_garrison_slaughtered_modifier +# years = 5 +# } +# title_province = { +# add_province_modifier = { +# modifier = recently_looted_modifier +# years = 5 +# } +# } +# } +# } +# +# hidden_effect = { +# send_interface_toast = { +# type = event_toast_effect_bad +# title = fp2_local_garrison_slaughtered_modifier +# left_icon = root +# +# scope:fp2_2003_county_town = { # Failure outcome +# add_county_modifier = { +# modifier = fp2_local_garrison_slaughtered_modifier +# years = 5 +# } +# hidden_effect = { +# title_province = { +# add_province_modifier = { +# modifier = recently_looted_modifier +# years = 5 +# } +# } +# } +# } +# } +# } +# } +# 10 = { +# desc = fp2_struggle.2003.c.b +# +# compare_modifier = { +# value = scope:duel_value +# multiplier = 2.5 +# } +# +# modifier = { +# add = 5 +# has_trait = calm +# } +# modifier = { +# add = 5 +# has_trait = diligent +# } +# modifier = { +# add = 3 +# has_trait = callous +# } +# +# modifier = { +# add = 7 +# OR = { +# has_trait = intellect_good_2 +# has_trait = intellect_good_3 +# } +# } +# modifier = { +# add = -15 +# OR = { +# has_trait = intellect_bad_1 +# has_trait = intellect_bad_2 +# } +# } +# modifier = { +# add = -25 +# OR = { +# has_trait = intellect_bad_3 +# has_trait = dull +# } +# } +# modifier = { +# add = 10 +# has_trait = shrewd +# } +# +# +# modifier = { +# add = 20 +# has_trait = strategist +# } +# modifier = { # If you know how buildings are structured, you can raid them better +# add = 5 +# has_trait = architect +# } +# modifier = { +# add = 5 +# has_trait = flexible_leader +# } +# modifier = { +# add = 15 +# has_trait = organizer +# } +# modifier = { +# add = 3 +# has_trait = cautious_leader +# } +# +# add_gold = minor_gold_value +# add_prestige = medium_prestige_gain +# send_interface_toast = { +# type = event_toast_effect_good +# title = fp2_struggle.2003.c.b.notif +# left_icon = root +# +# scope:fp2_2003_county_town = { # Success +# add_county_modifier = { +# modifier = fp2_elite_tactics_for_civil_guards_modifier +# years = 5 +# } +# } +# } +# } +# } +# +# ai_chance = { +# base = 15 +# modifier = { +# add = 5 +# has_trait = brave +# } +# modifier = { +# add = 15 +# has_trait = wrathful +# } +# modifier = { +# add = 5 +# has_trait = deceitful +# } +# modifier = { +# add = -25 +# has_trait = trusting +# } +# modifier = { +# add = -10 +# has_trait = craven +# } +# } +# } +# +# option = { # Let the local handle it +# name = fp2_struggle.2003.e +# flavor = fp2_struggle.2003.e.desc +# +# stress_impact = { +# compassionate = major_stress_impact_gain +# just = medium_stress_impact_gain +# paranoid = minor_stress_impact_gain +# } +# +# random_list = { +# 50 = { # Looted +# send_interface_toast = { +# type = event_toast_effect_bad +# title = fp2_struggle.2003.e.notif.a +# +# scope:fp2_2003_county_town = { +# title_province = { +# add_province_modifier = { +# modifier = recently_looted_modifier +# years = 5 +# } +# } +# } +# } +# } +# 25 = { # Massacre +# send_interface_toast = { +# type = event_toast_effect_bad +# title = fp2_struggle.2003.e.notif.b +# desc = fp2_struggle.2003.e.notif.b.desc +# +# scope:fp2_2003_county_town = { +# add_county_modifier = { +# modifier = fp2_mercs_slaughtered_populance_modifier +# years = 5 +# } +# } +# } +# } +# 25 = { # Farming outcome +# send_interface_toast = { +# type = event_toast_effect_good +# title = fp2_struggle.2003.e.notif.c +# desc = fp2_struggle.2003.e.notif.c.desc +# +# scope:fp2_2003_county_town = { +# add_county_modifier = { +# modifier = fp2_mercs_turned_farmers_modifier +# years = 15 +# } +# } +# } +# } +# } +# } +# +# after = { +# scope:fp2_2003_merc_actor = { silent_disappearance_effect = yes } +# } +#} +# +#################################### +## Ship building event +## By Hugo Cortell +#################################### +#fp2_struggle.2004 = { +# type = character_event +# title = fp2_struggle.2004.t +# desc = fp2_struggle.2004.desc +# +# theme = crown +# override_background = { reference = council_chamber } +# left_portrait = { +# character = root +# animation = personality_rational +# } +# right_portrait = { +# character = cp:councillor_steward +# animation = personality_content +# } +# lower_right_portrait = { character = cp:councillor_marshal } +# cooldown = { years = 150 } +# +# trigger = { +# has_fp2_dlc_trigger = yes +# current_year > 1025 +# top_liege = root +# +# realm_size >= minor_realm_size +# +# exists = cp:councillor_marshal +# cp:councillor_marshal = { is_available_ai_adult = yes } +# exists = cp:councillor_steward +# cp:councillor_steward = { +# is_available_ai_adult = yes +# NOT = { has_character_flag = fp2_2004_critical_success_achieved } +# } +# +# any_sub_realm_county = { +# is_coastal_county = yes +# NOT = { has_county_modifier = fp2_successful_shipyards_modifier } +# } +# } +# +# weight_multiplier = { +# modifier = { +# add = 5 +# current_year > 1066 +# } +# modifier = { +# add = 25 +# current_year > 1450 # Caravel time +# } +# modifier = { +# add = 25 +# current_year > 1550 +# } +# } +# immediate = { +# cp:councillor_marshal = { save_scope_as = 2004_scoped_marshal } +# cp:councillor_steward = { +# save_scope_as = 2004_scoped_steward +# if = { +# limit = { has_character_flag = fp2_2004_critical_success_achieved } +# remove_character_flag = fp2_2004_critical_success_achieved # For debug +# } +# } +# +# random_sub_realm_county = { +# limit = { is_coastal_county = yes } +# save_scope_as = fp2_2004_dockyards +# } +# } +# option = { # WE WILL BUILD BOATS OF PURE SILVER (MR addition) +# name = fp2_struggle.2004.c +# flavor = fp2_struggle.2004.c.desc +# +# remove_treasury_or_gold = major_treasury_or_gold_value +# scope:2004_scoped_steward = { +# add_opinion = { +# target = root +# modifier = dismissive_opinion +# opinion = -15 +# } +# } +# scope:2004_scoped_marshal = { +# add_opinion = { +# target = root +# modifier = dismissive_opinion +# opinion = -20 +# } +# } +# +# scope:2004_scoped_steward = { +# duel = { +# skill = learning +# value = high_skill_rating +# +# 25 = { # Failure Outcome +# compare_modifier = { +# value = scope:duel_value +# multiplier = -1.5 +# min = -24 +# } +# modifier = { # Someone is sneaking in iron powder to cheap out! +# add = 5 +# has_trait = avaricious +# } +# +# custom_tooltip = fp2_struggle.2005.desc.alt.a +# scope:fp2_2004_dockyards = { +# add_county_modifier = { +# modifier = fp2_successful_shipyards_modifier +# years = 20 +# } +# } +# } +# 5 = { # Success Outcome +# compare_modifier = { +# value = scope:duel_value +# multiplier = 1.5 +# min = -4 +# } +# modifier = { +# add = 5 +# has_trait = calm +# } +# modifier = { +# add = 15 +# has_trait = diligent +# } +# modifier = { +# add = 2 +# has_trait = ambitious +# } +# modifier = { +# add = 3 +# has_trait = patient +# } +# modifier = { +# add = 25 +# has_trait = shrewd +# } +# modifier = { +# add = 10 +# has_trait = overseer +# } +# modifier = { +# add = 8 +# has_trait = strategist +# } +# modifier = { +# add = 15 +# has_trait = architect +# } +# modifier = { +# add = 10 +# has_trait = scholar +# } +# modifier = { +# add = 15 +# has_trait = military_engineer +# } +# modifier = { +# add = 3 +# has_trait = logistician +# } +# modifier = { +# add = 6 +# has_trait = journaller +# } +# modifier = { # Building a ship of silver means you must know your construction material +# add = 5 +# has_trait = education_stewardship_1 # You sorta know how silver operates +# } +# modifier = { +# add = 8 +# has_trait = education_stewardship_2 # You understand the properties of silver +# } +# modifier = { +# add = 10 +# has_trait = education_stewardship_3 # You can bite silver and tell if it is real or not (others can only do it with gold) +# } +# modifier = { +# add = 15 +# has_trait = education_stewardship_4 # Your tounge is capable of taking appart the anatomical structure of the silver thanks to your PhD in home economics +# } +# modifier = { +# add = 20 +# has_trait = education_stewardship_5 # Like the above, except cooler, and my script comment has better spelling +# } +# +# root = { save_scope_as = fp2_2004_silver_boat_floats } +# show_as_tooltip = { +# root = { add_prestige = major_prestige_gain } +# scope:fp2_2004_dockyards = { +# add_county_modifier = { +# modifier = fp2_successful_shipyards_modifier +# years = 45 +# } +# } +# } +# } +# } +# } +# save_scope_as = fp2_2004_alt_option +# if = { +# limit = { is_developer_testing_trigger = yes } +# custom_tooltip = debug_generic_option_shortened_trigger_can_disable +# trigger_event = { +# id = fp2_struggle.2005 +# days = 2 +# } +# } +# else = { +# trigger_event = { +# id = fp2_struggle.2005 +# years = { 4 10 } +# } +# } +# } +# +# option = { # I will sponsor your endeavour - Side with Steward +# name = fp2_struggle.2004.a +# +# remove_treasury_or_gold = major_treasury_or_gold_value +# +# scope:2004_scoped_steward = { +# add_opinion = { +# target = root +# modifier = grateful_opinion +# opinion = 35 +# } +# } +# scope:2004_scoped_marshal = { +# add_opinion = { +# target = root +# modifier = disappointed_opinion +# opinion = -15 +# } +# } +# +# scope:2004_scoped_steward = { +# duel = { +# desc = outcome_in_a_few_years +# skill = learning +# value = high_skill_rating +# +# 50 = { +# compare_modifier = { +# value = scope:duel_value +# multiplier = -2.5 +# } +# desc = fp2_struggle.2004.a.a.desc +# +# modifier = { +# add = 10 +# has_trait = lazy +# } +# modifier = { +# add = 10 +# has_trait = fickle +# } +# modifier = { +# add = 5 +# has_trait = stubborn +# } +# modifier = { +# add = 2 +# has_trait = gregarious +# } +# modifier = { +# add = 30 +# has_trait = dull +# } +# modifier = { +# add = 5 +# has_trait = drunkard +# } +# modifier = { +# add = 7 +# has_trait = irritable +# } +# modifier = { +# add = 3 +# has_trait = rakish +# } +# modifier = { +# add = 10 +# has_trait = profligate +# } +# +# show_as_tooltip = { +# root = { +# add_character_modifier = { +# modifier = fp2_advanced_maritime_technology_modifier +# years = 50 +# } +# } +# } +# } +# 50 = { +# compare_modifier = { +# value = scope:duel_value +# multiplier = 2.5 +# } +# desc = fp2_struggle.2004.a.b.desc +# +# modifier = { +# add = 5 +# has_trait = calm +# } +# modifier = { +# add = 15 +# has_trait = diligent +# } +# modifier = { +# add = 2 +# has_trait = ambitious +# } +# modifier = { +# add = 3 +# has_trait = patient +# } +# modifier = { +# add = 25 +# has_trait = shrewd +# } +# modifier = { +# add = 10 +# has_trait = overseer +# } +# modifier = { +# add = 8 +# has_trait = strategist +# } +# modifier = { +# add = 15 +# has_trait = architect +# } +# modifier = { +# add = 10 +# has_trait = scholar +# } +# modifier = { +# add = 15 +# has_trait = military_engineer +# } +# modifier = { +# add = 3 +# has_trait = logistician +# } +# modifier = { +# add = 6 +# has_trait = journaller +# } +# +# add_character_flag = fp2_2004_critical_success_achieved +# show_as_tooltip = { +# root = { +# add_character_modifier = { +# modifier = fp2_advanced_maritime_technology_modifier +# years = 60 +# } +# } +# scope:fp2_2004_dockyards = { +# add_county_modifier = { +# modifier = fp2_successful_shipyards_modifier +# years = 60 +# } +# } +# } +# } +# } +# } +# hidden_effect = { +# if = { +# limit = { is_developer_testing_trigger = yes } +# custom_tooltip = debug_generic_option_shortened_trigger_can_disable +# trigger_event = { +# id = fp2_struggle.2005 +# days = 2 +# } +# } +# else = { +# trigger_event = { +# id = fp2_struggle.2005 +# years = { 5 9 } +# } +# } +# } +# +# ai_chance = { +# base = 0 +# modifier = { +# add = 50 +# treasury_or_gold > medium_treasury_or_gold_value +# } +# ai_value_modifier = { +# ai_boldness = 0.2 +# ai_greed = -0.3 +# ai_rationality = 0.2 +# } +# } +# } +# +# option = { # No, it is a waste of money - Side with marshal +# name = fp2_struggle.2004.b +# flavor = fp2_struggle.2004.b.desc +# +# scope:2004_scoped_marshal = { +# add_opinion = { +# target = root +# modifier = pleased_opinion +# opinion = 15 +# } +# } +# +# scope:2004_scoped_steward = { +# add_opinion = { +# target = root +# modifier = disappointed_opinion +# opinion = -15 +# } +# add_opinion = { +# target = scope:2004_scoped_marshal +# modifier = angry_opinion +# opinion = -25 +# } +# } +# +# ai_chance = { base = 50 } +# } +#} +# +#fp2_struggle.2005 = { +# type = character_event +# title = { +# first_valid = { +# triggered_desc = { +# trigger = { +# exists = scope:fp2_2004_alt_option +# } +# desc = { +# first_valid = { +# triggered_desc = { +# trigger = { +# exists = scope:fp2_2004_silver_boat_floats +# } +# desc = fp2_struggle.2005.desc.alt.b +# } +# desc = fp2_struggle.2005.desc.alt.a +# } +# } +# } +# triggered_desc = { +# trigger = { +# scope:2004_scoped_steward = { has_character_flag = fp2_2004_critical_success_achieved } +# } +# desc = fp2_struggle.2005.t.alt +# } +# desc = fp2_struggle.2005.t +# } +# } +# +# immediate = { +# if = { +# limit = { root = root } # Check if scoped port town is still under your control +# save_scope_as = port_under_control +# } +# +# # MIA checks +# if = { # Assign current steward +# limit = { exists = cp:councillor_steward } +# cp:councillor_steward = { save_scope_as = 2005_scoped_steward } +# } +# else_if = { # Otherwise assign chaplain +# limit = { exists = cp:councillor_court_chaplain } +# cp:councillor_court_chaplain = { save_scope_as = 2005_scoped_steward } +# } +# else = { # Fallback, get whoever is most qualified in court +# random_courtier_or_guest = { +# limit = { learning > high_skill_rating } +# random = { +# chance = 15 +# add_character_flag = fp2_2004_critical_success_achieved +# } +# save_scope_as = 2005_scoped_steward +# } +# if = { +# limit = { +# NOT = { exists = scope:2005_scoped_steward } +# } +# random_courtier_or_guest = { save_scope_as = 2005_scoped_steward } +# } +# } +# +# if = { +# limit = { +# scope:2004_scoped_steward != scope:2005_scoped_steward +# OR = { +# scope:2005_scoped_steward = cp:councillor_steward +# scope:2005_scoped_steward = cp:councillor_court_chaplain +# } +# } +# if = { +# limit = { learning > high_skill_rating } +# random = { +# chance = 25 +# add_character_flag = fp2_2004_critical_success_achieved +# } +# save_scope_as = 2005_scoped_steward +# } +# } +# } +# +# desc = { +# triggered_desc = { # Alt option +# trigger = { exists = scope:fp2_2004_alt_option } +# desc = { +# first_valid = { +# triggered_desc = { +# trigger = { +# exists = scope:fp2_2004_silver_boat_floats +# } +# desc = fp2_struggle.2005.desc.alt.b.desc +# } +# desc = fp2_struggle.2005.desc.alt.a.desc +# } +# triggered_desc = { # Lost dockyards +# trigger = { scope:fp2_2004_dockyards.holder.top_liege != root.top_liege } +# desc = fp2_struggle.2005.desc.cirt.a.notif +# } +# } +# } +# triggered_desc = { +# trigger = { NOT = { exists = scope:fp2_2004_alt_option } } +# desc = { +# triggered_desc = { # Crtitical success explanation +# trigger = { +# scope:2005_scoped_steward = { has_character_flag = fp2_2004_critical_success_achieved } +# } +# desc = fp2_struggle.2005.desc.cirt.notif +# } +# triggered_desc = { # Lost dockyards +# trigger = { +# scope:2005_scoped_steward = { has_character_flag = fp2_2004_critical_success_achieved } +# scope:fp2_2004_dockyards.holder.top_liege != root.top_liege +# } +# desc = fp2_struggle.2005.desc.cirt.a.notif +# } +# +# # Original (Steward) designer is MIA +# triggered_desc = { +# trigger = { +# scope:2004_scoped_steward != scope:2005_scoped_steward +# } +# desc = fp2_struggle.2005.desc.newdesigner.notif +# } +# +# triggered_desc = { # Intro (non-crit) +# trigger = { +# NOT = { scope:2005_scoped_steward = { has_character_flag = fp2_2004_critical_success_achieved } } +# } +# desc = fp2_struggle.2005.desc.intro +# } +# +# # Describe bottom of the ship +# random_valid = { +# desc = fp2_struggle.2005.desc.bottom.a +# desc = fp2_struggle.2005.desc.bottom.b +# desc = fp2_struggle.2005.desc.bottom.c +# desc = fp2_struggle.2005.desc.bottom.d +# } +# +# # Describe main feature(s) +# random_valid = { +# desc = fp2_struggle.2005.desc.unique.a +# desc = fp2_struggle.2005.desc.unique.b +# desc = fp2_struggle.2005.desc.unique.c +# desc = fp2_struggle.2005.desc.unique.d +# desc = fp2_struggle.2005.desc.unique.e +# } +# +# # Describe sails (updated to propulsion) +# random_valid = { +# desc = fp2_struggle.2005.desc.sails.a +# desc = fp2_struggle.2005.desc.sails.b +# desc = fp2_struggle.2005.desc.sails.c +# desc = fp2_struggle.2005.desc.sails.d +# } +# +# first_valid = { +# triggered_desc = { +# trigger = { scope:2005_scoped_steward = { has_character_flag = fp2_2004_critical_success_achieved } } +# desc = fp2_struggle.2005.desc.outro.crit +# } +# desc = fp2_struggle.2005.desc.outro +# } +# } +# } +# } +# +# theme = martial +# override_background = { reference = docks } +# left_portrait = { +# character = root +# triggered_animation = { +# trigger = { +# exists = scope:fp2_2004_alt_option +# NOT = { exists = scope:fp2_2004_silver_boat_floats } +# } +# animation = anger +# } +# triggered_animation = { +# trigger = { exists = scope:fp2_2004_alt_option } +# animation = ecstasy +# } +# animation = war_over_win +# } +# right_portrait = { +# character = scope:2005_scoped_steward +# animation = throne_room_writer +# } +# +# option = { # ALT Accept +# trigger = { +# exists = scope:fp2_2004_alt_option +# exists = scope:fp2_2004_silver_boat_floats +# } +# name = fp2_struggle.2005.a +# +# add_prestige = major_prestige_gain +# scope:fp2_2004_dockyards = { +# add_county_modifier = { +# modifier = fp2_successful_shipyards_modifier +# years = 45 +# } +# } +# } +# +# option = { # ALT Accept (Failure Version) +# trigger = { +# exists = scope:fp2_2004_alt_option +# NOT = { exists = scope:fp2_2004_silver_boat_floats } +# } +# name = artifact.4050.a # Reusage of loc key +# +# scope:fp2_2004_dockyards = { +# add_county_modifier = { +# modifier = fp2_successful_shipyards_modifier +# years = 20 +# } +# } +# } +# +# option = { # Accept +# trigger = { +# NOT = { +# exists = scope:fp2_2004_alt_option +# scope:2005_scoped_steward = { has_character_flag = fp2_2004_critical_success_achieved } +# } +# } +# name = fp2_struggle.2005.a +# +# add_character_modifier = { +# modifier = fp2_advanced_maritime_technology_modifier +# years = 50 +# } +# } +# +# option = { # Crit Accept +# trigger = { +# NOT = { exists = scope:fp2_2004_alt_option } +# scope:2005_scoped_steward = { has_character_flag = fp2_2004_critical_success_achieved } +# } +# name = { +# text = { +# first_valid = { +# triggered_desc = { +# trigger = { scope:fp2_2004_dockyards.holder.top_liege = top_liege } +# desc = fp2_struggle.2005.a +# } +# desc = fp2_struggle.2005.a.a +# } +# } +# } +# +# add_character_modifier = { +# modifier = fp2_advanced_maritime_technology_modifier +# years = 60 +# } +# scope:fp2_2004_dockyards = { +# add_county_modifier = { +# modifier = fp2_successful_shipyards_modifier +# years = 60 +# } +# } +# } +# +# after = { +# if = { +# limit = { +# OR = { +# scope:2004_scoped_steward = { has_character_flag = fp2_2004_critical_success_achieved } +# scope:2005_scoped_steward = { has_character_flag = fp2_2004_critical_success_achieved } +# } +# } +# scope:2004_scoped_steward = { remove_character_flag = fp2_2004_critical_success_achieved } +# scope:2005_scoped_steward = { remove_character_flag = fp2_2004_critical_success_achieved } +# } +# } +#} +# +#################################### +## The Borders of Faith +## By Hugo Cortell +#################################### +#scripted_trigger fp2_event2006_check_if_right_vassal_target = { +# holder != root +# holder = { +# is_available_ai_adult = yes +# faith = root.faith +# NOT = { has_trait = cynical } +# OR = { +# any_secret = { type = secret_non_believer } +# AND = { # Fallback, get non-devout follower +# piety < 51 +# NOT = { has_trait = zealous } +# } +# } +# } +#} +# +#fp2_struggle.2006 = { +# type = character_event +# title = fp2_struggle.2006.t +# desc = fp2_struggle.2006.desc +# cooldown = { years = 20 } +# +# theme = faith +# override_background = { reference = council_chamber } +# left_portrait = { +# character = root +# animation = shock +# } +# right_portrait = { +# character = scope:fp2_2006_vassal_in_crisis +# animation = stress +# } +# lower_left_portrait = { +# trigger = { exists = scope:2006_scoped_chaplain } +# character = scope:2006_scoped_chaplain +# } +# +# trigger = { +# has_fp2_dlc_trigger = yes +# root.top_liege = root +# any_sub_realm_county = { +# fp2_event2006_check_if_right_vassal_target = yes +# +# holder = { +# any_neighboring_top_liege_realm_owner = { +# faith != root.faith +# } +# } +# } +# } +# +# immediate = { +# if = { +# limit = { exists = cp:councillor_court_chaplain } +# cp:councillor_court_chaplain = { save_scope_as = 2006_scoped_chaplain } +# } +# random_sub_realm_county = { +# limit = { fp2_event2006_check_if_right_vassal_target = yes } +# holder = { +# save_scope_as = fp2_2006_vassal_in_crisis +# random_neighboring_top_liege_realm_owner = { +# limit = { faith != root.faith } +# faith = { save_scope_as = fp2_2006_foreign_faith } +# } +# } +# } +# } +# +# option = { # Im a witch! And you can be one too! +# trigger = { +# has_trait = witch +# OR = { +# NOT = { # Not witch +# scope:fp2_2006_vassal_in_crisis = { +# any_secret = { type = secret_witch } +# } +# } +# scope:fp2_2006_vassal_in_crisis = { # Witch but does not walk the path of witchery with you +# any_secret = { +# type = secret_witch +# NOT = { is_known_by = root } +# } +# } +# } +# } +# name = fp2_struggle.2006.e +# +# if = { +# limit = { +# any_secret = { +# type = secret_witch +# } +# } +# random_secret = { +# type = secret_witch +# reveal_to = scope:fp2_2006_vassal_in_crisis +# } +# } +# send_interface_toast = { +# type = event_witchcraft_good +# title = fp2_struggle.2006.e.notif.t +# left_icon = scope:fp2_2006_vassal_in_crisis +# +# scope:fp2_2006_vassal_in_crisis = { +# if = { +# limit = { +# any_secret = { type = secret_witch } +# has_trait = witch +# } +# custom_tooltip = fp2_struggle.2006.e.alreadywitch +# } +# else = { +# hidden_effect = { give_witch_secret_or_trait_effect = yes } +# show_as_tooltip = { add_trait = witch } +# } +# show_as_tooltip = { +# random_secret = { +# type = secret_witch +# reveal_to = root +# } +# } +# if = { +# limit = { can_set_relation_friend_trigger = { CHARACTER = root } } +# set_relation_friend = { reason = friend_guided_right_path target = root } +# } +# add_opinion = { +# target = root +# modifier = fp2_tolerated_me_opinion +# } +# if = { +# limit = { +# trait_is_criminal_in_faith_trigger = { +# TRAIT = trait:witch +# GENDER_CHARACTER = scope:fp2_2006_vassal_in_crisis +# FAITH = scope:fp2_2006_vassal_in_crisis.faith +# } +# NOT = { +# trait_is_criminal_in_faith_trigger = { +# TRAIT = trait:witch +# GENDER_CHARACTER = scope:fp2_2006_vassal_in_crisis +# FAITH = scope:fp2_2006_foreign_faith +# } +# } +# } +# hidden_effect = { set_character_faith_with_conversion = scope:fp2_2006_foreign_faith } +# custom_tooltip = fp2_struggle.2006.e.tacticalwitchfaithchange +# } +# +# hidden_effect = { +# if = { +# limit = { +# any_secret = { +# type = secret_witch +# } +# } +# random_secret = { +# type = secret_witch +# reveal_to = root +# } +# } +# root = { +# random_secret = { +# type = secret_witch +# reveal_to = scope:fp2_2006_vassal_in_crisis +# } +# } +# } +# } +# } +# +# ai_chance = { +# base = 80 +# ai_value_modifier = { +# ai_honor = -0.3 +# ai_rationality = 0.5 +# ai_zeal = -0.9 +# } +# } +# } +# +# option = { # (Threaten to) Denounce heretic +# trigger = { +# OR = { +# has_trait = schemer +# has_trait = devoted +# intrigue > medium_skill_rating +# } +# } +# name = fp2_struggle.2006.d +# stress_impact = { +# compassionate = medium_stress_impact_gain +# gallant = medium_stress_impact_gain +# } +# +# add_dread = miniscule_dread_gain +# hidden_effect = { +# scope:fp2_2006_vassal_in_crisis = { +# if = { +# limit = { any_secret = { NOT = { secret_type = secret_non_believer } } } +# add_secret = { type = secret_non_believer } +# } +# } +# } +# +# add_hook = { +# target = scope:fp2_2006_vassal_in_crisis +# type = threat_hook +# } +# random_secret = { +# type = secret_non_believer +# reveal_to = root +# } +# +# scope:fp2_2006_vassal_in_crisis = { +# add_opinion = { +# target = root +# modifier = betrayed_me_opinion +# opinion = -40 +# } +# } +# +# ai_chance = { +# base = 30 +# ai_value_modifier = { +# ai_compassion = -0.5 +# ai_honor = -0.8 +# ai_rationality = 0.1 +# ai_zeal = 0.3 +# ai_vengefulness = 0.3 +# ai_greed = 0.2 +# } +# } +# } +# +# option = { # I will fix him myself +# name = fp2_struggle.2006.b +# stress_impact = { +# cynical = minor_stress_impact_gain +# } +# +# duel = { +# skill = learning +# value = medium_skill_rating +# +# 15 = { +# desc = fp2_struggle.2006.b.a.desc +# compare_modifier = { +# value = scope:duel_value +# multiplier = -1.5 +# } +# modifier = { +# add = 10 +# has_trait = fickle +# } +# modifier = { +# add = 10 +# has_trait = heresiarch +# } +# modifier = { +# add = 2 +# has_trait = impotent +# } +# modifier = { +# add = 5 +# has_trait = irritable +# } +# modifier = { +# add = 5 +# has_trait = dull +# } +# modifier = { +# add = 10 +# has_trait = depressed_genetic +# } +# modifier = { +# add = 10 +# has_trait = arrogant +# } +# modifier = { +# add = 5 +# has_trait = arbitrary +# } +# modifier = { +# add = 10 +# has_trait = lazy +# } +# modifier = { +# add = 2 +# has_trait = stubborn +# } +# modifier = { +# add = 5 +# has_trait = craven +# } +# +# send_interface_toast = { +# type = event_toast_effect_bad +# title = fp2_struggle.2006.generic.notif.a.t +# left_icon = scope:fp2_2006_vassal_in_crisis +# +# scope:fp2_2006_vassal_in_crisis = { +# hidden_effect = { set_character_faith_with_conversion = scope:fp2_2006_foreign_faith } +# show_as_tooltip = { set_character_faith = scope:fp2_2006_foreign_faith } +# +# progress_towards_rival_effect = { +# REASON = rival_fraternising_enemy +# CHARACTER = root +# OPINION = 0 +# } +# add_opinion = { +# target = root +# modifier = fp2_questioned_my_faith_opinion +# } +# } +# } +# } +# 15 = { +# desc = fp2_struggle.2006.b.b.desc +# compare_modifier = { +# value = scope:duel_value +# multiplier = 1.5 +# } +# modifier = { +# add = 10 +# has_trait = calm +# } +# modifier = { +# add = 10 +# has_trait = humble +# } +# modifier = { +# add = 3 +# has_trait = forgiving +# } +# modifier = { +# add = 5 +# has_trait = honest +# } +# modifier = { +# add = 10 +# has_trait = humble +# } +# modifier = { +# add = 3 +# has_trait = patient +# } +# modifier = { +# add = 20 +# has_trait = zealous +# } +# modifier = { +# add = 4 +# has_trait = compassionate +# } +# modifier = { +# add = 20 +# has_trait = theologian # Could be it's own option, but I can't think of what argument could be used... +# } +# modifier = { +# add = 10 +# has_trait = devoted +# } +# modifier = { +# add = 2 +# has_trait = lifestyle_poet +# } +# modifier = { +# add = 10 +# has_trait = saint +# } +# +# send_interface_toast = { +# type = event_toast_effect_good +# title = fp2_struggle.2006.generic.notif.b.t +# left_icon = scope:fp2_2006_vassal_in_crisis +# +# add_piety = medium_piety_gain +# progress_towards_friend_effect = { +# REASON = friend_guided_right_path +# CHARACTER = scope:fp2_2006_vassal_in_crisis +# OPINION = 0 +# } +# if = { +# limit = { +# this != root +# } +# add_opinion = { +# target = root +# modifier = fp2_reassured_faith_opinion +# } +# } +# } +# } +# } +# +# ai_chance = { +# base = 45 +# ai_value_modifier = { +# ai_compassion = 0.2 +# ai_sociability = 0.3 +# ai_zeal = 0.2 +# } +# } +# } +# +# option = { # One-on-One time +# name = fp2_struggle.2006.c +# flavor = fp2_struggle.2006.c.desc +# +# trigger = { +# NAND = { +# has_trait = witch +# OR = { +# has_trait = schemer +# has_trait = devoted +# intrigue > medium_skill_rating +# } +# } +# } +# stress_impact = { zealous = minor_stress_impact_gain } +# +# scope:fp2_2006_vassal_in_crisis = { +# progress_towards_friend_effect = { +# REASON = friend_religious_tolerance +# CHARACTER = root +# OPINION = 0 +# } +# add_opinion = { +# target = root +# modifier = fp2_tolerated_me_opinion +# } +# random = { +# chance = 50 +# hidden_effect = { set_character_faith_with_conversion = scope:fp2_2006_foreign_faith } +# show_as_tooltip = { set_character_faith = scope:fp2_2006_foreign_faith } +# } +# } +# +# ai_chance = { +# base = 10 +# ai_value_modifier = { +# ai_compassion = 0.1 +# ai_rationality = 0.6 +# ai_zeal = -0.7 +# } +# } +# } +# +# option = { # Someone call a priest! +# name = fp2_struggle.2006.a +# flavor = fp2_struggle.2006.a.desc +# show_as_unavailable = { NOT = { exists = scope:2006_scoped_chaplain } } # Replaces trigger, teases player to possibility. +# stress_impact = { +# honest = medium_stress_impact_gain +# humble = minor_stress_impact_gain +# trusting = medium_stress_impact_gain +# } +# +# scope:fp2_2006_vassal_in_crisis = { +# add_opinion = { +# target = root +# modifier = betrayed_me_opinion +# opinion = -20 +# } +# } +# scope:2006_scoped_chaplain = { +# duel = { +# skill = learning +# value = medium_skill_rating +# +# 10 = { +# desc = fp2_struggle.2006.a.a +# compare_modifier = { +# value = scope:duel_value +# multiplier = -1.25 +# } +# modifier = { +# add = 15 +# scope:fp2_2006_vassal_in_crisis = { has_trait = paranoid } +# } +# modifier = { +# add = 10 +# has_trait = fickle +# } +# modifier = { +# add = 10 +# has_trait = heresiarch +# } +# modifier = { +# add = 2 +# has_trait = impotent +# } +# modifier = { +# add = 5 +# has_trait = irritable +# } +# modifier = { +# add = 5 +# has_trait = dull +# } +# modifier = { +# add = 10 +# has_trait = depressed_genetic +# } +# modifier = { +# add = 10 +# has_trait = arrogant +# } +# modifier = { +# add = 5 +# has_trait = arbitrary +# } +# modifier = { +# add = 10 +# has_trait = lazy +# } +# modifier = { +# add = 2 +# has_trait = stubborn +# } +# modifier = { +# add = 5 +# has_trait = craven +# } +# modifier = { +# factor = 2 +# scope:fp2_2006_vassal_in_crisis = { has_trait = paranoid } +# } +# +# root = { +# hidden_effect = { +# scope:fp2_2006_vassal_in_crisis = { +# if = { +# limit = { any_secret = { type = secret_non_believer } } +# progress_towards_rival_effect = { # "HE MUST BE ON TO ME!" +# REASON = rival_faith_tested +# CHARACTER = scope:2006_scoped_chaplain +# OPINION = 0 +# } +# add_opinion = { +# target = scope:2006_scoped_chaplain +# modifier = fp2_questioned_my_faith_opinion +# } +# } +# } +# } +# send_interface_toast = { +# type = event_toast_effect_bad +# title = fp2_struggle.2006.generic.notif.a.t +# left_icon = scope:fp2_2006_vassal_in_crisis +# +# scope:fp2_2006_vassal_in_crisis = { +# show_as_tooltip = { set_character_faith = scope:fp2_2006_foreign_faith } +# hidden_effect = { set_character_faith_with_conversion = scope:fp2_2006_foreign_faith } +# +# add_opinion = { +# target = scope:2006_scoped_chaplain +# modifier = fp2_questioned_my_faith_opinion +# opinion = -35 +# } +# } +# } +# } +# } +# 5 = { +# trigger = { +# scope:fp2_2006_vassal_in_crisis = { +# NOT = { has_trait = paranoid } +# } +# } +# desc = fp2_struggle.2006.a.b +# compare_modifier = { +# value = scope:duel_value +# multiplier = -1.25 +# } +# modifier = { +# add = 10 +# has_trait = fickle +# } +# modifier = { +# add = 10 +# has_trait = heresiarch +# } +# modifier = { +# add = 2 +# has_trait = impotent +# } +# modifier = { +# add = 5 +# has_trait = irritable +# } +# modifier = { +# add = 5 +# has_trait = dull +# } +# modifier = { +# add = 10 +# has_trait = depressed_genetic +# } +# modifier = { +# add = 10 +# has_trait = arrogant +# } +# modifier = { +# add = 5 +# has_trait = arbitrary +# } +# modifier = { +# add = 10 +# has_trait = lazy +# } +# modifier = { +# add = 2 +# has_trait = stubborn +# } +# modifier = { +# add = 5 +# has_trait = craven +# } +# +# root = { +# hidden_effect = { +# scope:fp2_2006_vassal_in_crisis = { +# if = { +# limit = { any_secret = { type = secret_non_believer } } +# progress_towards_rival_effect = { # "HE MUST BE ON TO ME!" +# REASON = rival_faith_tested +# CHARACTER = scope:2006_scoped_chaplain +# OPINION = 0 +# } +# add_opinion = { +# target = scope:2006_scoped_chaplain +# modifier = fp2_questioned_my_faith_opinion +# } +# } +# } +# } +# send_interface_toast = { +# type = event_toast_effect_bad +# title = fp2_struggle.2006.generic.notif.a.t +# left_icon = scope:fp2_2006_vassal_in_crisis +# +# scope:fp2_2006_vassal_in_crisis = { +# remove_trait = trusting +# if = { +# limit = { is_ai = yes } +# add_stress = monumental_stress_gain # Unbalanced for players, fun when seeing it happen to unrelated AI +# } +# else = { add_stress = medium_stress_gain } # (there is no notification) +# add_opinion = { +# target = scope:2006_scoped_chaplain +# modifier = fp2_questioned_my_faith_opinion +# opinion = -25 +# } +# } +# } +# } +# } +# 20 = { +# desc = fp2_struggle.2006.a.c +# compare_modifier = { +# value = scope:duel_value +# multiplier = 1.5 +# } +# modifier = { +# add = 10 +# has_trait = calm +# } +# modifier = { +# add = 10 +# has_trait = humble +# } +# modifier = { +# add = 3 +# has_trait = forgiving +# } +# modifier = { +# add = 5 +# has_trait = honest +# } +# modifier = { +# add = 10 +# has_trait = humble +# } +# modifier = { +# add = 3 +# has_trait = patient +# } +# modifier = { +# add = 20 +# has_trait = zealous +# } +# modifier = { +# add = 4 +# has_trait = compassionate +# } +# modifier = { +# add = 15 +# has_trait = theologian +# } +# modifier = { +# add = 10 +# has_trait = devoted +# } +# modifier = { +# add = 2 +# has_trait = lifestyle_poet +# } +# modifier = { +# add = 10 +# has_trait = saint +# } +# +# hidden_effect = { +# scope:fp2_2006_vassal_in_crisis = { add_piety = minor_piety_gain } +# scope:2006_scoped_chaplain = { add_piety = medium_piety_gain } +# } +# root = { +# send_interface_toast = { +# type = event_toast_effect_good +# title = fp2_struggle.2006.generic.notif.b.t +# left_icon = scope:fp2_2006_vassal_in_crisis +# +# scope:fp2_2006_vassal_in_crisis = { +# progress_towards_friend_effect = { +# REASON = friend_guided_right_path +# CHARACTER = scope:2006_scoped_chaplain +# OPINION = 0 +# } +# add_opinion = { +# target = scope:2006_scoped_chaplain +# modifier = fp2_reassured_faith_opinion +# } +# } +# } +# } +# } +# } +# } +# +# ai_chance = { +# base = 45 +# ai_value_modifier = { +# ai_compassion = -0.1 +# ai_energy = -0.1 +# ai_honor = -0.1 +# ai_rationality = 0.2 +# ai_sociability = -0.2 +# ai_zeal = 0.3 +# } +# } +# } +#} +# +#################################### +## A Castle Worthy of Iberia +## By Hugo Cortell +#################################### +#scripted_trigger fp2_struggle_2007_can_build_castle_trigger = { # Ensures that the selected building spot adheres to the game's rules on holding placement. +# any_county_province = { has_holding = no } +# trigger_if = { +# limit = { any_county_province = { has_holding_type = castle_holding } } +# any_county_province = { has_holding_type = church_holding } +# any_county_province = { has_holding_type = city_holding } +# } +# exists = holder +# holder != scope:fp2_2007_scoped_steward +#} +# +#fp2_struggle.2007 = { +# type = character_event +# title = fp2_struggle.2007.t +# desc = { +# first_valid = { +# triggered_desc = { +# trigger = { scope:fp2_2007_castle_holder = ROOT } +# desc = fp2_struggle.2007.desc.a +# } +# desc = fp2_struggle.2007.desc.b +# } +# } +# +# theme = realm +# cooldown = { years = 20 } +# override_background = { reference = garden } +# left_portrait = { +# character = root +# animation = personality_rational +# } +# right_portrait = { +# character = scope:fp2_2007_scoped_steward +# animation = chancellor +# } +# lower_left_portrait = scope:2007_vassal_sponsor +# lower_right_portrait = scope:fp2_2007_castle_holder +# +# trigger = { +# has_fp2_dlc_trigger = yes +# is_ai = no # Overpowered for AI, player only. +# struggle:iberian_struggle = { +# is_struggle_phase = struggle_iberia_phase_hostility +# +# } +# +# root.top_liege = root +# exists = cp:councillor_steward +# cp:councillor_steward = { is_available_ai_adult = yes } +# +# any_vassal = { # Last minute pre RC fixes +# NOT = { +# religion = root.religion +# this = cp:councillor_steward +# } +# } +# any_realm_county = { fp2_struggle_2007_can_build_castle_trigger = yes } +# +# save_temporary_scope_value_as = { +# name = fp2_2007_wealth_barrier +# value = { +# value = main_building_tier_1_cost +# multiply = 0.8 +# round = yes +# } +# } +# OR = { +# gold > scope:fp2_2007_wealth_barrier +# OR = { +# has_trait = architect +# AND = { +# has_royal_court = yes +# employs_court_position = royal_architect_court_position +# any_court_position_holder = { +# type = royal_architect_court_position +# is_available_ai_adult = yes +# } +# } +# } +# } +# } +# +# immediate = { +# cp:councillor_steward = { save_scope_as = fp2_2007_scoped_steward } +# if = { +# limit = { +# any_court_position_holder = { +# type = royal_architect_court_position +# is_available_ai_adult = yes +# } +# } +# random_court_position_holder = { +# type = royal_architect_court_position +# save_scope_as = fp2_2007_roco_architect +# } +# } +# random_vassal = { +# limit = { +# NOT = { +# religion = root.religion +# this = scope:fp2_2007_scoped_steward +# } +# } +# save_scope_as = 2007_vassal_sponsor +# } +# +# random_realm_county = { +# limit = { fp2_struggle_2007_can_build_castle_trigger = yes } +# random_county_province = { +# limit = { has_holding = no } +# save_scope_as = fp2_2007_free_real_estate +# } +# holder = { save_scope_as = fp2_2007_castle_holder } +# } +# +# # Get Different Faith (updated to whole religion) +# struggle:iberian_struggle = { +# random_involved_ruler = { +# limit = { +# religion != root.religion +# faith = { save_temporary_scope_as = temp_involved_faith } +# struggle:iberian_struggle = { is_faith_involved_in_struggle = scope:temp_involved_faith } +# } +# religion = { save_scope_as = fp2_2007_foreign_faith } +# } +# if = { # Fallback +# limit = { NOT = { exists = scope:fp2_2007_foreign_faith } } +# get_random_faith_effect = { FORBIDROOTFAITH = yes } +# scope:random_faith.religion = { save_scope_as = fp2_2007_foreign_faith } +# } +# } +# +# # Get castileans or proto-castileans +# if = { +# limit = { culture = { has_cultural_parameter = architect_trait_prestige } } +# culture = { save_scope_as = fp2_2007_allegedprotocastilean } +# } +# +# save_scope_value_as = { +# name = fp2_2007_same_faith_construction_cost +# value = { +# value = main_building_tier_1_cost +# multiply = 0.75 +# round = yes +# } +# } +# save_scope_value_as = { +# name = fp2_2007_different_faith_construction_cost +# value = { +# value = main_building_tier_1_cost +# multiply = 0.65 +# round = yes +# } +# } +# save_scope_value_as = { +# name = fp2_2007_diy_construction_cost +# value = { +# value = main_building_tier_1_cost +# multiply = 0.6 +# round = yes +# } +# } +# +# # Set dynamic loc keys for powerful vassals +# religion = { save_scope_as = dyloc_powerful_vassal_faith } +# culture = { save_scope_as = dyloc_powerful_vassal_culture } +# } +# +# option = { # Same Faith (or) Castilean architect +# name = { +# text = { +# first_valid = { +# triggered_desc = { +# trigger = { exists = scope:fp2_2007_allegedprotocastilean } +# desc = fp2_struggle.2007.a.castile +# } +# desc = fp2_struggle.2007.a +# } +# } +# } +# flavor = { +# first_valid = { +# triggered_desc = { +# trigger = { exists = scope:fp2_2007_allegedprotocastilean } +# desc = fp2_struggle.2007.a.castile.favor +# } +# desc = fp2_struggle.2007.a.major_vassal_flavor +# } +# } +# show_as_unavailable = { gold < scope:fp2_2007_same_faith_construction_cost } +# +# if = { # Proto-Castilean +# limit = { exists = scope:fp2_2007_allegedprotocastilean } +# every_powerful_vassal = { +# limit = { culture = root.culture } +# custom = fp2_every_major_same_culture_vassal_notifier +# add_opinion = { +# target = root +# modifier = pleased_opinion +# opinion = 10 +# } +# } +# } +# show_as_tooltip = { +# remove_treasury_or_gold = scope:fp2_2007_same_faith_construction_cost +# scope:fp2_2007_free_real_estate = { +# begin_create_holding = { +# type = castle_holding +# refund_cost = { +# gold = 95 +# } +# } +# } +# add_hook_if_possible_effect = { # General effect +# TARGET = scope:fp2_2007_castle_holder +# TYPE = indebted_hook +# YEARS = 8 +# } # Hooks get their own notifications, therefore I will not show them on the main effect +# } +# hidden_effect = { +# send_interface_toast = { +# type = event_toast_effect_good +# title = fp2_struggle.2007.t +# left_icon = root +# right_icon = scope:fp2_2007_castle_holder +# +# remove_treasury_or_gold = scope:fp2_2007_same_faith_construction_cost +# custom_tooltip = fp2_struggle.2007.a.notif +# hidden_effect = { +# scope:fp2_2007_free_real_estate = { +# begin_create_holding = { +# type = castle_holding +# refund_cost = { +# gold = 95 +# } +# } +# } +# add_hook_if_possible_effect = { # General effect +# TARGET = scope:fp2_2007_castle_holder +# TYPE = indebted_hook +# YEARS = 8 +# } +# } +# } +# } +# } +# +# option = { # Foreign (different faith) architect +# name = fp2_struggle.2007.b +# flavor = fp2_struggle.2007.b.flavor +# show_as_unavailable = { gold < scope:fp2_2007_different_faith_construction_cost } +# hidden_effect = { scope:2007_vassal_sponsor = { remove_treasury_or_gold = medium_treasury_or_gold_value } } +# +# every_powerful_vassal = { +# custom = fp2_every_major_same_faith_vassal_notifier +# limit = { religion = root.religion } +# add_opinion = { +# target = root +# modifier = disappointed_opinion +# opinion = -15 +# } +# } +# every_powerful_vassal = { +# custom = fp2_every_major_different_faith_vassal_notifier +# limit = { religion != root.religion } +# add_opinion = { +# target = root +# modifier = respect_opinion +# opinion = 15 +# } +# } +# scope:fp2_2007_free_real_estate.county = { +# if = { +# limit = { religion = scope:fp2_2007_foreign_faith } +# add_county_modifier = { +# modifier = modifier_religious_understanding_modifier +# years = 12 +# } +# } +# else_if = { +# limit = { religion != root.religion } +# add_county_modifier = { +# modifier = invested_in_province_modifier +# years = 5 +# } +# } +# } +# +# show_as_tooltip = { +# remove_treasury_or_gold = scope:fp2_2007_different_faith_construction_cost +# scope:fp2_2007_free_real_estate = { +# begin_create_holding = { +# type = castle_holding +# refund_cost = { +# gold = 95 +# } +# } +# } +# add_hook_if_possible_effect = { +# TARGET = scope:fp2_2007_castle_holder +# TYPE = indebted_hook +# YEARS = 8 +# } +# } +# hidden_effect = { +# send_interface_toast = { +# type = event_toast_effect_good +# title = fp2_struggle.2007.t +# left_icon = scope:2007_vassal_sponsor +# right_icon = scope:fp2_2007_castle_holder +# +# remove_treasury_or_gold = scope:fp2_2007_different_faith_construction_cost +# custom_tooltip = fp2_struggle.2007.a.notif +# hidden_effect = { +# scope:fp2_2007_free_real_estate = { +# begin_create_holding = { +# type = castle_holding +# refund_cost = { +# gold = 95 +# } +# } +# } +# add_hook_if_possible_effect = { # General effect +# TARGET = scope:fp2_2007_castle_holder +# TYPE = indebted_hook +# YEARS = 8 +# } +# } +# } +# } +# } +# +# option = { # I will build it myself +# name = fp2_struggle.2007.c +# flavor = fp2_struggle.2007.c.flavor +# +# trigger = { has_trait = architect } +# +# duel = { +# skill = learning +# value = very_high_skill_rating +# +# 60 = { +# desc = fp2_struggle.2007.c.notif.a.desc +# compare_modifier = { +# value = scope:duel_value +# multiplier = 1 # Should be -1 but it has already been balanced +# } +# +# send_interface_toast = { +# type = event_toast_effect_bad +# title = fp2_struggle.2007.c.notif.a.t +# left_icon = root +# right_icon = scope:fp2_2007_castle_holder +# +# add_prestige = major_prestige_loss +# reverse_add_opinion = { +# target = scope:fp2_2007_scoped_steward +# modifier = disappointed_opinion +# opinion = -10 +# } +# } +# } +# 40 = { +# desc = fp2_struggle.2007.c.notif.b.desc +# compare_modifier = { +# value = scope:duel_value +# multiplier = 1 +# } +# modifier = { +# add = fp2_2007_calculate_architect_competence +# always = yes +# } +# +# show_as_tooltip = { +# remove_treasury_or_gold = scope:fp2_2007_diy_construction_cost +# if = { +# limit = { exists = scope:fp2_2007_allegedprotocastilean } +# add_prestige = minor_prestige_gain +# } +# +# scope:fp2_2007_free_real_estate = { +# begin_create_holding = { +# type = castle_holding +# refund_cost = { +# gold = medium_gold_value +# } +# } +# } +# add_hook_if_possible_effect = { # General effect +# TARGET = scope:fp2_2007_castle_holder +# TYPE = indebted_hook +# YEARS = 8 +# } +# } +# hidden_effect = { +# send_interface_toast = { +# type = event_toast_effect_good +# title = fp2_struggle.2007.t +# left_icon = root +# right_icon = scope:fp2_2007_castle_holder +# +# remove_treasury_or_gold = scope:fp2_2007_diy_construction_cost +# if = { +# limit = { exists = scope:fp2_2007_allegedprotocastilean } +# add_prestige = minor_prestige_gain +# } +# custom_tooltip = fp2_struggle.2007.a.notif +# } +# hidden_effect = { +# scope:fp2_2007_free_real_estate = { +# begin_create_holding = { +# type = castle_holding +# refund_cost = { +# gold = medium_gold_value +# } +# } +# } +# add_hook_if_possible_effect = { +# TARGET = scope:fp2_2007_castle_holder +# TYPE = indebted_hook +# YEARS = 8 +# } +# } +# } +# } +# } +# } +# +# option = { # RoCo +# name = fp2_struggle.2007.c.roco +# +# trigger = { +# NOT = { has_trait = architect } +# exists = scope:fp2_2007_roco_architect +# } +# scope:fp2_2007_roco_architect = { +# duel = { +# skill = learning +# value = very_high_skill_rating +# +# 55 = { +# desc = fp2_struggle.2007.c.notif.a.desc +# +# compare_modifier = { +# value = scope:duel_value +# multiplier = 1 +# } +# +# root = { +# send_interface_toast = { +# type = event_toast_effect_bad +# title = fp2_struggle.2007.c.notif.a.t +# left_icon = scope:fp2_2007_roco_architect +# right_icon = scope:fp2_2007_castle_holder +# +# add_prestige = medium_prestige_loss +# } +# } +# hidden_effect = { add_prestige = medium_prestige_loss } +# } +# 45 = { +# compare_modifier = { +# value = scope:duel_value +# multiplier = 1 +# } +# modifier = { +# add = fp2_2007_calculate_architect_competence +# always = yes +# } +# +# root = { +# show_as_tooltip = { +# remove_treasury_or_gold = scope:fp2_2007_diy_construction_cost +# scope:fp2_2007_free_real_estate = { +# begin_create_holding = { +# type = castle_holding +# refund_cost = { +# gold = minor_gold_value +# } +# } +# } +# add_hook_if_possible_effect = { +# TARGET = scope:fp2_2007_castle_holder +# TYPE = indebted_hook +# YEARS = 8 +# } +# } +# hidden_effect = { +# send_interface_toast = { +# type = event_toast_effect_good +# title = fp2_struggle.2007.t +# left_icon = scope:fp2_2007_roco_architect +# right_icon = scope:fp2_2007_castle_holder +# +# remove_treasury_or_gold = scope:fp2_2007_diy_construction_cost +# custom_tooltip = fp2_struggle.2007.a.notif +# } +# hidden_effect = { +# scope:fp2_2007_free_real_estate = { +# begin_create_holding = { +# type = castle_holding +# refund_cost = { +# gold = minor_gold_value +# } +# } +# } +# add_hook_if_possible_effect = { +# TARGET = scope:fp2_2007_castle_holder +# TYPE = indebted_hook +# YEARS = 8 +# } +# } +# } +# } +# } +# } +# } +# } +# +# option = { # Leave it be +# name = { +# text = { +# first_valid = { +# triggered_desc = { +# trigger = { scope:fp2_2007_castle_holder = root } +# desc = fp2_struggle.2007.d.alt +# } +# desc = fp2_struggle.2007.d +# } +# } +# } +# +# if = { +# limit = { scope:fp2_2007_castle_holder != root } +# reverse_add_opinion = { +# target = scope:fp2_2007_scoped_steward +# modifier = disappointed_opinion +# opinion = -15 +# } +# reverse_add_opinion = { +# target = scope:fp2_2007_castle_holder +# modifier = disappointed_opinion +# opinion = -20 +# } +# } +# if = { +# limit = { exists = cp:councillor_marshal } +# reverse_add_opinion = { +# target = cp:councillor_marshal +# modifier = disappointed_opinion +# opinion = -10 +# } +# } +# } +#} +# +#################################### +## Misdeeds of The Chaplain +## By Hugo Cortell +#################################### +#scripted_trigger fp2_struggle_2008_check_actor_eligibility_scripted_trigger = { +# is_available_ai_adult = yes +# intrigue > low_skill_rating +# +# NOT = { +# has_trait = just +# has_trait = compassionate +# has_trait = generous +# has_trait = content +# has_trait = honest +# has_relation_soulmate = root +# } +# +# trigger_if = { # Instead of an event weight, we just increase the reqs for friends to dicrease overhead +# limit = { +# has_relation_friend = root +# has_relation_lover = root +# } +# OR = { +# has_trait = greedy +# has_trait = deceitful +# has_trait = callous +# } +# } +#} +# +#fp2_struggle.2008 = { +# type = character_event +# title = fp2_struggle.2008.t +# desc = fp2_struggle.2008.desc +# +# theme = secret +# cooldown = { years = 30 } +# override_background = { reference = study } +# left_portrait = { +# character = scope:fps_2008_misdeed_actor +# animation = fear +# } +# right_portrait = { +# character = root +# animation = disapproval +# } +# +# trigger = { +# has_fp2_dlc_trigger = yes +# root.top_liege = root +# +# trigger_if = { +# limit = { exists = struggle:iberian_struggle } +# struggle:iberian_struggle = { +# is_struggle_phase = struggle_iberia_phase_hostility +# +# } +# } +# +# OR = { # This play changes depending on the actor +# AND = { # Chaplain +# exists = cp:councillor_court_chaplain +# cp:councillor_court_chaplain = { fp2_struggle_2008_check_actor_eligibility_scripted_trigger = yes } +# } +# AND = { # Steward +# exists = cp:councillor_steward +# cp:councillor_steward = { fp2_struggle_2008_check_actor_eligibility_scripted_trigger = yes } +# } +# AND = { # Spymaster +# exists = cp:councillor_spymaster +# cp:councillor_spymaster = { fp2_struggle_2008_check_actor_eligibility_scripted_trigger = yes } +# } +# } +# } +# +# immediate = { +# random_councillor = { +# limit = { +# OR = { +# this = root.cp:councillor_court_chaplain +# this = root.cp:councillor_steward +# this = root.cp:councillor_spymaster +# } +# fp2_struggle_2008_check_actor_eligibility_scripted_trigger = yes +# } +# weight = { # Weight based on personality. In combination with the scripted trigger this means: Must be greedy, dishonourable, not incompetent. +# base = 1 +# modifier = { +# ai_greed > 0 +# factor = 1 +# } +# modifier = { +# ai_honor < 0 +# factor = 1 +# } +# } +# save_scope_as = fps_2008_misdeed_actor +# } +# +# scope:fps_2008_misdeed_actor = { +# if = { +# limit = { has_council_position = councillor_steward } +# add_gold = medium_gold_value # Small detail +# } +# else = { add_gold = minor_gold_value } +# +# if = { +# limit = { +# faith = { +# exists = religious_head +# NOT = { +# religious_head = root +# religious_head = scope:fps_2008_misdeed_actor +# } +# } +# } +# faith.religious_head = { +# save_scope_as = fp2_2008_relevant_head_of_faith +# } +# } +# } +# root.capital_county = { save_scope_as = fp2_2008_capital } +# } +# +# option = { # Special (thanks QA!) option, denounce publicly (might get killed by mob) +# name = fp2_struggle.2008.d +# flavor = fp2_struggle.2008.d.flavor +# trigger = { +# OR = { +# has_trait = sadistic +# has_trait = schemer +# has_trait = peasant_leader +# has_trait = augustus +# has_trait = contrite +# has_trait = august +# has_trait = diplomat +# } +# } +# stress_impact = { +# just = medium_stress_impact_gain +# trusting = minor_stress_impact_gain +# temperate = minor_stress_impact_gain +# patient = minor_stress_impact_gain +# shy = minor_stress_impact_gain +# compassionate = minor_stress_impact_gain +# } +# +# every_powerful_vassal = { +# limit = { faith = root.faith } +# custom = fp2_every_major_vassal_notifier +# add_opinion = { +# target = root +# modifier = cruelty_opinion +# opinion = -20 +# } +# } +# +# random_list = { +# 85 = { +# hidden_effect = { +# scope:fps_2008_misdeed_actor = { save_temporary_scope_as = assassin } # Used for loc +# send_interface_toast = { +# type = event_toast_effect_good +# title = char_interaction.0050.a +# left_icon = scope:fps_2008_misdeed_actor +# +# capital_county = { +# add_county_modifier = { +# modifier = governance_1054_satisfied_peasants_modifier +# years = 15 +# } +# } +# scope:assassin = { custom_tooltip = hold_court.8221.imprison_alone } # This uses that loc +# hidden_effect = { +# rightfully_imprison_character_effect = { # The autoformatter was a bit (very, very) fiddly with this +# TARGET = scope:fps_2008_misdeed_actor +# IMPRISONER = root +# } +# } +# } +# } +# scope:fps_2008_misdeed_actor = { +# add_opinion = { +# target = root +# modifier = publicly_ridiculed +# opinion = -30 +# } +# } +# show_as_tooltip = { +# rightfully_imprison_character_effect = { +# TARGET = scope:fps_2008_misdeed_actor +# IMPRISONER = root +# } +# capital_county = { +# add_county_modifier = { +# modifier = governance_1054_satisfied_peasants_modifier +# years = 15 +# } +# } +# } +# } +# 15 = { +# scope:fps_2008_misdeed_actor = { +# add_opinion = { +# target = root +# modifier = publicly_ridiculed +# opinion = -80 +# } +# } +# if = { +# limit = { has_trait = sadistic } # Once again, rewarding physcos with little details +# send_interface_toast = { +# type = event_toast_effect_good +# title = char_interaction.0050.a +# left_icon = scope:fps_2008_misdeed_actor +# +# scope:fps_2008_misdeed_actor = { death = { death_reason = death_beaten_by_mob } } +# capital_county = { +# add_county_modifier = { +# modifier = governance_1054_satisfied_peasants_modifier +# years = 30 +# } +# } +# } +# } +# else = { +# send_interface_toast = { +# type = event_toast_effect_bad +# title = char_interaction.0050.a +# left_icon = scope:fps_2008_misdeed_actor +# +# scope:fps_2008_misdeed_actor = { death = { death_reason = death_beaten_by_mob } } +# capital_county = { +# add_county_modifier = { +# modifier = governance_1054_satisfied_peasants_modifier +# years = 30 +# } +# } +# } +# } +# } +# } +# } +# +# option = { # Imprison chaplain outright +# name = fp2_struggle.2008.a +# stress_impact = { trusting = minor_stress_impact_gain } +# +# rightfully_imprison_character_effect = { +# TARGET = scope:fps_2008_misdeed_actor +# IMPRISONER = root +# } +# if = { +# limit = { +# scope:fps_2008_misdeed_actor = cp:councillor_court_chaplain +# exists = scope:fp2_2008_relevant_head_of_faith +# } +# scope:fps_2008_misdeed_actor.faith = { +# religious_head = { +# add_opinion = { +# target = root +# modifier = rude_opinion +# opinion = -10 +# } +# } +# } +# } +# +# scope:fp2_2008_capital = { +# add_county_modifier = { +# modifier = fp2_improved_administrative_checks_modifier +# years = 15 +# } +# } +# +# ai_chance = { +# base = 50 +# ai_value_modifier = { +# ai_honor = 0.85 +# ai_zeal = 0.3 +# } +# } +# } +# +# +# # Threaten, gain hook and modifier for work harder +# option = { # Combined general output (threaten into teaching you how to forge like they do) +# name = fp2_struggle.2008.b.a +# flavor = fp2_struggle.2008.b.flavor +# stress_impact = { +# just = minor_stress_impact_gain +# honest = medium_stress_impact_gain +# } +# +# send_interface_toast = { +# type = event_toast_effect_good +# title = yearly_0001_improved_intrigue +# left_icon = ROOT +# right_icon = scope:fps_2008_misdeed_actor +# +# add_intrigue_lifestyle_xp = major_lifestyle_experience # Originally it gave you the accomplished forger perk. Was removed because it let you bypass the learning tree. +# } +# reverse_add_opinion = { +# target = scope:fps_2008_misdeed_actor +# modifier = extorted_me_opinion +# opinion = -25 +# years = 10 +# } +# +# scope:fps_2008_misdeed_actor = { +# progress_towards_rival_effect = { +# REASON = rival_defrauded_realm +# CHARACTER = root +# OPINION = 0 +# } +# } +# +# if = { # Has its own notification +# limit = { +# can_add_hook = { +# target = scope:fps_2008_misdeed_actor +# type = threat_hook +# } +# } +# add_hook = { +# target = scope:fps_2008_misdeed_actor +# type = threat_hook +# years = 7 +# } +# } +# +# ai_chance = { base = 0 } # AI should never use these OP options +# } +# +# +# option = { # Go hand in hand stealing state money +# name = fp2_struggle.2008.c +# flavor = fp2_struggle.2008.c.flavor +# +# stress_impact = { +# just = medium_stress_impact_gain +# zealous = minor_stress_impact_gain +# } +# +# scope:fp2_2008_capital = { +# add_county_modifier = { +# modifier = county_corruption_inefficient_tax_collection_modifier +# years = 15 +# } +# } +# +# scope:fps_2008_misdeed_actor = { +# if = { +# limit = { +# can_add_hook = { +# target = root +# type = minor_crime_accomplice_hook +# } +# } +# +# if = { +# limit = { root = { scope:fps_2008_misdeed_actor = cp:councillor_steward } } # CPs cannot have CPs, therefore must be rescoped into root to access +# pay_short_term_gold = { +# target = root +# gold = minor_gold_value +# } +# } +# add_hook = { +# target = root +# type = minor_crime_accomplice_hook +# years = 15 +# } +# } +# } +# if = { +# limit = { +# can_add_hook = { +# target = scope:fps_2008_misdeed_actor +# type = minor_crime_accomplice_hook +# } +# } +# add_hook = { +# target = scope:fps_2008_misdeed_actor +# type = minor_crime_accomplice_hook +# years = 15 +# } +# } +# add_gold = medium_gold_value +# +# ai_chance = { +# base = 50 +# ai_value_modifier = { +# ai_greed = 0.95 +# ai_energy = 0.25 +# } +# } +# } +#} +# +#################################### +## Thiefs of Garduna / Catching Thieves of Myth +## By Hugo Cortell +#################################### +#fp2_struggle.2009 = { +# type = character_event +# title = fp2_struggle.2009.t +# desc = fp2_struggle.2009.desc +# +# theme = intrigue_skulduggery_focus +# cooldown = { years = 150 } # Not actually necessary but adding anyway +# override_background = { reference = corridor_night } +# left_portrait = { +# character = scope:fp2_2009_marshal +# animation = marshal +# outfit_tags = { emotion_angry_decal } # WAD, the decal does render and functions as intended +# } +# lower_left_portrait = { +# character = root +# } +# right_portrait = { +# character = scope:fp2_2009_garduna_young_thief +# animation = fear +# hide_info = yes +# outfit_tags = { +# mena_stealth_hood +# religious_zoroastrian_high_clothes +# } +# } +# +# trigger = { +# is_ai = no +# has_fp2_dlc_trigger = yes +# top_liege = this +# exists = cp:councillor_marshal +# fp2_character_any_involvement_iberian_struggle_trigger = yes +# +# exists = struggle:iberian_struggle +# exists = primary_title +# struggle:iberian_struggle = { +# any_involved_ruler = { # Redundancy check in response to errors on automated tests, should (theoretically) not be necessary +# this != root # Alternative point of failure could be "this" being null, but that would cause errors outside my event. +# exists = primary_title +# top_liege = this +# primary_title = { is_mercenary_company = no } +# is_landed = yes +# count > 1 # Redundancy check in response to more errors on nigtly. Now on the bottom of the block. Reduced by one to total 3. +# } +# +# OR = { +# is_struggle_phase = struggle_iberia_phase_opportunity +# is_struggle_phase = struggle_iberia_phase_conciliation +# } +# } +# +# realm_size > 3 # Needed to get all the realms where corruption can happen +# } +# +# weight_multiplier = { +# base = 0.5 +# modifier = { +# add = 0.5 +# is_ai = no +# } +# } +# +# immediate = { +# struggle:iberian_struggle = { # Struggle existance is already verified by event trigger +# random_involved_ruler = { +# limit = { +# this != root # Otherwise you might be the other involved ruler +# exists = primary_title +# top_liege = this +# primary_title = { is_mercenary_company = no } +# is_landed = yes +# } +# save_scope_as = fp2_2009_involved_ruler +# } +# } +# cp:councillor_marshal = { save_scope_as = fp2_2009_marshal } +# create_character = { +# age = { 16 27 } +# location = root.location +# gender_female_chance = 30 +# trait = education_intrigue_2 +# trait = shy +# trait = honest +# trait = paranoid +# random_traits = yes +# diplomacy = { 2 7 } +# martial = { 3 6 } +# stewardship = { 4 7 } +# intrigue = { 8 22 } +# culture = culture:basque +# religion = religion:catholic_religion +# dynasty = none +# after_creation = { add_gold = minor_gold_value } +# +# save_scope_as = fp2_2009_garduna_young_thief +# } +# +# if = { +# limit = { +# exists = global_var:fp2_struggle_2009_thief_king_char +# global_var:fp2_struggle_2009_thief_king_char = { is_available_ai_adult = yes } +# } +# global_var:fp2_struggle_2009_thief_king_char = { save_scope_as = fp2_2009_garduna_guild_master } +# } +# else = { +# create_character = { # Guild Master +# age = { 24 52 } +# location = scope:fp2_2009_involved_ruler.location +# gender_female_chance = { +# if = { +# limit = { scope:fp2_2009_involved_ruler.location.county.faith = { has_doctrine = doctrine_gender_male_dominated } } +# add = 0 +# } +# else_if = { +# limit = { scope:fp2_2009_involved_ruler.location.county.faith = { has_doctrine = doctrine_gender_female_dominated } } +# add = 100 +# } +# else = { +# add = 50 +# } +# } +# trait = education_intrigue_4 +# trait = deceitful +# trait = shrewd +# random_traits = yes +# diplomacy = { 6 16 } +# martial = { 8 15 } +# stewardship = { 10 17 } +# intrigue = { 8 16 } +# culture = culture:basque +# religion = religion:catholic_religion +# dynasty = none +# after_creation = { +# add_gold = major_gold_value +# add_prestige = major_prestige_gain +# add_piety = minor_piety_gain +# random = { +# chance = 10 +# add_trait = one_eyed +# } +# random = { +# chance = 10 +# add_trait = one_legged +# } +# random = { +# chance = 5 +# add_trait = schemer +# } +# random = { +# chance = 33 +# add_trait = wild_oat +# } +# if = { +# limit = { is_female = yes } +# give_nickname = nick_the_Queen_of_Thieves +# } +# else = { give_nickname = nick_the_King_of_Thieves } +# } +# +# save_scope_as = fp2_2009_garduna_guild_master +# } +# } +# set_global_variable = { +# name = fp2_struggle_2009_thief_king_char +# value = scope:fp2_2009_garduna_guild_master +# } +# +# if = { +# limit = { +# any_court_position_holder = { +# type = executioner_court_position +# is_available_ai_adult = yes +# } +# } +# random_court_position_holder = { +# type = executioner_court_position +# save_scope_as = fp2_2009_roco_executioner +# } +# } +# +# # Get locations +# root.capital_county = { save_scope_as = fp2_2009_capital_county } +# scope:fp2_2009_involved_ruler.capital_county = { save_scope_as = fp2_2009_involved_capital_county } +# random_sub_realm_county = { +# limit = { this != scope:fp2_2009_capital_county } +# save_scope_as = fp2_2009_random_flavor_county_ichi +# } +# random_sub_realm_county = { +# limit = { +# NOT = { +# this = scope:fp2_2009_capital_county +# this = scope:fp2_2009_random_flavor_county_ichi +# } +# } +# save_scope_as = fp2_2009_random_flavor_county_ni +# } +# +# # Logic for "Hire the guild" option, prevents the AI from acting un-wise +# if = { # Player has access by default +# limit = { is_ai = no } +# save_scope_as = fp2_2009_hire_guild_unlocked +# } +# else_if = { # Forbid AI on AI agression +# limit = { +# NOT = { +# is_ai = yes +# scope:fp2_2009_involved_ruler = { is_ai = yes } +# } +# } +# save_scope_as = fp2_2009_hire_guild_unlocked +# } +# else_if = { # Ensure AI on Player agression is justified +# limit = { +# is_ai = yes +# scope:fp2_2009_involved_ruler = { +# is_ai = no +# save_temporary_opinion_value_as = { +# name = opinion_of_root_temp_value +# target = root +# } +# } +# +# # AI behaviour must be on brand with personality and/or circumstance to ensure narrative cohesion +# scope:opinion_of_root_temp_value < -10 +# OR = { +# has_trait = deceitful +# has_trait = wrathful +# has_trait = ambitious +# has_trait = vengeful +# has_trait = arrogant +# has_trait = callous +# is_at_war_with = scope:fp2_2009_involved_ruler +# has_relation_nemesis = scope:fp2_2009_involved_ruler +# } +# } +# save_scope_as = fp2_2009_hire_guild_unlocked +# } +# } +# +# option = { # BECOME THE KING OF PIRA- err THIEVES!!1! +# name = fp2_struggle.2009.a +# flavor = fp2_struggle.2009.a.flavor +# trigger = { +# NOT = { age < 14 } +# OR = { +# has_trait = gallant +# has_trait = adventurer +# has_trait = berserker +# has_trait = peasant_leader +# has_trait = viking +# has_trait = reaver +# prowess > very_high_skill_rating +# has_trait = lunatic_genetic +# } +# } +# scope:fp2_2009_marshal = { +# add_opinion = { +# target = root +# modifier = impressed_opinion +# opinion = 20 +# } +# } +# trigger_event = { +# id = fp2_struggle.2010 +# days = { 6 31 } +# } +# +# stress_impact = { +# compassionate = minor_stress_impact_gain +# craven = minor_stress_impact_gain +# content = medium_stress_impact_gain +# eccentric = medium_stress_impact_loss +# } +# +# ai_chance = { +# base = 8 # Prevents too many kings of thieves from showing up +# modifier = { +# add = 25 +# has_trait = just +# } +# ai_value_modifier = { +# ai_boldness = 0.7 +# ai_compassion = -0.1 +# ai_greed = 0.3 +# ai_energy = 0.5 +# ai_honor = -0.1 +# ai_rationality = -0.2 +# ai_sociability = 0.3 +# ai_vengefulness = 0.5 +# } +# } +# } +# +# option = { # Demand info +# name = fp2_struggle.2009.b +# +# hidden_effect = { +# scope:fp2_2009_garduna_young_thief = { add_trait = depressed_1 } +# save_scope_as = fp2_2009_thief_permanence_scope +# } +# +# every_sub_realm_county = { +# limit = { +# county_control < 100 +# } +# custom = all_realm_county +# change_county_control = 5 +# } +# add_courtier = scope:fp2_2009_garduna_young_thief +# scope:fp2_2009_garduna_young_thief = { +# custom_tooltip = fp2_struggle.2009.b.blues +# add_opinion = { +# target = root +# modifier = was_spared +# opinion = 20 +# } +# } +# +# stress_impact = { +# wrathful = minor_stress_impact_gain +# vengeful = minor_stress_impact_gain +# sadistic = minor_stress_impact_gain +# } +# ai_chance = { +# base = 45 +# ai_value_modifier = { +# ai_boldness = -0.1 +# ai_compassion = 0.65 +# ai_honor = 0.2 +# ai_rationality = 0.9 +# } +# } +# +# hidden_effect = { +# save_scope_value_as = { +# name = fp2_2009_event_outcome +# value = flag:cleared_out +# } +# trigger_event = { +# id = fp2_struggle.2021 +# days = { 450 3000 } +# } +# } +# } +# +# option = { # Ask for a cut +# name = fp2_struggle.2009.c +# trigger = { +# is_ai = no # Option disabled for AI rulers +# NOR = { +# has_trait = gallant +# has_trait = adventurer +# has_trait = berserker +# has_trait = peasant_leader +# has_trait = viking +# has_trait = reaver +# prowess > very_high_skill_rating +# has_trait = lunatic_genetic +# } +# } +# +# add_gold = medium_gold_value +# scope:fp2_2009_capital_county = { add_thieves_guild_modifier_effect = yes } +# scope:fp2_2009_random_flavor_county_ichi = { change_county_control = -15 } +# scope:fp2_2009_random_flavor_county_ni = { change_county_control = -15 } +# +# scope:fp2_2009_marshal = { +# if = { +# limit = { has_trait = just } +# add_opinion = { +# target = root +# modifier = disgusted_opinion +# opinion = -35 +# } +# } +# else = { +# if = { +# limit = { has_trait = greedy } +# add_opinion = { +# target = root +# modifier = respect_opinion # Greedy people respect "the grind" +# opinion = 10 +# } +# } +# else = { +# add_opinion = { +# target = root +# modifier = disappointed_opinion +# opinion = -15 +# } +# } +# } +# } +# +# stress_impact = { +# generous = medium_stress_impact_gain +# content = minor_stress_impact_gain +# just = major_stress_impact_gain +# } +# +# hidden_effect = { +# save_scope_value_as = { +# name = fp2_2009_event_outcome +# value = flag:paid_off +# } +# trigger_event = { +# id = fp2_struggle.2021 +# days = { 450 3000 } +# } +# } +# } +# +# option = { # Hire the guild to mess with a foreign ruler (work for me) +# name = fp2_struggle.2009.d +# trigger = { exists = scope:fp2_2009_hire_guild_unlocked } # Prevents AI from acting un-intelligently +# +# scope:fp2_2009_involved_capital_county = { add_thieves_guild_modifier_effect = yes } +# pay_short_term_gold = { +# target = scope:fp2_2009_garduna_young_thief +# gold = minor_gold_value +# +# } +# +# # Notifies the player on the recieving end of an event outcome that involves them. +# scope:fp2_2009_involved_ruler = { # Hopefuly this will encoureage interaction in MP games. +# trigger_event = { +# id = fp2_struggle.2012 +# days = { 1 2 } +# } +# } +# +# stress_impact = { +# brave = minor_stress_impact_gain +# honest = medium_stress_impact_gain +# compassionate = minor_stress_impact_gain +# } +# ai_chance = { +# base = 25 +# modifier = { +# add = 45 +# is_at_war_with = scope:fp2_2009_involved_ruler +# } +# modifier = { +# add = 100 # hatred can cloud the mind +# has_relation_nemesis = scope:fp2_2009_involved_ruler +# } +# ai_value_modifier = { +# ai_boldness = 0.7 +# ai_compassion = -0.2 +# ai_greed = -0.1 +# ai_honor = -0.4 +# ai_rationality = 0.7 +# ai_vengefulness = 0.95 +# } +# } +# +# hidden_effect = { +# save_scope_value_as = { +# name = fp2_2009_event_outcome +# value = flag:worked_together +# } +# trigger_event = { +# id = fp2_struggle.2021 +# days = { 450 3000 } +# } +# } +# } +# +# option = { # Gift the thieve's the head to the foreign ruler +# name = fp2_struggle.2009.e +# +# scope:fp2_2009_garduna_young_thief = { +# if = { +# limit = { exists = scope:fp2_2009_roco_executioner } # ROCO flaire +# death = { +# death_reason = death_execution +# killer = scope:fp2_2009_roco_executioner +# } +# } +# else = { +# death = { +# death_reason = death_execution +# killer = scope:fp2_2009_marshal +# } +# } +# save_scope_as = fp2_2009_thief_permanence_scope +# } +# custom_tooltip = fp2_struggle.2009.e.a +# hidden_effect = { +# random_list = { +# 55 = {} # nothing happens +# 45 = { +# random_list = { +# 33 = { scope:fp2_2009_random_flavor_county_ichi = { change_county_control = -15 } } +# 33 = { scope:fp2_2009_random_flavor_county_ni = { change_county_control = -15 } } +# 33 = { scope:fp2_2009_capital_county = { change_county_control = -15 } } +# } +# } +# } +# } +# +# scope:fp2_2009_involved_ruler = { +# if = { +# limit = { +# OR = { +# has_trait = wrathful +# has_trait = vengeful +# has_trait = sadistic +# } +# } +# add_opinion = { +# target = root +# modifier = gift_opinion +# opinion = 40 +# } +# progress_towards_friend_effect = { # very nice +# REASON = friend_gave_severed_head +# CHARACTER = root +# OPINION = 0 +# } +# } +# else = { +# add_opinion = { +# target = root +# modifier = gift_opinion # nice +# opinion = 30 +# } +# } +# } +# +# # Notifies the player on the recieving end that they have recieved a delightful gift +# root = { save_scope_as = fp2_2009_has_gifted_head } +# scope:fp2_2009_involved_ruler = { +# trigger_event = { +# id = fp2_struggle.2012 +# days = { 1 2 } +# } +# } +# +# stress_impact = { +# compassionate = medium_stress_impact_gain +# forgiving = minor_stress_impact_gain +# } +# ai_chance = { +# base = 35 +# ai_value_modifier = { +# ai_boldness = 0.2 +# ai_compassion = -0.45 +# ai_honor = 0.8 +# ai_rationality = 0.1 +# ai_sociability = 0.5 +# } +# } +# +# hidden_effect = { +# save_scope_value_as = { +# name = fp2_2009_event_outcome +# value = flag:lobbed_head +# } +# trigger_event = { +# id = fp2_struggle.2021 +# days = { 450 3000 } +# } +# } +# } +# +# option = { # Debug option to quickly trigger 2021 +# name = debug_generic_option +# trigger = { is_developer_testing_trigger = yes } +# +# custom_tooltip = debug_generic_option_shortened_trigger_can_disable +# hidden_effect = { +# save_scope_value_as = { +# name = fp2_2009_event_outcome +# value = flag:cleared_out # modify this with the flag you need +# } +# trigger_event = { id = fp2_struggle.2021 } +# } +# } +# +# after = { +# if = { +# limit = { NOT = { exists = scope:fp2_2009_thief_permanence_scope } } +# scope:fp2_2009_garduna_young_thief = { silent_disappearance_effect = yes } +# } +# } +#} +# +#fp2_struggle.2010 = { # 2009 duel follow-up +# type = character_event +# title = fp2_struggle.2010.t +# desc = fp2_struggle.2010.desc +# trigger = { scope:fp2_2009_garduna_guild_master = { is_available_ai_adult = yes } } +# +# theme = battle +# override_background = { reference = corridor_night } +# left_portrait = { +# character = root +# animation = throne_room_one_handed_passive_1 +# } +# right_portrait = { +# character = scope:fp2_2009_garduna_guild_master +# animation = war_over_win +# outfit_tags = { +# western_stealth_hood +# sub_saharan_high_nobility +# mena_war_legwear +# } +# } +# +# option = { # Duel +# name = fp2_struggle.2010.b +# +# root = { save_scope_as = fp2_2010_root_in_duel } # Used in invalidation check for player's death +# scope:fp2_2009_garduna_guild_master = { +# set_variable = { +# name = signature_weapon +# value = flag:dagger +# } +# } +# configure_start_single_combat_effect = { +# SC_INITIATOR = root +# SC_ATTACKER = root +# SC_DEFENDER = scope:fp2_2009_garduna_guild_master +# FATALITY = always +# FIXED = no +# LOCALE = temple +# OUTPUT_EVENT = fp2_struggle.2011 +# INVALIDATION_EVENT = fp2_struggle.2011 # If the thief dies, you still win. If you die, 2011 runs a check and fails to trigger. +# } +# +# ai_chance = { # Stress for craven was already taken when setting off in this quest +# base = 50 +# ai_value_modifier = { ai_boldness = 0.5 } +# } +# } +# +# option = { # Pay protection money +# name = fp2_struggle.2010.c +# +# pay_treasury_or_gold = { # Cowardice tax (costs more than hireing them) +# target = scope:fp2_2009_garduna_guild_master +# value = major_treasury_or_gold_value +# } +# +# stress_impact = { +# brave = major_stress_impact_gain +# just = major_stress_impact_gain +# arrogant = major_stress_impact_gain +# vengeful = medium_stress_impact_gain +# } +# ai_chance = { +# base = 50 +# modifier = { # Nobody wants to be indebted to a thief +# add = -25 +# gold < major_gold_value +# } +# ai_value_modifier = { ai_greed = -0.5 } +# } +# +# hidden_effect = { +# save_scope_value_as = { +# name = fp2_2009_event_outcome +# value = flag:paid_off +# } +# trigger_event = { +# id = fp2_struggle.2021 +# days = { 450 3000 } +# } +# } +# } +#} +# +#fp2_struggle.2011 = { # You become the KING OF THIEVES +# hidden = yes +# immediate = { +# if = { +# limit = { +# exists = scope:fp2_2011_reuse_gate +# root = scope:fp2_2010_root_in_duel +# } +# send_interface_toast = { +# type = event_toast_effect_good +# desc = fp2_struggle.2011.desc +# title = fp2_struggle.2011.a +# right_icon = ROOT +# +# if = { # Standard practice from EP1 onwards dictates that we ought not to overwrite positive nicknames (?) +# limit = { +# OR = { +# has_any_nickname = no +# has_bad_nickname = yes +# } +# } +# give_nickname = nick_the_Thief_Slayer +# } +# add_prestige = major_prestige_gain +# add_gold = minor_gold_value +# } +# } +# else = { +# save_scope_as = fp2_2011_reuse_gate +# trigger_event = { +# id = fp2_struggle.2011 +# days = 1 +# } +# } +# } +#} +# +#fp2_struggle.2012 = { # Displays letter notifying involved player/character that an action taken by 2009's root is affecting them +# type = letter_event +# sender = scope:fp2_2012_sender # Animation is WAD +# opening = { +# desc = { +# first_valid = { +# triggered_desc = { +# trigger = { exists = scope:fp2_2009_has_gifted_head } +# desc = fp2_struggle.2012.t.alt +# } +# desc = fp2_struggle.2012.t +# } +# } +# } +# desc = { +# first_valid = { +# triggered_desc = { +# trigger = { exists = scope:fp2_2009_has_gifted_head } +# desc = fp2_struggle.2012.desc.alt +# } +# desc = fp2_struggle.2012.desc +# } +# } +# +# immediate = { +# # Logic for deciding who is the author of the letter +# if = { +# limit = { exists = scope:fp2_2009_has_gifted_head } # If the event is the alt version where you gift the head +# scope:fp2_2009_has_gifted_head = { save_scope_as = fp2_2012_sender } +# } +# else_if = { +# limit = { exists = cp:councillor_spymaster } # Else cycle through possible chancellors +# cp:councillor_spymaster = { save_scope_as = fp2_2012_sender } +# } +# else_if = { +# limit = { exists = cp:councillor_marshal } +# cp:councillor_marshal = { save_scope_as = fp2_2012_sender } +# } +# else_if = { +# limit = { exists = cp:councillor_court_chaplain } +# cp:councillor_court_chaplain = { save_scope_as = fp2_2012_sender } +# } +# else = { root = { save_scope_as = fp2_2012_sender } } # If all fails, you wrote the report yourself, about yourself, for yourself. +# } +# +# option = { +# name = fp2_struggle.2012.a +# trigger = { NOT = { exists = scope:fp2_2009_has_gifted_head } } +# +# show_as_tooltip = { scope:fp2_2009_involved_capital_county = { add_thieves_guild_modifier_effect = yes } } # Has already happened, only to display info +# } +# +# option = { +# name = fp2_struggle.2012.a.alt +# trigger = { exists = scope:fp2_2009_has_gifted_head } +# +# scope:fp2_2009_involved_capital_county = { change_county_control = 10 } +# } +#} +# +#################################### +## The Secret to Freedom +## By Hugo Cortell +#################################### +#fp2_struggle.2013 = { +# type = character_event +# title = fp2_struggle.2013.t +# desc = fp2_struggle.2013.desc +# theme = secret +# cooldown = { years = 2 } +# override_background = { +# trigger = { scope:fp2_2013_prisoner_with_a_secret = { is_in_prison_type = house_arrest } } +# reference = sitting_room +# } +# override_background = { +# trigger = { always = yes } +# reference = dungeon +# } +# left_portrait = { +# character = root +# animation = scheme +# } +# right_portrait = { +# character = scope:fp2_2013_prisoner_with_a_secret +# triggered_animation = { +# trigger = { scope:fp2_2013_prisoner_with_a_secret = { is_in_prison_type = house_arrest } } +# animation = beg +# } +# animation = prisondungeon +# override_imprisonment_visuals = yes +# } +# +# trigger = { +# has_fp2_dlc_trigger = yes +# any_prisoner = { +# save_temporary_scope_as = temp_prisoner_with_secret # Prevents prisoner from revealing their own secret, which would be cool, but would require new loc +# any_known_secret = { +# secret_owner = { +# this != scope:temp_prisoner_with_secret +# top_liege = this +# fp2_character_any_involvement_iberian_struggle_trigger = yes +# } +# NOT = { is_known_by = root } +# } +# } +# } +# +# immediate = { +# random_prisoner = { +# limit = { +# save_temporary_scope_as = temp_prisoner_with_secret +# any_known_secret = { +# secret_owner = { +# this != scope:temp_prisoner_with_secret +# top_liege = this +# fp2_character_any_involvement_iberian_struggle_trigger = yes +# } +# NOT = { is_known_by = root } +# } +# } +# save_scope_as = fp2_2013_prisoner_with_a_secret +# every_known_secret = { +# limit = { +# secret_owner = { +# this != scope:fp2_2013_prisoner_with_a_secret +# top_liege = this +# } +# NOT = { is_known_by = root } +# } +# secret_owner = { save_scope_as = fp2_2013_secret_owner } +# save_scope_as = fp2_2013_secret_to_tell +# } +# +# stress_impact = { +# brave = medium_stress_impact_gain +# gallant = medium_stress_impact_gain +# confider = major_stress_impact_gain +# } +# } +# } +# +# option = { # Agree +# name = fp2_struggle.2013.a +# +# show_as_tooltip = { +# custom_tooltip = fp2_struggle.2013.a.a +# scope:fp2_2013_prisoner_with_a_secret = { release_from_prison = yes } +# } +# hidden_effect = { +# send_interface_toast = { +# type = event_toast_effect_good +# title = witch.2010.message +# left_icon = ROOT +# right_icon = scope:fp2_2013_secret_owner +# +# scope:fp2_2013_secret_to_tell = { reveal_to = root } +# scope:fp2_2013_prisoner_with_a_secret = { release_from_prison = yes } +# } +# } +# +# ai_chance = { +# base = 15 +# ai_value_modifier = { +# ai_boldness = -0.1 +# ai_compassion = 0.2 +# ai_honor = 0.1 +# ai_rationality = 0.4 +# ai_sociability = 0.1 +# ai_vengefulness = 0.1 +# } +# } +# } +# +# option = { # Torture +# name = fp2_struggle.2013.b +# +# add_dread = minor_dread_gain +# duel = { +# skill = intrigue +# value = medium_skill_rating +# +# 40 = { # Success +# modifier = { +# add = intrigue # Your intrigue level should make up for most of the 10 missing points to make this a 50 50 +# always = yes +# } +# modifier = { +# add = 15 # Enjoy your job and it wont feel like work! +# has_trait = sadistic +# } +# modifier = { +# add = 35 +# has_trait = torturer +# } +# modifier = { +# add = 5 # Iberia is home to many plants you should not rub against your skin, great for tickle-torture :D +# has_trait = lifestyle_herbalist +# } +# modifier = { +# add = 5 +# scope:fp2_2013_prisoner_with_a_secret = { has_trait = lazy } +# } +# modifier = { +# add = 15 # Quickly changes their mind about wanting to resist torture +# scope:fp2_2013_prisoner_with_a_secret = { has_trait = fickle } +# } +# +# custom_tooltip = fp2_struggle.2013.a.a +# hidden_effect = { +# send_interface_toast = { +# type = event_toast_effect_good +# title = witch.2010.message +# left_icon = ROOT +# right_icon = scope:fp2_2013_secret_owner +# +# scope:fp2_2013_secret_to_tell = { reveal_to = root } +# } +# } +# } +# 60 = { # You fail +# desc = fp2_struggle.2013.b.b +# modifier = { +# add = scope:fp2_2013_prisoner_with_a_secret.prowess # This is a battle of your skill in torture (intrigue) against the will of your oponent (prowess, usually lower) +# always = yes +# } +# modifier = { +# add = 5 +# scope:fp2_2013_prisoner_with_a_secret = { has_trait = brave } +# } +# modifier = { +# add = 5 # Being stubborn is as much a blessing as it is a curse, in this case, it is the former +# scope:fp2_2013_prisoner_with_a_secret = { has_trait = stubborn } +# } +# modifier = { +# add = 5 +# scope:fp2_2013_prisoner_with_a_secret = { has_trait = diligent } +# } +# modifier = { +# add = 5 # They know nothing good can come from revealing information, what will the bargain with otherwise? +# scope:fp2_2013_prisoner_with_a_secret = { has_trait = paranoid } +# } +# modifier = { +# add = 2 # Maybe god is still on your side? Maybe it is a test? +# scope:fp2_2013_prisoner_with_a_secret = { has_trait = zealous } +# } +# modifier = { +# add = 2 +# scope:fp2_2013_prisoner_with_a_secret = { has_trait = callous } +# } +# modifier = { +# add = 15 # I imagine this is sort of a lalatina moment +# scope:fp2_2013_prisoner_with_a_secret = { has_trait = flagellant } +# } +# modifier = { +# add = 10 # They are used to not revealing info under preassure, though torture is a bit more than they are used to... +# scope:fp2_2013_prisoner_with_a_secret = { has_trait = confider } +# } +# +# send_interface_toast = { +# type = event_toast_effect_bad +# title = ease_tension_toast.failure +# left_icon = ROOT +# right_icon = scope:fp2_2013_prisoner_with_a_secret +# } +# } +# } +# reverse_add_opinion = { +# target = scope:fp2_2013_prisoner_with_a_secret +# modifier = tortured_me +# opinion = -60 # 15 point reduction because there was a weak justification +# years = 30 +# } +# scope:fp2_2013_prisoner_with_a_secret = { +# add_character_modifier = { +# modifier = recently_tortured +# years = 5 +# } +# } +# +# stress_impact = { +# compassionate = major_stress_impact_gain +# just = medium_stress_impact_gain +# forgiving = medium_stress_impact_gain +# } +# ai_chance = { +# base = 15 +# modifier = { +# add = 25 +# has_trait = torturer +# } +# modifier = { +# add = 15 +# has_trait = sadistic +# } +# ai_value_modifier = { +# ai_boldness = 0.8 +# ai_compassion = -0.5 +# ai_greed = 0.6 +# ai_honor = -0.9 +# ai_vengefulness = 0.2 +# } +# } +# } +# +# option = { # Send as gift +# name = fp2_struggle.2013.c +# flavor = fp2_struggle.2013.c.desc +# trigger = { scope:fp2_2013_secret_owner = { is_ai = yes } } +# +# custom_tooltip = fp2_struggle.2013.c.a +# scope:fp2_2013_prisoner_with_a_secret = { release_from_prison = yes } +# trigger_event = { +# id = fp2_struggle.2014 +# days = { 1 4 } +# } +# +# ai_chance = { +# base = 5 +# ai_value_modifier = { +# ai_boldness = -0.1 +# ai_compassion = 0.2 +# ai_greed = -0.5 +# ai_energy = -0.1 +# ai_honor = 0.3 +# ai_sociability = 0.3 +# ai_vengefulness = -0.2 +# ai_zeal = -0.1 +# } +# } +# } +# +# option = { # Dismiss +# name = fp2_struggle.2013.d +# +# random = { +# chance = 5 +# modifier = { +# add = 10 +# has_trait = depressed +# } +# modifier = { +# add = 5 +# health < fine_health +# } +# show_as_tooltip = { custom_tooltip = fp2_struggle.2013.a.a } +# hidden_effect = { +# if = { +# limit = { is_ai = no } +# send_interface_toast = { +# type = event_toast_effect_good +# title = witch.2010.message +# left_icon = ROOT +# right_icon = scope:fp2_2013_secret_owner +# +# scope:fp2_2013_secret_to_tell = { reveal_to = root } +# } +# } +# } +# } +# +# ai_chance = { +# base = 65 +# ai_value_modifier = { +# ai_boldness = -0.2 +# ai_greed = -0.15 +# ai_energy = -0.1 +# ai_honor = 0.6 +# ai_sociability = 0.1 +# ai_vengefulness = -0.1 +# } +# } +# } +#} +# +#fp2_struggle.2014 = { +# type = letter_event +# sender = scope:fp2_2013_secret_owner +# opening = fp2_struggle.2014.t +# desc = { +# desc = fp2_struggle.2014.desc.start +# first_valid = { +# triggered_desc = { +# trigger = { scope:fp2_2014_ai_secret_outcome = flag:prison } +# desc = fp2_struggle.2014.desc.heavy.outcome.prison +# } +# triggered_desc = { +# trigger = { scope:fp2_2014_ai_secret_outcome = flag:death } +# desc = fp2_struggle.2014.desc.heavy.outcome.death +# } +# desc = fp2_struggle.2014.desc.light +# } +# } +# +# trigger = { +# scope:fp2_2013_secret_owner = { is_available_ai_adult = yes } +# scope:fp2_2013_prisoner_with_a_secret = { is_available_ai_adult = yes } +# } +# +# on_trigger_fail = { +# if = { +# limit = { # Fallback - foreign ruler has died! +# NOT = { +# scope:fp2_2013_secret_owner = { +# is_alive = yes +# is_available_ai_adult = yes +# } +# } +# } +# send_interface_toast = { +# type = event_death_neutral +# desc = death_management.1007.t +# left_icon = scope:fp2_2013_secret_owner +# } +# } +# if = { +# limit = { # Fallback - prisoner has died! +# NOT = { scope:fp2_2013_prisoner_with_a_secret = { is_alive = yes } } +# } +# send_interface_toast = { +# scope:fp2_2013_prisoner_with_a_secret = { save_temporary_scope_as = dead_character } +# type = event_death_neutral +# desc = death_management.1006.desc +# left_icon = scope:fp2_2013_prisoner_with_a_secret +# } +# } +# } +# +# immediate = { # LOGIC FOR AI RESPONSE +# save_scope_value_as = { # Calculate how "strong" a secret is +# name = fp2_2014_secret_strength +# value = { +# value = 0 +# if = { +# limit = { scope:fp2_2013_secret_to_tell = { is_criminal_for = scope:fp2_2013_secret_owner } } +# add = 10 +# } +# if = { +# limit = { scope:fp2_2013_secret_to_tell = { is_shunned_for = scope:fp2_2013_secret_owner } } +# add = 5 +# } +# if = { +# limit = { scope:fp2_2013_secret_to_tell = { secret_is_always_interesting_trigger = yes } } +# add = 5 +# } +# } +# } +# if = { # IS THIS SECRET A THREAT TO ME? +# limit = { scope:fp2_2014_secret_strength >= 10 } +# scope:fp2_2013_secret_owner = { +# hidden_effect = { +# add_opinion = { +# target = scope:fp2_2013_prisoner_with_a_secret +# modifier = betrayed_me_opinion +# opinion = -50 +# } +# } +# add_opinion = { +# target = root +# modifier = did_not_tell_my_secret +# opinion = 45 +# } +# progress_towards_friend_effect = { +# REASON = friend_kept_my_secret +# CHARACTER = root +# OPINION = 0 +# } +# if = { +# limit = { +# has_dlc_feature = court_artifacts +# any_character_artifact = { +# NOT = { has_variable = historical_unique_artifact } +# artifact_high_rarity_trigger = yes +# artifact_can_be_gift_to_trigger = { RECIPIENT = root } +# } +# } +# random_character_artifact = { +# limit = { +# NOT = { has_variable = historical_unique_artifact } +# artifact_high_rarity_trigger = yes +# artifact_can_be_gift_to_trigger = { RECIPIENT = root } +# } +# set_owner = root # If it breaks, use set_artifact_owner +# } +# } +# +# save_opinion_value_as = { +# name = fp2_2014_opinion_of_swine +# target = scope:fp2_2013_prisoner_with_a_secret +# } +# } +# if = { # YES, AND I MUST HIDE IT (prison outcome) +# limit = { +# scope:fp2_2013_secret_owner = { +# NAND = { +# has_trait = paranoid +# ai_compassion < 30 +# } +# } +# } +# save_scope_value_as = { +# name = fp2_2014_ai_secret_outcome +# value = flag:prison +# } +# scope:fp2_2013_secret_owner = { +# rightfully_imprison_character_effect = { +# TARGET = scope:fp2_2013_prisoner_with_a_secret +# IMPRISONER = scope:fp2_2013_secret_owner +# } +# } +# } +# else = { # YES, AND I WILL TAKE NO CHANCES (execution outcome) +# save_scope_value_as = { +# name = fp2_2014_ai_secret_outcome +# value = flag:death +# } +# +# scope:fp2_2013_prisoner_with_a_secret = { +# death = { +# death_reason = death_torture +# killer = scope:fp2_2013_secret_owner +# } +# } +# } +# } +# else = { # NO, ACTUALLY THIS IS NOT A BIG DEAL (release outcome) +# scope:fp2_2013_secret_owner = { +# hidden_effect = { +# add_opinion = { +# target = scope:fp2_2013_prisoner_with_a_secret +# modifier = betrayed_me_opinion +# opinion = -25 +# } +# } +# add_opinion = { +# target = root +# modifier = did_not_tell_my_secret +# opinion = 25 +# } +# if = { +# limit = { +# has_dlc_feature = court_artifacts +# any_character_artifact = { +# NOT = { has_variable = historical_unique_artifact } +# artifact_low_rarity_trigger = yes +# artifact_can_be_gift_to_trigger = { RECIPIENT = root } +# } +# } +# random_character_artifact = { +# limit = { +# NOT = { has_variable = historical_unique_artifact } +# artifact_low_rarity_trigger = yes +# artifact_can_be_gift_to_trigger = { RECIPIENT = root } +# } +# set_owner = root +# } +# } +# else = { +# progress_towards_friend_effect = { +# REASON = friend_protected_secrets +# CHARACTER = root +# OPINION = 0 +# } +# } +# } +# save_scope_value_as = { +# name = fp2_2014_ai_secret_outcome +# value = flag:release +# } +# } +# } +# +# option = { +# name = { +# text = { +# first_valid = { +# triggered_desc = { +# trigger = { NOT = { scope:fp2_2014_ai_secret_outcome = flag:release } } +# desc = south_asia.0039.a +# } +# desc = fp2_struggle.2014.b +# } +# } +# } +# } +#} +# +#################################### +## Letter on The Back +## By Hugo Cortell +#################################### +## (a post-it saying kick me) +#################################### +#scripted_trigger fp2_struggle_2015_vassal_check_trigger = { +# is_available_ai_adult = yes +# exists = location # Under no circumstance should it be necessary to need to check this +# NOT = { has_trait = compassionate } +#} +# +#fp2_struggle.2015 = { +# type = character_event +# title = fp2_struggle.2015.t +# desc = fp2_struggle.2015.desc +# cooldown = { years = 25 } +# +# theme = murder_scheme +# override_background = { reference = council_chamber } +# left_portrait = { +# character = root +# animation = chancellor +# } +# right_portrait = { +# character = scope:fp2_struggle_2015_peasant_to_murder +# animation = personality_forgiving +# } +# lower_right_portrait = scope:fp2_struggle_2015_murder_requester_vassal +# +# trigger = { +# is_ai = no # Murder schemes are heavy for performance +# has_fp2_dlc_trigger = yes +# root.top_liege = root +# +# any_powerful_vassal = { +# fp2_struggle_2015_vassal_check_trigger = yes +# opinion = { # Redundant second time around +# target = root +# value < 30 +# } +# } +# } +# +# immediate = { +# random_vassal = { # From joe +# limit = { +# is_powerful_vassal = yes +# fp2_struggle_2015_vassal_check_trigger = yes +# opinion = { +# target = root +# value < 30 +# } +# } +# save_opinion_value_as = { +# name = liege_opinion +# target = root +# } +# +# save_scope_as = fp2_struggle_2015_murder_requester_vassal # Makes sure that one exists, even if [ThreadIndex != UINT32_MAX] causes the loop to skip a beat +# } +# while = { +# limit = { +# any_powerful_vassal = { +# fp2_struggle_2015_vassal_check_trigger = yes +# opinion = { +# target = root +# value < scope:liege_opinion +# } +# } +# } +# random_vassal = { +# limit = { +# is_powerful_vassal = yes +# fp2_struggle_2015_vassal_check_trigger = yes +# opinion = { +# target = root +# value < scope:liege_opinion +# } +# } +# save_opinion_value_as = { +# name = liege_opinion +# target = root +# } +# save_scope_as = fp2_struggle_2015_murder_requester_vassal +# } +# } +# +# create_character = { +# location = scope:fp2_struggle_2015_murder_requester_vassal.location +# template = generic_peasant_character +# diplomacy = { 8 13 } # High stat +# trait = trusting +# random_traits = yes +# faith = scope:fp2_struggle_2015_murder_requester_vassal.location.county.faith +# culture = scope:fp2_struggle_2015_murder_requester_vassal.location.county.culture +# save_scope_as = fp2_struggle_2015_peasant_to_murder +# } +# +# hidden_effect = { +# scope:fp2_struggle_2015_peasant_to_murder = { +# reverse_add_opinion = { +# target = scope:fp2_struggle_2015_murder_requester_vassal +# modifier = annoyed_opinion +# opinion = -100 +# } +# } +# +# add_courtier = scope:fp2_struggle_2015_peasant_to_murder +# } +# } +# +# option = { # Comply and kill the unsuspecting courtier +# name = fp2_struggle.2015.a +# +# trigger = { is_ai = no } +# duel = { +# skill = intrigue +# value = average_skill_rating +# +# 10 = { +# desc = fp2_struggle.2015.a.a +# compare_modifier = { +# value = scope:duel_value +# multiplier = -1.25 +# } +# +# send_interface_toast = { +# type = event_intrigue_bad +# title = murder_outcome.2302.t +# left_icon = scope:fp2_struggle_2015_peasant_to_murder +# +# reverse_add_opinion = { +# target = scope:fp2_struggle_2015_murder_requester_vassal +# modifier = disappointed_opinion +# opinion = -15 +# } +# +# remove_courtier_or_guest = scope:fp2_struggle_2015_peasant_to_murder +# custom_tooltip = fp2_struggle.2015.a.murder_scheme +# hidden_effect = { +# scope:fp2_struggle_2015_murder_requester_vassal = { +# start_scheme = { +# type = murder +# target_character = scope:fp2_struggle_2015_peasant_to_murder +# } +# } +# } +# } +# reverse_add_opinion = { +# target = scope:fp2_struggle_2015_peasant_to_murder +# modifier = suspicion_opinion +# opinion = -20 +# } +# +# } +# 10 = { +# compare_modifier = { +# value = scope:duel_value +# multiplier = 1.25 +# } +# +# modifier = { +# add = { +# value = intrigue +# multiply = 2 +# round = yes +# } +# always = yes +# } +# modifier = { +# add = 35 +# has_trait = lifestyle_herbalist +# } +# modifier = { +# add = 5 +# has_trait = drunkard # You know how to disguise drinks +# } +# modifier = { +# add = 15 +# has_perk = swift_execution_perk +# } +# modifier = { +# add = 10 # They add up +# has_perk = a_job_done_right_perk +# } +# +# send_interface_toast = { +# type = event_intrigue_good +# title = fp2_struggle.2015.a.b +# left_icon = scope:fp2_struggle_2015_murder_requester_vassal +# +# scope:fp2_struggle_2015_peasant_to_murder = { +# death = { +# killer = ROOT +# death_reason = death_poison +# } +# } +# reverse_add_opinion = { +# target = scope:fp2_struggle_2015_murder_requester_vassal +# modifier = helped_me_in_time_of_need +# opinion = 40 +# } +# } +# add_secret = { +# type = secret_murder +# target = scope:fp2_struggle_2015_peasant_to_murder +# } +# random_secret = { +# type = secret_murder +# limit = { +# secret_target = scope:fp2_struggle_2015_peasant_to_murder +# } +# save_scope_as = fp2_2015_murder_secret +# } +# +# if = { # AHA! YOU FOOL! I TRICKED YOU INTO COMMITING A CRIME! +# limit = { +# scope:fp2_struggle_2015_murder_requester_vassal = { +# OR = { +# has_relation_rival = ROOT +# has_secret_relation_rival = ROOT # ??? +# has_relation_nemesis = ROOT +# +# AND = { +# has_dread_level_towards = { +# target = ROOT +# level <= 1 +# } +# OR = { +# AND = { +# has_trait = deceitful +# opinion = { +# target = root +# value < -25 +# } +# } +# AND = { +# ai_boldness > 9 +# ai_compassion < 1 +# ai_honor < -29 +# ai_vengefulness > -1 +# } +# } +# } +# } +# } +# } +# +# trigger_event = { # Usually I would use a notification but... +# id = fp2_struggle.2016 # The narrative impact of a full letter is greater, it makes sure the betrayal stings. This vassal wrote just to rub salt in your eyes. +# days = { 3 4 } +# } +# } +# } +# } +# +# stress_impact = { +# compassionate = medium_stress_impact_gain +# gallant = minor_stress_impact_gain +# } +# } +# +# option = { # Ignore the letter +# name = fp2_struggle.2015.b +# +# trigger = { is_ai = no } +# send_interface_toast = { +# type = event_toast_effect_good +# title = murder_outcome.4302.t +# left_icon = scope:fp2_struggle_2015_murder_requester_vassal +# right_icon = scope:fp2_struggle_2015_peasant_to_murder +# +# show_as_tooltip = { add_courtier = scope:fp2_struggle_2015_peasant_to_murder } +# reverse_add_opinion = { +# target = scope:fp2_struggle_2015_murder_requester_vassal +# modifier = broke_promise +# } +# } +# +# custom_tooltip = fp2_struggle.2015.a.murder_scheme +# hidden_effect = { +# scope:fp2_struggle_2015_murder_requester_vassal = { +# start_scheme = { +# type = murder +# target_character = scope:fp2_struggle_2015_peasant_to_murder +# } +# } +# } +# } +# +# option = { # Warn the courtier about this (vassal may find out) +# name = fp2_struggle.2015.c +# +# random_list = { +# 75 = { +# desc = fp2_struggle.2015.c.b +# +# send_interface_toast = { +# type = event_intrigue_good +# title = fp2_struggle.2015.c.b +# left_icon = scope:fp2_struggle_2015_peasant_to_murder +# right_icon = scope:fp2_struggle_2015_murder_requester_vassal +# +# scope:fp2_struggle_2015_peasant_to_murder = { silent_disappearance_effect = yes } +# reverse_add_opinion = { +# target = scope:fp2_struggle_2015_murder_requester_vassal +# modifier = helped_me_in_time_of_need +# opinion = 25 # -15 points for suspicion (where is the body?) +# } +# } +# } +# 25 = { +# desc = fp2_struggle.2015.c.a +# send_interface_toast = { +# type = event_intrigue_bad +# title = fp2_struggle.2015.c.a +# left_icon = scope:fp2_struggle_2015_peasant_to_murder +# right_icon = scope:fp2_struggle_2015_murder_requester_vassal +# +# scope:fp2_struggle_2015_peasant_to_murder = { death = { death_reason = death_mysterious } } +# reverse_add_opinion = { +# target = scope:fp2_struggle_2015_murder_requester_vassal +# modifier = broke_promise +# } +# +# stress_impact = { +# forgiving = minor_stress_impact_gain +# humble = minor_stress_impact_gain +# just = minor_stress_impact_gain +# compassionate = minor_stress_impact_gain +# trusting = minor_stress_impact_gain +# gallant = minor_stress_impact_gain +# } +# } +# } +# } +# } +#} +# +#fp2_struggle.2016 = { +# type = letter_event +# sender = scope:fp2_struggle_2015_murder_requester_vassal +# opening = fp2_struggle.2016.t +# desc = fp2_struggle.2016.desc +# +# option = { # Tricked, backstabbed and quite possibly, out-smarted by your cunning vassal/rival +# name = fp2_struggle.2016.a +# +# hidden_effect = { scope:fp2_2015_murder_secret = { reveal_to = scope:fp2_struggle_2015_murder_requester_vassal } } +# scope:fp2_struggle_2015_murder_requester_vassal = { +# blackmail_target_with_secret_effect = { +# SECRET = scope:fp2_2015_murder_secret +# TARGET = ROOT +# } +# } +# progress_towards_rival_effect = { +# CHARACTER = scope:fp2_struggle_2015_murder_requester_vassal +# REASON = rival_tricked_murder +# OPINION = default_rival_opinion +# } +# add_opinion = { +# target = scope:fp2_struggle_2015_murder_requester_vassal +# modifier = betrayed_me_opinion +# opinion = -60 +# } +# } +#} +# +#################################### +## RETURN OF THE THIEF KING +## By Hugo Cortell +#################################### +## Directors liked the original very much +########################################### +#fp2_struggle.2021 = { # Main event +# type = character_event +# title = fp2_struggle.2021.t +# desc = { +# desc = fp2_struggle.2021.desc +# first_valid = { +# triggered_desc = { +# trigger = { scope:fp2_2009_event_outcome = flag:cleared_out } +# desc = fp2_struggle.2021.desc.alt.cutout +# } +# triggered_desc = { +# trigger = { scope:fp2_2009_event_outcome = flag:paid_off } +# desc = fp2_struggle.2021.desc.alt.paidoff +# } +# triggered_desc = { +# trigger = { scope:fp2_2009_event_outcome = flag:worked_together } +# desc = fp2_struggle.2021.desc.alt.work +# } +# triggered_desc = { +# trigger = { scope:fp2_2009_event_outcome = flag:lobbed_head } +# desc = fp2_struggle.2021.desc.alt.behead +# } +# } +# desc = { desc = fp2_struggle.2021.desc.outro } +# } +# theme = secret +# override_background = { +# trigger = { scope:fp2_2009_event_outcome = flag:cleared_out } +# reference = alley_day +# } +# override_background = { +# trigger = { scope:fp2_2009_event_outcome = flag:paid_off } +# reference = tavern +# } +# override_background = { +# trigger = { scope:fp2_2009_event_outcome = flag:worked_together } +# reference = throne_room +# } +# override_background = { +# trigger = { scope:fp2_2009_event_outcome = flag:lobbed_head } +# reference = alley_night +# } +# left_portrait = { +# character = root +# animation = personality_rational +# } +# right_portrait = { +# character = scope:fp2_2009_garduna_guild_master +# animation = scheme +# outfit_tags = { +# western_stealth_hood +# sub_saharan_high_nobility +# mena_war_legwear +# } +# } +# +# trigger = { +# fp2_character_involved_in_struggle_trigger = yes # To check that the struggle is still going on +# exists = primary_title +# scope:fp2_2009_garduna_guild_master = { +# is_available_ai_adult = yes +# OR = { # Is this char still looking for adventure or have they settled down? +# is_pool_character = yes +# is_pool_guest = yes +# } +# } +# } +# +# immediate = { +# title:c_napoli.title_province = { # Originally, the thieves were going to set up a guild there, but thats not very nice. +# county = { +# save_scope_as = fp2_2021_old_napoly +# holder.top_liege = { +# save_scope_as = fp2_2021_angry_italian # So instead you just get an opinion debuff for narrative impact. +# } # If this were not such a strange event, I would actually make it affect the character mechanically. But there is little excuse here. +# } +# } +# +# # Spy Network Logic, once upon a time used to be elegant. +# if = { +# limit = { exists = struggle:iberian_struggle } +# struggle:iberian_struggle = { +# if = { +# limit = { # Theoretically, effects which do not meet its conditions (the limit) are skipped over. However, the nightly has proven that wrong. +# any_involved_ruler = { # As such we take a _much_ more conservative approach of triple checking everything. +# exists = primary_title +# has_any_secrets = yes +# this != root +# } +# } +# random_involved_ruler = { +# limit = { +# exists = primary_title +# has_any_secrets = yes +# this != root +# } +# random_secret = { save_scope_as = fp2_2021_secreto_numero_ichi } +# } +# +# if = { +# limit = { +# any_involved_ruler = { +# exists = primary_title +# has_any_secrets = yes +# NOT = { +# this = root +# any_secret = { this = scope:fp2_2021_secreto_numero_ichi } +# } +# } +# } +# random_involved_ruler = { +# limit = { +# exists = primary_title +# has_any_secrets = yes +# NOT = { +# this = root +# any_secret = { this = scope:fp2_2021_secreto_numero_ichi } +# } +# } +# random_secret = { save_scope_as = fp2_2021_secreto_numero_ni } +# } +# } +# } +# } +# } +# +# if = { +# limit = { exists = cp:councillor_spymaster } +# cp:councillor_spymaster = { save_scope_as = fp2_2021_spymaster } +# } +# +# hidden_effect = { # Hides exceptions from players, fix is not necessary +# scope:fp2_2009_garduna_guild_master = { +# save_scope_as = dueltarget # For Loc +# move_to_pool_at = root.location # Fixes endless loop where the thief gets stretched across half the map +# } +# } +# } +# +# option = { # Send off to italy +# name = fp2_struggle.2021.a +# +# scope:fp2_2009_garduna_guild_master = { +# pay_short_term_gold = { +# target = ROOT +# gold = minor_gold_value +# } +# } +# custom_tooltip = fp2_struggle.2021.a.a +# scope:fp2_2021_angry_italian = { +# add_opinion = { +# target = root +# modifier = raided_me_opinion +# opinion = -40 +# } +# } +# +# hidden_effect = { # Possible random outcomes +# random_list = { +# 10 = { # "Retires", buys a house in italy and lives as an old man happily ever after (just like your dog went to a farm when it got old) +# scope:fp2_2009_garduna_guild_master = { silent_disappearance_effect = yes } +# +# modifier = { +# add = 30 +# scope:fp2_2009_event_outcome = flag:lobbed_head +# } +# modifier = { +# add = 20 +# scope:fp2_2009_event_outcome = flag:worked_together +# } +# } +# 30 = { # He just sorta roams around italy +# scope:fp2_2009_garduna_guild_master = { move_to_pool_at = scope:fp2_2021_angry_italian.location } +# +# modifier = { +# add = 10 +# scope:fp2_2009_event_outcome = flag:cleared_out +# } +# } +# 10 = { # Joins napolitan court +# scope:fp2_2009_garduna_guild_master = { remove_nickname = yes } # Becomes a functional member of society +# scope:fp2_2021_angry_italian = { +# add_courtier = scope:fp2_2009_garduna_guild_master +# +# add_opinion = { +# target = scope:fp2_2009_garduna_guild_master +# modifier = impressed_opinion +# opinion = 20 +# } +# reverse_add_opinion = { +# target = scope:fp2_2009_garduna_guild_master +# modifier = opinion_welcomed_with_tea +# } +# } +# +# modifier = { +# add = 20 +# scope:fp2_2009_event_outcome = flag:paid_off +# } +# } +# } +# } +# } +# +# option = { # Recruit into court (cures courtier's depression if they were a member of the thief-king's gang) +# name = fp2_struggle.2021.b +# +# pay_short_term_gold = { +# target = scope:fp2_2009_garduna_guild_master +# gold = medium_gold_value +# } +# every_powerful_vassal = { +# limit = { NOT = { has_trait = forgiving } } +# custom = fp2_every_major_vassal_notifier +# add_opinion = { +# target = root +# modifier = suspicion_opinion +# opinion = -15 +# } +# } +# add_courtier = scope:fp2_2009_garduna_guild_master +# if = { +# limit = { exists = scope:fp2_2009_garduna_young_thief } +# remove_trait = depressed_1 # My old boss survived! (though the rest are dead but shhh) +# } +# +# hidden_effect = { +# scope:fp2_2009_garduna_guild_master = { +# add_opinion = { +# target = root +# modifier = hired_me_opinion +# opinion = 15 +# } +# +# if = { # There can only be one top dog, one master of the shadows. +# limit = { scope:fp2_2021_spymaster != scope:fp2_2009_garduna_young_thief } +# random = { +# chance = 25 +# set_relation_rival = { +# target = scope:fp2_2021_spymaster +# reason = rival_garduna_young_thief +# } +# } +# } +# } +# } +# } +# +# option = { # Establish a spy network +# name = fp2_struggle.2021.c +# flavor = fp2_struggle.2021.c.flavor +# +# trigger = { +# OR = { +# exists = scope:fp2_2021_secreto_numero_ichi +# exists = scope:fp2_2021_secreto_numero_ni +# } +# } +# +# pay_short_term_gold = { +# target = scope:fp2_2009_garduna_guild_master +# gold = major_gold_value +# } +# +# custom_tooltip = fp2_struggle.2021.c.a # Perhaps it can mention the spymaster? +# hidden_effect = { # Note: You might end up learning secrets you already know, this is WAD +# if = { +# limit = { +# exists = scope:fp2_2021_secreto_numero_ichi +# exists = scope:fp2_2021_secreto_numero_ni +# } +# +# send_interface_toast = { +# type = event_intrigue_good +# title = fp2_struggle.2021.c.spynet.a +# +# scope:fp2_2021_secreto_numero_ichi = { reveal_to = root } +# scope:fp2_2021_secreto_numero_ni = { reveal_to = root } +# } +# } +# else = { +# if = { +# limit = { exists = scope:fp2_2021_secreto_numero_ichi } +# send_interface_toast = { +# type = event_intrigue_good +# title = fp2_struggle.2021.c.spynet.a +# +# scope:fp2_2021_secreto_numero_ichi = { reveal_to = root } +# } +# } +# else_if = { +# limit = { exists = scope:fp2_2021_secreto_numero_ni } +# send_interface_toast = { +# type = event_intrigue_good +# title = fp2_struggle.2021.c.spynet.a +# +# scope:fp2_2021_secreto_numero_ni = { reveal_to = root } +# } +# } +# } +# } +# +# scope:fp2_2009_garduna_guild_master = { silent_disappearance_effect = yes } +# } +# +# option = { # Duel option (get title late) +# name = { +# text = { +# first_valid = { +# triggered_desc = { +# trigger = { scope:fp2_2009_event_outcome = flag:lobbed_head } +# desc = fp2_struggle.2021.d.alt +# } +# desc = fp2_struggle.2021.d +# } +# } +# } +# trigger = { NOT = { age < 14 } } +# +# custom_tooltip = fp2_struggle.2021.d.b +# show_as_tooltip = { +# if = { +# limit = { +# OR = { +# has_any_nickname = no +# has_bad_nickname = yes +# } +# } +# give_nickname = nick_the_Thief_Slayer +# } +# } +# ROOT = { save_scope_as = fp2_2021_root_in_duel } +# scope:fp2_2009_garduna_guild_master = { +# set_variable = { +# name = signature_weapon +# value = flag:dagger +# } +# } +# +# if = { # Changes the background to match, you cannot use conditional values on scripted effects +# limit = { scope:fp2_2009_event_outcome = flag:cleared_out } +# configure_start_single_combat_effect = { +# SC_INITIATOR = root +# SC_ATTACKER = root +# SC_DEFENDER = scope:fp2_2009_garduna_guild_master +# FATALITY = always +# FIXED = no +# LOCALE = alley_day +# OUTPUT_EVENT = fp2_struggle.2022 +# INVALIDATION_EVENT = fp2_struggle.2022 +# } +# } +# else_if = { +# limit = { scope:fp2_2009_event_outcome = flag:paid_off } +# configure_start_single_combat_effect = { +# SC_INITIATOR = root +# SC_ATTACKER = root +# SC_DEFENDER = scope:fp2_2009_garduna_guild_master +# FATALITY = always +# FIXED = no +# LOCALE = tavern +# OUTPUT_EVENT = fp2_struggle.2022 +# INVALIDATION_EVENT = fp2_struggle.2022 +# } +# } +# else_if = { +# limit = { scope:fp2_2009_event_outcome = flag:worked_together } +# configure_start_single_combat_effect = { +# SC_INITIATOR = root +# SC_ATTACKER = root +# SC_DEFENDER = scope:fp2_2009_garduna_guild_master +# FATALITY = always +# FIXED = no +# LOCALE = throne_room +# OUTPUT_EVENT = fp2_struggle.2022 +# INVALIDATION_EVENT = fp2_struggle.2022 +# } +# } +# else_if = { +# limit = { scope:fp2_2009_event_outcome = flag:lobbed_head } +# configure_start_single_combat_effect = { +# SC_INITIATOR = root +# SC_ATTACKER = root +# SC_DEFENDER = scope:fp2_2009_garduna_guild_master +# FATALITY = always +# FIXED = no +# LOCALE = alley_night +# OUTPUT_EVENT = fp2_struggle.2022 +# INVALIDATION_EVENT = fp2_struggle.2022 +# } +# } +# } +# +# after = { remove_global_variable = fp2_struggle_2009_thief_king_char } +#} +# +#fp2_struggle.2022 = { # You become the KING OF THIEVES again, well, late is better than never... +# hidden = yes +# immediate = { +# if = { +# limit = { +# exists = scope:fp2_2022_reuse_gate +# root = scope:fp2_2021_root_in_duel +# } +# send_interface_toast = { +# type = event_toast_effect_good +# title = fp2_struggle.2021.d.a +# right_icon = ROOT +# if = { +# limit = { +# OR = { +# has_any_nickname = no +# has_bad_nickname = yes +# } +# } +# give_nickname = nick_the_Thief_Slayer +# } +# add_prestige = medium_prestige_gain # Penalty for finishing the job late +# add_gold = minor_gold_value +# } +# } +# else = { +# save_scope_as = fp2_2022_reuse_gate +# trigger_event = { +# id = fp2_struggle.2022 +# days = 1 +# } +# } +# } +#} +# +#################################### +## The Price of War +## by Veronica Pazos +#################################### +## You pawn your crown to get some gold to help in your war +############################################################### +#fp2_struggle.3001 = { +# type = character_event +# title = fp2_struggle.3001.t +# desc = { +# desc = fp2_struggle.3001.desc +# first_valid = { +# triggered_desc = { +# trigger = { +# is_at_war = yes +# } +# desc = fp2_struggle.3001.desc_war_intro +# } +# triggered_desc = { +# trigger = { +# is_at_war = no +# } +# desc = fp2_struggle.3001.desc_no_war_intro +# } +# } +# desc = fp2_struggle.3001.desc_outro +# } +# +# theme = crown +# cooldown = { years = 5 } #in case you don't sell your crown you'll have to wait to get the chance again +# override_background = { reference = council_chamber } +# left_portrait = { +# character = root +# animation = worry +# } +# right_portrait = { +# character = cp:councillor_steward +# animation = personality_rational +# } +# +# trigger = { +# has_fp2_dlc_trigger = yes #dlc check +# is_available_even_at_war_adult = yes +# primary_title.tier >= tier_kingdom #so we make sure you have an actual crown +# OR = { #someone has to suggest this +# exists = cp:councillor_steward +# any_courtier = { +# stewardship >= medium_skill_rating +# } +# } +# gold < minor_gold_value #you don't have much gold +# NOT = { has_character_flag = sold_crown_charmod } #you haven't sold your crown before +# struggle:iberian_struggle = { +# NOT = { is_struggle_phase = struggle_iberia_phase_compromise } #you're not in the compromise phase +# } +# } +# +# weight_multiplier = { #more likely to trigger the poorer you are +# modifier = { +# add = 0.25 +# gold <= 25 +# } +# modifier = { +# add = 0.25 +# gold <= 20 +# } +# modifier = { +# add = 0.5 +# gold <= 15 +# } +# modifier = { +# add = 0.5 +# gold <= 10 +# } +# } +# +# immediate = { +# play_music_cue = "mx_cue_touching_moment" +# if = { +# limit = { +# exists = cp:councillor_steward +# } +# cp:councillor_steward = { save_scope_as = struggle_3001_steward } +# } +# else = { +# random_courtier = { +# limit = { +# stewardship >= medium_skill_rating +# } +# save_scope_as = struggle_3001_steward +# } +# } +# if = { +# limit = { +# has_any_artifact = yes +# any_character_artifact = { artifact_type = helmet } #we check if you have a crown artifact +# } +# random_character_artifact = { +# limit = { artifact_type = helmet } +# save_scope_as = struggle_3001_crown_artifact +# } +# } +# if = { +# limit = { +# is_married = yes +# } +# primary_spouse = { +# save_scope_as = struggle_3001_spouse +# } +# } +# } +# +# option = { #sell your own crown +# name = fp2_struggle.3001.a +# flavor = fp2_struggle.3001.a_flavour +# add_character_flag = sold_crown_charmod #you lose your crown +# give_nickname = nick_the_crownless #now everyone knows +# add_gold = medium_gold_max_value +# add_prestige = major_prestige_loss +# stress_impact = { +# arrogant = medium_stress_impact_gain +# humble = minor_stress_loss +# } +# +# ai_chance = { +# base = 5 +# modifier = { +# add = 5 +# gold <= 15 +# } +# ai_value_modifier = { +# ai_greed = 0.15 +# ai_rationality = 0.2 +# } +# } +# } +# +# option = { #sell artifact crown instead +# name = fp2_struggle.3001.b +# trigger = { #triggers if you actually have one +# any_character_artifact = { +# artifact_slot_type = helmet +# } +# } +# add_gold = medium_gold_value +# add_prestige = minor_prestige_loss +# destroy_artifact = scope:struggle_3001_crown_artifact +# stress_impact = { +# greedy = minor_stress_impact_gain +# } +# +# ai_chance = { +# base = 5 +# modifier = { +# add = 5 +# gold <= 15 +# } +# ai_value_modifier = { +# ai_greed = -0.3 +# ai_rationality = 0.2 +# } +# } +# } +# +# option = { #but my spouse also has a crown... +# name = fp2_struggle.3001.c +# flavor = fp2_struggle.3001.c_flavour +# trigger = { +# is_married = yes #you have a spouse +# scope:struggle_3001_spouse = { +# NOT = { has_character_flag = sold_crown_charmod } #and you didn't sell their crown +# } +# } +# add_gold = medium_gold_value +# add_prestige = minor_prestige_loss +# if = { +# limit = { +# scope:struggle_3001_spouse = { +# has_trait = humble +# } +# } +# scope:struggle_3001_spouse = { +# add_opinion = { +# target = ROOT +# opinion = -25 #they are displeased +# modifier = struggle_3001_spouse_crown_modifier +# } +# add_character_flag = sold_crown_charmod #your spouse loses their crown +# } +# } +# else = { +# scope:struggle_3001_spouse = { +# add_opinion = { +# target = ROOT +# opinion = -75 #they REALLY hate you +# modifier = struggle_3001_spouse_crown_modifier +# } +# add_character_flag = sold_crown_charmod #your spouse loses their crown +# } +# } +# stress_impact = { +# generous = medium_stress_impact_gain +# compassionate = medium_stress_impact_gain +# } +# +# ai_chance = { +# base = 10 +# modifier = { +# add = 5 +# gold <= 15 +# } +# ai_value_modifier = { +# ai_greed = 0.5 +# } +# } +# } +# +# option = { #I'll be dead before losing my crown +# name = fp2_struggle.3001.d +# stress_impact = { +# base = medium_stress_gain #you really need money +# } +# +# ai_chance = { +# base = 5 +# } +# } +#} +# +#################################### +## Order of the Hatchet +## By Veronica Pazos +#################################### +## Order of the Hachet - Woman are defending your city +######################################################## +#fp2_struggle.3011 = { +# type = character_event +# title = fp2_struggle.3011.t +# desc = { +# first_valid = { +# triggered_desc = { +# trigger = { +# faith = { has_doctrine = doctrine_gender_female_dominated } +# } +# desc = fp2_struggle.3011.desc_men #reverse genre event +# } +# desc = fp2_struggle.3011.desc +# } +# desc = fp2_struggle.3011.desc_outro +# } +# +# theme = realm +# cooldown = { years = 20 } +# left_portrait = { +# character = root +# animation = personality_rational +# } +# right_portrait = { +# character = cp:councillor_marshal +# animation = marshal +# } +# lower_right_portrait = scope:bishop +# +# trigger = { +# has_fp2_dlc_trigger = yes +# fp2_character_any_involvement_iberian_struggle_trigger = yes #there's an ongoing struggle (includes dlc check) +# is_available_even_at_war_adult = yes +# is_landed_or_landless_administrative = yes +# any_character_war = { +# war_days >= 30 #a battle has likely happened +# } +# exists = cp:councillor_marshal #someone tells you about the incident +# exists = cp:councillor_court_chaplain +# faith = { +# NOT = { has_doctrine = doctrine_gender_equal } #checks that this is unusual +# } +# OR = { #checks again that this makes sense, Ola Jentzsch's note +# has_game_rule = default_gender_equality +# has_game_rule = inversed_gender_equality +# } +# struggle:iberian_struggle = { #there's a struggle going on +# OR = { +# is_struggle_phase = struggle_iberia_phase_hostility +# is_struggle_phase = struggle_iberia_phase_opportunity +# } +# } +# any_sub_realm_barony = { +# exists = holder +# title_province = { has_holding_type = city_holding } +# } +# } +# +# weight_multiplier = { +# base = 1 +# } +# +# immediate = { +# cp:councillor_marshal = { save_scope_as = struggle_3011_marshal } +# cp:councillor_court_chaplain = { save_scope_as = bishop } +# random_sub_realm_barony = { +# limit = { +# exists = holder +# title_province = { has_holding_type = city_holding } +# } +# county = { save_scope_as = struggle_3011_county_town } +# } +# } +# +# option = { #that's dope +# name = fp2_struggle.3011.a +# scope:struggle_3011_county_town = { +# add_county_modifier = { +# modifier = fp2_order_of_the_hachet_modifier +# years = 5 +# } +# } +# scope:bishop = { +# add_opinion = { +# target = ROOT +# opinion = -25 +# modifier = angry_opinion +# } +# } +# every_vassal = { +# custom = custom.every_zealous_callous_or_sadistic_vassal +# limit = { +# OR = { +# has_trait = zealous +# has_trait = callous +# } +# } +# add_opinion = { +# target = ROOT +# opinion = -10 +# modifier = annoyed_opinion +# } +# } +# stress_impact = { +# zealous = medium_stress_impact_gain +# } +# +# ai_chance = { +# base = 10 +# ai_value_modifier = { +# ai_zeal = -1 #zealous AI will never pick this +# ai_compassion = 0.2 +# ai_honor = 0.2 +# } +# } +# } +# +# option = { #ridiculous +# name = { +# trigger = { +# faith = { has_doctrine = doctrine_gender_male_dominated } +# } +# text = fp2_struggle.3011.b +# } +# name = { +# trigger = { +# faith = { has_doctrine = doctrine_gender_female_dominated } +# } +# text = fp2_struggle.3011.b_men +# } +# scope:bishop = { +# add_opinion = { +# target = ROOT +# opinion = 10 +# modifier = grateful_opinion +# } +# } +# if = { +# limit = { +# faith = { has_doctrine = doctrine_gender_male_dominated } +# } +# every_courtier = { +# custom = custom.every_female_courtier +# limit = { +# is_female = yes +# } +# add_opinion = { +# target = ROOT +# opinion = -10 +# modifier = insult_opinion +# } +# } +# } +# else_if = { +# limit = { +# faith = { has_doctrine = doctrine_gender_female_dominated } +# } +# every_courtier = { +# custom = custom.every_male_courtier +# limit = { +# is_male = yes +# } +# add_opinion = { +# target = ROOT +# opinion = -10 +# modifier = insult_opinion +# } +# } +# } +# stress_impact = { +# cynical = medium_stress_impact_gain +# } +# +# ai_chance = { +# base = 10 +# ai_value_modifier = { +# ai_zeal = 0.2 +# ai_rationality = -0.2 +# } +# } +# } +# +# option = { #witches! +# name = fp2_struggle.3011.c +# trigger = { +# has_trait = zealous +# } +# add_dread = medium_dread_gain +# add_character_modifier = { +# modifier = fp2_punished_order_of_the_hachet_modifier +# years = 5 +# } +# +# ai_chance = { #zealous AI will pick this option +# base = 1 +# ai_value_modifier = { +# ai_zeal = 0.8 +# ai_energy = -0.7 +# ai_vengefulness = 0.5 +# } +# } +# } +# +# option = { #I shall save these damsels in distress! +# name = fp2_struggle.3011.d +# trigger = { +# faith = { has_doctrine = doctrine_gender_male_dominated } +# OR = { +# has_trait = gallant +# has_trait = arrogant +# culture = { +# has_cultural_tradition = tradition_chanson_de_geste +# } +# } +# } +# random_list = { #how does that go +# 75 = { +# add_stress = medium_stress_gain +# } +# 25 = { +# add_stress = medium_stress_impact_loss +# } +# } +# +# ai_chance = { +# base = 10 +# } +# } +#} +# +#################################### +## The Wrath of Heaven +## By Veronica Pazos +#################################### +## "Lightning stones" in a siege +#################################### +#fp2_struggle.3021 = { +# type = character_event +# title = fp2_struggle.3021.t +# desc = fp2_struggle.3021.desc +# +# theme = martial +# left_portrait = { +# character = root +# animation = personality_cynical +# } +# right_portrait = { +# character = scope:struggle_3021_knight +# animation = shock +# } +# lower_right_portrait = scope:struggle_3021_courtier +# +# trigger = { +# has_fp2_dlc_trigger = yes +# fp2_character_any_involvement_iberian_struggle_trigger = yes +# is_available_even_at_war_adult = yes +# NOT = { has_character_flag = had_event_struggle_3021 } #so you don't research the same thing again +# struggle:iberian_struggle = { #there's some kind of hostility going on +# is_struggle_phase = struggle_iberia_phase_hostility +# +# } +# any_knight = { #someone sees this +# is_available_healthy_ai_adult = yes +# } +# any_courtier = { #someone will research this +# is_available_healthy_ai_adult = yes +# count > 0 +# } +# any_directly_owned_province = { #we have a castle to use it on +# has_holding_type = castle_holding +# NOT = { has_province_modifier = fp2_lightning_stones_modifier } +# } +# } +# +# weight_multiplier = { +# base = 1 +# modifier = { +# add = 1 +# is_at_war = yes +# } +# } +# +# immediate = { +# add_character_flag = had_event_struggle_3021 +# random_knight = { +# limit = { +# is_available_healthy_ai_adult = yes +# } +# save_scope_as = struggle_3021_knight +# } +# every_courtier = { #get your courtiers +# limit = { +# is_available_ai_adult = yes +# this != root.primary_spouse #you shouldn't lose your spouse or heir because of this +# this != root.player_heir +# } +# add_to_list = struggle_3021_courtier_list +# } +# ordered_in_list = { #sort through to pick the one with highest learning +# list = struggle_3021_courtier_list +# order_by = learning +# max = 1 +# save_scope_as = struggle_3021_courtier +# } +# random_directly_owned_province = { #this is where we can try it +# limit = { +# has_holding_type = castle_holding +# } +# save_scope_as = lightning_stones_province +# } +# } +# +# option = { #we need to research this stuff +# name = fp2_struggle.3021.a +# +# scope:struggle_3021_courtier = { #This is who is doing the research +# duel = { +# skill = learning #The skill needed for research +# value = average_skill_rating #Found in 00_basic_values.txt - An 8 in this case +# 12 = { #Success - We keep the weight values fairly close to our skill values so they can be affected. 20 is a good max. +# compare_modifier = { +# value = scope:duel_value +# multiplier = 2 #This multiplies the *difference* between the skill and the target. Meaning folks with good skills will be much more likely to get it. +# min = -5 #This prevents truly terrible people from completely losing the chance to succeed. +# } +# desc = good_struggle_3021_courtier_desc +# root = { +# send_interface_toast = { +# title = good_stone_research_title +# left_icon = scope:struggle_3021_courtier +# scope:lightning_stones_province = { +# add_province_modifier = { +# modifier = fp2_lightning_stones_modifier +# } +# } +# } +# } +# } +# 14 = { #Failure! +# compare_modifier = { +# value = scope:duel_value +# multiplier = -2 #This multiplies and inverts the *difference* between the skill and the target. Meaning folks with bad skills will be much more likely to get this. +# } +# desc = bad_struggle_3021_courtier_desc +# root = { +# send_interface_toast = { #send a toast +# title = bad_stone_research_title +# desc = bad_struggle_3021_courtier_desc +# left_icon = scope:struggle_3021_courtier +# scope:struggle_3021_courtier = { +# death = { death_reason = death_accident } +# } +# } +# } +# } +# } +# } +# +# stress_impact = { +# zealous = medium_stress_impact_gain +# } +# } +# +# option = { #this is not the greatest idea +# name = fp2_struggle.3021.b +# reverse_add_opinion = { +# target = scope:struggle_3021_courtier +# modifier = insulted_opinion +# opinion = -15 +# } +# stress_impact = { +# base = minor_stress_impact_loss +# zealous = medium_stress_impact_gain +# craven = minor_stress_impact_loss +# brave = medium_stress_impact_gain +# } +# } +# +# option = { #we can maybe use this in a feast +# name = fp2_struggle.3021.c +# trigger = { +# OR = { +# has_trait = vengeful +# has_trait = deceitful +# has_trait = arbitrary +# has_trait = callous +# intrigue >= high_skill_rating +# has_lifestyle = intrigue_lifestyle +# } +# } +# +# duel = { +# skill = learning +# target = scope:struggle_3021_courtier +# 30 = { #it works +# compare_modifier = { +# value = scope:duel_value +# multiplier = 0.5 +# } +# desc = good_struggle_3021_courtier_desc +# root = { +# send_interface_toast = { +# title = good_stone_research_title +# left_icon = scope:struggle_3021_courtier +# +# add_character_modifier = { +# modifier = fp2_lightning_stones_poison_modifier +# years = 5 +# } +# } +# } +# } +# 70 = { #it doesnt work +# compare_modifier = { +# value = scope:duel_value +# } +# desc = bad_struggle_3021_courtier_desc +# root = { +# send_interface_toast = { #send a toast +# title = bad_stone_research_title +# desc = bad_struggle_3021_courtier_desc +# left_icon = scope:struggle_3021_courtier +# +# scope:struggle_3021_courtier = { +# death = { death_reason = death_accident } +# } +# } +# } +# } +# } +# +# stress_impact = { +# forgiving = medium_stress_impact_gain +# honest = medium_stress_impact_gain +# compassionate = medium_stress_impact_gain +# zealous = medium_stress_impact_gain +# } +# ai_chance = { +# base = 10 +# ai_value_modifier = { +# ai_boldness = 0.2 +# ai_vengefulness = 1 +# } +# } +# } +# +# option = { #god's punihsment! +# name = fp2_struggle.3021.d +# trigger = { +# OR = { +# has_trait = zealous +# stress >= high_medium_stress +# } +# } +# add_piety = minor_piety_gain +# stress_impact = { +# zealous = minor_stress_loss +# } +# } +# +# option = { #lightning stones for the lightning stone god +# name = fp2_struggle.3021.e +# trigger = { +# religion = { is_in_family = rf_pagan } +# } +# add_piety = medium_piety_gain +# } +#} +# \ No newline at end of file diff --git a/events/global_religion_events.txt b/events/global_religion_events.txt new file mode 100644 index 00000000..ecdef1d9 --- /dev/null +++ b/events/global_religion_events.txt @@ -0,0 +1,1337 @@ +namespace = global_religion + + +#When a pagan (ai) domain is ready to feudalize, a reformed neighbor they're on good terms with should attempt to convert them, or they should have a chance to spontaneously convert + + +######################################################################### +# Pagan reformed by neighbor or spontaneously # +# by Linnéa Thimrén # +# global_religion.0001-0009 # +######################################################################### + + +#global_religion.0001 = { +# hidden = yes +# +# immediate = { +# random_list = { +# 7 = { +# trigger = { +# any_neighboring_top_liege_realm_owner = { +# faith = { NOT = { has_doctrine_parameter = unreformed } } +# } +# } +# modifier = { +# add = 1 +# any_neighboring_top_liege_realm_owner = { +# faith = { NOT = { has_doctrine_parameter = unreformed } } +# OR = { +# government_has_flag = government_is_clan +# government_has_flag = government_is_feudal +# } +# } +# } +# modifier = { #Give Muslim faiths a boost in Africa +# add = 4 +# capital_province = { +# geographical_region = world_africa +# } +# any_neighboring_top_liege_realm_owner = { +# faith.religion = religion:islam_religion +# faith = { NOT = { has_doctrine_parameter = unreformed } } +# } +# } +# random_neighboring_top_liege_realm_owner = { +# limit = { +# faith = { NOT = { has_doctrine_parameter = unreformed } } +# OR = { +# government_has_flag = government_is_clan +# government_has_flag = government_is_feudal +# } +# } +# alternative_limit = { +# faith = { NOT = { has_doctrine_parameter = unreformed } } +# } +# save_scope_as = actor #for the effect to work properly +# } +# } +# 5 = { +# trigger = { +# any_consort = { +# faith = { NOT = { has_doctrine_parameter = unreformed } } +# NOR = { +# has_relation_potential_rival = root +# has_relation_rival = root +# } +# } +# } +# random_consort = { +# limit = { +# faith = { NOT = { has_doctrine_parameter = unreformed } } +# NOR = { +# has_relation_potential_rival = root +# has_relation_rival = root +# } +# } +# save_scope_as = actor #for the effect to work properly +# } +# } +# 5 = { +# trigger = { +# any_relation = { +# type = soulmate +# faith = { NOT = { has_doctrine_parameter = unreformed } } +# } +# } +# random_relation = { +# type = soulmate +# limit = { +# faith = { NOT = { has_doctrine_parameter = unreformed } } +# } +# save_scope_as = actor #for the effect to work properly +# } +# } +# 2 = { +# trigger = { +# any_relation = { +# type = friend +# faith = { NOT = { has_doctrine_parameter = unreformed } } +# } +# } +# modifier = { +# add = 2 +# any_relation = { +# type = friend +# faith = { NOT = { has_doctrine_parameter = unreformed } } +# has_relation_best_friend = root +# } +# } +# random_relation = { +# type = friend +# limit = { +# faith = { NOT = { has_doctrine_parameter = unreformed } } +# has_relation_best_friend = root +# } +# alternative_limit = { +# faith = { NOT = { has_doctrine_parameter = unreformed } } +# } +# save_scope_as = actor #for the effect to work properly +# } +# } +# 2 = { +# trigger = { +# any_relation = { +# type = lover +# faith = { NOT = { has_doctrine_parameter = unreformed } } +# } +# } +# modifier = { +# add = 2 +# any_relation = { +# type = lover +# faith = { NOT = { has_doctrine_parameter = unreformed } } +# has_relation_best_friend = root +# } +# } +# random_relation = { +# type = lover +# limit = { +# faith = { NOT = { has_doctrine_parameter = unreformed } } +# has_relation_best_friend = root +# } +# alternative_limit = { +# faith = { NOT = { has_doctrine_parameter = unreformed } } +# } +# save_scope_as = actor #for the effect to work properly +# } +# } +# 2 = { +# trigger = { +# any_councillor = { +# faith = { NOT = { has_doctrine_parameter = unreformed } } +# } +# } +# modifier = { +# add = 2 +# any_councillor = { +# faith = { NOT = { has_doctrine_parameter = unreformed } } +# has_relation_best_friend = root +# } +# } +# random_councillor = { +# limit = { +# faith = { NOT = { has_doctrine_parameter = unreformed } } +# has_relation_best_friend = root +# } +# alternative_limit = { +# faith = { NOT = { has_doctrine_parameter = unreformed } } +# } +# save_scope_as = actor #for the effect to work properly +# } +# } +## #Geographical regions to also push extra for +## 2 = { +## trigger = { #Russia - orthodox +## capital_province = { +## geographical_region = ghw_region_russia +## } +## exists = faith:orthodox +## faith:orthodox = { +## exists = religious_head +## } +## } +## faith:orthodox = { +## religious_head = { +## save_scope_as = actor #for the effect to work properly +## } +## } +## } +## 2 = { +## trigger = { #Scandinavia - catholic +## capital_province = { +## geographical_region = ghw_region_scandinavia +## } +## exists = faith:catholic +## faith:catholic = { +## exists = religious_head +## } +## } +## faith:catholic = { +## religious_head = { +## save_scope_as = actor #for the effect to work properly +## } +## } +## } +# 100 = { +# modifier = { # A parallel system for africans lowers the need for this +# add = 50 +# faith = { +# has_doctrine = west_african_unreformed_faith_doctrine +# } +# } +# modifier = { # Historically held out for a long time +# add = 150 +# OR = { +# faith.religion = religion:baltic_religion +# faith.religion = religion:adonist_religion +# } +# } +# modifier = { # Less susceptible +# add = 50 +# faith.religion = faith:finnish_pagan.religion +# } +# modifier = { # The mongols are (mostly) busy +# add = 150 +# mpo_has_gok_mongol_empire_trigger = yes +# } +# modifier = { +# add = -40 +# current_date >= 2600.1.1 +# } +# modifier = { +# add = -15 +# current_date >= 2650.1.1 +# } +# modifier = { +# add = -25 +# current_date >= 2700.1.1 +# } +# modifier = { +# add = -10 +# current_date >= 2750.1.1 +# } +# modifier = { #100 % that something happens if it can +# add = -10 +# current_date >= 2850.1.1 +# } +# } +# } +# +# if = { +# limit = { +# exists = scope:actor +# } +# save_scope_as = recipient #for the effect to work properly +# +# every_vassal = { +# limit = { +# faith = root.faith +# } +# +# demand_conversion_interaction_effect = yes +# +# if = { #If you converted to a neighboring faith your government and capital county also converts +# limit = { +# root = { +# any_neighboring_top_liege_realm_owner = { +# this = scope:recipient +# } +# } +# NAND = { # The Steppes convert, but stay tribal +# capital_province ?= { geographical_region = world_steppe } +# } +# } +# if = { +# limit = { +# faith = { religion_tag = islam_religion } +# } +# change_government = clan_government +# } +# else = { change_government = feudal_government } +# capital_county = { +# set_county_faith = prev.faith +# } +# } +# } +# +# demand_conversion_interaction_effect = yes +# +# if = { #If you converted to a neighboring faith your government and capital county also converts +# limit = { +# any_neighboring_top_liege_realm_owner = { +# this = scope:recipient +# } +# NAND = { # The Steppes convert, but stay tribal +# capital_province ?= { geographical_region = world_steppe } +# } +# } +# if = { +# limit = { +# faith = { religion_tag = islam_religion } +# } +# change_government = clan_government +# } +# else = { change_government = feudal_government } +# capital_county = { +# set_county_faith = root.faith +# } +# } +# } +# } +#} + +# Events for expelled faith development to relocate +global_religion.1000 = { + type = character_event + title = global_religion.1000.t + desc = { + first_valid = { + triggered_desc = { + trigger = { + exists = scope:seeking_same_faith_counties + scope:target_faith_associated_county_faith != scope:target_faith + } + desc = global_religion.1000.desc_same_faith_counties_alt + } + triggered_desc = { + trigger = { + exists = scope:seeking_same_faith_counties + } + desc = global_religion.1000.desc_same_faith_counties + } + triggered_desc = { + trigger = { + scope:target_faith_associated_county_faith = scope:target_faith + } + desc = global_religion.1000.desc_any_counties_alt + } + desc = global_religion.1000.desc_any_counties + } + } + theme = faith + + left_portrait = { + character = root + animation = wedding_priest + camera = camera_event_very_left + } + + right_portrait = { + character = scope:local_character + animation = holding_staff + camera = camera_event_very_right_far + } + + immediate = { + hidden_effect_new_object = { + scope:target_faith = { + var:associated_culture = { + save_scope_as = target_faith_associated_culture + } + var:associated_county = { + save_scope_as = target_faith_associated_county + faith = { save_scope_as = target_faith_associated_county_faith } + } + } + save_scope_value_as = { + name = initial_available_development + value = scope:target_faith.var:converted_development + } + + # Save same-faith Counties if that's what we're looking for, they can be all over the place + if = { + limit = { + exists = scope:seeking_same_faith_counties + } + random_sub_realm_county = { + limit = { + faith = scope:target_faith + } + save_scope_as = initial_county_target + add_to_list = counties_to_move_in_to + set_variable = { + name = county_development_to_get + value = { + value = development_level + divide = 10 + floor = yes + add = 1 + max = scope:initial_available_development + min = 1 + } + } + save_scope_value_as = { + name = remaining_converted_development + value = { + value = scope:initial_available_development + subtract = var:county_development_to_get + } + } + } + while = { + count = { + add = root.primary_title.tier + if = { + limit = { + root.primary_title.tier <= tier_duchy + } + add = -1 + min = 1 + } + } + limit = { + scope:remaining_converted_development > 0 + } + random_sub_realm_county = { + limit = { + faith = scope:target_faith + NOT = { + is_in_list = counties_to_move_in_to + } + } + add_to_list = counties_to_move_in_to + set_variable = { + name = county_development_to_get + value = { + value = development_level + divide = 10 + floor = yes + add = 1 + max = scope:remaining_converted_development + min = 1 + } + } + save_scope_value_as = { + name = remaining_converted_development + value = { + value = scope:remaining_converted_development + subtract = var:county_development_to_get + } + } + } + } + } + + # Otherwise save a cluster of connected same-faith Counties + else = { + random_sub_realm_county = { + limit = { + faith = root.faith + NOT = { + is_target_in_variable_list = { + name = faiths_converted_in_the_county + target = scope:target_faith + } + } + trigger_if = { + limit = { + root = { + is_ai = yes + } + } + holder = { + is_ai = yes + } + } + } + weight = { + base = 1 + modifier = { + add = 25 + NOT = { + any_neighboring_county = { + OR = { + this = root.capital_county + any_neighboring_county = { + this = root.capital_county + } + } + } + } + } + } + save_scope_as = initial_county_target + add_to_list = counties_to_move_in_to + set_variable = { + name = county_development_to_get + value = { + value = development_level + divide = 10 + floor = yes + add = 1 + max = scope:initial_available_development + min = 1 + } + } + save_scope_value_as = { + name = remaining_converted_development + value = { + value = scope:initial_available_development + subtract = var:county_development_to_get + } + } + } + while = { + count = root.primary_title.tier + limit = { + scope:remaining_converted_development > 0 + } + random_sub_realm_county = { + limit = { + faith = root.faith + NOT = { + is_target_in_variable_list = { + name = faiths_converted_in_the_county + target = scope:target_faith + } + } + trigger_if = { + limit = { + root = { + is_ai = yes + } + } + holder = { + is_ai = yes + } + } + any_neighboring_county = { + is_in_list = counties_to_move_in_to + } + NOT = { + is_in_list = counties_to_move_in_to + } + } + weight = { + base = 1 + modifier = { + add = 25 + NOT = { + any_neighboring_county = { + OR = { + this = root.capital_county + any_neighboring_county = { + this = root.capital_county + } + } + } + } + } + modifier = { + add = 0 + add = { + every_neighboring_county = { + limit = { + is_in_list = counties_to_move_in_to + } + add = 10 + } + } + } + } + add_to_list = counties_to_move_in_to + set_variable = { + name = county_development_to_get + value = { + value = development_level + divide = 10 + floor = yes + add = 1 + max = scope:remaining_converted_development + min = 1 + } + } + save_scope_value_as = { + name = remaining_converted_development + value = { + value = scope:remaining_converted_development + subtract = var:county_development_to_get + } + } + } + } + } + create_character = { + template = pool_repopulate_learning + faith = scope:target_faith + culture = scope:target_faith_associated_culture + location = root.capital_province + gender_female_chance = { + if = { + limit = { scope:target_faith = { has_doctrine = doctrine_gender_male_dominated } } + add = 0 + } + else_if = { + limit = { scope:target_faith = { has_doctrine = doctrine_gender_female_dominated } } + add = 100 + } + else = { + add = 50 + } + } + save_scope_as = local_character + } + scope:local_character = { + add_trait = lifestyle_mystic + set_variable = { + name = loc_number + value = { + add = { + every_in_list = { + list = counties_to_move_in_to + add = var:county_development_to_get + } + } + multiply = 1000 + } + } + if = { # Error suppression + limit = { + var:loc_number = var:loc_number + } + } + } + } + } + + option = { + name = global_religion.1000.serenity_aspect + reason = serenity_aspect + trigger = { + house ?= { has_house_aspiration_parameter = aspect_of_serenity } + } + add_courtier = scope:local_character + + capital_county = { + if = { + limit = { + faith != scope:target_faith + } + faith = { + if = { + limit = { + OR = { + NOT = { has_variable = associated_county } + AND = { + has_variable = converted_development + var:converted_development <= 0 + } + } + } + set_variable = { + name = associated_county + value = scope:county + } + } + if = { + limit = { + OR = { + NOT = { has_variable = associated_culture } + AND = { + has_variable = converted_development + var:converted_development <= 0 + } + } + } + set_variable = { + name = associated_culture + value = scope:county.culture + } + } + if = { + limit = { + NOT = { has_variable = converted_development } + } + set_variable = { + name = converted_development + value = { + every_in_list = { + list = counties_to_move_in_to + add = { + add = var:county_development_to_get + divide = 2 + min = 1 + } + } + } + } + } + else = { + change_variable = { + name = converted_development + add = { + every_in_list = { + list = counties_to_move_in_to + add = { + add = var:county_development_to_get + divide = 2 + min = 1 + } + } + } + } + } + } + } + if = { + limit = { + root.faith != scope:target_faith + faith != scope:target_faith + } + set_county_faith = scope:target_faith + } + change_development_level = { + value = { + every_in_list = { + list = counties_to_move_in_to + add = { + add = var:county_development_to_get + divide = 2 + min = 1 + } + } + } + } + change_county_control = { + value = { + every_in_list = { + list = counties_to_move_in_to + add = { + add = var:county_development_to_get + divide = 2 + min = 1 + } + } + } + multiply = -5 + } + } + + if = { + limit = { + culture != scope:target_faith_associated_culture + } + culture = { + change_cultural_acceptance = { + target = scope:target_faith_associated_culture + value = { + value = scope:initial_available_development + subtract = scope:remaining_converted_development + } + desc = cultural_acceptance_gain_event + } + } + } + + scope:target_faith = { + change_variable = { + name = converted_development + subtract = { + every_in_list = { + list = counties_to_move_in_to + add = var:county_development_to_get + divide = 3 + min = 1 + } + } + } + } + + if = { + limit = { + is_ai = no + } + add_achievement_global_variable_effect = { + VARIABLE = achieved_ep4_20_promised_land_achievement + VALUE = yes + } + } + + ai_chance = { + base = 100 + } + } + + option = { + name = global_religion.1000.violent + trigger = { + NOT = { exists = scope:from_decision } + NOT = { house = { has_house_aspiration_parameter = aspect_of_serenity } } + OR = { + has_trait = callous + has_trait = sadistic + has_trait = greedy + has_trait = arbitrary + } + } + trait = callous + trait = sadistic + trait = greedy + trait = arbitrary + + add_gold = { + value = { + value = scope:initial_available_development + multiply = 15 + } + } + + if = { + limit = { + culture != scope:target_faith_associated_culture + } + culture = { + change_cultural_acceptance = { + target = scope:target_faith_associated_culture + value = { + value = scope:initial_available_development + subtract = scope:remaining_converted_development + multiply = -0.5 + } + desc = cultural_acceptance_gain_event + } + } + } + + scope:target_faith = { + change_variable = { + name = converted_development + subtract = 1 + } + } + + stress_impact = { + generous = massive_stress_impact_gain + compassionate = massive_stress_impact_gain + humble = medium_stress_impact_gain + just = minor_stress_impact_gain + } + + ai_chance = { + base = 25 + modifier = { + OR = { + has_trait = generous + has_trait = compassionate + has_trait = humble + has_trait = just + } + factor = 0 + } + } + } + + option = { + name = global_religion.1000.special + add_internal_flag = dangerous + trigger = { + faith != scope:target_faith + faith.religious_head != root + } + show_as_tooltip = { + set_character_faith_with_conversion = scope:target_faith + if = { + limit = { + scope:target_faith = { has_doctrine = doctrine_monotheist } + } + custom_description_no_bullet = { text = mandala_monotheist_warning_tt } + } + } + add_courtier = scope:local_character + if = { + limit = { + OR = { + faith = { has_doctrine_parameter = unreformed } + government_has_flag = government_is_nomadic + } + } + add_piety = major_piety_gain + } + else_if = { + limit = { + faith = { has_doctrine = doctrine_pluralism_pluralistic } + scope:target_faith = { has_doctrine = doctrine_pluralism_pluralistic } + } + add_piety = minor_piety_gain + } + else = { + add_piety_level = -2 + } + hidden_effect = { + set_character_faith_with_conversion = scope:target_faith + } + if = { + limit = { + government_has_flag = government_is_nomadic + } + domicile ?= { + change_herd = { + value = 0 + every_in_list = { + list = counties_to_move_in_to + add = var:county_development_to_get + } + multiply = 250 + } + if = { + limit = { + domicile_faith != scope:target_faith + } + set_domicile_faith = scope:target_faith + } + } + every_held_title = { + limit = { + tier = tier_county + is_landless_type_title = no + faith = root.faith + } + set_county_faith = scope:target_faith + } + } + else = { + every_in_list = { + list = counties_to_move_in_to + change_development_level = var:county_development_to_get + set_county_faith = scope:target_faith + change_county_control = { + value = var:county_development_to_get + multiply = -5 + } + } + } + + if = { + limit = { + culture != scope:target_faith_associated_culture + } + culture = { + change_cultural_acceptance = { + target = scope:target_faith_associated_culture + value = { + value = scope:initial_available_development + subtract = scope:remaining_converted_development + } + desc = cultural_acceptance_gain_event + } + } + } + + scope:target_faith = { + change_variable = { + name = converted_development + subtract = { + every_in_list = { + list = counties_to_move_in_to + add = var:county_development_to_get + } + } + } + } + + stress_impact = { + zealous = massive_stress_impact_gain + } + + if = { + limit = { + is_ai = no + } + add_achievement_global_variable_effect = { + VARIABLE = achieved_ep4_20_promised_land_achievement + VALUE = yes + } + } + + ai_chance = { + base = 0 + modifier = { + current_year >= 1000 + faith = { + has_doctrine_parameter = unreformed + NOT = { religion_tag = baltic_religion } + } + add = 10 + } + modifier = { + faith = { has_doctrine = doctrine_pluralism_pluralistic } + scope:target_faith = { has_doctrine = doctrine_pluralism_pluralistic } + + OR = { + faith.religion = scope:target_faith.religion + AND = { + faith.religion = { is_in_family = rf_eastern } + scope:target_faith.religion = { is_in_family = rf_eastern } + } + AND = { + faith.religion = { is_in_family = rf_sinitic } + scope:target_faith.religion = { is_in_family = rf_sinitic } + } + } + + add = 10 + } + modifier = { + has_trait = zealous + factor = 0 + } + modifier = { + has_trait = eccentric + add = 1 + } + modifier = { + faith.religion = { is_in_family = rf_abrahamic } + NOT = { + scope:target_faith.religion = { is_in_family = rf_abrahamic } + } + factor = 0 + } + modifier = { + faith = { has_doctrine = muhammad_succession_sunni_doctrine } + NOT = { + scope:target_faith = { has_doctrine = muhammad_succession_sunni_doctrine } + } + factor = 0 + } + modifier = { + faith = { has_doctrine = muhammad_succession_shia_doctrine } + NOT = { + scope:target_faith = { has_doctrine = muhammad_succession_shia_doctrine } + } + factor = 0 + } + modifier = { + faith = { has_doctrine = muhammad_succession_muhakkima_doctrine } + NOT = { + scope:target_faith = { has_doctrine = muhammad_succession_muhakkima_doctrine } + } + factor = 0 + } + modifier = { + faith = { has_doctrine = muhammad_succession_zandaqa_doctrine } + NOT = { + scope:target_faith = { has_doctrine = muhammad_succession_zandaqa_doctrine } + } + factor = 0 + } + modifier = { + exists = scope:from_decision + factor = 0 + } + } + } + + option = { + name = global_religion.1000.a + add_courtier = scope:local_character + if = { + limit = { + exists = scope:seeking_same_faith_counties + } + if = { + limit = { + government_has_flag = government_is_nomadic + } + domicile ?= { + change_herd = { + value = 0 + every_in_list = { + list = counties_to_move_in_to + add = var:county_development_to_get + } + multiply = 250 + } + } + } + else = { + every_in_list = { + list = counties_to_move_in_to + change_development_level = var:county_development_to_get + change_county_control = { + value = var:county_development_to_get + multiply = -5 + } + } + } + } + else = { + if = { + limit = { + government_has_flag = government_is_nomadic + } + domicile ?= { + change_herd = { + value = 0 + every_in_list = { + list = counties_to_move_in_to + add = var:county_development_to_get + } + multiply = 250 + } + if = { + limit = { + domicile_faith != scope:target_faith + } + set_domicile_faith = scope:target_faith + } + } + every_held_title = { + limit = { + tier = tier_county + is_landless_type_title = no + faith = root.faith + } + set_county_faith = scope:target_faith + } + } + else = { + every_in_list = { + list = counties_to_move_in_to + change_development_level = { + value = var:county_development_to_get + if = { + limit = { + culture = { + has_cultural_parameter = development_gain_from_religious_exiles_is_doubled + } + } + multiply = 2 + } + } + set_county_faith = scope:target_faith + change_county_control = { + value = var:county_development_to_get + multiply = -5 + } + } + } + } + + if = { + limit = { + culture != scope:target_faith_associated_culture + } + culture = { + change_cultural_acceptance = { + target = scope:target_faith_associated_culture + value = { + value = scope:initial_available_development + subtract = scope:remaining_converted_development + } + desc = cultural_acceptance_gain_event + } + } + } + + scope:target_faith = { + change_variable = { + name = converted_development + subtract = { + every_in_list = { + list = counties_to_move_in_to + add = var:county_development_to_get + } + } + } + } + + if = { + limit = { + is_ai = no + } + add_achievement_global_variable_effect = { + VARIABLE = achieved_ep4_20_promised_land_achievement + VALUE = yes + } + } + + ai_chance = { + base = 0 + modifier = { + faith = scope:target_faith + add = 5000 + } + modifier = { + current_year >= 1000 + faith = { + has_doctrine_parameter = unreformed + NOT = { religion_tag = baltic_religion } + } + add = 10 + } + modifier = { + faith.religion = { is_in_family = rf_eastern } + scope:target_faith.religion = { is_in_family = rf_eastern } + add = 1000 + } + modifier = { + faith.religion = { is_in_family = rf_sinitic } + scope:target_faith.religion = { is_in_family = rf_sinitic } + add = 1000 + } + modifier = { + culture = { has_cultural_pillar = heritage_chinese } + scope:target_faith.religion = { is_in_family = rf_sinitic } + add = 1000 + } + modifier = { + highest_held_title_tier >= tier_kingdom + OR = { + has_perk = open_minded_perk + has_trait = compassionate + has_trait = humble + } + is_open_to_inviting_other_faiths_trigger = yes + faith.religion = { is_in_family = rf_eastern } + scope:target_faith = { num_county_followers < 5 } + add = 1000 + } + modifier = { + is_open_to_inviting_other_faiths_trigger = yes + scope:target_faith = { faith_is_open_minded_trigger = yes } + add = 10 + } + modifier = { + faith.religion = { is_in_family = rf_abrahamic } + NOT = { + scope:target_faith.religion = { is_in_family = rf_abrahamic } + } + factor = 0 + } + modifier = { + faith = { has_doctrine = muhammad_succession_sunni_doctrine } + NOT = { + scope:target_faith = { has_doctrine = muhammad_succession_sunni_doctrine } + } + factor = 0 + } + modifier = { + faith = { has_doctrine = muhammad_succession_shia_doctrine } + NOT = { + scope:target_faith = { has_doctrine = muhammad_succession_shia_doctrine } + } + factor = 0 + } + modifier = { + faith = { has_doctrine = muhammad_succession_muhakkima_doctrine } + NOT = { + scope:target_faith = { has_doctrine = muhammad_succession_muhakkima_doctrine } + } + factor = 0 + } + modifier = { + faith = { has_doctrine = muhammad_succession_zandaqa_doctrine } + NOT = { + scope:target_faith = { has_doctrine = muhammad_succession_zandaqa_doctrine } + } + factor = 0 + } + modifier = { + faith != scope:target_faith + any_sub_realm_county = { + count < { + value = { + every_in_list = { + list = counties_to_move_in_to + add = 2 + } + } + } + faith = root.faith + } + factor = 0 + } + modifier = { + has_trait = eccentric + add = 5 + } + modifier = { + exists = scope:from_decision + add = 5 + } + } + } + + option = { + name = global_religion.1000.b + if = { + limit = { + exists = scope:from_decision + } + } + else = { + if = { + limit = { + faith != scope:target_faith + } + add_piety = { + value = { + value = scope:initial_available_development + subtract = scope:remaining_converted_development + multiply = 100 + divide = 2 + } + } + } + else = { + add_prestige = { + value = { + value = scope:initial_available_development + subtract = scope:remaining_converted_development + multiply = 100 + divide = 2 + } + } + } + } + + ai_chance = { + base = 100 + modifier = { + exists = scope:from_decision + factor = 0 + } + } + } + + after = { + every_in_list = { + list = counties_to_move_in_to + remove_variable = county_development_to_get + } + scope:local_character = { + silent_disappearance_ai_effect = yes + } + } +} diff --git a/events/religion_events/heresy_events.txt b/events/religion_events/heresy_events.txt new file mode 100644 index 00000000..34b1edce --- /dev/null +++ b/events/religion_events/heresy_events.txt @@ -0,0 +1,1355 @@ +namespace = heresy + +################################## +# Heresy Outbreak (Non-Eastern) # +# by Sean Hughes # +# 0001 - 0004 # +################################## + +scripted_trigger nearby_county_of_faith = { + any_in_list = { + list = neaby_same_religion_counties + faith = prev + } +} + +heresy.0001 = { + hidden = yes + scope = faith + + trigger = { + OR = { + NOT = { has_doctrine = eastern_hostility_doctrine } + has_doctrine = heresy_hostility_doctrine #Zoroastrians also get heresies, despite being Eastern. + } + } + + immediate = { + #Look for a valid Duke of this Faith to be our heresiarch. + random_faith_ruler = { + #Prefer Dukes with only 1 or 2 Duchies. + limit = { + is_valid_heresiarch = yes + highest_held_title_tier = tier_duchy + any_held_title = { + title_tier = duchy + count < 3 #Limit the influence of Mega-Dukes + is_landless_type_title = no + is_noble_family_title = no + } + } + #Then accept any valid Duke. + alternative_limit = { + is_valid_heresiarch = yes + highest_held_title_tier = tier_duchy + } + #If no Dukes exist, accept a Count. + alternative_limit = { + is_valid_heresiarch = yes + } + + weight = { + base = 100 + + modifier = { + add = 100 + is_powerful_vassal = yes + } + modifier = { + add = 75 + top_liege = this + } + modifier = { + add = 50 + is_a_faction_member = yes + } + + modifier = { + factor = 10 + has_game_rule = strict_regional_heresy + trigger_if = { + limit = { + faith = faith:catholic + } + capital_county = { + title_province = { + OR = { + geographical_region = world_europe_west_britannia # Lollard + geographical_region = world_europe_west_francia # Cathar + geographical_region = world_europe_south_italy # Walddensian + } + } + } + } + trigger_if = { + limit = { + faith = faith:orthodox + } + capital_county = { + title_province = { + OR = { + geographical_region = world_asia_minor # Paulician + geographical_region = custom_k_thessalonika # Iconoclast + geographical_region = world_europe_south_east # Bogomils + } + } + } + } + } + } + + save_scope_as = heretic_ruler + primary_title = { + save_scope_as = heretic_title + } + capital_county = { + save_scope_as = heretic_capital + } + } + + + #Once we have a heresiarch, look for a valid heretical faith to them to convert to. + if = { + limit = { + exists = scope:heretic_ruler + } + + #Save a list of provinces in our religion group (we will be reusing this a lot for distance checks). + every_province = { + limit = { + is_county_capital = yes + faith.religion = root.religion + squared_distance = { + target = scope:heretic_capital + value < squared_distance_medium + } + } + add_to_list = neaby_same_religion_counties + } + + # Compile a list of possible heresies to convert to. + religion = { + every_faith = { + limit = { + NOT = { invalid_for_heresy_events = yes } + } + add_to_list = potential_heresies + } + if = { + # Abrahamics also get bonus dualistic heresies + limit = { + is_in_family = rf_abrahamic + } + if = { + limit = { + this = religion:christianity_religion + } + faith:mandeaism = { + add_to_list = potential_heresies + } + faith:priscillianism = { + add_to_list = potential_heresies + } + faith:cainitism = { + add_to_list = potential_heresies + } + + } + else_if = { + limit = { + this = religion:islam_religion + } + faith:manichean = { + add_to_list = potential_heresies + } + faith:sabianism = { + add_to_list = potential_heresies + } + faith:valentinianism = { + add_to_list = potential_heresies + } + } + else_if = { + limit = { + this = religion:judaism_religion + } + faith:conversos = { + add_to_list = potential_heresies + } + faith:sethianism = { + add_to_list = potential_heresies + } + } + } + } + + #We want to pick certain faiths to be our heresy over others, assuming they are valid. + random_in_list = { + list = potential_heresies + + #Priority 1: Any nearby player-created faith. + limit = { + has_variable = player_created_faith + num_county_followers > 0 + is_valid_heresy = { + ORIGIN_FAITH = root + HERETICAL_FAITH = this + } + nearby_county_of_faith = yes + } + # Priority 2: Any nearby 'preferred heresy' faith. + alternative_limit = { + num_county_followers > 0 + is_preferred_heresy = { + ORIGIN_FAITH = root + HERETICAL_FAITH = this + } + nearby_county_of_faith = yes + } + # Priority 2.5: For the 'strict' game rule, only use preferred heresies. + alternative_limit = { + has_game_rule = strict_regional_heresy + is_preferred_heresy = { + ORIGIN_FAITH = root + HERETICAL_FAITH = this + } + } + # Priority 3: Any valid faith. + alternative_limit = { + is_valid_heresy = { + ORIGIN_FAITH = root + HERETICAL_FAITH = this + } + } + # Priority 4: Any faith. + alternative_limit = { + always = yes + } + + weight = { + base = 50 + + # Preferred heresies get another bonus. + modifier = { + factor = 5 + is_preferred_heresy = { + ORIGIN_FAITH = root + HERETICAL_FAITH = this + } + } + # More likely to pick Faiths that don't currently exist. + modifier = { + factor = 3 + num_county_followers = 0 + } + modifier = { + has_game_rule = strict_regional_heresy + NOT = { + is_preferred_heresy = { + ORIGIN_FAITH = root + HERETICAL_FAITH = this + } + } + factor = 0 + } + + # Certain Faiths should be much more rare in general. + # Uncommon Faiths + modifier = { + factor = 0.5 + OR = { + #Dualist + this = faith:mandeaism + this = faith:sabianism + } + } + #Rare Faiths + modifier = { + factor = 0.1 + OR = { + this = faith:sethianism + this = faith:priscillianism + this = faith:cainitism + } + } + + # Lollards more likely in England. + modifier = { + factor = regional_heresy_factor + this = faith:lollard + scope:heretic_capital = { + title_province = { + OR = { + geographical_region = custom_netherlands + geographical_region = world_europe_west_britannia + } + } + } + } + # Cathars more likely in France + modifier = { + factor = regional_heresy_factor + this = faith:cathar + scope:heretic_capital = { + title_province = { + geographical_region = world_europe_west_francia + } + } + } + # Waldensians more likely in Italy/South Germany + modifier = { + factor = regional_heresy_factor + this = faith:waldensian + scope:heretic_capital = { + title_province = { + OR = { + geographical_region = world_europe_south_italy + geographical_region = custom_germany + geographical_region = custom_bavaria + } + } + } + } + + # Paulicians more likely in Anatolia + modifier = { + factor = regional_heresy_factor + this = faith:paulician + scope:heretic_capital = { + title_province = { + geographical_region = world_asia_minor + } + } + } + # Iconoclasts more likely in Constantinople + modifier = { + factor = regional_heresy_factor + this = faith:iconoclast + scope:heretic_capital = { + title_province = { + geographical_region = custom_k_thessalonika + } + } + } + # Bogomils more likely in West ERE + modifier = { + factor = regional_heresy_factor + this = faith:bogomilist + scope:heretic_capital = { + title_province = { + geographical_region = world_europe_south_east + } + } + } + # Nestorian more likely in the East + modifier = { + factor = regional_heresy_factor + this = faith:nestorian + scope:heretic_capital = { + title_province = { + OR = { + geographical_region = world_india + geographical_region = world_middle_east + + } + } + } + } + # Priscillianism more likely in Egypt or Iberia + modifier = { + factor = regional_heresy_factor + this = faith:priscillianism + scope:heretic_capital = { + title_province = { + OR = { + geographical_region = world_africa_north_east + geographical_region = world_europe_west_iberia + } + } + } + } + + # FP3 - Khurramism more likely in Iran + modifier = { + factor = regional_heresy_factor + this = faith:khurramism + scope:heretic_capital = { + title_province = { + geographical_region = world_middle_east_persia + } + } + } + # FP3 - Behafaridism more likely in Iran + modifier = { + factor = regional_heresy_factor + this = faith:zurvanism #Behafaridism + scope:heretic_capital = { + title_province = { + geographical_region = world_middle_east_persia + } + } + } + # FP3 - The "arch heresy", aka Mazdakism more likely in Iran + modifier = { + factor = regional_heresy_factor + this = faith:mazdakism + scope:heretic_capital = { + title_province = { + geographical_region = world_middle_east_persia + } + } + } + # FP3 - Manicheanism more likely in Iran + modifier = { + factor = regional_heresy_factor + this = faith:manichean + scope:heretic_capital = { + title_province = { + geographical_region = world_middle_east_persia + } + } + } + } + + save_scope_as = heretic_faith + } + + #Trigger the heresy event for all rulers of the same Faith. + if = { + limit = { + exists = scope:heretic_faith + } + + save_scope_as = origin_faith + + #Determine roughly how many Counties we expext to flip to the heretical Faith. + random_list = { + 20 = { + modifier = { + add = 20 + fervor > 30 + } + set_variable = { + name = heresy_power + value = 10 + } + } + 55 = { + set_variable = { + name = heresy_power + value = 15 + } + } + 20 = { + modifier = { + add = 30 + fervor <= 20 + } + set_variable = { + name = heresy_power + value = 20 + } + } + 5 = { + modifier = { + add = 45 + fervor <= 10 + } + + set_variable = { + name = heresy_power + value = 25 + } + } + } + + # Modify heresy power for pluralist/fundamentalist + if = { + limit = { + has_doctrine_parameter = pluralism_pluralistic_resistant_to_heresy + } + change_variable = { + name = heresy_power + multiply = hostility_multiplier_pluralism + } + } + else_if = { + limit = { + has_doctrine_parameter = pluralism_fundamentalist_vulnerable_to_heresy + } + change_variable = { + name = heresy_power + multiply = hostility_multiplier_fundamentalist + } + } + + # Changes to another religion have reduced heresy power + if = { + limit = { + scope:origin_faith.religion != scope:heretic_faith.religion + } + change_variable = { + name = heresy_power + multiply = 0.5 + } + } + + #Flag the heretic faith as the parent faith's active heresy for the next 10 years. + set_variable = { + name = current_heresy + value = scope:heretic_faith + days = 3650 + } + + #Trigger the heresy outbreak event. + scope:heretic_ruler = { + trigger_event = { + id = heresy.0010 + days = 3 + } + } + } + } + } +} + +################################## +# Heresy Outbreak (Eastern) # +# by Sean Hughes # +# 0005 # +################################## + +heresy.0005 = { + hidden = yes + scope = faith + + trigger = { + has_doctrine = eastern_hostility_doctrine + NOT = { has_doctrine = heresy_hostility_doctrine } #Exclude Zoroastrians + } + + immediate = { + #Look for a valid Duke of this Faith to be our heresiarch. + random_faith_ruler = { + #Prefer Dukes with only 1 or 2 Duchies. + limit = { + faith = root + highest_held_title_tier = tier_duchy + any_held_title = { + title_tier = duchy + count < 3 #Limit the influence of Mega-Dukes + } + is_capable_adult_ai = yes + is_landed = yes + exists = capital_county + NOT = { has_trait = heresiarch } + no_heretical_hof_faith_trigger = yes + } + #Then accept any valid Duke. + alternative_limit = { + faith = root + highest_held_title_tier = tier_duchy + is_capable_adult_ai = yes + is_landed = yes + exists = capital_county + NOT = { has_trait = heresiarch } + no_heretical_hof_faith_trigger = yes + } + #If no Dukes exist, accept a Count. + alternative_limit = { + faith = root + highest_held_title_tier = tier_county + is_capable_adult_ai = yes + is_landed = yes + exists = capital_county + NOT = { has_trait = heresiarch } + no_heretical_hof_faith_trigger = yes + } + + weight = { + base = 100 + + modifier = { + add = 100 + is_powerful_vassal = yes + } + modifier = { + add = 75 + top_liege = this + } + modifier = { + add = 50 + is_a_faction_member = yes + } + } + + save_scope_as = heretic_ruler + primary_title = { + save_scope_as = heretic_title + } + capital_county = { + save_scope_as = heretic_capital + } + } + + + #Once we have a heresiarch, look for a valid heretical faith to them to convert to. + if = { + limit = { + exists = scope:heretic_ruler + } + + #Religions + faith:theravada.religion = { #Buddhism + add_to_list = eastern_religions + } + faith:manichean.religion = { #Hinduism + add_to_list = eastern_religions + } + faith:vaishnavism.religion = { #Jainism + add_to_list = eastern_religions + } + faith:digambara.religion = { #Dualism + add_to_list = eastern_religions + } + + every_in_list = { + list = eastern_religions + every_faith = { + add_to_list = eastern_faiths + } + } + + #Save a list of provinces in our religion group (we will be reusing this a lot for distance checks). + every_province = { + limit = { + is_county_capital = yes + faith.religion = { is_in_list = eastern_religions } + squared_distance = { + target = scope:heretic_capital + value < squared_distance_medium + } + } + add_to_list = neaby_same_religion_counties + } + + + #We want to pick certain faiths to be our heresy over others, assuming they are valid. + random_in_list = { + list = eastern_faiths + #Priority 1: Any nearby Eastern faith. + limit = { + num_county_followers > 0 + is_valid_heresy = { + ORIGIN_FAITH = root + HERETICAL_FAITH = this + } + nearby_county_of_faith = yes + } + #Priority 2: Any non-existing Eastern Faith + alternative_limit = { + num_county_followers = 0 + is_preferred_heresy = { + ORIGIN_FAITH = root + HERETICAL_FAITH = this + } + } + #Priority 3: Any far-away Eastern Faith + alternative_limit = { + is_valid_heresy = { + ORIGIN_FAITH = root + HERETICAL_FAITH = this + } + #No distance check here to save on perf (if we reach this point it's already not nearby) + } + + weight = { + base = 100 + + #Much more likely to select smaller Faiths as our heresy, to prevent them from becomming extinct (or prevent any other Faith from becoming too large). + modifier = { + add = 800 #1000 weight + num_county_followers <= 3 + } + modifier = { + add = 100 #200 weight + num_county_followers <= 6 + } + modifier = { + add = -20 #80 weight + num_county_followers > 9 + } + modifier = { + add = -30 #50 weight + num_county_followers > 12 + } + modifier = { + add = -40 #10 weight + num_county_followers > 15 + } + + #More likely to flip to a different branch of current religion than switching to a different religion. + modifier = { + factor = 10 + root.religion = this.religion + } + + #Certain Faiths are much more likely to appear/spread than others, due to popularity/obscurity. + #Common Faiths + modifier = { + factor = 1 + OR = { + #Buddhist + this = faith:theravada + this = faith:mahayana + this = faith:vajrayana + + #Hindu + this = faith:vaishnavism + this = faith:smartism + this = faith:srikula_shaktism + + #Jain + this = faith:digambara + this = faith:svetambara + + #Dualist + this = faith:manichean + } + } + + #Uncommon Faiths + modifier = { + factor = 0.5 + OR = { + #Hindu + this = faith:advaitism + this = faith:krishnaism + this = faith:kalikula_shaktism + + #Jain + this = faith:yapaniya + + #Dualist + this = faith:mandeaism + this = faith:sabianism + } + } + + #Rare Faiths + modifier = { + factor = 0.1 + OR = { + #Dualist + this = faith:valentinianism + this = faith:sethianism + this = faith:priscillianism + this = faith:cainitism + } + } + } + save_scope_as = heretic_faith + } + + + #Trigger the heresy event for all rulers of the same Faith. + if = { + limit = { + exists = scope:heretic_faith + } + + save_scope_as = origin_faith + + #Determine roughly how many Counties we expext to flip to the heretical Faith. + random_list = { + 20 = { + modifier = { + add = 20 + fervor > 30 + } + set_variable = { + name = heresy_power + value = 10 + } + } + 55 = { + set_variable = { + name = heresy_power + value = 15 + } + } + 20 = { + modifier = { + add = 30 + fervor <= 20 + } + set_variable = { + name = heresy_power + value = 20 + } + } + 5 = { + modifier = { + add = 45 + fervor <= 10 + } + + set_variable = { + name = heresy_power + value = 25 + } + } + } + + # Modify heresy power for pluralist/fundamentalist + if = { + limit = { + has_doctrine_parameter = pluralism_pluralistic_resistant_to_heresy + } + change_variable = { + name = heresy_power + multiply = hostility_multiplier_pluralism + } + } + else_if = { + limit = { + has_doctrine_parameter = pluralism_fundamentalist_vulnerable_to_heresy + } + change_variable = { + name = heresy_power + multiply = hostility_multiplier_fundamentalist + } + } + + #Flag the heretic faith as the parent faith's active heresy for the next 10 years. + set_variable = { + name = current_heresy + value = scope:heretic_faith + days = 3650 + } + + #Trigger the heresy outbreak event. + scope:heretic_ruler = { + trigger_event = { + id = heresy.0010 + days = 3 + } + } + } + } + } +} + + +################## +# New Major Heresy +# by Sean Hughes +# 0010 +################## + +heresy.0010 = { + type = character_event + title = heresy.0010.t + desc = { + desc = heresy.0010.desc + first_valid = { + triggered_desc = { + trigger = { + always = no + #has_variable = dead_heresy + } + desc = heresy.0010.desc.resurgent + } + triggered_desc = { + trigger = { + exists = scope:is_new_heresy + } + desc = heresy.0010.desc.nonexistant + } + desc = heresy.0010.desc.exists + } + } + left_portrait = { + character = scope:heretic_ruler + animation = prayer + } + major = yes + theme = faith + + trigger = { + scope:origin_faith = { + var:heresy_power > 0 + } + } + + major_trigger = { + OR = { + faith = scope:origin_faith + faith = scope:heretic_faith + } + } + + immediate = { + play_music_cue = "mx_cue_sacredrite" + + if = { + limit = { + scope:heretic_faith = { + num_county_followers = 0 + } + } + save_scope_value_as = { + name = is_new_heresy + value = yes + } + } + + #Consume heresy power to fuel this conversion. + scope:origin_faith = { + if = { + limit = { + scope:heretic_ruler = { + highest_held_title_tier >= 3 + } + } + #If we're a Duke, consume more heresy power. + change_variable = { + name = heresy_power + subtract = 3 + } + } + else = { + #Otherwise only consume a little heresy power. + change_variable = { + name = heresy_power + subtract = 1 + } + } + } + + scope:heretic_ruler = { + #Convert this character to the new heresy. + set_character_faith_with_conversion = scope:heretic_faith + #Heresy-using faiths become heresiarchs. + if = { + limit = { + faith = { + OR = { + NOT = { has_doctrine = eastern_hostility_doctrine } + has_doctrine = heresy_hostility_doctrine #Zoroastrians also get heresies, despite being Eastern. + } + } + } + add_heresiarch_trait_effect = yes + } + + #Kick off the follow-up events in the heresy chain. + trigger_event = { + id = heresy.0011 + days = { 4 7 } + } + + #Convert most miscellaneous courtiers & guests they have to the same heresy. + every_courtier_or_guest = { + limit = { + faith = scope:origin_faith + NOR = { + has_trait = zealous + this = this.faith.religious_head + } + is_available_ai = yes + } + set_character_faith = scope:heretic_faith + + hidden_effect = { + add_character_flag = { + flag = converted_by_heresy_0010_event + years = 15 + } + } + } + + hidden_effect = { + add_character_flag = { + flag = converted_by_heresy_0010_event + years = 15 + } + } + } + + #Send notifications to everyone who might care about the conversion. + every_player = { + limit = { + NOR = { + #These characters already get the full event. + faith = scope:origin_faith + faith = scope:heretic_faith + } + OR = { + #Everyone in the same Realm is notified. + top_liege ?= scope:heretic_ruler.top_liege + #If we're physically close to the character, we also get notified. + capital_county = { + squared_distance = { + target = scope:heretic_capital + value < squared_distance_medium + } + } + } + } + + send_interface_message = { + type = event_heresy_outbreak_neutral + title = heresy.0010.notification.title + custom_tooltip = heresy.0010.notification + + left_icon = scope:heretic_ruler + } + } + + #Fervor adjustments to prevent multiple heresy flip-flopping. + scope:heretic_faith = { + change_fervor = { + value = 100 + desc = fervor_gain_new_heresy + } + } + scope:origin_faith = { + change_fervor = { + value = heretical_defector_fervor_gain + desc = fervor_gain_defector_heresy + } + } + } + + option = { + name = { + trigger = { + this.faith = scope:origin_faith + scope:origin_faith = { + faith_hostility_level = { + target = scope:heretic_faith + value > 1 + } + } + exists = scope:is_new_heresy + } + text = heresy.0010.a.new_heresy + } + name = { + trigger = { + this.faith = scope:origin_faith + scope:origin_faith = { + faith_hostility_level = { + target = scope:heretic_faith + value > 1 + } + } + NOT = { exists = scope:is_new_heresy } + } + text = heresy.0010.a.existing_heresy + } + name = { + trigger = { + this.faith = { + faith_hostility_level = { + target = scope:heretic_faith + value = 1 + } + } + } + text = heresy.0010.a.astray_faith + } + name = { + trigger = { + this.faith = scope:heretic_faith + } + text = heresy.0010.a.same_faith + } + custom_tooltip = heresy.0010.tt.custom + } + + option = { + name = heresy.0010.b + trigger = { + is_ai = no + this.faith != scope:heretic_faith + } + custom_tooltip = heresy.0010.tt.custom + + #Convert to the new heresy. + set_character_faith_with_conversion = scope:heretic_faith + add_piety = major_piety_loss + + add_internal_flag = dangerous + } +} + +################## +# Major Heresy Spreads +# by Sean Hughes +# 0011 +################## +scripted_trigger no_heretical_hof_faith_0011_trigger = { #Head of Faith shouldn't convert. + OR = { + NOT = { + exists = scope:origin_faith.religious_head + } + AND = { + exists = scope:origin_faith.religious_head + this != scope:origin_faith.religious_head + } + } +} +heresy.0011 = { + hidden = yes + + trigger = { + scope:origin_faith = { + var:heresy_power > 0 + } + } + + weight_multiplier = { + base = 1 + } + + immediate = { + clear_saved_scope = convert_ruler + scope:origin_faith = { + random_faith_ruler = { + limit = { + highest_held_title_tier > tier_barony #No Barons, they're inconsequential. + highest_held_title_tier < tier_kingdom #No AI Kings/Emperors, they're too powerful. + is_landed = yes + exists = capital_county + is_capable_adult_ai = yes + no_heretical_hof_faith_0011_trigger = yes + recently_converted_faith_trigger = no # As amusing as it may be, rulers shouldn't 'flip-flop' between Faiths, so we need to enforce a cooldown on heresy conversions. + } + + weight = { + base = 1000 # 100% weight + + #Rulers of counties close to the Heresiarch's are more likely to join their Heresy. + modifier = { + add = -900 # 10% weight + capital_county = { + squared_distance = { + target = scope:heretic_capital + value > squared_distance_small + } + } + } + modifier = { + add = -90 # 1% weight + capital_county = { + squared_distance = { + target = scope:heretic_capital + value > squared_distance_medium + } + } + } + modifier = { + add = -10 # 0% weight (fallback only) + capital_county = { + squared_distance = { + target = scope:heretic_capital + value > squared_distance_large + } + } + } + + #Rulers of the same(or similar) culture are more likely to join Heresies. + modifier = { + factor = 3 + culture = { has_same_culture_heritage = scope:heretic_ruler.culture } + } + modifier = { + factor = 4 + has_same_culture_as = scope:heretic_ruler + } + + #Counts are less likely to join a heresy than a Duke (though it's still possible if they're nearby) + modifier = { + factor = 0.25 + highest_held_title_tier = 2 + } + } + + save_scope_as = convert_ruler + primary_title = { + save_scope_as = convert_title + } + capital_county = { + save_scope_as = convert_capital + } + } + } + + if = { + limit = { + exists = scope:convert_ruler + } + hidden_effect = { + add_character_flag = { + flag = converted_by_heresy_0011_event + years = 15 + } + } + + #Consume heresy power to fuel this conversion. + scope:origin_faith = { + if = { + limit = { + scope:heretic_ruler = { + highest_held_title_tier >= tier_duchy + } + } + #If we're a Duke, consume more heresy power. + change_variable = { + name = heresy_power + subtract = 3 + } + } + else = { + #Otherwise only consume a little heresy power. + change_variable = { + name = heresy_power + subtract = 1 + } + } + } + + scope:convert_ruler = { + set_character_faith_with_conversion = scope:heretic_faith + + #Trigger the next heresy conversion event in the chain. + trigger_event = { + id = heresy.0011 + days = { 7 14 } + } + } + + #Send notifications to everyone who might care about the conversion + every_player = { + limit = { + OR = { + #Everyone in the same Realm is notified. + top_liege ?= scope:convert_ruler.top_liege + AND = { + #If convert is Duke or above, all same-faith charatcers (on both sides) are notified. + OR = { + faith = scope:origin_faith + faith = scope:heretic_faith + } + scope:convert_ruler = { + highest_held_title_tier >= tier_duchy + } + } + #If we're physically close to the character, we also get notified. + AND = { + capital_county ?= { + squared_distance = { + target = scope:convert_capital + value < squared_distance_medium + } + } + } + } + } + + # Save our faith's scope for localization purposes. + this = { + save_scope_as = me + faith = { + save_scope_as = my_faith + } + } + + # If the ruler converted to our faith, send a 'good' notification. + if = { + limit = { + scope:my_faith = scope:heretic_faith + } + send_interface_message = { + type = event_heresy_outbreak_good + title = heresy.0011.notification.same_faith + left_icon = scope:convert_ruler + show_as_tooltip = { + scope:convert_ruler = { + set_character_faith = scope:heretic_faith + } + } + } + } + # If the ruler converted to a faith we consider heretical, send a special notification. + else_if = { + limit = { + scope:my_faith = scope:origin_faith + scope:my_faith = { + faith_hostility_level = { + target = scope:heretic_faith + value >= 1 + } + } + } + if = { + # If the heretics are in our realm, send a 'bad' notification, as it's an immediate problem we have to deal with. + limit = { + top_liege = { + any_vassal_or_below = { + this = scope:convert_ruler + } + } + } + send_interface_message = { + type = event_heresy_outbreak_bad + title = heresy.0011.notification.heresy + left_icon = scope:convert_ruler + show_as_tooltip = { + scope:convert_ruler = { + set_character_faith = scope:heretic_faith + } + } + } + } + # If the heretics are simply elsewhere in the world, send a 'neutral' notificiation, as they are not an immediate concern (and this may even present an opportunity). + else = { + send_interface_message = { + type = event_heresy_outbreak_neutral + title = heresy.0011.notification.heresy + left_icon = scope:convert_ruler + show_as_tooltip = { + scope:convert_ruler = { + set_character_faith = scope:heretic_faith + } + } + } + } + } + # If we don't care that much about the faith the ruler converted to/from, send a 'neutral' notification. + else = { + send_interface_message = { + type = event_heresy_outbreak_neutral + title = heresy.0011.notification.other + left_icon = scope:convert_ruler + show_as_tooltip = { + scope:convert_ruler = { + set_character_faith = scope:heretic_faith + } + } + } + } + } + + #Fervor adjustments to prevent multiple heresy flip-flopping. + scope:origin_faith = { + change_fervor = { + value = heretical_defector_fervor_gain + desc = fervor_gain_defector_heresy + } + } + } + } +} diff --git a/events/test_events/debug.txt b/events/test_events/debug.txt index ca84b172..ea3c114a 100644 --- a/events/test_events/debug.txt +++ b/events/test_events/debug.txt @@ -2936,24 +2936,24 @@ debug.700 = { } save_scope_as = sus_caliph } - random_ruler = { - limit = { - any_character_struggle = { - #involvement = involved - is_struggle_type = persian_struggle - } - } - save_scope_as = persian_struggle - } - random_ruler = { - limit = { - any_character_struggle = { - #involvement = involved - is_struggle_type = iberian_struggle - } - } - save_scope_as = iberian_struggle - } +# random_ruler = { +# limit = { +# any_character_struggle = { +# #involvement = involved +# is_struggle_type = persian_struggle +# } +# } +# save_scope_as = persian_struggle +# } +# random_ruler = { +# limit = { +# any_character_struggle = { +# #involvement = involved +# is_struggle_type = iberian_struggle +# } +# } +# save_scope_as = iberian_struggle +# } } option = {} diff --git a/events/yearly_events/yearly_events_sahara.txt b/events/yearly_events/yearly_events_sahara.txt new file mode 100644 index 00000000..6ed2a4a4 --- /dev/null +++ b/events/yearly_events/yearly_events_sahara.txt @@ -0,0 +1,1741 @@ +################ +# SAHARA-RELEVANT EVENTS +################ + +############### +# yearly_saharan.0001 — [Faith] Traders in [County]: settlement requested. +# yearly_saharan.0002 — [Faith] Traders in [County]: maintenance event. +# yearly_saharan.0003 — [Faith] Traders in [County]: traders have integrated without issue. +# yearly_saharan.0004 — [Faith] Traders in [County]: traders caused local economic boom. +# yearly_saharan.0005 — [Faith] Traders in [County]: traders have converted the county. +# +# yearly_saharan.0021 — [Culture] Nomads Flock to [County]: nomads from the Sahara move in to border regions in greater and greater numbers. +# +# yearly_saharan.0031 — Slave Raids against [Realm] Escalate +# yearly_saharan.0032 — Marauding Slavers from [Realm] + +namespace = yearly_saharan + +################################################## +# [Faith] Traders in [County] +# by Ewan Cowhig Croft +# 0001-0005 +################################################## + +scripted_trigger valid_faiths_scripted_trigger = { + faith = { + has_doctrine_parameter = unreformed +# OR = { +# religion_tag = west_african_religion +# religion_tag = west_african_bori_religion +# religion_tag = west_african_roog_religion +# religion_tag = akom_religion +# religion_tag = kushitism_religion +# religion_tag = waaqism_religion +# } + } +} + +scripted_trigger suitable_for_faith_traders_scripted_trigger = { + tier = tier_county + title_province = { + OR = { + geographical_region = custom_sahel_proper + geographical_region = custom_sub_saharan_africa_immediate + } + } + valid_faiths_scripted_trigger = yes + any_neighboring_county = { neighbouring_proselytising_trader_province_scripted_trigger = yes } +} + +scripted_trigger neighbouring_proselytising_trader_province_scripted_trigger = { + title_province = { + OR = { + geographical_region = custom_sahara_proper + geographical_region = custom_sahel_proper + } + } + faith = { + NOR = { + religion = { is_in_family = rf_pagan } + has_doctrine_parameter = unreformed + } + } +} + +# Traders turn up initially. +# by Ewan Cowhig Croft +yearly_saharan.0001 = { + type = character_event + title = yearly_saharan.0001.t + desc = yearly_saharan.0001.desc + theme = stewardship + left_portrait = { + character = root + animation = personality_honorable + } + override_background = { reference = market } + + trigger = { + is_available_at_peace_adult = yes + + #Mustn't have recently had this event, or else have other enclaves currently maturing in their territory. + NOR = { + has_character_flag = yearly_saharan_0001 + any_held_title = { + title_tier = county + county = { has_county_modifier = foreign_trader_enclaves_saharan_modifier } + } + } + + #Must be a native faith who has not yet reformed. + valid_faiths_scripted_trigger = yes + + #Must exists in the proper region, and have a valid affectable county. + capital_province = { + OR = { + geographical_region = custom_sahel_proper + geographical_region = custom_sub_saharan_africa_immediate + } + } + any_held_title = { suitable_for_faith_traders_scripted_trigger = yes } + } + + weight_multiplier = { + base = 1 + } + + immediate = { + add_character_flag = { + flag = yearly_saharan_0001 + days = 7300 + } + save_scope_as = initial_holder + random_held_title = { + limit = { suitable_for_faith_traders_scripted_trigger = yes } + save_scope_as = target_county + random_neighboring_county = { + limit = { neighbouring_proselytising_trader_province_scripted_trigger = yes } + save_scope_as = source_county + } + } + } + + #Allow them to pay you to stay. + option = { + name = yearly_saharan.0001.a + + #Take a noice bribe. + add_gold = major_gold_value + + #Added a beneficial enclave modifier. + scope:target_county = { + add_county_modifier = { + modifier = foreign_trader_enclaves_saharan_modifier + years = 20 + } + } + + #Warn the user that this may have repercussions, or at least imply such. + custom_tooltip = yearly_saharan.0001.a.tt + hidden_effect = { + trigger_event = { + id = yearly_saharan.0002 + years = { 10 20 } + } + } + + stress_impact = { + just = minor_stress_impact_gain + greedy = minor_stress_impact_loss + } + ai_chance = { + base = 100 + ai_value_modifier = { + ai_greed = 0.25 + ai_zeal = -0.25 + } + modifier = { #Weight down for stress. + add = -10 + has_trait = just + } + modifier = { #Weight down for stress. + add = 10 + has_trait = greedy + } + } + } + + #Dismiss them, but they can keep moving through. + option = { + name = yearly_saharan.0001.b + + #Well, aren't you mighty Mr. Kicks-Downwards? + add_prestige = minor_prestige_gain + + #If you and the province have the same culture, people approve of you sticking up for your limited protectionism. + if = { + limit = { root.culture = scope:target_county.culture } + add_character_modifier = { + modifier = respects_local_traditions_saharan_modifier + years = 15 + } + } + + #The county suffers a little for the clarified restrictions on foreign merchants. + scope:target_county = { + add_county_modifier = { + modifier = foreign_traders_unable_to_root_saharan_modifier + years = 20 + } + } + + stress_impact = { + greedy = minor_stress_impact_gain + zealous = minor_stress_impact_loss + } + ai_chance = { + base = 100 + ai_value_modifier = { + ai_zeal = 0.25 + ai_greed = -0.25 + } + modifier = { #Weight down for stress. + add = -10 + has_trait = greedy + } + modifier = { #Weight down for stress. + add = 10 + has_trait = zealous + } + } + } + + #Dismiss them and forbid their future trade! + option = { + name = yearly_saharan.0001.c + + #Confiscate goods, property, livestock, the lot! + add_gold = massive_gold_value + + #If you share the same faith as the province, this act is a pious protection of the spirituality of your people. Unless you're pluralist. + if = { + limit = { + root.faith = scope:target_county.faith + NOR = { + root.faith = { has_doctrine = doctrine_pluralism_pluralistic } + #Not syncretised with Eastern Family. + AND = { + root.faith = { has_doctrine = tenet_eastern_syncretism } + scope:source_county.faith.religion = { is_in_family = rf_eastern } + } + #Not syncretised with Christianity. + AND = { + root.faith = { has_doctrine_parameter = christian_syncretic_actor_opinion_active } + scope:source_county.faith = { religion_tag = christianity_religion } + } + #Not syncretised with Islam. + AND = { + root.faith = { has_doctrine_parameter = islamic_syncretic_actor_opinion_active } + scope:source_county.faith = { religion_tag = islam_religion } + } + #Not syncretised with Judaism. + AND = { + root.faith = { has_doctrine_parameter = jewish_syncretic_actor_opinion_active } + scope:source_county.faith = { religion_tag = judaism_religion } + } + } + } + #Piety scales depending on how monistic you are. + if = { + limit = { + root.faith = { has_doctrine = doctrine_pluralism_righteous } + } + add_piety = minor_piety_value + } + if = { + limit = { + root.faith = { has_doctrine = doctrine_pluralism_fundamentalist } + } + add_piety = medium_piety_value + } + } + + #The county, and any others in the duchy not held by a different player, get a significant malus. + scope:target_county = { + add_county_modifier = { + modifier = local_recession_epicentre_saharan_modifier + years = 20 + } + every_neighboring_county = { + limit = { + holder.top_liege = root.top_liege + OR = { + #If done by a player, let them screw everyone. Funnier that way. + root = { is_ai = no } + #Otherwise, exempt players for agency-raisins. + AND = { + root = { is_ai = yes } + holder = root + } + } + } + add_to_list = localised_recession_list + } + every_in_list = { + list = localised_recession_list + custom = yearly_saharan.0001.c.list + add_county_modifier = { + modifier = local_recession_ripple_saharan_modifier + years = 20 + } + } + } + + stress_impact = { + greedy = medium_stress_impact_gain + zealous = medium_stress_impact_loss + } + ai_chance = { + base = 100 + ai_value_modifier = { + ai_zeal = 0.2 + ai_vengefulness = 0.1 + ai_greed = -0.2 + ai_compassion = -0.1 + } + modifier = { #Weight down for stress. + add = -20 + has_trait = greedy + } + modifier = { #Weight down for stress. + add = 20 + has_trait = zealous + } + } + } +} + +# Check to see which event to fire next, if any. +yearly_saharan.0002 = { + hidden = yes + + trigger = { + scope:source_county = { + faith = { + NOR = { + religion = { is_in_family = rf_pagan } + has_doctrine_parameter = unreformed + } + } + } + scope:target_county = { valid_faiths_scripted_trigger = yes } + } + + immediate = { + #Check to see if we're still using the original permit granter, or some new lad. + if = { + limit = { scope:target_county.holder = scope:initial_holder } + scope:initial_holder = { save_scope_as = current_holder } + } + else = { + scope:target_county.holder = { save_scope_as = current_holder } + } + + #Pop an event, weighted by fervour. + scope:current_holder = { + random_list = { + #The community integrates totally. + 20 = { + trigger_event = yearly_saharan.0003 + modifier = { + add = 10 + scope:target_county.faith = { fervor >= 50 } + } + modifier = { + add = 10 + scope:target_county.faith = { fervor >= 70 } + } + modifier = { + add = 10 + scope:target_county.faith = { fervor >= 90} + } + } + #The community has become extremely successful. + 30 = { trigger_event = yearly_saharan.0004 } + #The county converts to the faith of the merchants. + 50 = { + trigger_event = yearly_saharan.0005 + modifier = { + add = 10 + scope:source_county.faith = { fervor >= 50 } + } + modifier = { + add = 10 + scope:source_county.faith = { fervor >= 70 } + } + modifier = { + add = 10 + scope:source_county.faith = { fervor >= 90 } + } + } + } + } + } +} + +# The merchant community has integrated seamlessly. +# by Ewan Cowhig Croft +yearly_saharan.0003 = { + type = character_event + title = yearly_saharan.0003.t + desc = { + first_valid = { + triggered_desc = { + trigger = { scope:initial_holder = scope:current_holder } + desc = yearly_saharan.0003.desc_initial + } + desc = yearly_saharan.0003.desc_current + } + desc = yearly_saharan.0003.desc + } + theme = stewardship + left_portrait = { + character = scope:current_holder + animation = personality_rational + } + override_background = { reference = market } + + trigger = { + is_available = yes + } + + immediate = { + scope:target_county = { remove_county_modifier = foreign_trader_enclaves_saharan_modifier } + } + + #What a lovely windfall. + option = { + name = yearly_saharan.0003.a + + #Reap some minor additional benefits. + scope:target_county = { + add_county_modifier = { + modifier = integrated_foreign_trader_enclaves_saharan_modifier + years = 10 + } + } + + ai_chance = { + base = 100 + ai_value_modifier = { ai_compassion = 0.25 } + } + } + + #Tax the smeggers into oblivion. + option = { + name = yearly_saharan.0003.b + + #Gain gold. + add_treasury_or_gold = minor_treasury_or_gold_value + + #This annoys locals. + scope:target_county = { + add_county_modifier = { + modifier = overtaxed_merchant_enclaves_saharan_modifier + years = 10 + } + } + + stress_impact = { generous = medium_stress_impact_gain } + ai_chance = { + base = 100 + ai_value_modifier = { + ai_greed = 0.25 + ai_compassion = -0.25 + } + modifier = { #Weight down for stress. + add = -20 + has_trait = generous + } + } + } +} + +# The merchant community is separate, but lucrative and successful. +# by Ewan Cowhig Croft +yearly_saharan.0004 = { + type = character_event + title = yearly_saharan.0004.t + desc = { + first_valid = { + triggered_desc = { + trigger = { scope:initial_holder = scope:current_holder } + desc = yearly_saharan.0004.desc_initial + } + desc = yearly_saharan.0004.desc_current + } + desc = yearly_saharan.0004.desc + } + theme = stewardship + left_portrait = { + character = scope:current_holder + animation = personality_rational + } + override_background = { reference = market } + + trigger = { + is_available = yes + } + + immediate = { + scope:target_county = { remove_county_modifier = foreign_trader_enclaves_saharan_modifier } + } + + #Study their ways to gain stewardship. + option = { + name = yearly_saharan.0004.a + + #Flat chance to gain additional stewardship. + custom_tooltip = yearly_saharan.0004.a.tt + hidden_effect = { + random_list = { + 33 = { + send_interface_toast = { + title = yearly_saharan.0004.a.tt.outcome_1 + left_icon = scope:current_holder + add_stewardship_skill = 1 + } + } + 33 = { + send_interface_toast = { + title = yearly_saharan.0004.a.tt.outcome_2 + left_icon = scope:current_holder + add_stewardship_skill = 2 + } + } + 34 = { + send_interface_toast = { + title = yearly_saharan.0004.a.tt.outcome_3 + left_icon = scope:current_holder + add_stewardship_skill = 3 + } + } + } + } + + stress_impact = { lazy = minor_stress_impact_gain } + ai_chance = { + base = 100 + ai_value_modifier = { + ai_rationality = 0.25 + ai_energy = -0.25 + } + modifier = { #Weight down for stress. + add = -10 + has_trait = lazy + } + } + } + + #Collect well-earnt dues. + option = { + name = yearly_saharan.0004.b + trigger = { stewardship < high_skill_rating } + + #Gold please! + add_treasury_or_gold = medium_treasury_or_gold_value + + stress_impact = { generous = miniscule_stress_impact_gain } + ai_chance = { + base = 100 + ai_value_modifier = { ai_greed = 0.50 } + modifier = { #Weight down for stress. + add = -10 + has_trait = lustful + } + } + } + + #High stewardship: collect _higher_ well-earnt dues. + option = { + name = yearly_saharan.0004.c + trigger = { stewardship >= high_skill_rating } + skill = stewardship + + #Stonks of gold please! + add_treasury_or_gold = major_treasury_or_gold_value + + stress_impact = { generous = miniscule_stress_impact_gain } + ai_chance = { + base = 100 + ai_value_modifier = { ai_greed = 0.75 } + modifier = { #Weight down for stress. + add = -10 + has_trait = lustful + } + } + } +} + +# The merchant community has converted your populace. +# by Ewan Cowhig Croft +yearly_saharan.0005 = { + type = character_event + title = yearly_saharan.0005.t + desc = { + first_valid = { + triggered_desc = { + trigger = { scope:initial_holder = scope:current_holder } + desc = yearly_saharan.0005.desc_initial + } + desc = yearly_saharan.0005.desc_current + } + desc = yearly_saharan.0005.desc + } + theme = stewardship + left_portrait = { + character = scope:current_holder + animation = personality_rational + } + override_background = { reference = market } + + trigger = { + is_available = yes + } + + immediate = { + scope:target_county = { + remove_county_modifier = foreign_trader_enclaves_saharan_modifier + faith = { save_scope_as = target_county_old_faith } + set_county_faith = scope:source_county.faith + } + } + + #Wait, this is my faith, isn't it? + option = { + name = yearly_saharan.0005.a + trigger = { scope:current_holder.faith = scope:target_county.faith } + + #An objectively good thing! Piety, yay! + add_piety = medium_piety_value + + #And the people are still pretty damned happy! + scope:target_county = { + add_county_modifier = { + modifier = ecstatic_converts_saharan_modifier + years = 30 + } + } + + stress_impact = { cynical = miniscule_stress_impact_gain } + ai_chance = { + #The AI should always take this option, if it's available. + base = 100 + } + } + + #At least they're happy about their new faith. + option = { + name = yearly_saharan.0005.b + trigger = { + scope:current_holder.faith != scope:target_county.faith + } + + #Better than a kick in the teeth, right? + scope:target_county = { + add_county_modifier = { + modifier = ecstatic_converts_saharan_modifier + years = 30 + } + } + + ai_chance = { + #The AI should always take this option, if it's available. + base = 100 + } + } + + #Not on my watch you don't! + option = { + name = yearly_saharan.0005.c + trigger = { + scope:current_holder.faith != scope:target_county.faith + } + + #Torch half the county to flip them back. + scope:target_county = { + change_county_control = massive_county_control_loss + change_development_progress = major_development_progress_loss + add_county_modifier = { + modifier = persecuted_converts_saharan_modifier + years = 25 + } + set_county_faith = scope:target_county_old_faith + } + + stress_impact = { + forgiving = minor_stress_impact_gain + cynical = minor_stress_impact_gain + compassionate = medium_stress_impact_gain + } + ai_chance = { + #The AI should never take this option. + base = 0 + } + } +} + + + +################################################## +# [Culture] Nomads Flock to [County] +# by Ewan Cowhig Croft +# 0021 +################################################## + +scripted_trigger appropriate_nomad_adjacent_county_trigger = { + #Located in an appropriate region. + title_province = { geographical_region = custom_sahara_proper } + is_landless_type_title = no + + #Does not already have an appropriate nomad culture. + NOT = { culture = { has_cultural_tradition = tradition_saharan_nomads } } +} + +scripted_effect pick_nomad-appropriate_county_effect = { + random_in_list = { + list = $LIST$ + save_scope_as = target_county + + weight = { + base = 100 + #Nomads like to control strategic oases. + modifier = { + add = 50 + title_province = { terrain = oasis } + } + #This event is chiefly for nomad tribes moving into desert territory that they specialise in controlling, not more fertile drylands. + modifier = { + add = -50 + title_province = { terrain = drylands } + } + #Provinces that grant more levies are preferred. + modifier = { + add = { + value = building_levies + multiply = 0.1 + } + } + #Weight down higher development counties proportionally: both not the focus of the event, and less likely to be accepted by the player. + modifier = { + add = { + value = development_level + multiply = -1 + } + development_level >= bad_development_level + } + } + } +} + +# #An appropriate local Saharan culture's nomads are flocking to one of your counties. +# by Ewan Cowhig Croft +yearly_saharan.0021 = { + type = character_event + title = yearly_saharan.0021.t + desc = yearly_saharan.0021.desc + theme = stewardship + left_portrait = { + character = scope:nomad_leader + animation = personality_honorable + } + override_background = { reference = wilderness_desert } + + trigger = { + is_available_at_peace_adult = yes + NOT = { has_character_flag = had_event_yearly_saharan_0021 } + any_held_title = { + title_tier = county + appropriate_nomad_adjacent_county_trigger = yes + } + } + + weight_multiplier = { + base = 1 + } + + immediate = { + add_character_flag = { + flag = had_event_yearly_saharan_0021 + days = 3650 + } + + #Determine which county to use. + ##Gather all potential counties, first up. + every_held_title = { + title_tier = county + limit = { + appropriate_nomad_adjacent_county_trigger = yes + } + add_to_list = saharan_nomad_counties + } + ##Then add any that already border a suitably-cultured county to a list. + every_in_list = { + list = saharan_nomad_counties + limit = { + any_neighboring_county = { + culture = { + has_cultural_tradition = tradition_saharan_nomads + } + } + } + add_to_list = prettified_saharan_nomad_county_spread + } + ##If that list contains anything, sort the county that could use the most buff from it. + if = { + limit = { + any_in_list = { + list = prettified_saharan_nomad_county_spread + count >= 1 + } + } + pick_nomad-appropriate_county_effect = { LIST = prettified_saharan_nomad_county_spread } + } + ##If that list was empty, sort the county that could use the most buff from the original list. + else = { + pick_nomad-appropriate_county_effect = { LIST = saharan_nomad_counties } + } + + #Flag which nomads we're dealing with. + ##If in eastern Chad, the nomads are Zaghawa. + if = { + limit = { + scope:target_county = { + any_this_title_or_de_jure_above = { + OR = { + this = title:d_kawar + this = title:d_tibesti + } + } + } + } + save_scope_value_as = { + name = nomad_type + value = flag:zaghawa + } + } + ##Otherwise, the nomads are Berbers. + else = { + save_scope_value_as = { + name = nomad_type + value = flag:butr + } + } + + #Create a suitable nomad to be the face of the event. + if = { + limit = { scope:nomad_type = flag:zaghawa } + create_character = { + location = scope:target_county.title_province + template = saharan_clan_leader_character + faith = scope:target_county.faith + culture = culture:zaghawa + save_scope_as = nomad_leader + } + } + ##This could technically be an ELSE, but having an ELSE_IF suppresses an error that would otherwise have to be fixed by making the script more fragile. + else_if = { + limit = { scope:nomad_type = flag:butr} + create_character = { + location = scope:target_county.title_province + template = saharan_clan_leader_character + faith = scope:target_county.faith + culture = culture:butr + save_scope_as = nomad_leader + } + } + } + + #I'll even let you govern it! + option = { + name = yearly_saharan.0021.a + trigger = { + #Just make sure you can actually give it away. + any_held_title = { + title_tier = county + count >= 3 + } + #And that the nomads will be suitably vassalised to you. + highest_held_title_tier >= tier_duchy + } + + #Give the leader the title. + create_title_and_vassal_change = { + type = granted + save_scope_as = change + add_claim_on_loss = no + } + scope:target_county = { + change_title_holder = { + holder = scope:nomad_leader + change = scope:change + } + } + resolve_title_and_vassal_change = scope:change + #And he likes you for it! + add_hook = { + type = loyalty_hook + target = scope:nomad_leader + } + scope:nomad_leader = { + add_opinion = { + target = root + modifier = loyal_servant + } + } + + #Put that hook on cooldown to stop immediate revokes. + hidden_effect = { + use_hook = scope:nomad_leader + } + + #Finally, the county gets a turbocharged nomad bonus & culture shift. + scope:target_county = { + add_county_modifier = { + modifier = enthusiastic_nomad_settlement_saharan_modifier + years = 30 + } + if = { + limit = { scope:nomad_type = flag:zaghawa } + set_county_culture = culture:zaghawa + } + else = { set_county_culture = culture:butr } + } + + stress_impact = { arrogant = minor_stress_impact_gain } + ai_chance = { + base = 100 + ai_value_modifier = { + ai_compassion = 0.25 + ai_energy = -0.25 + } + modifier = { #Weight down for stress. + add = -10 + has_trait = arrogant + } + } + } + + #Graciously accept! + option = { + name = yearly_saharan.0021.b + + #The county gets a nomad bonus & culture shift. + scope:target_county = { + add_county_modifier = { + modifier = nomad_settlement_saharan_modifier + years = 30 + } + if = { + limit = { scope:nomad_type = flag:zaghawa } + set_county_culture = culture:zaghawa + } + else = { set_county_culture = culture:butr } + } + + stress_impact = { arrogant = miniscule_stress_impact_gain } + ai_chance = { + #The AI should never take this option: if they're small enough not to get Option A, they shouldn't wipe themselves out, and if they're large enough to receive it, they should pick that instead. + base = 0 + } + } + + #Perhaps you would like to join me as a retainer instead? + option = { + name = yearly_saharan.0021.c + trigger = { short_term_gold >= minor_gold_value } + + #Pay the laddo. + pay_short_term_gold = { + target = scope:nomad_leader + gold = minor_gold_value + } + + #Move the guy to your court & setup a favourable relationship. + add_courtier = scope:nomad_leader + add_hook = { + type = favor_hook + target = scope:nomad_leader + } + reverse_add_opinion = { + target = scope:nomad_leader + modifier = grateful_opinion + opinion = 30 + } + hidden_effect = { set_relation_potential_friend = scope:nomad_leader } + + stress_impact = { shy = medium_stress_impact_gain } + ai_chance = { + base = 100 + ai_value_modifier = { + ai_rationality = 0.5 + ai_sociability = -0.25 + } + modifier = { #Weight down for stress. + add = -20 + has_trait = shy + } + } + } + + #Preposterous! Be gone! + option = { + name = yearly_saharan.0021.d + + #The nomads are unhappy with your response. + scope:target_county = { + change_county_control = massive_county_control_loss + add_county_modifier = { + modifier = upset_local_nomads_saharan_modifier + years = 10 + } + } + + #... Aaaaaand one in particular. + hidden_effect = { + scope:nomad_leader = { + set_relation_potential_rival = root + move_to_pool = yes + } + } + + ai_chance = { + base = 100 + ai_value_modifier = { + ai_rationality = -0.25 + ai_compassion = -0.25 + } + } + } +} + + + +################################################## +# Slave Raids against [Realm] Escalate +# by Ewan Cowhig Croft +# 0031-0032 +################################################## + +scripted_trigger able_to_raid_sahel_for_slaves_trigger = { + #Located in an appropriate region. + title_province = { geographical_region = custom_sahel_proper } +} + +scripted_trigger able_to_be_raided_from_sahel_for_slaves_trigger = { + #Target is located in an appropriate region & has suitable terrain. + title_province = { + OR = { + geographical_region = custom_sahel_proper + geographical_region = custom_sub_saharan_africa_immediate + } + NOR = { + terrain = desert + terrain = desert_mountains + terrain = mountains + } + } +} + +scripted_trigger npc_component_criteria_trigger = { + #Partner county isn't held by you (or a liege/vassal of yours), isn't at war, isn't a player, and has a marshal to duel. + holder = { + NOR = { + this = root + target_is_liege_or_above = root + target_is_vassal_or_below = root + is_at_war = yes + is_ai = no + any_martial_councillor = { count = 0 } + #^Technically, a martial is not required for yearly_saharan.0032, but it shouldn't filter out many candidates and it's more of a pain on everything to script around it than it is to just leave it in. + } + } +} + +scripted_trigger suitable_for_sahelian_slave_raids_trigger = { + #Target is located in an appropriate region & has suitable terrain. + able_to_be_raided_from_sahel_for_slaves_trigger = yes + + #Target isn't held by you (or a liege of yours), isn't at war, isn't a player, and has a marshal to duel. + npc_component_criteria_trigger = yes + + #And just make sure that they're not your vassal either. + holder = { + save_temporary_scope_as = potential_partner + root = { + any_vassal_or_below = { + this != scope:potential_partner + } + } + } + + #Target can take the hit. + county_control >= massive_county_control_loss +} + +# #Local slave raids against a neighbour (aggressor). +# by Ewan Cowhig Croft +yearly_saharan.0031 = { + type = character_event + title = yearly_saharan.0031.t + desc = yearly_saharan.0031.desc + theme = martial + left_portrait = { + character = scope:raided_character_marshal + animation = anger + } + right_portrait = { + character = scope:raided_county.holder + animation = shock + } + override_background = { reference = burning_building } + + trigger = { + is_available_at_peace_adult = yes + NOT = { has_character_flag = had_event_yearly_saharan_0031 } + + #Has a state faith that allows for this. + faith = { + NOT = { has_doctrine_parameter = pacifist_opinion_active } + } + + #Has at least one domain county in the Sahel. + any_held_title = { + title_tier = county + able_to_raid_sahel_for_slaves_trigger = yes + #And has an eligible target (both county and holder). + any_neighboring_county = { suitable_for_sahelian_slave_raids_trigger = yes } + } + } + + weight_multiplier = { + base = 1 + + #Utter bastards are more likely to get this event. + modifier = { + add = 0.5 + has_trait = callous + } + modifier = { + add = 1 + has_trait = sadistic + } + #As are people who might clamp down on it. + modifier = { + add = 1 + has_trait = compassionate + } + modifier = { + add = 1 + has_trait = just + } + } + + immediate = { + play_music_cue = "mx_cue_combat_2" + add_character_flag = { + flag = had_event_yearly_saharan_0031 + days = 1825 + } + #Grab a suitable Sahel domain. + random_held_title = { + title_tier = county + limit = { + able_to_raid_sahel_for_slaves_trigger = yes + #Ensure it has a suitable target that can be raided. + any_neighboring_county = { suitable_for_sahelian_slave_raids_trigger = yes } + } + #Save the raiding county for ease of reference. + save_scope_as = slave_raider_county + #Find the neighbouring county that qualifies them. + random_neighboring_county = { + limit = { suitable_for_sahelian_slave_raids_trigger = yes } + #And the raided county. + save_scope_as = raided_county + holder = { + #And nab the appropriate martial for dueling & loc. + random_martial_councillor = { save_scope_as = raided_character_marshal } + } + } + } + + #Grab the sub-realm name of the raided county, for loc. + scope:raided_county.holder.primary_title = { save_scope_as = affected_sub_realm } + } + + #Mmm, delicious money. + option = { + name = yearly_saharan.0031.a + + duel = { + skill = martial + target = scope:raided_character_marshal + 50 = { + compare_modifier = { + value = scope:duel_value + multiplier = 3.5 + min = -49 + } + desc = yearly_saharan.0031.a.tt_success + send_interface_toast = { + title = yearly_saharan.0031.a.tt_success + left_icon = scope:raided_character_marshal + scope:raided_county.holder = { + #You take some severe assets from them. + pay_treasury_or_gold = { + target = root + value = scope:raided_county.title_province.local_slave_gold_value + } + #You're a monster! + add_opinion = { + modifier = slaver_opinion + target = root + opinion = -50 + } + } + #Local society is disrupted. + scope:raided_county = { change_county_control = massive_county_control_loss } + } + } + 50 = { + compare_modifier = { + value = scope:duel_value + multiplier = -3.5 + min = -49 + } + desc = yearly_saharan.0031.a.tt_fail + send_interface_toast = { + title = yearly_saharan.0031.a.tt_fail + left_icon = scope:raided_character_marshal + #You lose assets in the raid. + pay_short_term_gold = { + target = scope:raided_county.holder + gold = root.slaver_reparations_value + } + #You're a wannabe-monster! + scope:raided_county.holder = { + add_opinion = { + modifier = attempted_slaver_opinion + target = root + opinion = -30 + } + } + } + } + } + + stress_impact = { + sadistic = medium_stress_impact_loss + generous = medium_stress_impact_gain + compassionate = major_stress_impact_gain + just = major_stress_impact_gain + } + ai_chance = { + base = 100 + ai_value_modifier = { + ai_greed = 0.25 + ai_compassion = -0.75 + } + modifier = { #Weight up for stress. + add = 20 + has_trait = sadistic + } + modifier = { #Weight down for stress. + add = -20 + has_trait = generous + } + modifier = { #Weight down for stress. + add = -30 + has_trait = compassionate + } + modifier = { #Weight down for stress. + add = -30 + has_trait = just + } + } + } + + #Halt this barbarism! + option = { + name = yearly_saharan.0031.b + + #Definitely the better thing to do. + scope:raided_county.holder = { + add_opinion = { + modifier = clamped_down_on_slavers_opinion + target = root + opinion = 30 + } + } + #The clamp down negatively affects your realm. + scope:slave_raider_county = { change_county_control = medium_county_control_loss } + + stress_impact = { + generous = minor_stress_impact_loss + compassionate = major_stress_impact_loss + just = major_stress_impact_loss + callous = minor_stress_impact_gain + greedy = medium_stress_impact_gain + sadistic = major_stress_impact_gain + } + ai_chance = { + base = 100 + ai_value_modifier = { + ai_compassion = 0.75 + ai_greed = -0.25 + } + modifier = { #Weight up for stress. + add = 10 + has_trait = generous + } + modifier = { #Weight up for stress. + add = 30 + has_trait = compassionate + } + modifier = { #Weight up for stress. + add = 30 + has_trait = just + } + modifier = { #Weight down for stress. + add = -10 + has_trait = callous + } + modifier = { #Weight down for stress. + add = -20 + has_trait = greedy + } + modifier = { #Weight down for stress. + add = -30 + has_trait = sadistic + } + } + } + + #This doesn't concern me. + option = { + name = yearly_saharan.0031.c + + #It very obviously does concern you, and they judge you for that. + scope:raided_county.holder = { + add_opinion = { + modifier = respect_opinion + target = root + opinion = -20 + } + } + #At least it's less dramatic without interference from you. + random_list = { + 60 = { + desc = yearly_saharan.0031.c.raided_hurt + scope:raided_county = { change_county_control = minor_county_control_loss } + #Reduce chance neatly with rival marshal skill. + modifier = { + add = -10 + scope:raided_character_marshal.martial >= average_skill_level + } + modifier = { + add = -10 + scope:raided_character_marshal.martial >= good_skill_level + } + modifier = { + add = -10 + scope:raided_character_marshal.martial >= excellent_skill_level + } + } + 40 = { + desc = yearly_saharan.0031.c.raiders_hurt + scope:slave_raider_county = { change_county_control = minor_county_control_loss } + #Increase chance neatly with rival marshal skill. + modifier = { + add = 10 + scope:raided_character_marshal.martial >= average_skill_level + } + modifier = { + add = 10 + scope:raided_character_marshal.martial >= good_skill_level + } + modifier = { + add = 10 + scope:raided_character_marshal.martial >= excellent_skill_level + } + } + } + + stress_impact = { + lazy = minor_stress_impact_loss + sadistic = minor_stress_impact_gain + generous = minor_stress_impact_gain + compassionate = minor_stress_impact_gain + just = minor_stress_impact_gain + } + ai_chance = { + base = 100 + ai_value_modifier = { + ai_compassion = -0.25 + ai_energy = -0.5 + ai_greed = -0.25 + } + modifier = { #Weight up for stress. + add = 10 + has_trait = lazy + } + modifier = { #Weight down for stress. + add = -10 + has_trait = sadistic + } + modifier = { #Weight down for stress. + add = -10 + has_trait = generous + } + modifier = { #Weight down for stress. + add = -10 + has_trait = compassionate + } + modifier = { #Weight down for stress. + add = -10 + has_trait = just + } + } + } +} + +# #Local slave raids from a neighbour (defender). +# by Ewan Cowhig Croft +yearly_saharan.0032 = { + type = character_event + title = yearly_saharan.0032.t + desc = yearly_saharan.0032.desc + theme = martial + left_portrait = { + character = root + animation = rage + } + override_background = { reference = burning_building } + + trigger = { + is_available_at_peace_adult = yes + NOT = { has_character_flag = had_event_yearly_saharan_0032 } + + #Has at least one domain county in either the Sahel or the immediate sub-Sahara. + any_held_title = { + title_tier = county + able_to_be_raided_from_sahel_for_slaves_trigger = yes + + #Has a neighbour who might raid for slaves. + any_neighboring_county = { + tier = tier_county + #Geographical requirements. + able_to_raid_sahel_for_slaves_trigger = yes + #Targeting requirements. + npc_component_criteria_trigger = yes + #Personality requirements. + holder = { + NOR = { + has_trait = just + has_trait = compassionate + has_trait = forgiving + has_trait = generous + } + } + } + } + } + + weight_multiplier = { + base = 1 + + #Utter bastards are more likely to get this event. + modifier = { + add = 0.5 + has_trait = callous + } + modifier = { + add = 1 + has_trait = sadistic + } + #As are people who might clamp down on it. + modifier = { + add = 1 + has_trait = compassionate + } + modifier = { + add = 1 + has_trait = just + } + } + + immediate = { + play_music_cue = "mx_cue_combat_2" + add_character_flag = { + flag = had_event_yearly_saharan_0032 + days = 1825 + } + + #Grab a suitable domain county in either the Sahel or the immediate sub-Sahara. + random_held_title = { + title_tier = county + limit = { + able_to_be_raided_from_sahel_for_slaves_trigger = yes + + #Ensuring that they have a neighbour who might raid for slaves. + any_neighboring_county = { + tier = tier_county + #Geographical requirements. + able_to_raid_sahel_for_slaves_trigger = yes + #Targeting requirements. + npc_component_criteria_trigger = yes + #Personality requirements. + holder = { + NOR = { + has_trait = just + has_trait = compassionate + has_trait = forgiving + has_trait = generous + } + } + } + } + #Save the raided county for ease of reference. + save_scope_as = raided_county + #Find the neighbouring county that qualifies them. + random_neighboring_county = { + limit = { + tier = tier_county + #Geographical requirements. + able_to_raid_sahel_for_slaves_trigger = yes + #Targeting requirements. + npc_component_criteria_trigger = yes + #Personality requirements. + holder = { + NOR = { + has_trait = just + has_trait = compassionate + has_trait = forgiving + has_trait = generous + } + } + } + #And save the raiders for ease of reference too. + save_scope_as = slave_raider_county + } + } + + #Grab the sub-realm name of the raiding county, for loc. + scope:slave_raider_county.holder.primary_title = { save_scope_as = hostile_sub_realm } + } + + #Not on my watch! + option = { + name = yearly_saharan.0032.a + + #You attempt to force back the slavers. + duel = { + skill = martial + target = scope:slave_raider_county.holder + 50 = { + compare_modifier = { + value = scope:duel_value + multiplier = 3.5 + min = -49 + } + desc = yearly_saharan.0032.a.tt_success + send_interface_toast = { + title = yearly_saharan.0032.a.tt_success + left_icon = scope:slave_raider_county.holder + scope:slave_raider_county.holder = { + #You take reparations. + pay_short_term_gold = { + target = scope:raided_county.holder + gold = root.slaver_reparations_value + } + #They're a sore loser. + add_opinion = { + modifier = savaged_my_slavers_opinion + target = root + opinion = -20 + } + } + + #Obviously, this makes you a bit of a local hero. + add_prestige = minor_prestige_gain + scope:raided_county = { + add_county_modifier = { + modifier = lord_defeated_slavers_modifier + years = 10 + } + } + } + } + 50 = { + compare_modifier = { + value = scope:duel_value + multiplier = -3.5 + min = -49 + } + desc = yearly_saharan.0032.a.tt_fail + send_interface_toast = { + title = yearly_saharan.0032.a.tt_fail + left_icon = scope:slave_raider_county.holder + #The opposing lord profits by the acquired slaves. + scope:slave_raider_county.holder = { add_gold = scope:raided_county.title_province.local_slave_gold_value } + #And it's rather ignominious. + add_prestige = minor_prestige_loss + #Plus the county suffers damage. + scope:raided_county = { change_county_control = massive_county_control_loss } + } + } + } + + stress_impact = { + vengeful = medium_stress_impact_loss + compassionate = major_stress_impact_loss + just = major_stress_impact_loss + lazy = minor_stress_impact_gain + callous = minor_stress_impact_gain + sadistic = medium_stress_impact_gain + } + ai_chance = { + base = 100 + ai_value_modifier = { + ai_compassion = 0.75 + ai_energy = -0.1 + } + modifier = { #Weight up for stress. + add = 20 + has_trait = vengeful + } + modifier = { #Weight up for stress. + add = 30 + has_trait = compassionate + } + modifier = { #Weight up for stress. + add = 30 + has_trait = just + } + modifier = { #Weight down for stress. + add = -10 + has_trait = lazy + } + modifier = { #Weight down for stress. + add = -10 + has_trait = callous + } + modifier = { #Weight down for stress. + add = -20 + has_trait = sadistic + } + } + } + + #Demand a cut of the proceeds. + option = { + name = yearly_saharan.0032.b + + #You get a bit of cash out of your complicitude. + add_gold = scope:raided_county.title_province.selfish_liege_slave_gold_value + + #Local society is disrupted, and you are not popular in the affected area. + scope:raided_county = { + change_county_control = massive_county_control_loss + add_county_modifier = { + modifier = lord_complicit_with_slavers_modifier + years = 10 + } + } + + stress_impact = { + callous = minor_stress_impact_loss + greedy = minor_stress_impact_loss + sadistic = major_stress_impact_loss + vengeful = minor_stress_impact_gain + compassionate = major_stress_impact_gain + just = major_stress_impact_gain + } + ai_chance = { + base = 100 + ai_value_modifier = { + ai_compassion = -0.5 + ai_vengefulness = -0.1 + } + modifier = { #Weight up for stress. + add = 10 + has_trait = callous + } + modifier = { #Weight up for stress. + add = 10 + has_trait = greedy + } + modifier = { #Weight up for stress. + add = 30 + has_trait = sadistic + } + modifier = { #Weight down for stress. + add = -10 + has_trait = vengeful + } + modifier = { #Weight down for stress. + add = -30 + has_trait = compassionate + } + modifier = { #Weight down for stress. + add = -30 + has_trait = just + } + } + } + + #Leave them to it. + option = { + name = yearly_saharan.0032.c + + #You take the most monstrous of things in stride. + add_character_modifier = { + modifier = utterly_unphased_modifier + years = 10 + } + + #And the county suffers damage. + scope:raided_county = { change_county_control = massive_county_control_loss } + + stress_impact = { + } + ai_chance = { + base = 100 + ai_value_modifier = { + ai_compassion = 0.5 + ai_vengefulness = -0.5 + } + modifier = { #Weight up for stress. + add = 10 + has_trait = lazy + } + modifier = { #Weight up for stress. + add = 20 + has_trait = fickle + } + modifier = { #Weight down for stress. + add = -10 + has_trait = vengeful + } + modifier = { #Weight down for stress. + add = -10 + has_trait = compassionate + } + modifier = { #Weight down for stress. + add = -20 + has_trait = just + } + } + } +}