From 0555f85c12bf947a9b025316371ac2ba4291c19a Mon Sep 17 00:00:00 2001 From: trashmasteruni Date: Sat, 10 Oct 2026 23:36:32 +0200 Subject: [PATCH] event fixes pt II --- events/artifacts/artifact_events.txt | 346 +- .../artifacts/historical_artifacts_events.txt | 134 +- events/court_events/01_ep3_court_events_3.txt | 125 +- events/court_events/court_events_general.txt | 4812 ++-- .../court_events/court_events_general_1.txt | 14 +- .../courtier_guest_management_events.txt | 1337 - .../death_events/death_management_events.txt | 6494 ----- .../decisions_events/bp3_decisions_events.txt | 42 - .../major_decisions_events.txt | 76 +- .../mpo_greatest_of_khans_events.txt | 33 +- events/dlc/ach/ach_coronation_events.txt | 427 +- events/dlc/ach/ach_maintenance_events.txt | 720 - events/dlc/ach/ach_yearly_events.txt | 2198 -- events/dlc/bp1/bp1_filippa_yearly_events.txt | 4763 ---- events/dlc/bp1/bp1_yearly_oltner.txt | 2305 -- .../bp2_adult_education_activity_events.txt | 321 +- .../bp2/bp2_character_interaction_events.txt | 514 - .../dlc/bp2/bp2_child_of_destiny_events.txt | 1891 -- events/dlc/bp2/bp2_decision_events.txt | 831 - events/dlc/bp2/bp2_hostage_system.txt | 2266 -- events/dlc/bp2/bp2_yearly_1_events.txt | 6953 ----- events/dlc/bp2/bp2_yearly_2.txt | 4472 --- events/dlc/bp2/bp2_yearly_3.txt | 538 - events/dlc/bp2/bp2_yearly_4.txt | 2069 -- events/dlc/bp2/bp2_yearly_5.txt | 4143 --- events/dlc/bp2/bp2_yearly_7.txt | 6050 ---- events/dlc/bp2/bp2_yearly_events_6.txt | 15018 ---------- events/dlc/bp2/bp2_yearly_extra.txt | 206 - .../story_cycle_pet_rock_events.txt | 1066 - events/dlc/bp3/bp3_court_position_events.txt | 210 - events/dlc/bp3/bp3_journey_events.txt | 269 +- events/dlc/bp3/bp3_mapmaking.txt | 2793 -- events/dlc/bp3/bp3_roaming_events.txt | 2828 -- events/dlc/bp3/bp3_survey_events.txt | 4487 --- events/dlc/ce1/epidemic_events.txt | 1014 +- events/dlc/ce1/epidemic_events_2.txt | 951 - events/dlc/ce1/legend_ending_events.txt | 134 - events/dlc/ce1/legend_events.txt | 880 - events/dlc/ce1/legend_spread_events_8.txt | 173 +- events/dlc/ce1/legend_spread_events_nick.txt | 8129 ------ .../dlc/ce1/legend_spread_events_veronica.txt | 3067 -- events/dlc/ce1/legitimacy_events.txt | 32 - events/dlc/ce1/physician_epidemic_events.txt | 1481 - .../ep1/ep1_character_interaction_events.txt | 719 - events/dlc/ep1/ep1_court_position_events.txt | 552 - events/dlc/ep1/ep1_decision_events.txt | 575 - events/dlc/ep1/ep1_flavor_events.txt | 6005 ---- .../dlc/ep1/ep1_fund_inspiration_events.txt | 658 +- .../ep1_fund_inspiration_events_oltner.txt | 483 - .../dlc/ep1/ep1_inspiration_system_events.txt | 146 - events/dlc/ep2/ep2_accolade_events.txt | 1197 - events/dlc/ep2/ep2_tournament_events.txt | 521 +- .../ep2_bloody_wedding_events.txt | 1857 -- .../ep2/wedding_events/ep2_wedding_events.txt | 23480 ---------------- .../ep2_wedding_events_ewan.txt | 6109 ---- 55 files changed, 4908 insertions(+), 134006 deletions(-) delete mode 100644 events/courtier_guest_management_events/courtier_guest_management_events.txt delete mode 100644 events/death_events/death_management_events.txt delete mode 100644 events/decisions_events/bp3_decisions_events.txt delete mode 100644 events/dlc/ach/ach_maintenance_events.txt delete mode 100644 events/dlc/ach/ach_yearly_events.txt delete mode 100644 events/dlc/bp1/bp1_filippa_yearly_events.txt delete mode 100644 events/dlc/bp1/bp1_yearly_oltner.txt delete mode 100644 events/dlc/bp2/bp2_character_interaction_events.txt delete mode 100644 events/dlc/bp2/bp2_child_of_destiny_events.txt delete mode 100644 events/dlc/bp2/bp2_decision_events.txt delete mode 100644 events/dlc/bp2/bp2_hostage_system.txt delete mode 100644 events/dlc/bp2/bp2_yearly_1_events.txt delete mode 100644 events/dlc/bp2/bp2_yearly_2.txt delete mode 100644 events/dlc/bp2/bp2_yearly_3.txt delete mode 100644 events/dlc/bp2/bp2_yearly_4.txt delete mode 100644 events/dlc/bp2/bp2_yearly_5.txt delete mode 100644 events/dlc/bp2/bp2_yearly_7.txt delete mode 100644 events/dlc/bp2/bp2_yearly_events_6.txt delete mode 100644 events/dlc/bp2/bp2_yearly_extra.txt delete mode 100644 events/dlc/bp2/story_cycles/story_cycle_pet_rock_events.txt delete mode 100644 events/dlc/bp3/bp3_court_position_events.txt delete mode 100644 events/dlc/bp3/bp3_mapmaking.txt delete mode 100644 events/dlc/bp3/bp3_roaming_events.txt delete mode 100644 events/dlc/bp3/bp3_survey_events.txt delete mode 100644 events/dlc/ce1/epidemic_events_2.txt delete mode 100644 events/dlc/ce1/legend_ending_events.txt delete mode 100644 events/dlc/ce1/legend_events.txt delete mode 100644 events/dlc/ce1/legend_spread_events_nick.txt delete mode 100644 events/dlc/ce1/legend_spread_events_veronica.txt delete mode 100644 events/dlc/ce1/legitimacy_events.txt delete mode 100644 events/dlc/ce1/physician_epidemic_events.txt delete mode 100644 events/dlc/ep1/ep1_character_interaction_events.txt delete mode 100644 events/dlc/ep1/ep1_court_position_events.txt delete mode 100644 events/dlc/ep1/ep1_decision_events.txt delete mode 100644 events/dlc/ep1/ep1_flavor_events.txt delete mode 100644 events/dlc/ep1/ep1_fund_inspiration_events_oltner.txt delete mode 100644 events/dlc/ep1/ep1_inspiration_system_events.txt delete mode 100644 events/dlc/ep2/ep2_accolade_events.txt delete mode 100644 events/dlc/ep2/wedding_events/ep2_bloody_wedding_events.txt delete mode 100644 events/dlc/ep2/wedding_events/ep2_wedding_events.txt delete mode 100644 events/dlc/ep2/wedding_events/ep2_wedding_events_ewan.txt diff --git a/events/artifacts/artifact_events.txt b/events/artifacts/artifact_events.txt index 4748f54b7..2b8ec4464 100644 --- a/events/artifacts/artifact_events.txt +++ b/events/artifacts/artifact_events.txt @@ -7,6 +7,7 @@ artifact.0011 = { hidden = yes trigger = { + exists = scope:old_owner NOT = { has_variable = suppress_artifact_notifications } } @@ -92,7 +93,8 @@ artifact.0101 = { hidden = yes trigger = { - has_variable = artefact_santiago_bells + exists = scope:old_owner + has_variable = artifact_santiago_bells } immediate = { @@ -105,7 +107,11 @@ artifact.0101 = { religion = religion:islam_religion # Non-Christian Islamic syncretics also have a vested interest in getting in on this. AND = { - faith = { has_doctrine = tenet_islamic_syncretism } + NOT = { OR = { religion = religion:eastern_orthodox_religion religion = religion:catholic_religion religion = religion:protestant_religion } } + rite = { rite_has_parameter = can_use_islamic_artifacts } + } + AND = { + has_personal_tenet_flag = can_use_islamic_artifacts NOT = { OR = { religion = religion:eastern_orthodox_religion religion = religion:catholic_religion religion = religion:protestant_religion } } } } @@ -113,7 +119,7 @@ artifact.0101 = { } # Reforge into an aquamanile, for the first time. if = { - limit = { var:artefact_santiago_bells = 0 } + limit = { var:artifact_santiago_bells = 0 } scope:owner = { save_scope_as = reforger } # We're using the miscellaneous category. if = { @@ -127,7 +133,7 @@ artifact.0101 = { description = fp2_santiago_aquamanile_desc } } - # We're into court artefacts. + # We're into court artifacts. else = { reforge_artifact = { modifier = former_bells_of_santiago_modifier @@ -139,13 +145,13 @@ artifact.0101 = { } } change_variable = { - name = artefact_santiago_bells + name = artifact_santiago_bells add = 1 } } # Reforge back into an aquamanile after them dastardly Christians de-jug'd it. else_if = { - limit = { var:artefact_santiago_bells >= 1 } + limit = { var:artifact_santiago_bells >= 1 } scope:owner = { save_scope_as = reforger } # We're using the miscellaneous category. if = { @@ -159,7 +165,7 @@ artifact.0101 = { description = fp2_santiago_aquamanile_melted_desc } } - # We're into court artefacts. + # We're into court artifacts. else = { reforge_artifact = { modifier = former_bells_of_santiago_modifier @@ -171,12 +177,12 @@ artifact.0101 = { } } change_variable = { - name = artefact_santiago_bells + name = artifact_santiago_bells add = 1 } # If we're high enough up the melting chain, start a tally. if = { - limit = { var:artefact_santiago_bells >= 5 } + limit = { var:artifact_santiago_bells >= 5 } set_artifact_description = fp2_santiago_aquamanile_melted_tally_desc } } @@ -190,7 +196,11 @@ artifact.0101 = { OR = { religion = religion:eastern_orthodox_religion religion = religion:catholic_religion religion = religion:protestant_religion } # Non-Islamic Christian syncretics also have a vested interest in getting in on this. AND = { - faith = { has_doctrine = tenet_christian_syncretism } + rite = { rite_has_parameter = christian_syncretic_actor } + NOT = { religion = religion:islam_religion } + } + AND = { + has_personal_tenet_flag = can_use_christian_artifacts NOT = { religion = religion:islam_religion } } } @@ -210,7 +220,7 @@ artifact.0101 = { description = fp2_santiago_bells_melted_desc } } - # We're into court artefacts. + # We're into court artifacts. else = { reforge_artifact = { modifier = bells_of_santiago_modifier @@ -222,12 +232,12 @@ artifact.0101 = { } } change_variable = { - name = artefact_santiago_bells + name = artifact_santiago_bells add = 1 } # If we're high enough up the melting chain, start a tally. if = { - limit = { var:artefact_santiago_bells >= 4 } + limit = { var:artifact_santiago_bells >= 4 } set_artifact_description = fp2_santiago_bells_melted_tally_desc } } @@ -622,9 +632,9 @@ artifact.1001 = { option = { name = artifact.1001.a - # Flag that this is free for DLC artefacts that could become courtly ones... + # Flag that this is free for DLC artifacts that could become courtly ones... if = { - limit = { exists = scope:this_artifact.var:dlc_potential_court_artefact } + limit = { exists = scope:this_artifact.var:dlc_potential_court_artifact } custom_tooltip = artifact.1001.a.tt.free } # ... or else costs a nominal fee. @@ -1019,7 +1029,7 @@ artifact.3000 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_gain calm = minor_stress_impact_gain trusting = minor_stress_impact_gain @@ -1931,13 +1941,14 @@ scripted_trigger artifact_4000_cursed_history_trigger = { } has_variable = ghost_cabinet } - NOR = { - has_variable = cursed_artifact_var - has_variable = blessed_artifact_var - has_variable = artifact_named_crown_var - has_variable = artifact_killer_var - has_variable = artifact_armor_var - has_variable = historical_unique_artifact + has_none_of_variables = { + name = cursed_artifact_var + name = blessed_artifact_var + name = sanctified_artifact_var + name = artifact_named_crown_var + name = artifact_killer_var + name = artifact_armor_var + name = historical_unique_artifact } } @@ -1946,13 +1957,14 @@ scripted_trigger artifact_4000_cursed_creepy_trigger = { ep1_artifact_durability_lower_equal_percent_trigger = { PERCENT = 0.49 } artifact_age >= 50 } - NOR = { - has_variable = cursed_artifact_var - has_variable = blessed_artifact_var - has_variable = artifact_named_crown_var - has_variable = artifact_killer_var - has_variable = artifact_armor_var - has_variable = historical_unique_artifact + has_none_of_variables = { + name = cursed_artifact_var + name = blessed_artifact_var + name = sanctified_artifact_var + name = artifact_named_crown_var + name = artifact_killer_var + name = artifact_armor_var + name = historical_unique_artifact } } @@ -2302,14 +2314,15 @@ artifact.4002 = { #you own a cursed artifact trigger = { any_character_artifact = { has_variable = cursed_artifact_var - NOR = { - has_variable = attempted_blessing_var - has_variable = cursed_artifact_accepted_var - has_variable = artifact_named_crown_var - has_variable = artifact_killer_var - has_variable = artifact_armor_var - has_variable = blessed_artifact_var - has_variable = historical_unique_artifact + has_none_of_variables = { + name = attempted_blessing_var + name = cursed_artifact_accepted_var + name = artifact_named_crown_var + name = artifact_killer_var + name = artifact_armor_var + name = blessed_artifact_var + name = sanctified_artifact_var + name = historical_unique_artifact } } } @@ -2326,14 +2339,15 @@ artifact.4002 = { #you own a cursed artifact random_character_artifact = { limit = { has_variable = cursed_artifact_var - NOR = { - has_variable = attempted_blessing_var - has_variable = cursed_artifact_accepted_var - has_variable = artifact_named_crown_var - has_variable = artifact_killer_var - has_variable = artifact_armor_var - has_variable = blessed_artifact_var - has_variable = historical_unique_artifact + has_none_of_variables = { + name = attempted_blessing_var + name = cursed_artifact_accepted_var + name = artifact_named_crown_var + name = artifact_killer_var + name = artifact_armor_var + name = blessed_artifact_var + name = sanctified_artifact_var + name = historical_unique_artifact } } save_scope_as = this_artifact @@ -2456,11 +2470,12 @@ scripted_trigger artifact_4010_valid_weapon_trigger = { var:artifact_battles_won_var >= 100 } } - NOR = { - has_variable = cursed_artifact_var - has_variable = blessed_artifact_var - has_variable = historical_unique_artifact - has_variable = artifact_duel_weapon_var + has_none_of_variables = { + name = cursed_artifact_var + name = blessed_artifact_var + name = sanctified_artifact_var + name = historical_unique_artifact + name = artifact_duel_weapon_var } } @@ -2535,11 +2550,12 @@ artifact.4010 = { limit = { artifact_slot_type = primary_armament has_variable = artifact_battles_won_var - NOR = { - has_variable = blessed_artifact_var - has_variable = historical_unique_artifact - has_variable = cursed_artifact_var - has_variable = artifact_duel_weapon_var + has_none_of_variables = { + name = blessed_artifact_var + name = sanctified_artifact_var + name = historical_unique_artifact + name = cursed_artifact_var + name = artifact_duel_weapon_var } trigger_if = { limit = { @@ -2681,10 +2697,11 @@ scripted_trigger artifact_4020_valid_armor_trigger = { var:artifact_battles_won_var >= 100 } } - NOR = { - has_variable = cursed_artifact_var - has_variable = blessed_artifact_var - has_variable = historical_unique_artifact + has_none_of_variables = { + name = cursed_artifact_var + name = blessed_artifact_var + name = sanctified_artifact_var + name = historical_unique_artifact } } @@ -2759,10 +2776,11 @@ artifact.4020 = { limit = { artifact_slot_type = armor has_variable = artifact_battles_won_var - NOR = { - has_variable = blessed_artifact_var - has_variable = historical_unique_artifact - has_variable = cursed_artifact_var + has_none_of_variables = { + name = blessed_artifact_var + name = sanctified_artifact_var + name = historical_unique_artifact + name = cursed_artifact_var } trigger_if = { limit = { @@ -2882,18 +2900,17 @@ artifact.4020 = { scripted_trigger artifact_4030_valid_empire_crown = { artifact_slot_type = helmet AND = { - root = { highest_held_title_tier = tier_empire } - previous_owner ?= { highest_held_title_tier = tier_empire } - exists = previous_owner_level_2 - previous_owner_level_2 = { highest_held_title_tier = tier_empire } - exists = previous_owner_level_3 - previous_owner_level_3 = { highest_held_title_tier = tier_empire } + root = { highest_held_title_tier >= tier_empire } + previous_owner ?= { highest_held_title_tier >= tier_empire } + previous_owner_level_2 ?= { highest_held_title_tier >= tier_empire } + previous_owner_level_3 ?= { highest_held_title_tier >= tier_empire } } - NOR = { - has_variable = artifact_named_crown_var - has_variable = cursed_artifact_var - has_variable = blessed_artifact_var - has_variable = historical_unique_artifact + has_none_of_variables = { + name = artifact_named_crown_var + name = cursed_artifact_var + name = blessed_artifact_var + name = sanctified_artifact_var + name = historical_unique_artifact } } @@ -2909,11 +2926,12 @@ scripted_trigger artifact_4030_valid_people_crown = { exists = previous_owner_level_3 previous_owner_level_3 = { has_primary_title = scope:crown_title } } - NOR = { - has_variable = artifact_named_crown_var - has_variable = cursed_artifact_var - has_variable = blessed_artifact_var - has_variable = historical_unique_artifact + has_none_of_variables = { + name = artifact_named_crown_var + name = cursed_artifact_var + name = blessed_artifact_var + name = sanctified_artifact_var + name = historical_unique_artifact } } @@ -2931,13 +2949,10 @@ artifact.4030 = { first_valid = { triggered_desc = { trigger = { - root = { highest_held_title_tier = tier_empire } - exists = scope:this_artifact.previous_owner - scope:this_artifact.previous_owner = { highest_held_title_tier = tier_empire } - exists = scope:this_artifact.previous_owner_level_2 - scope:this_artifact.previous_owner_level_2 = { highest_held_title_tier = tier_empire } - exists = scope:this_artifact.previous_owner_level_3 - scope:this_artifact.previous_owner_level_3 = { highest_held_title_tier = tier_empire } + root = { highest_held_title_tier >= tier_empire } + scope:this_artifact.previous_owner ?= { highest_held_title_tier >= tier_empire } + scope:this_artifact.previous_owner_level_2 ?= { highest_held_title_tier >= tier_empire } + scope:this_artifact.previous_owner_level_3 ?= { highest_held_title_tier >= tier_empire } } desc = artifact.4030.desc_emperor } @@ -3088,9 +3103,9 @@ artifact.4040 = { artifact_slot_type = armor artifact_slot_type = primary_armament } - NOR = { - has_variable = cursed_artifact_var - has_variable = artifact_improved_var + has_none_of_variables = { + name = cursed_artifact_var + name = artifact_improved_var } } OR = { @@ -3118,9 +3133,9 @@ artifact.4040 = { artifact_slot_type = armor artifact_slot_type = primary_armament } - NOR = { - has_variable = cursed_artifact_var - has_variable = artifact_improved_var + has_none_of_variables = { + name = cursed_artifact_var + name = artifact_improved_var } } save_scope_as = this_artifact @@ -3368,7 +3383,7 @@ artifact.4050 = { option = { name = artifact.4050.a - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss wrathful = major_stress_impact_loss irritable = massive_stress_impact_loss @@ -3387,12 +3402,13 @@ scripted_trigger artifact_4060_valid_artifact_trigger = { artifact_slot_type = armor artifact_slot_type = throne } - NOR = { - has_variable = cursed_artifact_var - has_variable = artifact_named_crown_var - has_variable = artifact_killer_var - has_variable = artifact_armor_var - has_variable = blessed_artifact_var + has_none_of_variables = { + name = cursed_artifact_var + name = artifact_named_crown_var + name = artifact_killer_var + name = artifact_armor_var + name = blessed_artifact_var + name = sanctified_artifact_var } } @@ -3488,7 +3504,7 @@ artifact.4060 = { set_artifact_description = artifact_4060_blessed_artifact_desc } remove_short_term_gold = medium_gold_value - stress_impact = { + stress_and_fulfillment_impact = { cynical = major_stress_impact_gain greedy = major_stress_impact_gain zealous = major_stress_impact_loss @@ -3498,7 +3514,7 @@ artifact.4060 = { #Option B: refuse option = { name = artifact.4060.b - stress_impact = { + stress_and_fulfillment_impact = { cynical = major_stress_impact_loss zealous = major_stress_impact_gain } @@ -3508,98 +3524,9 @@ artifact.4060 = { # Desecrated relic scripted_trigger artifact_4070_valid_relic_trigger = { - has_variable = relic - trigger_if = { - limit = { - var:relic = flag:christian - } - previous_owner ?= { - NOT = { OR = { faith.religion = religion:eastern_orthodox_religion faith.religion = religion:catholic_religion faith.religion = religion:protestant_religion } } - } - } - trigger_else_if = { - limit = { - var:relic = flag:islamic - } - previous_owner ?= { - NOT = { faith.religion = religion:islam_religion } - } - } - trigger_else_if = { - limit = { - var:relic = flag:buddhism - } - previous_owner ?= { - NOT = { faith.religion = religion:buddhism_religion } - } - } - trigger_else_if = { - limit = { - var:relic = flag:zoroastr - } - previous_owner ?= { - NOT = { faith.religion = religion:zoroastrianism_religion } - } - } - trigger_else_if = { - limit = { - var:relic = flag:jainism - } - previous_owner ?= { - NOT = { faith.religion = religion:jainism_religion } - } - } - trigger_else_if = { - limit = { - var:relic = flag:judaism - } - previous_owner ?= { - NOT = { faith.religion = religion:judaism_religion } - } - } - trigger_else_if = { - limit = { - var:relic = flag:germanic - } - previous_owner ?= { - NOT = { faith.religion = religion:folk_germanic_religion } - } - } - trigger_else_if = { - limit = { - var:relic = flag:slavic - } - previous_owner ?= { - NOT = { faith.religion = religion:slavic_religion } - } - } - trigger_else_if = { - limit = { - var:relic = flag:boog - } - previous_owner ?= { - NOT = { faith.religion = religion:west_african_roog_religion } - } - } - trigger_else_if = { - limit = { - var:relic = flag:hinduism - } - previous_owner ?= { - NOT = { faith.religion = religion:hinduism_religion } - } - } - trigger_else_if = { - limit = { - var:relic = flag:finnic_religion - } - previous_owner ?= { - NOT = { faith.religion = religion:finnic_religion } - } - } - trigger_else = { - always = no #Can't be a desecrated relic with no associated religion - } + exists = previous_owner + is_holy_relic_for = root.faith + NOT = { is_holy_relic_for = previous_owner.faith } } artifact.4070 = { @@ -3668,6 +3595,9 @@ artifact.4070 = { remove_variable = desecrated_artifact_var } add_piety = medium_piety_gain + stress_and_fulfillment_impact = { + zealous = medium_stress_impact_loss + } ai_chance = { base = 105 ai_value_modifier = { @@ -3684,6 +3614,9 @@ artifact.4070 = { option = { name = artifact.4070.b add_piety = medium_piety_loss + stress_and_fulfillment_impact = { + cynical = minor_stress_impact_loss + } ai_chance = { base = 150 ai_value_modifier = { @@ -3719,11 +3652,12 @@ scripted_trigger artifact_4080_valid_weapon_trigger = { var:artifact_duel_var >= 30 } } - NOR = { - has_variable = cursed_artifact_var - has_variable = blessed_artifact_var - has_variable = historical_unique_artifact - has_variable = artifact_killer_var + has_none_of_variables = { + name = cursed_artifact_var + name = blessed_artifact_var + name = sanctified_artifact_var + name = historical_unique_artifact + name = artifact_killer_var } } @@ -3916,7 +3850,7 @@ artifact.4090 = { #Embed a relic in pommel by Daniel Moore } any_character_artifact = { - exists = var:relic + is_holy_relic_for = artifact_owner.faith } OR = { employs_court_position = antiquarian_court_position @@ -3956,7 +3890,7 @@ artifact.4090 = { #Embed a relic in pommel by Daniel Moore limit = { artifact_slot_type = primary_armament NOT = { - has_variable = added_relic + is_holy_relic_for = artifact_owner.faith } } save_scope_as = this_artifact @@ -3964,7 +3898,7 @@ artifact.4090 = { #Embed a relic in pommel by Daniel Moore random_character_artifact = { limit = { - exists = var:relic + is_holy_relic_for = artifact_owner.faith } save_scope_as = that_artifact } @@ -3976,6 +3910,10 @@ artifact.4090 = { #Embed a relic in pommel by Daniel Moore set_artifact_name = relic_weapon_name set_artifact_description = artifact_weapon_relic_desc set_variable = added_relic + set_variable = { + name = added_relic_faith + value = root.faith + } hidden_effect = { copy_artifact_modifiers = scope:that_artifact set_artifact_rarity = illustrious @@ -3995,7 +3933,7 @@ artifact.4090 = { #Embed a relic in pommel by Daniel Moore } } - stress_impact = { + stress_and_fulfillment_impact = { zealous = minor_stress_gain lazy = minor_stress_gain } @@ -4011,7 +3949,7 @@ artifact.4090 = { #Embed a relic in pommel by Daniel Moore option = { name = artifact.4090.b add_piety = 100 - stress_impact = { + stress_and_fulfillment_impact = { zealous = minor_stress_loss lazy = minor_stress_loss } diff --git a/events/artifacts/historical_artifacts_events.txt b/events/artifacts/historical_artifacts_events.txt index a8b461301..f01d294a3 100644 --- a/events/artifacts/historical_artifacts_events.txt +++ b/events/artifacts/historical_artifacts_events.txt @@ -13,32 +13,36 @@ historical_artifacts.0023 = { # All starting courts will have a dynasty banner every_character_with_royal_court = { save_scope_as = banner_ruler - # House Banner - set_variable = banner_from_house - set_variable = startup_banner - create_artifact_wall_banner_effect = { - OWNER = scope:banner_ruler - CREATOR = scope:banner_ruler - TARGET = scope:banner_ruler.house - } - # Dynasty Banner - If = { + if = { limit = { - OR = { - this = dynasty.dynast # Dynasty Head - any_parent = { # Parent landless Dynasty Head - employer = prev - dynasty = prev.dynasty - this = dynasty.dynast - } - } + exists = house } - set_variable = banner_from_dynasty + set_variable = banner_from_house set_variable = startup_banner create_artifact_wall_banner_effect = { OWNER = scope:banner_ruler CREATOR = scope:banner_ruler - TARGET = scope:banner_ruler.dynasty + TARGET = scope:banner_ruler.house + } + # Dynasty Banner + if = { + limit = { + OR = { + this = dynasty.dynast # Dynasty Head + any_parent = { # Parent landless Dynasty Head + employer = prev + dynasty = prev.dynasty + this = dynasty.dynast + } + } + } + set_variable = banner_from_dynasty + set_variable = startup_banner + create_artifact_wall_banner_effect = { + OWNER = scope:banner_ruler + CREATOR = scope:banner_ruler + TARGET = scope:banner_ruler.dynasty + } } } } @@ -138,10 +142,10 @@ historical_artifacts.0023 = { } } } -# # Historical Artifacts -# ## We do these per-artefact rather than per-title so that they can be easily reshuffled if desired. -# ## Crowns -# ### Iron Crown of Lombardy + # Historical Artifacts + ## We do these per-artifact rather than per-title so that they can be easily reshuffled if desired. + ## Crowns + ### Iron Crown of Lombardy if = { limit = { has_dlc_feature = royal_court @@ -1399,3 +1403,85 @@ historical_artifacts.0100 = { } } } + +# Seeds starting holy relics for holy sites +historical_artifacts.0050 = { + scope = none + hidden = yes + + immediate = { + every_religion_global = { + every_faith = { + save_scope_as = relic_faith + # Eminent holy sites get the higher-rarity dispatcher. + every_eminent_holy_site = { + save_scope_as = relic_site + holy_site_county = { + if = { + limit = { + exists = holder + holder.faith = scope:relic_faith + } + holder = { save_scope_as = relic_owner } + create_starting_holy_relic_eminent_effect = yes + } + } + } + # Regular holy sites get the lower-rarity dispatcher. + every_holy_site = { + is_eminent = no + save_scope_as = relic_site + holy_site_county = { + if = { + limit = { + exists = holder + holder.faith = scope:relic_faith + } + holder = { save_scope_as = relic_owner } + create_starting_holy_relic_regular_effect = yes + } + } + } + } + } + # Pass 2: Tolerated eminent-site relics. + every_religion_global = { + every_faith = { + save_scope_as = relic_faith + if = { + limit = { + num_county_followers >= 3 # only check for faiths that are somewhat alive + } + every_eminent_holy_site = { + limit = { + holy_site_has_artifact = no + } + save_scope_as = relic_site + + holy_site_county = { + if = { + limit = { + exists = holder + holder.faith = { + faith_hostility_level = { + target = scope:relic_faith + value <= faith_astray_level + } + } + } + # A temporary creator lets the relic inherit their faith + ordered_ruler = { + faith_filter = scope:relic_faith + order_by = highest_held_title_tier + max = 1 + save_scope_as = relic_owner + create_starting_holy_relic_eminent_effect = yes + } + } + } + } + } + } + } + } +} diff --git a/events/court_events/01_ep3_court_events_3.txt b/events/court_events/01_ep3_court_events_3.txt index f006bb036..a9891d9ba 100644 --- a/events/court_events/01_ep3_court_events_3.txt +++ b/events/court_events/01_ep3_court_events_3.txt @@ -78,7 +78,7 @@ court_events.3000 = { modifier = court_fashion_foreign_modifier years = 20 } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_gain shy = minor_stress_impact_gain } @@ -98,7 +98,7 @@ court_events.3000 = { modifier = court_fashion_culture_modifier years = 20 } - stress_impact = { + stress_and_fulfillment_impact = { gregarious = minor_stress_impact_gain humble = medium_stress_impact_gain } @@ -118,7 +118,7 @@ court_events.3000 = { modifier = court_fashion_sell_modifier years = 20 } - stress_impact = { + stress_and_fulfillment_impact = { generous = medium_stress_impact_gain } ai_chance = { @@ -227,7 +227,7 @@ court_events.3010 = { flag = court_cheaper_food years = 15 } - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain paranoid = medium_stress_impact_gain humble = medium_stress_impact_gain @@ -252,7 +252,7 @@ court_events.3010 = { modifier = healthy_and_modest_diet_modifier years = 15 } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = medium_stress_impact_gain gluttonous = major_stress_impact_gain comfort_eater = major_stress_impact_gain @@ -284,7 +284,7 @@ court_events.3010 = { modifier = cant_poison_soup_modifier years = 15 } - stress_impact = { + stress_and_fulfillment_impact = { gregarious = medium_stress_impact_gain trusting = major_stress_impact_gain gluttonous = major_stress_impact_gain @@ -343,7 +343,7 @@ court_events.3020 = { group = event_group animation = thinking } - scope:physician ?= { + scope:physician = { group = event_group animation = physician } @@ -478,7 +478,7 @@ court_events.3020 = { years = 15 } } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_gain humble = minor_stress_impact_gain greedy = medium_stress_impact_gain @@ -520,7 +520,7 @@ court_events.3020 = { years = 15 } } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_gain humble = minor_stress_impact_gain greedy = medium_stress_impact_gain @@ -554,7 +554,7 @@ court_events.3020 = { years = 15 } } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_gain humble = minor_stress_impact_gain } @@ -576,7 +576,7 @@ court_events.3020 = { years = 15 } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss paranoid = minor_stress_impact_gain } @@ -625,17 +625,18 @@ court_events.3030 = { inspiration = { #Since they're away adventuring NOT = { has_inspiration_type = adventure_inspiration } } - NOR = { - has_character_flag = fund_weapon_inspiration_event_cooldown - has_character_flag = fund_armor_inspiration_event_cooldown - has_character_flag = fund_book_inspiration_event_cooldown - has_character_flag = fund_weaver_inspiration_event_cooldown - has_character_flag = fund_adventure_inspiration_event_cooldown - has_character_flag = fund_artisan_inspiration_event_cooldown - has_character_flag = fund_smith_inspiration_event_cooldown - has_character_flag = fund_alchemy_inspiration_event_cooldown - has_character_flag = fund_research_inspiration_event_cooldown - has_character_flag = fund_bow_inspiration_event_cooldown + has_none_of_variables = { + name = fund_weapon_inspiration_event_cooldown + name = fund_armor_inspiration_event_cooldown + name = fund_book_inspiration_event_cooldown + name = fund_weaver_inspiration_event_cooldown + name = fund_adventure_inspiration_event_cooldown + name = fund_artisan_inspiration_event_cooldown + name = fund_smith_inspiration_event_cooldown + name = fund_alchemy_inspiration_event_cooldown + name = fund_research_inspiration_event_cooldown + name = fund_bow_inspiration_event_cooldown + name = fund_religious_artifact_inspiration_event_cooldown } } amenity_level = { @@ -758,7 +759,7 @@ court_events.3030 = { change_artifact_quality_effect = { AMOUNT = 4 } inspiration = { change_inspiration_progress = 2 } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss greedy = minor_stress_impact_gain } @@ -777,7 +778,7 @@ court_events.3030 = { change_artifact_quality_effect = { AMOUNT = 2 } inspiration = { change_inspiration_progress = 1 } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss } ai_chance = { @@ -905,7 +906,7 @@ court_events.3040 = { years = 15 } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_gain callous = medium_stress_impact_gain } @@ -926,7 +927,7 @@ court_events.3040 = { set_amenity_level = { type = court_servants value = 3 } custom_tooltip = cheaper_servants_for_15_years add_character_flag = court_cheaper_servants - stress_impact = { + stress_and_fulfillment_impact = { content = minor_stress_impact_gain paranoid = medium_stress_impact_gain humble = medium_stress_impact_gain @@ -951,7 +952,7 @@ court_events.3040 = { # Option C: no thanks option = { name = court_events.3040.c - stress_impact = { + stress_and_fulfillment_impact = { compassionate = medium_stress_impact_gain } ai_chance = { @@ -1016,7 +1017,7 @@ court_events.3050 = { flag = food_improves_opinion years = 15 } - stress_impact = { + stress_and_fulfillment_impact = { gregarious = minor_stress_impact_gain generous = minor_stress_impact_gain } @@ -1036,7 +1037,7 @@ court_events.3050 = { flag = food_improves_feasts years = 15 } - stress_impact = { + stress_and_fulfillment_impact = { shy = minor_stress_impact_gain greedy = minor_stress_impact_gain } @@ -1111,7 +1112,7 @@ court_events.3060 = { modifier = spies_behind_every_corner_modifier years = 15 } - stress_impact = { + stress_and_fulfillment_impact = { honest = medium_stress_impact_gain paranoid = medium_stress_impact_gain trusting = medium_stress_impact_gain @@ -1132,7 +1133,7 @@ court_events.3060 = { modifier = servants_aplenty_cleaning_modifier years = 15 } - stress_impact = { + stress_and_fulfillment_impact = { deceitful = medium_stress_impact_gain humble = medium_stress_impact_gain } @@ -1189,7 +1190,7 @@ court_events.3070 = { flag = court_cheaper_fashion years = 15 } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = major_stress_impact_gain greedy = medium_stress_impact_gain humble = medium_stress_impact_gain @@ -1212,7 +1213,7 @@ court_events.3070 = { modifier = humble_appearance_modifier years = 15 } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = medium_stress_impact_gain eccentric = minor_stress_impact_loss humble = minor_stress_impact_loss @@ -1244,7 +1245,7 @@ court_events.3070 = { flag = court_free_fashion years = 15 } - stress_impact = { + stress_and_fulfillment_impact = { humble = major_stress_impact_gain } ai_chance = { @@ -1481,7 +1482,7 @@ court_events.3080 = { modifier = ghost_writer_at_court_modifier years = 20 } - stress_impact = { + stress_and_fulfillment_impact = { humble = medium_stress_impact_gain deceitful = medium_stress_impact_gain honest = minor_stress_impact_gain @@ -1506,7 +1507,7 @@ court_events.3080 = { modifier = poet_for_diplo_schemes_modifier years = 20 } - stress_impact = { + stress_and_fulfillment_impact = { honest = medium_stress_impact_gain content = medium_stress_impact_gain loyal = medium_stress_impact_gain @@ -1535,7 +1536,7 @@ court_events.3080 = { modifier = poet_for_seduction_schemes_modifier years = 20 } - stress_impact = { + stress_and_fulfillment_impact = { chaste = major_stress_impact_gain shy = medium_stress_impact_gain } @@ -1564,7 +1565,7 @@ court_events.3080 = { option = { name = court_events.3080.d scope:poet = { select_and_move_to_pool_effect = yes } - stress_impact = { + stress_and_fulfillment_impact = { lifestyle_poet = massive_stress_impact_gain generous = medium_stress_impact_gain gregarious = medium_stress_impact_gain @@ -1765,7 +1766,7 @@ court_events.3090 = { opinion = 25 } } - stress_impact = { + stress_and_fulfillment_impact = { lazy = medium_stress_impact_gain callous = medium_stress_impact_gain } @@ -1811,7 +1812,7 @@ court_events.3090 = { opinion = 10 } } - stress_impact = { + stress_and_fulfillment_impact = { impatient = medium_stress_impact_gain greedy = minor_stress_impact_gain } @@ -1837,7 +1838,7 @@ court_events.3090 = { opinion = -20 } } - stress_impact = { + stress_and_fulfillment_impact = { brave = minor_stress_impact_gain } ai_chance = { @@ -2072,7 +2073,7 @@ court_events.3100 = { add = 10 } modifier = { - has_trait = scholar + has_trait = erudite add = 10 } modifier = { @@ -2148,7 +2149,7 @@ court_events.3100 = { type = learn_language add_scheme_modifier = { type = pressured_to_learn_court_language_modifier } } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = medium_stress_impact_gain lazy = medium_stress_impact_gain } @@ -2204,7 +2205,7 @@ court_events.3100 = { } learn_court_language_of = root } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_gain lazy = minor_stress_impact_gain } @@ -2217,7 +2218,7 @@ court_events.3100 = { option = { name = court_events.3100.c add_prestige = medium_prestige_gain - stress_impact = { + stress_and_fulfillment_impact = { humble = minor_stress_impact_gain diligent = minor_stress_impact_gain } @@ -2425,7 +2426,7 @@ court_events.3110 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = major_stress_impact_gain humble = medium_stress_impact_gain lazy = minor_stress_impact_gain @@ -2476,7 +2477,7 @@ court_events.3110 = { } if = { limit = { - government_allows = administrative + government_has_flag = government_has_influence } scope:vassal = { change_influence = medium_influence_loss @@ -2504,7 +2505,7 @@ court_events.3110 = { left_icon = scope:vassal if = { limit = { - government_allows = administrative + government_has_flag = government_has_influence } scope:vassal = { change_influence = medium_influence_gain @@ -2520,7 +2521,7 @@ court_events.3110 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { generous = medium_stress_impact_gain architect = medium_stress_impact_gain compassionate = minor_stress_impact_gain @@ -2543,7 +2544,7 @@ court_events.3110 = { option = { name = court_events.3110.c add_prestige = miniscule_prestige_loss - stress_impact = { + stress_and_fulfillment_impact = { ambitious = major_stress_impact_gain arrogant = medium_stress_impact_gain architect = medium_stress_impact_gain @@ -2573,10 +2574,10 @@ court_events.3110 = { # Admin court version: a vassal's construction program intheir estate is challenging you scripted_trigger court_3115_valid_vassal_trigger = { - government_allows = administrative + government_has_mechanic = administrative this = house.house_head domicile ?= { - is_domicile_type = estate + domicile_is_estate_trigger = yes num_domicile_buildings > root.domicile.num_domicile_buildings external_domicile_building_slots >= root.domicile.external_domicile_building_slots free_external_domicile_building_slots < root.domicile.free_external_domicile_building_slots @@ -2618,9 +2619,9 @@ court_events.3115 = { trigger = { has_royal_court = yes - government_allows = administrative + government_has_mechanic = administrative this = house.house_head - domicile ?= { is_domicile_type = estate } + domicile ?= { domicile_is_estate_trigger = yes } OR = { has_focus = stewardship_wealth_focus has_focus = stewardship_domain_focus @@ -2749,7 +2750,7 @@ court_events.3115 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = major_stress_impact_gain humble = medium_stress_impact_gain lazy = minor_stress_impact_gain @@ -2822,7 +2823,7 @@ court_events.3115 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { generous = medium_stress_impact_gain architect = medium_stress_impact_gain compassionate = minor_stress_impact_gain @@ -2841,7 +2842,7 @@ court_events.3115 = { option = { name = court_events.3110.c change_influence = miniscule_influence_loss - stress_impact = { + stress_and_fulfillment_impact = { ambitious = major_stress_impact_gain arrogant = medium_stress_impact_gain architect = medium_stress_impact_gain @@ -3023,7 +3024,7 @@ court_events.3120 = { immediate = { court_event_character_flag_effect = yes - random_courtier = { + random_courtier_or_guest = { limit = { is_available = yes OR = { @@ -3324,7 +3325,7 @@ court_events.3120 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain humble = minor_stress_impact_gain } @@ -3358,7 +3359,7 @@ court_events.3120 = { change_artifact_quality_effect = { AMOUNT = 5 } inspiration = { change_inspiration_progress = 2 } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_gain ambitious = medium_stress_impact_gain gregarious = medium_stress_impact_gain @@ -3421,7 +3422,7 @@ court_events.3120 = { custom_tooltip = gains_artisan_inspiration_tt } } - stress_impact = { + stress_and_fulfillment_impact = { shy = minor_stress_impact_gain callous = minor_stress_impact_gain } @@ -3446,7 +3447,7 @@ court_events.3120 = { option = { name = court_events.3120.d add_prestige = miniscule_prestige_loss - stress_impact = { + stress_and_fulfillment_impact = { ambitious = medium_stress_impact_gain arrogant = medium_stress_impact_gain generous = medium_stress_impact_gain diff --git a/events/court_events/court_events_general.txt b/events/court_events/court_events_general.txt index 5ee5f38c0..100aa4807 100644 --- a/events/court_events/court_events_general.txt +++ b/events/court_events/court_events_general.txt @@ -244,7 +244,7 @@ court.0107 = { years = 20 } } - stress_impact = { + stress_and_fulfillment_impact = { vengeful = minor_stress_impact_gain sadistic = minor_stress_impact_gain } @@ -353,11 +353,11 @@ court.0107 = { custom_tooltip = artifact.0012.tooltip } } - stress_impact = { + stress_and_fulfillment_impact = { intellect_good_1 = minor_stress_impact_loss intellect_good_2 = minor_stress_impact_loss intellect_good_3 = minor_stress_impact_loss - scholar = minor_stress_impact_loss + erudite = minor_stress_impact_loss greedy = minor_stress_impact_gain intellect_bad_1 = minor_stress_impact_gain intellect_bad_2 = medium_stress_impact_gain @@ -385,7 +385,7 @@ court.0107 = { CHARACTER = scope:unruly_child OPINION = default_friend_opinion } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_loss diligent = minor_stress_impact_gain stubborn = medium_stress_impact_gain @@ -434,6 +434,7 @@ scripted_effect spawn_foreign_prince_effect = { gender = female culture = scope:foreign_realm_target.culture faith = scope:foreign_realm_target.faith + rite = scope:foreign_realm_target.rite save_scope_as = foreign_prince } } @@ -444,6 +445,7 @@ scripted_effect spawn_foreign_prince_effect = { gender = male culture = scope:foreign_realm_target.culture faith = scope:foreign_realm_target.faith + rite = scope:foreign_realm_target.rite save_scope_as = foreign_prince } } @@ -460,7 +462,10 @@ scripted_effect spawn_foreign_prince_effect = { 3 = { add_gold = 750 } 3 = { add_gold = 1000 } } - set_relation_lover = { reason = lover_magnificently_seduced target = scope:available_child involved_character = root } + if = { + limit = { can_set_relation_lover_trigger = { CHARACTER = scope:available_child } } + set_relation_lover = { reason = lover_magnificently_seduced target = scope:available_child involved_character = root } + } give_nickname = nick_fabulous_she_he visit_court_of = root } @@ -505,6 +510,7 @@ court.0108 = { has_sexuality = bisexual } has_court_event_flag = no + NOT = { has_trait_with_flag = can_not_marry } } any_kingdom = { holder ?= { @@ -524,7 +530,7 @@ court.0108 = { root.faith = { OR = { religion_tag = islam_religion - has_doctrine_parameter = islamic_syncretic_actor_opinion_active + has_doctrine_parameter = islamic_syncretic_actor } } } @@ -580,6 +586,7 @@ court.0108 = { has_sexuality = heterosexual has_sexuality = bisexual } + NOT = { has_trait_with_flag = can_not_marry } } save_scope_as = available_child court_event_character_flag_effect = yes @@ -637,7 +644,7 @@ court.0108 = { scope:available_child = { marry_matrilineal = scope:foreign_prince } } change_current_court_grandeur = minor_court_grandeur_gain - stress_impact = { + stress_and_fulfillment_impact = { paranoid = major_stress_impact_gain cynical = minor_stress_impact_gain compassionate = minor_stress_impact_loss @@ -680,7 +687,7 @@ court.0108 = { TARGET = scope:foreign_prince IMPRISONER = root } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_gain trusting = minor_stress_impact_gain sadistic = minor_stress_impact_loss @@ -764,7 +771,6 @@ court.0109 = { save_temporary_scope_as = executioner_temp } any_courtier = { - exists = yes is_available_adult = yes learning >= 10 has_court_event_flag = no @@ -781,7 +787,7 @@ court.0109 = { base = 1 modifier = { add = 0.5 - court_position:executioner_court_position = { has_trait = scholar } + court_position:executioner_court_position = { has_trait = erudite } } modifier = { add = 0.5 @@ -854,8 +860,7 @@ court.0109 = { } if = { limit = { - cp:councillor_court_chaplain = { - exists = yes + cp:councillor_court_chaplain ?= { learning >= 10 is_available_ai_adult = yes NOR = { @@ -943,7 +948,7 @@ court.0109 = { name = court.0109.c trigger = { OR = { - has_trait = scholar + has_trait = erudite has_trait = education_learning has_lifestyle = learning_lifestyle } @@ -975,7 +980,7 @@ court.0109 = { else = { add_learning_lifestyle_xp = minor_lifestyle_xp } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = medium_stress_impact_gain lazy = medium_stress_impact_gain impatient = medium_stress_impact_gain @@ -1024,7 +1029,7 @@ court.0109 = { # 0111 # ##################################### -# Executioner wants to turn the skull of your rival into an artefact +# Executioner wants to turn the skull of your rival into an artifact scripted_trigger enticingly_skulled_prisoner = { is_ai = yes is_adult = yes @@ -1208,7 +1213,7 @@ court.0111 = { killer = scope:executioner } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = medium_stress_impact_gain just = major_stress_impact_gain forgiving = major_stress_impact_gain @@ -1239,7 +1244,7 @@ court.0111 = { modifier = relieved_opinion opinion = 15 } - stress_impact = { + stress_and_fulfillment_impact = { vengeful = minor_stress_impact_gain wrathful = medium_stress_impact_gain forgiving = minor_stress_impact_loss @@ -1322,7 +1327,7 @@ court.0112 = { valid_lady_in_waiting_like_character_trigger = yes } any_pool_character = { - province = root.capital_province + province = root.capital_province is_available_ai_adult = yes NOT = { exists = scope:inspiration } } @@ -1345,7 +1350,7 @@ court.0112 = { } immediate = { - random_courtier = { + random_courtier = { limit = { valid_lady_in_waiting_like_character_trigger = yes has_court_position = lady_in_waiting_court_position @@ -1353,49 +1358,49 @@ court.0112 = { alternative_limit = { valid_lady_in_waiting_like_character_trigger = yes } - save_scope_as = guilty_courtier + save_scope_as = guilty_courtier court_event_character_flag_effect = yes - } - hidden_effect = { - random_pool_character = { + } + hidden_effect = { + random_pool_character = { limit = { is_available_ai_adult = yes - NOT = { exists = scope:inspiration } - } - province = root.capital_province - save_scope_as = corpse - } - unknown_murder_effect = { - VICTIM = scope:corpse - MURDERER = scope:guilty_courtier - REASON = death_murder - } - if = { - limit = { - any_character_artifact = { - OR = { - has_variable = cabinet - has_variable = big_chest + NOT = { exists = scope:inspiration } + } + province = root.capital_province + save_scope_as = corpse + } + unknown_murder_effect = { + VICTIM = scope:corpse + MURDERER = scope:guilty_courtier + REASON = death_murder + } + if = { + limit = { + any_character_artifact = { + has_variable = { + name = cabinet + name = big_chest } - NOT = { has_variable = ghost_cabinet } - } - } - random_character_artifact = { - limit = { - OR = { - has_variable = cabinet - has_variable = big_chest + NOT = { has_variable = ghost_cabinet } + } + } + random_character_artifact = { + limit = { + has_variable = { + name = cabinet + name = big_chest } - NOT = { has_variable = ghost_cabinet } - } - set_variable = { - name = ghost_cabinet - years = 50 - } - } - } - } - } + NOT = { has_variable = ghost_cabinet } + } + set_variable = { + name = ghost_cabinet + years = 50 + } + } + } + } + } # Option A: I'll forget I saw this, for the good of fashion option = { @@ -1436,7 +1441,7 @@ court.0112 = { modifier = grateful_opinion opinion = 50 } - stress_impact = { + stress_and_fulfillment_impact = { zealous = medium_stress_impact_gain vengeful = minor_stress_impact_gain wrathful = minor_stress_impact_gain @@ -1473,7 +1478,7 @@ court.0112 = { expose_secret = root } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = major_stress_impact_gain vengeful = minor_stress_impact_gain wrathful = medium_stress_impact_gain @@ -1651,6 +1656,7 @@ court.2201 = { # Entitled to more, scope:eldest_heir? How about *nothing*! option = { name = court.2201.a + trigger = { culture = { NOT = { has_cultural_parameter = cannot_disherit } } } # Disinherit scope:eldest_heir for free. scope:eldest_heir = { @@ -1718,7 +1724,7 @@ court.2201 = { } } - stress_impact = { + stress_and_fulfillment_impact = { vengeful = miniscule_stress_impact_loss arbitrary = miniscule_stress_impact_loss irritable = minor_stress_impact_loss @@ -1737,6 +1743,7 @@ court.2201 = { # Sad to say, scope:younger_heir, GetSheHe makes a good point. option = { name = court.2201.b + trigger = { culture = { NOT = { has_cultural_parameter = cannot_disherit } } } # Disinherit scope:younger_heir for free. scope:younger_heir = { @@ -1804,7 +1811,7 @@ court.2201 = { } } - stress_impact = { + stress_and_fulfillment_impact = { vengeful = miniscule_stress_impact_loss arbitrary = miniscule_stress_impact_loss irritable = minor_stress_impact_loss @@ -1840,7 +1847,7 @@ court.2201 = { # And some diplomacy lifestyle XP for your wisdom. add_diplomacy_lifestyle_xp = medium_lifestyle_xp - stress_impact = { + stress_and_fulfillment_impact = { trusting = miniscule_stress_impact_loss lazy = miniscule_stress_impact_loss arbitrary = medium_stress_impact_gain @@ -2005,10 +2012,10 @@ court.2401 = { # But lose a little prestige. add_prestige = minor_prestige_loss - stress_impact = { + stress_and_fulfillment_impact = { humble = miniscule_stress_impact_loss fickle = miniscule_stress_impact_loss - arrogant = medium_stress_impact_gain + temperate = minor_stress_impact_gain stubborn = medium_stress_impact_gain } ai_chance = { @@ -2036,9 +2043,9 @@ court.2401 = { #And loss a little CGV. change_current_court_grandeur = minor_court_grandeur_loss #But gain tiny legitimacy - add_legitimacy = miniscule_legitimacy_gain + add_legitimacy_effect = { LEGITIMACY = miniscule_legitimacy_gain } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = miniscule_stress_impact_loss stubborn = miniscule_stress_impact_loss humble = medium_stress_impact_gain @@ -2060,14 +2067,12 @@ court.2401 = { # Gain a little consolation prestige. add_prestige = miniscule_prestige_gain - stress_impact = { + stress_and_fulfillment_impact = { lazy = miniscule_stress_impact_loss shy = minor_stress_impact_loss gregarious = minor_stress_impact_gain + ambitious = minor_stress_impact_gain arrogant = medium_stress_impact_gain - stubborn = medium_stress_impact_gain - humble = medium_stress_impact_gain - fickle = medium_stress_impact_gain } ai_chance = { base = 100 @@ -2120,7 +2125,7 @@ court.2401 = { # has_trait = sadistic # } # } -# stress_impact = { +# stress_and_fulfillment_impact = { # arrogant = medium_stress_impact_gain # wrathful = medium_stress_impact_gain # impatient = medium_stress_impact_gain @@ -2146,7 +2151,7 @@ court.2401 = { # has_trait = sadistic # } # } -# stress_impact = { +# stress_and_fulfillment_impact = { # arrogant = major_stress_impact_gain # wrathful = major_stress_impact_gain # impatient = major_stress_impact_gain @@ -2251,7 +2256,7 @@ court.3011 = { CHARACTER = scope:inspired_writer OPINION = 20 } - stress_impact = { + stress_and_fulfillment_impact = { callous = medium_stress_impact_gain arrogant = medium_stress_impact_gain sadistic = medium_stress_impact_gain @@ -2274,7 +2279,7 @@ court.3011 = { modifier = cruelty_opinion opinion = -20 } - stress_impact = { + stress_and_fulfillment_impact = { gregarious = medium_stress_impact_gain compassionate = medium_stress_impact_gain } @@ -2504,7 +2509,7 @@ court.3031 = { option = { name = court.3031.d add_prestige = miniscule_prestige_gain - stress_impact = { + stress_and_fulfillment_impact = { ambitious = minor_stress_impact_gain gregarious = medium_stress_impact_gain } @@ -2609,6 +2614,7 @@ court.3040 = { location = root.location culture = scope:homesick_parent.culture faith = scope:homesick_parent.faith + rite = scope:homesick_parent.rite save_scope_as = jester } } @@ -2809,7 +2815,7 @@ court.3040 = { modifier = listened_opinion } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = major_stress_impact_gain humble = medium_stress_impact_gain temperate = minor_stress_impact_gain @@ -2828,13 +2834,13 @@ court.3040 = { name = court.3040.b trigger = { scope:homesick_parent = { - OR = { - has_character_flag = antiquarian - has_character_flag = wet_nurse - has_character_flag = swans - has_character_flag = gardener - has_character_flag = liw - has_character_flag = tutor + has_variable = { + name = antiquarian + name = wet_nurse + name = swans + name = gardener + name = liw + name = tutor } } } @@ -2880,7 +2886,7 @@ court.3040 = { modifier = listened_opinion } } - stress_impact = { + stress_and_fulfillment_impact = { lazy = medium_stress_impact_gain content = medium_stress_impact_gain } @@ -2907,7 +2913,7 @@ court.3040 = { } add_courtier = scope:jester court_position_grant_effect = { POS = court_jester CANDIDATE = scope:jester EMPLOYER = root } - stress_impact = { + stress_and_fulfillment_impact = { gregarious = minor_stress_impact_loss shy = medium_stress_impact_gain } @@ -2932,7 +2938,7 @@ court.3040 = { } } add_prestige = miniscule_prestige_gain - stress_impact = { + stress_and_fulfillment_impact = { compassionate = medium_stress_impact_gain } ai_chance = { @@ -3278,13 +3284,15 @@ court.4750 = { } save_scope_as = poet } - if = { - limit = { - scope:poet = { - NOT = { has_trait = lifestyle_poet } + hidden_effect = { + scope:poet = { + if = { + limit = { + NOT = { has_trait = lifestyle_poet } + } + add_trait = lifestyle_poet } } - scope:poet = { add_trait = lifestyle_poet } } } else = { @@ -3423,7 +3431,7 @@ court.4750 = { option = { name = court.4750.h add_character_flag = rejected_poet - stress_impact = { + stress_and_fulfillment_impact = { lifestyle_poet = major_stress_impact_gain } ai_chance = { @@ -3628,6 +3636,10 @@ court.4751 = { if = { limit = { can_set_relation_potential_lover_trigger = { CHARACTER = scope:poet } + might_cheat_on_every_partner_trigger = yes + scope:poet = { + might_cheat_on_every_partner_trigger = yes + } } set_relation_potential_lover = scope:poet } @@ -3639,7 +3651,6 @@ court.4751 = { type = book visuals = indian_book modifier = artifact_monthly_piety_2_modifier - save_scope_as = pope_joan_book save_scope_as = artifact } } @@ -3650,7 +3661,6 @@ court.4751 = { type = book visuals = book modifier = artifact_monthly_piety_2_modifier - save_scope_as = pope_joan_book save_scope_as = artifact } } @@ -3687,7 +3697,6 @@ court.4751 = { type = book visuals = indian_book modifier = artifact_monthly_piety_2_modifier - save_scope_as = pope_joan_book save_scope_as = artifact } } @@ -3698,7 +3707,6 @@ court.4751 = { type = book visuals = book modifier = artifact_monthly_piety_2_modifier - save_scope_as = pope_joan_book save_scope_as = artifact } } @@ -3755,7 +3763,6 @@ court.4751 = { type = book visuals = indian_book modifier = artifact_attraction_opinion_3_modifier - save_scope_as = lady_godiva_book save_scope_as = artifact } } @@ -3766,10 +3773,12 @@ court.4751 = { type = book visuals = book modifier = artifact_attraction_opinion_3_modifier - save_scope_as = lady_godiva_book save_scope_as = artifact } } + hidden_effect_new_object = { + scope:artifact = { set_variable = lady_godiva_book } + } if = { limit = { can_appoint_char_to_court_position = { @@ -3802,7 +3811,6 @@ court.4751 = { type = book visuals = book modifier = artifact_monthly_diplomacy_lifestyle_xp_1_modifier - save_scope_as = nasreddin_book save_scope_as = artifact } if = { @@ -3813,7 +3821,6 @@ court.4751 = { type = book visuals = indian_book modifier = artifact_monthly_diplomacy_lifestyle_xp_1_modifier - save_scope_as = nasreddin_book save_scope_as = artifact } } @@ -3824,7 +3831,6 @@ court.4751 = { type = book visuals = book modifier = artifact_monthly_diplomacy_lifestyle_xp_1_modifier - save_scope_as = nasreddin_book save_scope_as = artifact } } @@ -3866,7 +3872,6 @@ court.4751 = { type = book visuals = indian_book modifier = artifact_monthly_diplomacy_lifestyle_xp_1_modifier - save_scope_as = valmiki_book save_scope_as = artifact } } @@ -3877,7 +3882,6 @@ court.4751 = { type = book visuals = book modifier = artifact_monthly_diplomacy_lifestyle_xp_1_modifier - save_scope_as = valmiki_book save_scope_as = artifact } } @@ -3896,7 +3900,6 @@ court.4751 = { type = book visuals = indian_book modifier = artifact_monthly_diplomacy_lifestyle_xp_1_modifier - save_scope_as = caligula_book save_scope_as = artifact } } @@ -3907,7 +3910,6 @@ court.4751 = { type = book visuals = book modifier = artifact_monthly_diplomacy_lifestyle_xp_1_modifier - save_scope_as = caligula_book save_scope_as = artifact } } @@ -3922,7 +3924,6 @@ court.4751 = { type = book visuals = indian_book modifier = artifact_monthly_diplomacy_lifestyle_xp_1_modifier - save_scope_as = ruler_hero_book save_scope_as = artifact } } @@ -3933,7 +3934,6 @@ court.4751 = { type = book visuals = book modifier = artifact_monthly_diplomacy_lifestyle_xp_1_modifier - save_scope_as = ruler_hero_book save_scope_as = artifact } } @@ -3954,7 +3954,6 @@ court.4751 = { type = book visuals = indian_book modifier = artifact_monthly_martial_lifestyle_xp_1_modifier - save_scope_as = sinbad_hero_book save_scope_as = artifact } } @@ -3965,7 +3964,6 @@ court.4751 = { type = book visuals = book modifier = artifact_monthly_martial_lifestyle_xp_1_modifier - save_scope_as = sinbad_hero_book save_scope_as = artifact } } @@ -4355,12 +4353,16 @@ court.5060 = { } } - option = { #Give minor title + option = { # employ them as bodyguard trigger = { - OR = { - can_appoint_char_to_court_position = { - CHAR = scope:knight - COURT_POS = bodyguard_court_position + can_appoint_char_to_court_position = { + CHAR = scope:knight + COURT_POS = bodyguard_court_position + } + # prevent more than 4 options + NAND = { + scope:knight = { + is_acclaimed = yes } can_appoint_char_to_court_position = { CHAR = scope:knight @@ -4372,77 +4374,69 @@ court.5060 = { } } } - # employ them as champion or bodyguard - name = { - trigger = { - can_appoint_char_to_court_position = { - CHAR = scope:knight - COURT_POS = akolouthos_court_position - } - } - text = court.5060.d.akolouthos - } - name = { - trigger = { - can_appoint_char_to_court_position = { - CHAR = scope:knight - COURT_POS = champion_court_position - } - } - text = court.5060.d.champion - } - name = { - trigger = { - NOT = { - can_appoint_char_to_court_position = { - CHAR = scope:knight - COURT_POS = bodyguard_court_position - } - } - } - text = court.5060.d.bodyguard - } - - if = { - limit = { - can_appoint_char_to_court_position = { - CHAR = scope:knight - COURT_POS = akolouthos_court_position - } - } - employ_character_as_position_in_current_scope_court_effect = { - CHARACTER = scope:knight - POSITION = akolouthos - } - } - else_if = { - limit = { - can_appoint_char_to_court_position = { - CHAR = scope:knight - COURT_POS = champion_court_position - } - } - employ_character_as_position_in_current_scope_court_effect = { - CHARACTER = scope:knight - POSITION = champion - } - } - else_if = { - limit = { - can_appoint_char_to_court_position = { - CHAR = scope:knight - COURT_POS = bodyguard_court_position - } - } - employ_character_as_position_in_current_scope_court_effect = { - CHARACTER = scope:knight - POSITION = bodyguard - } + name = court.5060.d.bodyguard + employ_character_as_position_in_current_scope_court_effect = { + CHARACTER = scope:knight + POSITION = bodyguard } scope:knight = { accolade_minor_glory_gain_with_checks_effect = yes } - stress_impact = { + stress_and_fulfillment_impact = { + paranoid = medium_stress_impact_loss + } + ai_chance = { + base = 100 + modifier = { + has_trait = paranoid + add = 50 + } + } + } + + option = { # employ them as champion + trigger = { + can_appoint_char_to_court_position = { + CHAR = scope:knight + COURT_POS = champion_court_position + } + } + name = court.5060.d.champion + employ_character_as_position_in_current_scope_court_effect = { + CHARACTER = scope:knight + POSITION = champion + } + scope:knight = { + accolade_minor_glory_gain_with_checks_effect = yes + } + stress_and_fulfillment_impact = { + paranoid = medium_stress_impact_loss + } + ai_chance = { + base = 100 + modifier = { + has_trait = paranoid + add = 50 + } + } + } + + option = { # employ them as akolouthos + trigger = { + can_appoint_char_to_court_position = { + CHAR = scope:knight + COURT_POS = akolouthos_court_position + } + } + name = court.5060.d.akolouthos + employ_character_as_position_in_current_scope_court_effect = { + CHARACTER = scope:knight + POSITION = akolouthos + } + scope:knight = { + accolade_minor_glory_gain_with_checks_effect = yes + } + stress_and_fulfillment_impact = { paranoid = medium_stress_impact_loss } ai_chance = { @@ -4816,7 +4810,7 @@ court.5075 = { change_current_court_grandeur = medium_court_grandeur_gain if = { limit = { - government_allows = administrative + government_has_flag = government_has_influence } change_influence = minor_influence_gain } @@ -4830,7 +4824,7 @@ court.5075 = { opinion = 15 } } - stress_impact = { + stress_and_fulfillment_impact = { brave = minor_stress_impact_gain arrogant = medium_stress_impact_gain greedy = major_stress_impact_gain @@ -4896,7 +4890,7 @@ court.5075 = { opinion = 30 } } - stress_impact = { + stress_and_fulfillment_impact = { craven = major_stress_impact_gain paranoid = medium_stress_impact_gain generous = minor_stress_impact_gain @@ -4916,7 +4910,7 @@ court.5075 = { opinion = -20 } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_loss } ai_chance = { @@ -5133,7 +5127,7 @@ court.6000 = { option = { name = court.6000.d dynasty = { add_dynasty_prestige = minor_dynasty_prestige_loss } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss } ai_chance = { @@ -5350,7 +5344,7 @@ court.6010 = { NOR = { faith = root.faith faith = root.capital_county.faith - faith = { has_doctrine = doctrine_pluralism_pluralistic } + rite = { rite_has_doctrine = doctrine_pluralism_pluralistic } } } } @@ -5382,6 +5376,7 @@ court.6010 = { location = root.location template = preacher_template faith = scope:target_county.faith + rite = scope:target_county.rite culture = scope:target_county.culture save_scope_as = preacher } @@ -5447,7 +5442,7 @@ court.6010 = { opinion = -20 } } - stress_impact = { + stress_and_fulfillment_impact = { cynical = medium_stress_impact_gain compassionate = medium_stress_impact_gain gregarious = medium_stress_impact_gain @@ -5488,7 +5483,7 @@ court.6010 = { opinion = 20 } } - stress_impact = { + stress_and_fulfillment_impact = { zealous = major_stress_impact_gain patient = medium_stress_impact_gain wrathful = medium_stress_impact_gain @@ -5527,7 +5522,7 @@ court.6011 = { } if = { limit = { - government_allows = administrative + government_has_flag = government_has_influence } change_influence = medium_influence_gain } @@ -5545,7 +5540,7 @@ court.6011 = { opinion = 20 } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain arrogant = medium_stress_impact_gain zealous = medium_stress_impact_gain @@ -5582,7 +5577,7 @@ court.6011 = { opinion = -20 } } - stress_impact = { + stress_and_fulfillment_impact = { humble = medium_stress_impact_gain compassionate = medium_stress_impact_gain cynical = medium_stress_impact_gain @@ -5797,10 +5792,10 @@ court.6020 = { } } has_trait = cynical - faith = { + rite = { OR = { - trait_is_sin = possessed_1 - trait_is_sin = possessed_genetic + trait_is_sin_rite = possessed_1 + trait_is_sin_rite = possessed_genetic } } } @@ -5859,7 +5854,7 @@ court.6020 = { option = { name = court.6020.f add_prestige = minor_prestige_loss - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss } ai_chance = { @@ -5904,7 +5899,7 @@ scripted_trigger court_6050_valid_courtier_trigger = { is_councillor_of = root } NOT = { - faith = { trait_is_virtue = lustful } + rite = { trait_is_virtue_rite = lustful } } might_cheat_on_every_partner_trigger = yes } @@ -5993,7 +5988,7 @@ court.6050 = { } is_adult = yes NOT = { - faith = { trait_is_virtue = lustful } + rite = { trait_is_virtue_rite = lustful } } any_courtier = { court_6050_valid_courtier_trigger = yes } } @@ -6049,10 +6044,10 @@ court.6050 = { } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = medium_stress_impact_gain patient = medium_stress_impact_gain - scholar = major_stress_impact_gain + erudite = major_stress_impact_gain cynical = major_stress_impact_gain } ai_chance = { @@ -6066,7 +6061,7 @@ court.6050 = { add = -25 } modifier = { - has_trait = scholar + has_trait = erudite add = -50 } modifier = { @@ -6095,7 +6090,7 @@ court.6050 = { years = 20 } - stress_impact = { + stress_and_fulfillment_impact = { zealous = major_stress_impact_gain } ai_chance = { @@ -6121,7 +6116,7 @@ court.6050 = { opinion = -20 } } - stress_impact = { + stress_and_fulfillment_impact = { chaste = major_stress_impact_gain zealous = major_stress_impact_gain celibate = massive_stress_impact_gain @@ -6146,7 +6141,7 @@ court.6050 = { option = { name = court.6050.f add_piety = minor_piety_gain - stress_impact = { + stress_and_fulfillment_impact = { zealous = medium_stress_impact_gain chaste = medium_stress_impact_gain fickle = medium_stress_impact_loss @@ -6310,7 +6305,8 @@ court.6060 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { + temperate = medium_stress_impact_loss cynical = medium_stress_impact_gain gluttonous = major_stress_impact_gain lifestyle_reveler = major_stress_impact_gain @@ -6371,7 +6367,7 @@ court.6060 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { zealous = medium_stress_impact_gain gluttonous = medium_stress_impact_gain lifestyle_reveler = medium_stress_impact_gain @@ -6436,12 +6432,12 @@ court.6060 = { } if = { limit = { - NOT = { has_relation_friend = scope:courtier_drunkard } + NOT = { has_relation_friend = scope:courtier_drunkard } } progress_towards_friend_effect = { REASON = friend_took_side_in_dispute - CHARACTER = scope:courtier_drunkard - OPINION = 0 + CHARACTER = scope:courtier_drunkard + OPINION = 0 } } scope:court_chaplain = { @@ -6458,8 +6454,9 @@ court.6060 = { opinion = -30 } } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss + gluttonous = medium_stress_impact_loss zealous = medium_stress_impact_gain temperate = major_stress_impact_gain lifestyle_physician = major_stress_impact_gain @@ -6551,6 +6548,7 @@ court.6070 = { trigger = { has_court_event_flag = no + pam_is_clergy_ruler_trigger = no OR = { learning < low_skill_rating has_trait = intellect_bad @@ -6621,7 +6619,7 @@ court.6070 = { } modifier = { factor = 3 - scope:tutor_6070 = { has_trait = scholar } + scope:tutor_6070 = { has_trait = erudite } } modifier = { factor = 2 @@ -6761,7 +6759,7 @@ court.6070 = { } } change_current_court_grandeur = medium_court_grandeur_loss - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss diligent = medium_stress_impact_gain ambitious = major_stress_impact_gain @@ -6878,7 +6876,7 @@ court.6071 = { modifier = grateful_opinion opinion = 20 } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss greedy = minor_stress_impact_gain } @@ -7150,14 +7148,14 @@ court.6080 = { change_current_court_grandeur = medium_court_grandeur_gain if = { limit = { - government_allows = administrative + government_has_flag = government_has_influence } change_influence = medium_influence_gain } else = { add_prestige = medium_prestige_gain } - stress_impact = { + stress_and_fulfillment_impact = { content = medium_stress_impact_gain humble = major_stress_impact_gain greedy = massive_stress_impact_gain @@ -7220,7 +7218,7 @@ court.6080 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { honest = medium_stress_impact_gain generous = major_stress_impact_gain improvident = massive_stress_impact_gain @@ -7239,7 +7237,7 @@ court.6080 = { option = { name = court.6080.d change_current_court_grandeur = miniscule_court_grandeur_gain - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_loss generous = medium_stress_impact_gain ambitious = medium_stress_impact_gain @@ -7514,7 +7512,7 @@ court.6090 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { lazy = medium_stress_impact_gain arrogant = medium_stress_impact_gain } @@ -7575,7 +7573,7 @@ court.6090 = { opinion = -30 } } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = medium_stress_impact_gain diligent = major_stress_impact_gain } @@ -7721,7 +7719,7 @@ court.7300 = { opinion = 10 } } - stress_impact = { + stress_and_fulfillment_impact = { gluttonous = medium_stress_impact_loss greedy = major_stress_impact_gain generous = medium_stress_impact_loss @@ -7747,7 +7745,7 @@ court.7300 = { opinion = -15 } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = medium_stress_impact_gain stubborn = medium_stress_impact_loss callous = medium_stress_impact_loss @@ -7871,7 +7869,7 @@ court.7600 = { opinion = -30 } } - stress_impact = { + stress_and_fulfillment_impact = { lifestyle_hunter = major_stress_impact_gain brave = medium_stress_impact_gain ambitious = minor_stress_impact_gain @@ -7918,10 +7916,10 @@ court.7600 = { add_trait = lifestyle_hunter } } - stress_impact = { + stress_and_fulfillment_impact = { lifestyle_hunter = medium_stress_impact_loss craven = medium_stress_impact_gain - scholar = minor_stress_impact_gain + erudite = minor_stress_impact_gain theologian = minor_stress_impact_gain diligent = minor_stress_impact_gain paranoid = minor_stress_impact_gain @@ -7959,9 +7957,7 @@ scripted_trigger pigeon_assistance_scheme_trigger = { OR = { scheme_type = fabricate_hook scheme_type = abduct - scheme_type = sway scheme_type = murder - scheme_type = convert_to_witchcraft } } @@ -8029,7 +8025,7 @@ court.7700 = { modifier = profiting_from_pigeon_thievery years = 10 } - stress_impact = { + stress_and_fulfillment_impact = { honest = massive_stress_impact_gain just = major_stress_impact_gain compassionate = medium_stress_impact_gain @@ -8050,7 +8046,7 @@ court.7700 = { option = { name = court.7700.d add_prestige = minor_prestige_gain - stress_impact = { + stress_and_fulfillment_impact = { deceitful = major_stress_impact_gain vengeful = major_stress_impact_gain fickle = medium_stress_impact_gain @@ -8155,7 +8151,7 @@ scripted_effect court_8001_skill_effect = { desc = court.8001.a.failure } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain wrathful = minor_stress_impact_gain callous = minor_stress_impact_gain @@ -8444,13 +8440,13 @@ court.8001 = { modifier = annoyed_opinion opinion = -20 } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain lazy = minor_stress_impact_gain arrogant = minor_stress_impact_gain } } - stress_impact = { + stress_and_fulfillment_impact = { just = minor_stress_impact_loss diligent = minor_stress_impact_loss } @@ -8536,89 +8532,89 @@ scripted_trigger court_8010_underequipped_trigger = { } court.8010 = { - type = court_event - title = court.8010.t - desc = { - desc = court.8010.desc.intro - first_valid = { - triggered_desc = { - trigger = { - scope:underequipped = { - OR = { - has_court_position = bodyguard_court_position - has_court_position = akolouthos_court_position - } - } - } - desc = court.8010.desc.bodyguard - } - triggered_desc = { - trigger = { - scope:underequipped = { has_court_position = champion_court_position } - } - desc = court.8010.desc.champion - } - desc = court.8010.desc.knight - } - first_valid = { - triggered_desc = { - trigger = { - scope:underequipped = { - OR = { - has_trait = brave - has_trait = wrathful - has_trait = arrogant - has_trait = impatient - has_trait = ambitious - } - } - } - desc = court.8010.desc.bold - } - desc = court.8010.desc.meek - } - desc = court.8010.desc.body - random_valid = { - triggered_desc = { - trigger = { - scope:underequipped = { - OR = { - has_court_position = bodyguard_court_position - has_court_position = akolouthos_court_position - is_knight_of = root - } - } - } - desc = court.8010.desc.bodyguard_end - } - triggered_desc = { - trigger = { - scope:underequipped = { has_court_position = champion_court_position } - } - desc = court.8010.desc.champion_end - } - } - } - theme = court - cooldown = { years = 10 } - court_scene = { - button_position_character = scope:underequipped - roles = { - scope:underequipped = { - group = event_group - animation = sadness - } - root = { - group = event_group - animation = idle - } - } - } + type = court_event + title = court.8010.t + desc = { + desc = court.8010.desc.intro + first_valid = { + triggered_desc = { + trigger = { + scope:underequipped = { + OR = { + has_court_position = bodyguard_court_position + has_court_position = akolouthos_court_position + } + } + } + desc = court.8010.desc.bodyguard + } + triggered_desc = { + trigger = { + scope:underequipped = { has_court_position = champion_court_position } + } + desc = court.8010.desc.champion + } + desc = court.8010.desc.knight + } + first_valid = { + triggered_desc = { + trigger = { + scope:underequipped = { + OR = { + has_trait = brave + has_trait = wrathful + has_trait = arrogant + has_trait = impatient + has_trait = ambitious + } + } + } + desc = court.8010.desc.bold + } + desc = court.8010.desc.meek + } + desc = court.8010.desc.body + random_valid = { + triggered_desc = { + trigger = { + scope:underequipped = { + OR = { + has_court_position = bodyguard_court_position + has_court_position = akolouthos_court_position + is_knight_of = root + } + } + } + desc = court.8010.desc.bodyguard_end + } + triggered_desc = { + trigger = { + scope:underequipped = { has_court_position = champion_court_position } + } + desc = court.8010.desc.champion_end + } + } + } + theme = court + cooldown = { years = 10 } + court_scene = { + button_position_character = scope:underequipped + roles = { + scope:underequipped = { + group = event_group + animation = sadness + } + root = { + group = event_group + animation = idle + } + } + } - trigger = { - has_court_event_flag = no - OR = { - any_court_position_holder = { + trigger = { + has_court_event_flag = no + OR = { + any_court_position_holder = { type = bodyguard_court_position court_8010_underequipped_trigger = yes has_court_event_flag = no @@ -8642,28 +8638,28 @@ court.8010 = { is_landed = no location = root.location } - } - } + } + } - weight_multiplier = { + weight_multiplier = { base = 1 # Court weightings. ep1_weight_up_for_court_type_modifier = { COURT_TYPE = court_warlike } } - immediate = { - court_event_character_flag_effect = yes - hidden_effect = { - random_list = { - 4 = { - trigger = { - any_court_position_holder = { + immediate = { + court_event_character_flag_effect = yes + hidden_effect = { + random_list = { + 4 = { + trigger = { + any_court_position_holder = { type = bodyguard_court_position court_8010_underequipped_trigger = yes location = root.location } - } - random_court_position_holder = { + } + random_court_position_holder = { type = bodyguard_court_position limit = { court_8010_underequipped_trigger = yes @@ -8675,12 +8671,12 @@ court.8010 = { } 4 = { trigger = { - any_court_position_holder = { + any_court_position_holder = { type = champion_court_position court_8010_underequipped_trigger = yes location = root.location } - } + } random_court_position_holder = { type = champion_court_position limit = { @@ -8690,15 +8686,15 @@ court.8010 = { save_scope_as = underequipped court_event_character_flag_effect = yes } - } - 8 = { + } + 8 = { trigger = { - any_court_position_holder = { + any_court_position_holder = { type = akolouthos_court_position court_8010_underequipped_trigger = yes location = root.location } - } + } random_court_position_holder = { type = akolouthos_court_position limit = { @@ -8708,15 +8704,15 @@ court.8010 = { save_scope_as = underequipped court_event_character_flag_effect = yes } - } - 1 = { + } + 1 = { trigger = { - any_knight = { + any_knight = { court_8010_underequipped_trigger = yes location = root.location is_landed = no } - } + } random_knight = { limit = { court_8010_underequipped_trigger = yes @@ -8726,42 +8722,42 @@ court.8010 = { save_scope_as = underequipped court_event_character_flag_effect = yes } - } - } - } - random_dummy_gender_effect = yes #To feed to the weapon effect since we don't have a creator + } + } + } + random_dummy_gender_effect = yes #To feed to the weapon effect since we don't have a creator scope:underequipped = { set_signature_weapon_effect = yes } #To create an artifact of the "signature weapon" type if = { limit = { - any_character_artifact = { - count > 1 + any_character_artifact = { + count > 1 artifact_can_be_gift_to_trigger = { RECIPIENT = scope:underequipped } - artifact_slot_type = primary_armament - } - } - ordered_character_artifact = { - limit = { - is_equipped = no - artifact_slot_type = primary_armament + artifact_slot_type = primary_armament + } + } + ordered_character_artifact = { + limit = { + is_equipped = no + artifact_slot_type = primary_armament artifact_can_be_gift_to_trigger = { RECIPIENT = scope:underequipped } - } - order_by = { - value = 0 - subtract = var:quality - } - save_scope_as = my_weapon - } + } + order_by = { + value = 0 + subtract = var:quality + } + save_scope_as = my_weapon + } } - } + } - option = { # Have a sword made - name = court.8010.a - change_current_court_grandeur = medium_court_grandeur_gain - remove_short_term_gold = medium_gold_value - custom_tooltip = court.8010.a.tt - hidden_effect = { - scope:underequipped = { - if = { + option = { # Have a sword made + name = court.8010.a + change_current_court_grandeur = medium_court_grandeur_gain + remove_short_term_gold = medium_gold_value + custom_tooltip = court.8010.a.tt + hidden_effect = { + scope:underequipped = { + if = { limit = { var:signature_weapon = flag:axe } create_artifact_weapon_effect = { OWNER = scope:underequipped @@ -8801,15 +8797,15 @@ court.8010 = { } } } - if = { - limit = { exists = scope:newly_created_artifact } # To avoid errors - send_interface_toast = { - title = court.8010.a.equipped_tt - left_icon = scope:underequipped - right_icon = scope:newly_created_artifact - scope:newly_created_artifact = { - set_owner = { - target = scope:underequipped + if = { + limit = { exists = scope:newly_created_artifact } # To avoid errors + send_interface_toast = { + title = court.8010.a.equipped_tt + left_icon = scope:underequipped + right_icon = scope:newly_created_artifact + scope:newly_created_artifact = { + set_owner = { + target = scope:underequipped history = { location = root.capital_province actor = root @@ -8817,59 +8813,60 @@ court.8010 = { type = given } } - } - } - } - } - scope:underequipped = { - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 20 - } - } - stress_impact = { + equip_artifact_to_owner_replace = yes + } + } + } + } + scope:underequipped = { + add_opinion = { + target = root + modifier = grateful_opinion + opinion = 20 + } + } + stress_and_fulfillment_impact = { greedy = major_stress_impact_gain # It's too expensive callous = medium_stress_impact_gain # So? arrogant = medium_stress_impact_gain paranoid = medium_stress_impact_gain fickle = minor_stress_impact_gain } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -1 - ai_compassion = 1 - } - modifier = { #Weight down for stress. - add = -15 - has_trait = greedy - } - modifier = { #Weight down for stress. - add = -15 - has_trait = callous - } - } - } + ai_chance = { + base = 100 + ai_value_modifier = { + ai_greed = -1 + ai_compassion = 1 + } + modifier = { #Weight down for stress. + add = -15 + has_trait = greedy + } + modifier = { #Weight down for stress. + add = -15 + has_trait = callous + } + } + } - option = { # Give lesser owned sword - name = court.8010.c - trigger = { exists = scope:my_weapon } - add_prestige = major_prestige_gain - scope:underequipped = { - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 20 - } - } - send_interface_toast = { - title = court.8010.c.equipped_tt - left_icon = scope:underequipped - right_icon = scope:my_weapon - scope:my_weapon = { - set_owner = { - target = scope:underequipped + option = { # Give lesser owned sword + name = court.8010.c + trigger = { exists = scope:my_weapon } + add_prestige = major_prestige_gain + scope:underequipped = { + add_opinion = { + target = root + modifier = grateful_opinion + opinion = 20 + } + } + send_interface_toast = { + title = court.8010.c.equipped_tt + left_icon = scope:underequipped + right_icon = scope:my_weapon + scope:my_weapon = { + set_owner = { + target = scope:underequipped history = { location = root.capital_province actor = root @@ -8877,81 +8874,82 @@ court.8010 = { type = given } } - } - } - stress_impact = { + equip_artifact_to_owner_replace = yes + } + } + stress_and_fulfillment_impact = { greedy = major_stress_impact_gain # My precious?! arrogant = medium_stress_impact_gain # My swords are too strong for you traveler } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -2 - ai_compassion = 1 - } - modifier = { #Weight down for stress. - add = -30 - has_trait = greedy - } - modifier = { #Weight down for stress. - add = -15 - has_trait = arrogant - } - } - } - - option = { # Give a sword from the armory (opt out) - name = court.8010.d - change_current_court_grandeur = minor_court_grandeur_loss - custom_tooltip = court.8010.d.tt - scope:underequipped = { - if = { - limit = { - any_character_artifact = { - is_equipped = yes - artifact_slot_type = primary_armament - ep1_artifact_durability_lower_equal_percent_trigger = { PERCENT = 0.99 } - } - } - random_character_artifact = { - limit = { - is_equipped = yes - artifact_slot_type = primary_armament - ep1_artifact_durability_lower_equal_percent_trigger = { PERCENT = 0.49 } - } - add_durability = { - value = artifact_max_durability - multiply = 0.25 - } - } - } + ai_chance = { + base = 100 + ai_value_modifier = { + ai_greed = -2 + ai_compassion = 1 + } + modifier = { #Weight down for stress. + add = -30 + has_trait = greedy + } + modifier = { #Weight down for stress. + add = -15 + has_trait = arrogant + } } - stress_impact = { + } + + option = { # Give a sword from the armory (opt out) + name = court.8010.d + change_current_court_grandeur = minor_court_grandeur_loss + custom_tooltip = court.8010.d.tt + scope:underequipped = { + if = { + limit = { + any_character_artifact = { + is_equipped = yes + artifact_slot_type = primary_armament + ep1_artifact_durability_lower_equal_percent_trigger = { PERCENT = 0.99 } + } + } + random_character_artifact = { + limit = { + is_equipped = yes + artifact_slot_type = primary_armament + ep1_artifact_durability_lower_equal_percent_trigger = { PERCENT = 0.49 } + } + add_durability = { + value = artifact_max_durability + multiply = 0.25 + } + } + } + } + stress_and_fulfillment_impact = { base = minor_stress_impact_loss } - ai_chance = { - base = 50 - ai_value_modifier = { - ai_greed = 2 - } - modifier = { #Weight down for stress. - add = -15 - has_trait = generous - } - modifier = { #Weight down for stress. - add = -15 - has_trait = paranoid - } + ai_chance = { + base = 50 + ai_value_modifier = { + ai_greed = 2 + } + modifier = { #Weight down for stress. + add = -15 + has_trait = generous + } + modifier = { #Weight down for stress. + add = -15 + has_trait = paranoid + } - } - } + } + } - after = { - clear_court_event_participation = yes - scope:underequipped = { - clear_court_event_participation = yes - } - } + after = { + clear_court_event_participation = yes + scope:underequipped = { + clear_court_event_participation = yes + } + } } ######################### @@ -8960,164 +8958,164 @@ court.8010 = { ######################### court.8020 = { - type = court_event - title = court.8020.t - desc = court.8020.desc - theme = court - cooldown = { years = 10 } - court_scene = { - button_position_character = scope:couture_spouse - roles = { - scope:couture_spouse = { - group = event_group - animation = anger - } - scope:couture_guest = { - group = event_group - animation = schadenfreude - } - } - } - - trigger = { - amenity_level = { target = court_fashion value <= medium_amenity_level } - is_married = yes - primary_spouse = { - is_alive = yes - has_court_event_flag = no + type = court_event + title = court.8020.t + desc = court.8020.desc + theme = court + cooldown = { years = 10 } + court_scene = { + button_position_character = scope:couture_spouse + roles = { + scope:couture_spouse = { + group = event_group + animation = anger + } + scope:couture_guest = { + group = event_group + animation = schadenfreude + } } - any_pool_guest = { - is_available_ai_adult = yes - has_court_event_flag = no + } + + trigger = { + amenity_level = { target = court_fashion value <= medium_amenity_level } + is_married = yes + primary_spouse = { + is_alive = yes + has_court_event_flag = no + } + any_pool_guest = { + is_available_ai_adult = yes + has_court_event_flag = no } NOT = { government_has_flag = government_is_tribal # No changing amenities above what's legal for tribals } - } + } - weight_multiplier = { - base = 1 - ep1_weight_up_for_court_type_modifier = { COURT_TYPE = court_diplomatic } - } + weight_multiplier = { + base = 1 + ep1_weight_up_for_court_type_modifier = { COURT_TYPE = court_diplomatic } + } - immediate = { - primary_spouse = { - save_scope_as = couture_spouse - court_event_character_flag_effect = yes - } - random_pool_guest = { - limit = { is_available_ai_adult = yes } - weight = { - base = 1 - modifier = { - factor = 20 - culture != root.culture - } - modifier = { - factor = 10 - sex_same_as = root.primary_spouse - } - } - save_scope_as = couture_guest - court_event_character_flag_effect = yes - } - primary_spouse = { - progress_towards_rival_effect = { + immediate = { + primary_spouse = { + save_scope_as = couture_spouse + court_event_character_flag_effect = yes + } + random_pool_guest = { + limit = { is_available_ai_adult = yes } + weight = { + base = 1 + modifier = { + factor = 20 + culture != root.culture + } + modifier = { + factor = 10 + sex_same_as = root.primary_spouse + } + } + save_scope_as = couture_guest + court_event_character_flag_effect = yes + } + primary_spouse = { + progress_towards_rival_effect = { CHARACTER = scope:couture_guest REASON = rival_couture_criticised OPINION = 0 } - } - } + } + } - option = { # Make an effort - name = court.8020.b - set_amenity_level = { type = court_fashion value = high_amenity_level } - remove_short_term_gold = minor_gold_value - capital_county = { - add_county_modifier = { - modifier = fashion_industry_county_modifier - years = 25 - } - } - stress_impact = { - greedy = medium_stress_impact_gain # It's too espensive - content = medium_stress_impact_gain # What's wrong with our clothes? - humble = medium_stress_impact_gain # These clothes are good enough - improvident = medium_stress_impact_loss # Shopping! - } + option = { # Make an effort + name = court.8020.b + set_amenity_level = { type = court_fashion value = high_amenity_level } + remove_short_term_gold = minor_gold_value + capital_county = { + add_county_modifier = { + modifier = fashion_industry_county_modifier + years = 25 + } + } + stress_and_fulfillment_impact = { + greedy = medium_stress_impact_gain # It's too espensive + content = medium_stress_impact_gain # What's wrong with our clothes? + humble = medium_stress_impact_gain # These clothes are good enough + improvident = medium_stress_impact_loss # Shopping! + } ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -1 - ai_rationality = 1 - } - modifier = { #Weight down for stress. - add = -15 - has_trait = greedy - } - modifier = { #Weight down for stress. - add = -15 - has_trait = content - } - modifier = { #Weight down for stress. - add = -15 - has_trait = humble - } - modifier = { - gold < minor_gold_value - factor = 0 - } - } - } + base = 100 + ai_value_modifier = { + ai_greed = -1 + ai_rationality = 1 + } + modifier = { #Weight down for stress. + add = -15 + has_trait = greedy + } + modifier = { #Weight down for stress. + add = -15 + has_trait = content + } + modifier = { #Weight down for stress. + add = -15 + has_trait = humble + } + modifier = { + gold < minor_gold_value + factor = 0 + } + } + } - option = { # Laugh it off (opt out) - name = court.8020.a - add_prestige = minor_prestige_gain - change_current_court_grandeur = minor_court_grandeur_loss - primary_spouse = { - add_opinion = { - target = root - modifier = annoyed_opinion - opinion = -10 - } - } - stress_impact = { - base = minor_stress_impact_loss - arrogant = medium_stress_impact_gain # How dare they mock us - wrathful = medium_stress_impact_gain # Why I 'oughta - vengeful = medium_stress_impact_gain # They said what?! - } + option = { # Laugh it off (opt out) + name = court.8020.a + add_prestige = minor_prestige_gain + change_current_court_grandeur = minor_court_grandeur_loss + primary_spouse = { + add_opinion = { + target = root + modifier = annoyed_opinion + opinion = -10 + } + } + stress_and_fulfillment_impact = { + base = minor_stress_impact_loss + arrogant = medium_stress_impact_gain # How dare they mock us + wrathful = medium_stress_impact_gain # Why I 'oughta + vengeful = medium_stress_impact_gain # They said what?! + } ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = -2 - ai_rationality = 1 - } - modifier = { #Weight down for stress. - add = -15 - has_trait = arrogant - } - modifier = { #Weight down for stress. - add = -15 - has_trait = wrathful - } - modifier = { #Weight down for stress. - add = -15 - has_trait = vengeful - } - } - } + base = 100 + ai_value_modifier = { + ai_vengefulness = -2 + ai_rationality = 1 + } + modifier = { #Weight down for stress. + add = -15 + has_trait = arrogant + } + modifier = { #Weight down for stress. + add = -15 + has_trait = wrathful + } + modifier = { #Weight down for stress. + add = -15 + has_trait = vengeful + } + } + } - after = { - scope:couture_guest = { - clear_court_event_participation = yes + after = { + scope:couture_guest = { + clear_court_event_participation = yes } scope:couture_spouse = { clear_court_event_participation = yes } - } + } } ######################### @@ -9133,295 +9131,295 @@ scripted_trigger court_8030_child_trigger = { } court.8030 = { - type = court_event - title = court.8030.t - desc = { - desc = court.8030.desc.intro - first_valid = { - triggered_desc = { - trigger = { exists = scope:child_2 } - desc = court.8030.desc.two - } - desc = court.8030.desc.one - } - desc = court.8030.desc.body - } - theme = court - cooldown = { years = 10 } - court_scene = { - button_position_character = scope:huntmaster - roles = { - scope:huntmaster = { - group = event_group - animation = happiness - } - scope:child_1 = { - group = event_group - animation = beg - } - scope:child_2 = { - group = event_group - animation = interested - } - } - } - - trigger = { - employs_court_position = master_of_hunt_court_position - any_court_position_holder = { - type = master_of_hunt_court_position - is_available_ai_adult = yes - has_court_event_flag = no - } - any_child = { - court_8030_child_trigger = yes - has_court_event_flag = no - } - } - - weight_multiplier = { - base = 1 - } - - immediate = { - random_court_position_holder = { - type = master_of_hunt_court_position - limit = { is_available_ai_adult = yes } - save_scope_as = huntmaster - court_event_character_flag_effect = yes - } - random_child = { - limit = { court_8030_child_trigger = yes } - weight = { - base = 1 - modifier = { - factor = 2 - has_trait = curious - } - modifier = { - factor = 2 - has_trait = charming - } - modifier = { - factor = 2 - has_focus = education_diplomacy - } - } - save_scope_as = child_1 - court_event_character_flag_effect = yes - } - if = { - limit = { - any_child = { - court_8030_child_trigger = yes - this != scope:child_1 - } - } - random_child = { - limit = { - court_8030_child_trigger = yes - this != scope:child_1 - } - weight = { - base = 1 - modifier = { - factor = 2 - has_trait = curious - } - modifier = { - factor = 2 - has_trait = charming - } - modifier = { - factor = 2 - has_focus = education_diplomacy - } - } - save_scope_as = child_2 - court_event_character_flag_effect = yes - } - } - } - - option = { - name = court.8030.a - change_current_court_grandeur = medium_court_grandeur_gain - add_character_modifier = { - modifier = hunting_pooches_modifier - years = 10 - } - stress_impact = { - lifestyle_hunter = major_stress_impact_loss - greedy = minor_stress_impact_gain - impatient = minor_stress_impact_gain - family_first = minor_stress_impact_gain + type = court_event + title = court.8030.t + desc = { + desc = court.8030.desc.intro + first_valid = { + triggered_desc = { + trigger = { exists = scope:child_2 } + desc = court.8030.desc.two + } + desc = court.8030.desc.one } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -1 - ai_energy = 1 - ai_honor = 1 - } - modifier = { #Weight up. - add = 30 - has_trait = lifestyle_hunter - } - } - } - - option = { - name = court.8030.b - scope:child_1 = { - start_dog_story_cycle_effect = yes - add_opinion = { - target = root - modifier = pleased_opinion - opinion = 15 - } - } - if = { - limit = { exists = scope:child_2 } - scope:child_2 = { - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -10 - } - } - } - stress_impact = { - lifestyle_hunter = medium_stress_impact_gain - just = minor_stress_impact_gain - callous = medium_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 0.5 - ai_compassion = 1 - } - modifier = { #Weight up. - add = -15 - has_trait = lifestyle_hunter - } - modifier = { #Weight up. - add = -5 - has_trait = just - } - modifier = { #Weight up. - add = -15 - has_trait = callous - } - } - } - - option = { - name = court.8030.c - trigger = { exists = scope:child_2 } - scope:child_2 = { - start_dog_story_cycle_effect = yes - add_opinion = { - target = root - modifier = pleased_opinion - opinion = 15 - } - } - scope:child_1 = { - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -10 - } - } - stress_impact = { - lifestyle_hunter = medium_stress_impact_gain - just = minor_stress_impact_gain - callous = medium_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 0.5 - ai_compassion = 1 - } - modifier = { #Weight up. - add = -15 - has_trait = lifestyle_hunter - } - modifier = { #Weight up. - add = -5 - has_trait = just - } - modifier = { #Weight up. - add = -15 - has_trait = callous - } - } - } - - option = { - name = court.8030.d - trigger = { - NOT = { has_character_modifier = dog_story_modifier } - } - start_dog_story_cycle_effect = yes - scope:child_1 = { - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -15 - } - } - if = { - limit = { exists = scope:child_2 } - scope:child_2 = { - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -15 - } - } - } - stress_impact = { - lifestyle_hunter = medium_stress_impact_gain - just = minor_stress_impact_gain - generous = medium_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 2 - ai_compassion = 1 - } - modifier = { #Weight up. - add = -15 - has_trait = lifestyle_hunter - } - modifier = { #Weight up. - add = -5 - has_trait = just - } - modifier = { #Weight up. - add = -15 - has_trait = generous - } - } - } - after = { - scope:huntmaster = { - clear_court_event_participation = yes + desc = court.8030.desc.body + } + theme = court + cooldown = { years = 10 } + court_scene = { + button_position_character = scope:huntmaster + roles = { + scope:huntmaster = { + group = event_group + animation = happiness + } + scope:child_1 = { + group = event_group + animation = beg + } + scope:child_2 = { + group = event_group + animation = interested + } } + } + + trigger = { + employs_court_position = master_of_hunt_court_position + any_court_position_holder = { + type = master_of_hunt_court_position + is_available_ai_adult = yes + has_court_event_flag = no + } + any_child = { + court_8030_child_trigger = yes + has_court_event_flag = no + } + } + + weight_multiplier = { + base = 1 + } + + immediate = { + random_court_position_holder = { + type = master_of_hunt_court_position + limit = { is_available_ai_adult = yes } + save_scope_as = huntmaster + court_event_character_flag_effect = yes + } + random_child = { + limit = { court_8030_child_trigger = yes } + weight = { + base = 1 + modifier = { + factor = 2 + has_trait = curious + } + modifier = { + factor = 2 + has_trait = charming + } + modifier = { + factor = 2 + has_focus = education_diplomacy + } + } + save_scope_as = child_1 + court_event_character_flag_effect = yes + } + if = { + limit = { + any_child = { + court_8030_child_trigger = yes + this != scope:child_1 + } + } + random_child = { + limit = { + court_8030_child_trigger = yes + this != scope:child_1 + } + weight = { + base = 1 + modifier = { + factor = 2 + has_trait = curious + } + modifier = { + factor = 2 + has_trait = charming + } + modifier = { + factor = 2 + has_focus = education_diplomacy + } + } + save_scope_as = child_2 + court_event_character_flag_effect = yes + } + } + } + + option = { + name = court.8030.a + change_current_court_grandeur = medium_court_grandeur_gain + add_character_modifier = { + modifier = hunting_pooches_modifier + years = 10 + } + stress_and_fulfillment_impact = { + lifestyle_hunter = major_stress_impact_loss + greedy = minor_stress_impact_gain + impatient = minor_stress_impact_gain + family_first = minor_stress_impact_gain + } + ai_chance = { + base = 100 + ai_value_modifier = { + ai_greed = -1 + ai_energy = 1 + ai_honor = 1 + } + modifier = { #Weight up. + add = 30 + has_trait = lifestyle_hunter + } + } + } + + option = { + name = court.8030.b scope:child_1 = { - clear_court_event_participation = yes + start_dog_story_cycle_effect = yes + add_opinion = { + target = root + modifier = pleased_opinion + opinion = 15 + } } if = { limit = { exists = scope:child_2 } scope:child_2 = { - clear_court_event_participation = yes + add_opinion = { + target = root + modifier = disappointed_opinion + opinion = -10 + } } } - } + stress_and_fulfillment_impact = { + lifestyle_hunter = medium_stress_impact_gain + just = minor_stress_impact_gain + callous = medium_stress_impact_gain + } + ai_chance = { + base = 100 + ai_value_modifier = { + ai_greed = 0.5 + ai_compassion = 1 + } + modifier = { #Weight up. + add = -15 + has_trait = lifestyle_hunter + } + modifier = { #Weight up. + add = -5 + has_trait = just + } + modifier = { #Weight up. + add = -15 + has_trait = callous + } + } + } + + option = { + name = court.8030.c + trigger = { exists = scope:child_2 } + scope:child_2 = { + start_dog_story_cycle_effect = yes + add_opinion = { + target = root + modifier = pleased_opinion + opinion = 15 + } + } + scope:child_1 = { + add_opinion = { + target = root + modifier = disappointed_opinion + opinion = -10 + } + } + stress_and_fulfillment_impact = { + lifestyle_hunter = medium_stress_impact_gain + just = minor_stress_impact_gain + callous = medium_stress_impact_gain + } + ai_chance = { + base = 100 + ai_value_modifier = { + ai_greed = 0.5 + ai_compassion = 1 + } + modifier = { #Weight up. + add = -15 + has_trait = lifestyle_hunter + } + modifier = { #Weight up. + add = -5 + has_trait = just + } + modifier = { #Weight up. + add = -15 + has_trait = callous + } + } + } + + option = { + name = court.8030.d + trigger = { + NOT = { has_character_modifier = dog_story_modifier } + } + start_dog_story_cycle_effect = yes + scope:child_1 = { + add_opinion = { + target = root + modifier = disappointed_opinion + opinion = -15 + } + } + if = { + limit = { exists = scope:child_2 } + scope:child_2 = { + add_opinion = { + target = root + modifier = disappointed_opinion + opinion = -15 + } + } + } + stress_and_fulfillment_impact = { + lifestyle_hunter = medium_stress_impact_gain + just = minor_stress_impact_gain + generous = medium_stress_impact_gain + } + ai_chance = { + base = 100 + ai_value_modifier = { + ai_greed = 2 + ai_compassion = 1 + } + modifier = { #Weight up. + add = -15 + has_trait = lifestyle_hunter + } + modifier = { #Weight up. + add = -5 + has_trait = just + } + modifier = { #Weight up. + add = -15 + has_trait = generous + } + } + } + after = { + scope:huntmaster = { + clear_court_event_participation = yes + } + scope:child_1 = { + clear_court_event_participation = yes + } + if = { + limit = { exists = scope:child_2 } + scope:child_2 = { + clear_court_event_participation = yes + } + } + } } ############################ # Aristocratic Pretensions # @@ -9568,194 +9566,194 @@ scripted_effect court_8040_desc_effect = { save_scope_as = generic_1 } else_if = { - limit = { NOT = { exists = scope:generic_2 } } - save_scope_as = generic_2 - } - else = { save_scope_as = generic_3 } + limit = { NOT = { exists = scope:generic_2 } } + save_scope_as = generic_2 + } + else = { save_scope_as = generic_3 } } } court.8040 = { - type = court_event - title = court.8040.t - desc = { - desc = court.8040.desc.intro - triggered_desc = { - trigger = { exists = scope:position_holder } - desc = court.8040.desc.position_holder - } - triggered_desc = { - trigger = { exists = scope:knight } - desc = court.8040.desc.knight - } - triggered_desc = { - trigger = { exists = scope:relative } - desc = court.8040.desc.relative - } - triggered_desc = { - trigger = { exists = scope:ambitious } - desc = court.8040.desc.ambitious - } - triggered_desc = { - trigger = { exists = scope:arrogant } - desc = court.8040.desc.arrogant - } - triggered_desc = { - trigger = { exists = scope:lowborn } - desc = court.8040.desc.lowborn - } - triggered_desc = { - trigger = { exists = scope:gentry } - desc = court.8040.desc.gentry - } - triggered_desc = { - trigger = { exists = scope:generic_1 } - desc = court.8040.desc.generic_1 - } - triggered_desc = { - trigger = { exists = scope:generic_2 } - desc = court.8040.desc.generic_2 - } - triggered_desc = { - trigger = { exists = scope:generic_3 } - desc = court.8040.desc.generic_3 - } - desc = court.8040.desc.body - } - theme = court - override_background = { reference = throne_room } - cooldown = { years = 10 } - court_scene = { - button_position_character = scope:courtier_3 - roles = { - scope:courtier_1 = { - group = event_group - animation = personality_irrational - } - scope:courtier_2 = { - group = event_group - animation = personality_coward - } - scope:courtier_3 = { - group = event_group - animation = personality_dishonorable - } - } - } + type = court_event + title = court.8040.t + desc = { + desc = court.8040.desc.intro + triggered_desc = { + trigger = { exists = scope:position_holder } + desc = court.8040.desc.position_holder + } + triggered_desc = { + trigger = { exists = scope:knight } + desc = court.8040.desc.knight + } + triggered_desc = { + trigger = { exists = scope:relative } + desc = court.8040.desc.relative + } + triggered_desc = { + trigger = { exists = scope:ambitious } + desc = court.8040.desc.ambitious + } + triggered_desc = { + trigger = { exists = scope:arrogant } + desc = court.8040.desc.arrogant + } + triggered_desc = { + trigger = { exists = scope:lowborn } + desc = court.8040.desc.lowborn + } + triggered_desc = { + trigger = { exists = scope:gentry } + desc = court.8040.desc.gentry + } + triggered_desc = { + trigger = { exists = scope:generic_1 } + desc = court.8040.desc.generic_1 + } + triggered_desc = { + trigger = { exists = scope:generic_2 } + desc = court.8040.desc.generic_2 + } + triggered_desc = { + trigger = { exists = scope:generic_3 } + desc = court.8040.desc.generic_3 + } + desc = court.8040.desc.body + } + theme = court + override_background = { reference = throne_room } + cooldown = { years = 10 } + court_scene = { + button_position_character = scope:courtier_3 + roles = { + scope:courtier_1 = { + group = event_group + animation = personality_irrational + } + scope:courtier_2 = { + group = event_group + animation = personality_coward + } + scope:courtier_3 = { + group = event_group + animation = personality_dishonorable + } + } + } - trigger = { - has_royal_court = yes - any_courtier = { - count >= 3 - court_8040_courtier_trigger = yes - has_court_event_flag = no - } - OR = { - any_held_title = { - title_tier = barony - is_capital_barony = no - is_leased_out = no - this != root.capital_barony - } - any_held_title = { - count >= 4 - title_tier = county - is_landless_type_title = no - } - } - domain_limit_available < 0 - } - - weight_multiplier = { - base = 1 - modifier = { - is_ai = yes - factor = 0.5 - } - ep1_weight_up_for_court_type_modifier = { COURT_TYPE = court_warlike } - ep1_weight_up_for_court_type_modifier = { COURT_TYPE = court_diplomatic } - } - - immediate = { - ordered_courtier = { # Find 3 courtiers and determine their flaws - limit = { court_8040_courtier_trigger = yes } - max = 3 - check_range_bounds = no - order_by = prestige - if = { - limit = { NOT = { exists = scope:courtier_1 } } - save_scope_as = courtier_1 - court_event_character_flag_effect = yes - court_8040_desc_effect = yes - } - else_if = { - limit = { NOT = { exists = scope:courtier_2 } } - save_scope_as = courtier_2 - court_event_character_flag_effect = yes - court_8040_desc_effect = yes - } - else = { - save_scope_as = courtier_3 - court_event_character_flag_effect = yes - court_8040_desc_effect = yes - } - add_to_list = court_8040_list - if = { - limit = { NOT = { exists = scope:button } } - save_scope_as = button # For button character - } - } - if = { # Find a valid barony to give away - limit = { - any_held_title = { - title_tier = barony - is_capital_barony = no - is_leased_out = no - this != root.capital_barony - } - } - ordered_held_title = { + trigger = { + has_royal_court = yes + any_courtier = { + count >= 3 + court_8040_courtier_trigger = yes + has_court_event_flag = no + } + OR = { + any_held_title = { title_tier = barony - limit = { - is_capital_barony = no - is_leased_out = no - this != root.capital_barony - } - order_by = { - value = 0 - subtract = title_province.combined_building_level - } - save_scope_as = worst_title - } - } - else = { # Find a valid county to give away - ordered_held_title = { + is_capital_barony = no + is_leased_out = no + this != root.capital_barony + } + any_held_title = { + count >= 4 title_tier = county - limit = { - this != root.capital_county - is_landless_type_title = no - } - order_by = { - value = 0 - subtract = development_level - } - save_scope_as = worst_title - } - } - } + is_landless_type_title = no + } + } + domain_limit_available < 0 + } - option = { # Best courtier wins - fight - name = court.8040.d - flavor = court.8040.d.flavor_tt - random_list = { - 2 = { - desc = court.8040.d.courtier_1_tt - modifier = { - add = scope:courtier_1.prowess - } - scope:courtier_1 = { save_scope_as = new_noble } - show_as_tooltip = { - create_title_and_vassal_change = { + weight_multiplier = { + base = 1 + modifier = { + is_ai = yes + factor = 0.5 + } + ep1_weight_up_for_court_type_modifier = { COURT_TYPE = court_warlike } + ep1_weight_up_for_court_type_modifier = { COURT_TYPE = court_diplomatic } + } + + immediate = { + ordered_courtier = { # Find 3 courtiers and determine their flaws + limit = { court_8040_courtier_trigger = yes } + max = 3 + check_range_bounds = no + order_by = prestige + if = { + limit = { NOT = { exists = scope:courtier_1 } } + save_scope_as = courtier_1 + court_event_character_flag_effect = yes + court_8040_desc_effect = yes + } + else_if = { + limit = { NOT = { exists = scope:courtier_2 } } + save_scope_as = courtier_2 + court_event_character_flag_effect = yes + court_8040_desc_effect = yes + } + else = { + save_scope_as = courtier_3 + court_event_character_flag_effect = yes + court_8040_desc_effect = yes + } + add_to_list = court_8040_list + if = { + limit = { NOT = { exists = scope:button } } + save_scope_as = button # For button character + } + } + if = { # Find a valid barony to give away + limit = { + any_held_title = { + title_tier = barony + is_capital_barony = no + is_leased_out = no + this != root.capital_barony + } + } + ordered_held_title = { + title_tier = barony + limit = { + is_capital_barony = no + is_leased_out = no + this != root.capital_barony + } + order_by = { + value = 0 + subtract = title_province.combined_building_level + } + save_scope_as = worst_title + } + } + else = { # Find a valid county to give away + ordered_held_title = { + title_tier = county + limit = { + this != root.capital_county + is_landless_type_title = no + } + order_by = { + value = 0 + subtract = development_level + } + save_scope_as = worst_title + } + } + } + + option = { # Best courtier wins - fight + name = court.8040.d + flavor = court.8040.d.flavor_tt + random_list = { + 2 = { + desc = court.8040.d.courtier_1_tt + modifier = { + add = scope:courtier_1.prowess + } + scope:courtier_1 = { save_scope_as = new_noble } + show_as_tooltip = { + create_title_and_vassal_change = { type = granted save_scope_as = change add_claim_on_loss = no @@ -9767,16 +9765,16 @@ court.8040 = { } } resolve_title_and_vassal_change = scope:change - } - } - 2 = { - desc = court.8040.d.courtier_2_tt - modifier = { - add = scope:courtier_2.prowess - } - scope:courtier_2 = { save_scope_as = new_noble } - show_as_tooltip = { - create_title_and_vassal_change = { + } + } + 2 = { + desc = court.8040.d.courtier_2_tt + modifier = { + add = scope:courtier_2.prowess + } + scope:courtier_2 = { save_scope_as = new_noble } + show_as_tooltip = { + create_title_and_vassal_change = { type = granted save_scope_as = change add_claim_on_loss = no @@ -9788,16 +9786,16 @@ court.8040 = { } } resolve_title_and_vassal_change = scope:change - } - } - 2 = { - desc = court.8040.d.courtier_3_tt - modifier = { - add = scope:courtier_3.prowess - } - scope:courtier_3 = { save_scope_as = new_noble } - show_as_tooltip = { - create_title_and_vassal_change = { + } + } + 2 = { + desc = court.8040.d.courtier_3_tt + modifier = { + add = scope:courtier_3.prowess + } + scope:courtier_3 = { save_scope_as = new_noble } + show_as_tooltip = { + create_title_and_vassal_change = { type = granted save_scope_as = change add_claim_on_loss = no @@ -9809,15 +9807,15 @@ court.8040 = { } } resolve_title_and_vassal_change = scope:change - } - } - } - every_in_list = { - list = court_8040_list + } + } + } + every_in_list = { + list = court_8040_list increase_wounds_no_death_effect = { REASON = duel } } hidden_effect = { court_8040_grant_effect = yes } - stress_impact = { + stress_and_fulfillment_impact = { lifestyle_blademaster = medium_stress_impact_loss # Yay fighty slash viking = medium_stress_impact_loss # Yay fighty slash varangian = medium_stress_impact_loss # Yay fighty slash @@ -9828,12 +9826,12 @@ court.8040 = { arrogant = medium_stress_impact_gain # But, my titles } ai_chance = { - base = 100 - ai_value_modifier = { + base = 100 + ai_value_modifier = { ai_energy = 2 ai_greed = -0.5 } - modifier = { #Weight up for stress. + modifier = { #Weight up for stress. add = 15 has_trait = lifestyle_blademaster } @@ -9857,7 +9855,7 @@ court.8040 = { add = 15 has_trait = brave } - modifier = { #Weight down for stress. + modifier = { #Weight down for stress. add = -15 has_trait = greedy } @@ -9869,21 +9867,21 @@ court.8040 = { add = -15 has_trait = arrogant } - } - } + } + } - option = { # Best courtier wins - persuasion - name = court.8040.e - change_current_court_grandeur = medium_court_grandeur_gain - random_list = { - 2 = { - desc = court.8040.e.courtier_1_tt - modifier = { - add = scope:courtier_1.diplomacy - } - scope:courtier_1 = { save_scope_as = new_noble } - show_as_tooltip = { - create_title_and_vassal_change = { + option = { # Best courtier wins - persuasion + name = court.8040.e + change_current_court_grandeur = medium_court_grandeur_gain + random_list = { + 2 = { + desc = court.8040.e.courtier_1_tt + modifier = { + add = scope:courtier_1.diplomacy + } + scope:courtier_1 = { save_scope_as = new_noble } + show_as_tooltip = { + create_title_and_vassal_change = { type = granted save_scope_as = change add_claim_on_loss = no @@ -9895,16 +9893,16 @@ court.8040 = { } } resolve_title_and_vassal_change = scope:change - } - } - 2 = { - desc = court.8040.e.courtier_2_tt - modifier = { - add = scope:courtier_2.diplomacy - } - scope:courtier_2 = { save_scope_as = new_noble } - show_as_tooltip = { - create_title_and_vassal_change = { + } + } + 2 = { + desc = court.8040.e.courtier_2_tt + modifier = { + add = scope:courtier_2.diplomacy + } + scope:courtier_2 = { save_scope_as = new_noble } + show_as_tooltip = { + create_title_and_vassal_change = { type = granted save_scope_as = change add_claim_on_loss = no @@ -9916,16 +9914,16 @@ court.8040 = { } } resolve_title_and_vassal_change = scope:change - } - } - 2 = { - desc = court.8040.e.courtier_3_tt - modifier = { - add = scope:courtier_3.diplomacy - } - scope:courtier_3 = { save_scope_as = new_noble } - show_as_tooltip = { - create_title_and_vassal_change = { + } + } + 2 = { + desc = court.8040.e.courtier_3_tt + modifier = { + add = scope:courtier_3.diplomacy + } + scope:courtier_3 = { save_scope_as = new_noble } + show_as_tooltip = { + create_title_and_vassal_change = { type = granted save_scope_as = change add_claim_on_loss = no @@ -9937,10 +9935,10 @@ court.8040 = { } } resolve_title_and_vassal_change = scope:change - } - } - } - stress_impact = { + } + } + } + stress_and_fulfillment_impact = { lifestyle_poet = medium_stress_impact_loss # Poetry duels are my jam gregarious = medium_stress_impact_loss # Having fun with friends was the real reward diplomat = medium_stress_impact_loss # Solving problems with words is the coolest @@ -9950,12 +9948,12 @@ court.8040 = { } hidden_effect = { court_8040_grant_effect = yes } ai_chance = { - base = 100 - ai_value_modifier = { + base = 100 + ai_value_modifier = { ai_rationality = 1 ai_greed = -0.5 } - modifier = { #Weight up for stress. + modifier = { #Weight up for stress. add = 15 has_trait = lifestyle_poet } @@ -9967,7 +9965,7 @@ court.8040 = { add = 15 has_trait = diplomat } - modifier = { #Weight down for stress. + modifier = { #Weight down for stress. add = -15 has_trait = greedy } @@ -9979,65 +9977,65 @@ court.8040 = { add = -15 has_trait = arrogant } - } - } + } + } - option = { # You get nothing! - name = court.8040.f - add_prestige = minor_prestige_gain - every_in_list = { - list = court_8040_list - add_opinion = { - target = root - modifier = annoyed_opinion - opinion = -10 - } - } - stress_impact = { - generous = medium_stress_impact_gain # But I have so much to give - lazy = medium_stress_impact_gain # I would rather have someone else do it - humble = medium_stress_impact_gain # Who am I to deny them? - } - ai_chance = { - base = 100 - ai_value_modifier = { + option = { # You get nothing! + name = court.8040.f + add_prestige = minor_prestige_gain + every_in_list = { + list = court_8040_list + add_opinion = { + target = root + modifier = annoyed_opinion + opinion = -10 + } + } + stress_and_fulfillment_impact = { + generous = medium_stress_impact_gain # But I have so much to give + lazy = medium_stress_impact_gain # I would rather have someone else do it + humble = medium_stress_impact_gain # Who am I to deny them? + } + ai_chance = { + base = 100 + ai_value_modifier = { ai_boldness = 1 ai_greed = 1 } - modifier = { # Weight up for NO family members. - factor = 2 - NOR = { - scope:courtier_1 = { is_close_or_extended_family_of = root } - scope:courtier_2 = { is_close_or_extended_family_of = root } - scope:courtier_3 = { is_close_or_extended_family_of = root } - } - } - modifier = { # Weight up for NO dynasty members. - factor = 2 - NOR = { - scope:courtier_1.dynasty = root.dynasty - scope:courtier_2.dynasty = root.dynasty - scope:courtier_3.dynasty = root.dynasty - } - } - modifier = { # Weight up for NO opinion. - factor = 2 - NOR = { - opinion = { - target = scope:courtier_1 - value >= 50 - } - opinion = { - target = scope:courtier_2 - value >= 50 - } - opinion = { - target = scope:courtier_3 - value >= 50 - } - } - } - modifier = { #Weight down for stress. + modifier = { # Weight up for NO family members. + factor = 2 + NOR = { + scope:courtier_1 = { is_close_or_extended_family_of = root } + scope:courtier_2 = { is_close_or_extended_family_of = root } + scope:courtier_3 = { is_close_or_extended_family_of = root } + } + } + modifier = { # Weight up for NO dynasty members. + factor = 2 + NOR = { + scope:courtier_1.dynasty = root.dynasty + scope:courtier_2.dynasty = root.dynasty + scope:courtier_3.dynasty = root.dynasty + } + } + modifier = { # Weight up for NO opinion. + factor = 2 + NOR = { + opinion = { + target = scope:courtier_1 + value >= 50 + } + opinion = { + target = scope:courtier_2 + value >= 50 + } + opinion = { + target = scope:courtier_3 + value >= 50 + } + } + } + modifier = { #Weight down for stress. add = -15 has_trait = generous } @@ -10049,19 +10047,19 @@ court.8040 = { add = -15 has_trait = humble } - } - } - after = { - scope:courtier_1 = { - clear_court_event_participation = yes - } - scope:courtier_2 = { - clear_court_event_participation = yes - } - scope:courtier_3 = { - clear_court_event_participation = yes - } - } + } + } + after = { + scope:courtier_1 = { + clear_court_event_participation = yes + } + scope:courtier_2 = { + clear_court_event_participation = yes + } + scope:courtier_3 = { + clear_court_event_participation = yes + } + } } ######################### @@ -10080,134 +10078,134 @@ scripted_trigger court_8050_secrets_trigger = { } court.8050 = { - type = court_event - title = court.8050.t - desc = court.8050.desc - theme = court - override_background = { reference = throne_room } - cooldown = { years = 10 } - court_scene = { - button_position_character = scope:servant - roles = { - ROOT = { - group = event_group - animation = throne_room_conversation_4 - } - scope:servant = { - group = event_group - animation = throne_room_conversation_1 - } - } - } - - trigger = { - has_royal_court = yes - has_court_event_flag = no - OR = { - any_vassal = { - court_8050_secrets_trigger = yes - has_court_event_flag = no + type = court_event + title = court.8050.t + desc = court.8050.desc + theme = court + override_background = { reference = throne_room } + cooldown = { years = 10 } + court_scene = { + button_position_character = scope:servant + roles = { + ROOT = { + group = event_group + animation = throne_room_conversation_4 } - any_courtier_or_guest = { - court_8050_secrets_trigger = yes - has_court_event_flag = no - is_of_major_or_minor_interest_trigger = { CHARACTER = root } - } - } + scope:servant = { + group = event_group + animation = throne_room_conversation_1 + } + } + } + + trigger = { + has_royal_court = yes + has_court_event_flag = no + OR = { + any_vassal = { + court_8050_secrets_trigger = yes + has_court_event_flag = no + } + any_courtier_or_guest = { + court_8050_secrets_trigger = yes + has_court_event_flag = no + is_of_major_or_minor_interest_trigger = { CHARACTER = root } + } + } amenity_level = { target = court_servants value > high_amenity_level } - } + } - weight_multiplier = { - base = 1 - modifier = { - factor = 2 - amenity_level = { + weight_multiplier = { + base = 1 + modifier = { + factor = 2 + amenity_level = { target = court_servants value = max_amenity_level } } ep1_weight_up_for_court_type_modifier = { COURT_TYPE = court_intrigue } - } + } - immediate = { - court_event_character_flag_effect = yes - every_vassal = { - limit = { court_8050_secrets_trigger = yes } - add_to_list = court_8050_secret_list - } - every_courtier_or_guest = { - limit = { - court_8050_secrets_trigger = yes - is_of_major_or_minor_interest_trigger = { CHARACTER = root } - } - add_to_list = court_8050_secret_list - } - random_in_list = { - list = court_8050_secret_list - weight = { - base = 1 - modifier = { - factor = primary_title.tier - } - modifier = { - factor = 2 - any_secret = { - any_secret_knower = { count > 2 } - } - } - modifier = { - factor = 3 - is_landed = yes - } - } - save_scope_as = vassal - random_secret = { - limit = { - NOT = { + immediate = { + court_event_character_flag_effect = yes + every_vassal = { + limit = { court_8050_secrets_trigger = yes } + add_to_list = court_8050_secret_list + } + every_courtier_or_guest = { + limit = { + court_8050_secrets_trigger = yes + is_of_major_or_minor_interest_trigger = { CHARACTER = root } + } + add_to_list = court_8050_secret_list + } + random_in_list = { + list = court_8050_secret_list + weight = { + base = 1 + modifier = { + factor = primary_title.tier + } + modifier = { + factor = 2 + any_secret = { + any_secret_knower = { count > 2 } + } + } + modifier = { + factor = 3 + is_landed = yes + } + } + save_scope_as = vassal + random_secret = { + limit = { + NOT = { any_secret_knower = { this = root } } - } - weight = { - modifier = { - factor = 2 - any_secret_knower = { count > 2 } - } - } - save_scope_as = vassal_secret - reveal_to = root - } - } - if = { - limit = { - any_in_list = { - list = court_8050_secret_list - this != scope:vassal - } - } - random_in_list = { - list = court_8050_secret_list - limit = { this != scope:vassal } - save_scope_as = vassal_2 - random_secret = { - limit = { - NOT = { + } + weight = { + modifier = { + factor = 2 + any_secret_knower = { count > 2 } + } + } + save_scope_as = vassal_secret + reveal_to = root + } + } + if = { + limit = { + any_in_list = { + list = court_8050_secret_list + this != scope:vassal + } + } + random_in_list = { + list = court_8050_secret_list + limit = { this != scope:vassal } + save_scope_as = vassal_2 + random_secret = { + limit = { + NOT = { any_secret_knower = { this = root } } - } - weight = { - modifier = { - factor = 2 - any_secret_knower = { count > 2 } - } - } - save_scope_as = secret_2 - } - } - } - hidden_effect = { + } + weight = { + modifier = { + factor = 2 + any_secret_knower = { count > 2 } + } + } + save_scope_as = secret_2 + } + } + } + hidden_effect = { create_character = { template = servant_character dynasty = none @@ -10216,135 +10214,135 @@ court.8050 = { save_scope_as = servant } } - } + } - option = { # What else have you heard? - name = court.8050.b - trigger = { exists = scope:secret_2 } - add_prestige = minor_prestige_loss - custom_tooltip = court.8050.b.tt - hidden_effect = { - send_interface_toast = { - title = court.8050.b.tt_secret - left_icon = scope:vassal_2 - scope:secret_2 = { reveal_to = root } - } - } - scope:servant = { silent_disappearance_effect = yes } - stress_impact = { - schemer = medium_stress_impact_loss - trusting = medium_stress_impact_gain # What if people spy on me too?! - honest = medium_stress_impact_gain # This isn't above board - humble = medium_stress_impact_gain # It is not my business - lazy = medium_stress_impact_gain # Sounds like effort - } - ai_chance = { - base = 100 - ai_value_modifier = { + option = { # What else have you heard? + name = court.8050.b + trigger = { exists = scope:secret_2 } + add_prestige = minor_prestige_loss + custom_tooltip = court.8050.b.tt + hidden_effect = { + send_interface_toast = { + title = court.8050.b.tt_secret + left_icon = scope:vassal_2 + scope:secret_2 = { reveal_to = root } + } + } + scope:servant = { silent_disappearance_effect = yes } + stress_and_fulfillment_impact = { + schemer = medium_stress_impact_loss + trusting = medium_stress_impact_gain # What if people spy on me too?! + honest = medium_stress_impact_gain # This isn't above board + humble = medium_stress_impact_gain # It is not my business + lazy = medium_stress_impact_gain # Sounds like effort + } + ai_chance = { + base = 100 + ai_value_modifier = { ai_honor = -2 ai_energy = 2 } - modifier = { # Weight down for stress. - add = 15 - has_trait = schemer - } - modifier = { # Weight down for stress. - add = -15 - has_trait = trusting - } - modifier = { # Weight down for stress. - add = -15 - has_trait = honest - } - modifier = { # Weight down for stress. - add = -15 - has_trait = humble - } - modifier = { # Weight down for stress. - add = -15 - has_trait = lazy - } - } - } + modifier = { # Weight down for stress. + add = 15 + has_trait = schemer + } + modifier = { # Weight down for stress. + add = -15 + has_trait = trusting + } + modifier = { # Weight down for stress. + add = -15 + has_trait = honest + } + modifier = { # Weight down for stress. + add = -15 + has_trait = humble + } + modifier = { # Weight down for stress. + add = -15 + has_trait = lazy + } + } + } - option = { # Keep me informed - name = court.8050.c - remove_short_term_gold = minor_gold_value - add_character_modifier = { - modifier = servant_informants_modifier - years = 5 - } - custom_tooltip = court.8050.c.tt - scope:servant = { silent_disappearance_effect = yes } - stress_impact = { - schemer = medium_stress_impact_loss # Sweet, sweet scheming - trusting = medium_stress_impact_gain # What if people spy on me too?! - honest = medium_stress_impact_gain # This isn't above board - humble = medium_stress_impact_gain # It is not my business - lazy = medium_stress_impact_gain # Sounds like effort - } - ai_chance = { - base = 100 - ai_value_modifier = { + option = { # Keep me informed + name = court.8050.c + remove_short_term_gold = minor_gold_value + add_character_modifier = { + modifier = servant_informants_modifier + years = 5 + } + custom_tooltip = court.8050.c.tt + scope:servant = { silent_disappearance_effect = yes } + stress_and_fulfillment_impact = { + schemer = medium_stress_impact_loss # Sweet, sweet scheming + trusting = medium_stress_impact_gain # What if people spy on me too?! + honest = medium_stress_impact_gain # This isn't above board + humble = medium_stress_impact_gain # It is not my business + lazy = medium_stress_impact_gain # Sounds like effort + } + ai_chance = { + base = 100 + ai_value_modifier = { ai_honor = -2 ai_energy = 2 } - modifier = { # Weight down for stress. - add = 15 - has_trait = schemer - } - modifier = { # Weight down for stress. - add = -15 - has_trait = trusting - } - modifier = { # Weight down for stress. - add = -15 - has_trait = honest - } - modifier = { # Weight down for stress. - add = -15 - has_trait = humble - } - modifier = { # Weight down for stress. - add = -15 - has_trait = lazy - } - } - } + modifier = { # Weight down for stress. + add = 15 + has_trait = schemer + } + modifier = { # Weight down for stress. + add = -15 + has_trait = trusting + } + modifier = { # Weight down for stress. + add = -15 + has_trait = honest + } + modifier = { # Weight down for stress. + add = -15 + has_trait = humble + } + modifier = { # Weight down for stress. + add = -15 + has_trait = lazy + } + } + } - option = { # Thanks for your service (opt out) - name = court.8050.a - stress_impact = { - deceitful = medium_stress_impact_gain # I could have learned so much more... - arrogant = medium_stress_impact_gain # I don't surround myself with commoners + option = { # Thanks for your service (opt out) + name = court.8050.a + stress_and_fulfillment_impact = { + deceitful = medium_stress_impact_gain # I could have learned so much more... + arrogant = medium_stress_impact_gain # I don't surround myself with commoners paranoid = medium_stress_impact_gain # What do they know about me instead?? - } - ai_chance = { - base = 50 - ai_value_modifier = { + } + ai_chance = { + base = 50 + ai_value_modifier = { ai_rationality = 0.5 } modifier = { # Weight down for stress. - add = -15 - has_trait = deceitful - } - modifier = { # Weight down for stress. - add = -15 - has_trait = arrogant - } - modifier = { # Weight down for stress. - add = -15 - has_trait = paranoid - } - } - } + add = -15 + has_trait = deceitful + } + modifier = { # Weight down for stress. + add = -15 + has_trait = arrogant + } + modifier = { # Weight down for stress. + add = -15 + has_trait = paranoid + } + } + } - after = { - clear_court_event_participation = yes - scope:servant ?= { - clear_court_event_participation = yes - } - } + after = { + clear_court_event_participation = yes + scope:servant ?= { + clear_court_event_participation = yes + } + } } @@ -10361,138 +10359,138 @@ scripted_trigger court_8090_barony_trigger = { } court.8090 = { - type = court_event - title = court.8090.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - scope:architect = { has_court_position = royal_architect_court_position } - } - desc = court.8090.desc.intro - } - desc = court.8090.desc.intro_alt - } - desc = court.8090.desc.intro_end - first_valid = { - triggered_desc = { - trigger = { + type = court_event + title = court.8090.t + desc = { + first_valid = { + triggered_desc = { + trigger = { + scope:architect = { has_court_position = royal_architect_court_position } + } + desc = court.8090.desc.intro + } + desc = court.8090.desc.intro_alt + } + desc = court.8090.desc.intro_end + first_valid = { + triggered_desc = { + trigger = { exists = scope:chaplain scope:chaplain = scope:architect } - desc = court.8090.desc.religious - } - desc = court.8090.desc.castle - } - desc = court.8090.desc.outro - first_valid = { - triggered_desc = { - trigger = { exists = scope:chaplain } - desc = court.8090.desc.chaplain - } - desc = court.8090.desc.fallback - } - } - theme = court - cooldown = { years = 10 } - court_scene = { - button_position_character = scope:architect - roles = { - scope:architect = { - group = event_group - animation = throne_room_chancellor - } - scope:steward = { - group = event_group - animation = throne_room_conversation_3 - } - } - } + desc = court.8090.desc.religious + } + desc = court.8090.desc.castle + } + desc = court.8090.desc.outro + first_valid = { + triggered_desc = { + trigger = { exists = scope:chaplain } + desc = court.8090.desc.chaplain + } + desc = court.8090.desc.fallback + } + } + theme = court + cooldown = { years = 10 } + court_scene = { + button_position_character = scope:architect + roles = { + scope:architect = { + group = event_group + animation = throne_room_chancellor + } + scope:steward = { + group = event_group + animation = throne_room_conversation_3 + } + } + } - trigger = { - has_royal_court = yes - exists = cp:councillor_steward - cp:councillor_steward = { - is_available_ai_adult = yes - has_court_event_flag = no - } - any_held_title = { - title_tier = barony - is_leased_out = no - title_province.free_building_slots > 0 + trigger = { + has_royal_court = yes + exists = cp:councillor_steward + cp:councillor_steward = { + is_available_ai_adult = yes + has_court_event_flag = no + } + any_held_title = { + title_tier = barony + is_leased_out = no + title_province.free_building_slots > 0 title_province.county = { - any_county_province = { - has_holding = no - } - } - } - } + any_county_province = { + has_holding = no + } + } + } + } - weight_multiplier = { - base = 1 - ep1_weight_up_for_court_type_modifier = { COURT_TYPE = court_administrative } + weight_multiplier = { + base = 1 + ep1_weight_up_for_court_type_modifier = { COURT_TYPE = court_administrative } modifier = { add = 1 exists = cp:councillor_steward - cp:councillor_steward = { - is_available_ai_adult = yes - has_trait = compassionate - } + cp:councillor_steward = { + is_available_ai_adult = yes + has_trait = compassionate + } } modifier = { any_court_position_holder = { - type = royal_architect_court_position - is_available_ai_adult = yes - has_court_event_flag = no - NOT = { this = root.cp:councillor_steward } - } - add = 2 + type = royal_architect_court_position + is_available_ai_adult = yes + has_court_event_flag = no + NOT = { this = root.cp:councillor_steward } + } + add = 2 } - } + } - immediate = { + immediate = { cp:councillor_steward = { save_scope_as = steward court_event_character_flag_effect = yes } random_court_position_holder = { - type = royal_architect_court_position - limit = { is_available_ai_adult = yes } - save_scope_as = architect - } - if = { - limit = { - NOT = { exists = scope:architect } - } - random_pool_character = { - province = root.location - limit = { - stewardship > 12 - is_adult = yes - } - save_scope_as = architect - hidden_effect = { add_trait = architect } - } - } - if = { - limit = { - NOT = { exists = scope:architect } - } - create_character = { - location = root.location - template = foreign_architect_template - save_scope_as = architect - } - scope:architect = { - add_character_flag = created_character - } - } - scope:architect = { court_event_character_flag_effect = yes } + type = royal_architect_court_position + limit = { is_available_ai_adult = yes } + save_scope_as = architect + } + if = { + limit = { + NOT = { exists = scope:architect } + } + random_pool_character = { + province = root.location + limit = { + stewardship > 12 + is_adult = yes + } + save_scope_as = architect + hidden_effect = { add_trait = architect } + } + } + if = { + limit = { + NOT = { exists = scope:architect } + } + create_character = { + location = root.location + template = foreign_architect_template + save_scope_as = architect + } + scope:architect = { + add_character_flag = created_character + } + } + scope:architect = { court_event_character_flag_effect = yes } ordered_held_title = { # Save barony with least buildings title_tier = barony limit = { is_leased_out = no - title_province.free_building_slots > 0 + title_province.free_building_slots > 0 } order_by = { value = 0 @@ -10560,40 +10558,40 @@ court.8090 = { } } } - } + } - option = { # For my barony + option = { # For my barony name = court.8090.a remove_treasury_or_gold = court_8090_half_building_cost_value scope:my_barony.title_province = { add_random_building_construct_effect = yes } - stress_impact = { + stress_and_fulfillment_impact = { architect = medium_stress_impact_loss # A good idea lazy = medium_stress_impact_gain # Too much work greedy = medium_stress_impact_gain # It will cost _how_ much? } ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -1 - ai_energy = 1 - } - modifier = { #Weight up. - add = 15 - has_trait = architect - } - modifier = { #Weight down for stress. - add = -15 - has_trait = lazy - } - modifier = { #Weight down for stress. - add = -15 - has_trait = greedy - } - modifier = { - gold < court_8090_half_building_cost_value - factor = 0 - } - } + base = 100 + ai_value_modifier = { + ai_greed = -1 + ai_energy = 1 + } + modifier = { #Weight up. + add = 15 + has_trait = architect + } + modifier = { #Weight down for stress. + add = -15 + has_trait = lazy + } + modifier = { #Weight down for stress. + add = -15 + has_trait = greedy + } + modifier = { + gold < court_8090_half_building_cost_value + factor = 0 + } + } } option = { # For the church @@ -10610,34 +10608,34 @@ court.8090 = { opinion = 10 } scope:temple_barony.title_province = { add_random_building_construct_effect = yes } - stress_impact = { + stress_and_fulfillment_impact = { architect = minor_stress_impact_loss # A good idea cynical = medium_stress_impact_gain # God needs no house greedy = medium_stress_impact_gain # It will cost _how_ much? } ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = 1 - ai_boldness = 2 - } - modifier = { #Weight up. - add = 5 - has_trait = architect - } - modifier = { #Weight down for stress. - add = -15 - has_trait = cynical - } - modifier = { #Weight down for stress. - add = -15 - has_trait = greedy - } - modifier = { - gold < court_8090_half_building_cost_value - factor = 0 - } - } + base = 100 + ai_value_modifier = { + ai_vengefulness = 1 + ai_boldness = 2 + } + modifier = { #Weight up. + add = 5 + has_trait = architect + } + modifier = { #Weight down for stress. + add = -15 + has_trait = cynical + } + modifier = { #Weight down for stress. + add = -15 + has_trait = greedy + } + modifier = { + gold < court_8090_half_building_cost_value + factor = 0 + } + } } option = { # Architect can do better @@ -10656,14 +10654,14 @@ court.8090 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain compassionate = medium_stress_impact_gain fickle = medium_stress_impact_gain } ai_chance = { - base = 0 - } + base = 0 + } } option = { # For the people (opt out) @@ -10674,30 +10672,30 @@ court.8090 = { years = 25 } } - stress_impact = { + stress_and_fulfillment_impact = { architect = medium_stress_impact_gain # But my castle! callous = major_stress_impact_gain # The people? Pah diligent = major_stress_impact_gain # I can do it } ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 1 - ai_energy = -1 - } - modifier = { #Weight down for stress. - add = -15 - has_trait = architect - } - modifier = { #Weight down for stress. - add = -30 - has_trait = callous - } - modifier = { #Weight down for stress. - add = -30 - has_trait = diligent - } - } + base = 100 + ai_value_modifier = { + ai_greed = 1 + ai_energy = -1 + } + modifier = { #Weight down for stress. + add = -15 + has_trait = architect + } + modifier = { #Weight down for stress. + add = -30 + has_trait = callous + } + modifier = { #Weight down for stress. + add = -30 + has_trait = diligent + } + } } after = { @@ -10740,129 +10738,146 @@ court.8090 = { ######################### court.8140 = { - type = court_event - title = court.8140.t - desc = court.8140.desc - theme = court - cooldown = { years = 10 } - orphan = yes - court_scene = { - button_position_character = scope:vassal_1 - roles = { - scope:vassal_1 = { - group = event_group - animation = throne_room_kneel_2 - } - scope:vassal_2 = { - group = event_group - animation = throne_room_conversation_4 - } - } - } + type = court_event + title = court.8140.t + desc = court.8140.desc + theme = court + cooldown = { years = 10 } - trigger = { - has_a_stress_coping_trait_trigger = yes - stress_level >= 1 - OR = { - exists = cp:councillor_court_chaplain - exists = cp:councillor_steward - exists = court_position:seneschal_court_position - exists = court_position:travel_leader_court_position - } - OR = { - exists = cp:councillor_marshal - exists = court_position:master_of_hunt_court_position - exists = court_position:master_of_horse_court_position - exists = court_position:court_physician_court_position - } - } + court_scene = { + button_position_character = scope:vassal_1 + roles = { + scope:vassal_1 = { + group = event_group + animation = throne_room_kneel_2 + } + scope:vassal_2 = { + group = event_group + animation = throne_room_conversation_4 + } + } + } - weight_multiplier = { - base = 1 - modifier = { - factor = 2 - has_two_stress_coping_traits_trigger = yes - } - modifier = { - factor = stress_level - stress_level >= 1 - } - } + trigger = { + has_a_stress_coping_trait_trigger = yes + stress_level >= 1 + OR = { + exists = cp:councillor_court_chaplain + exists = cp:councillor_steward + exists = court_position:seneschal_court_position + exists = court_position:travel_leader_court_position + } + OR = { + exists = cp:councillor_marshal + exists = court_position:master_of_hunt_court_position + trigger_if = { + limit = { + NOT = { + any_owned_story = { + story_type = story_cycle_martial_lifestyle_warhorse + } + } + } + exists = court_position:master_of_horse_court_position + } + exists = court_position:court_physician_court_position + } + } - immediate = { - random_list = { - 1 = { - cp:councillor_court_chaplain ?= { save_scope_as = vassal_1 } #prayer - } - 1 = { - cp:councillor_steward ?= { save_scope_as = vassal_1 } #feast - } - 2 = { - court_position:seneschal_court_position ?= { save_scope_as = vassal_1 } #feast - } - 2 = { - court_position:travel_leader_court_position ?= { save_scope_as = vassal_1 } #travel - } - } - random_list = { - 1 = { - cp:councillor_marshal ?= { save_scope_as = vassal_2 } #hunt - } - 2 = { - court_position:master_of_hunt_court_position ?= { save_scope_as = vassal_2 } #hunt - } - 2 = { - trigger = { - NOT = { - any_owned_story = { + weight_multiplier = { + base = 1 + modifier = { + factor = 2 + has_two_stress_coping_traits_trigger = yes + } + modifier = { + factor = stress_level + stress_level >= 1 + } + } + + immediate = { + random_list = { + 1 = { + trigger = { exists = cp:councillor_court_chaplain } + cp:councillor_court_chaplain ?= { save_scope_as = vassal_1 } #prayer + } + 1 = { + trigger = { exists = cp:councillor_steward } + cp:councillor_steward ?= { save_scope_as = vassal_1 } #feast + } + 2 = { + trigger = { exists = court_position:seneschal_court_position } + court_position:seneschal_court_position ?= { save_scope_as = vassal_1 } #feast + } + 2 = { + trigger = { exists = court_position:travel_leader_court_position } + court_position:travel_leader_court_position ?= { save_scope_as = vassal_1 } #travel + } + } + random_list = { + 1 = { + trigger = { exists = cp:councillor_marshal } + cp:councillor_marshal ?= { save_scope_as = vassal_2 } #hunt + } + 2 = { + trigger = { exists = court_position:master_of_hunt_court_position } + court_position:master_of_hunt_court_position ?= { save_scope_as = vassal_2 } #hunt + } + 2 = { + trigger = { + NOT = { + any_owned_story = { type = story_cycle_martial_lifestyle_warhorse } } - } - court_position:master_of_horse_court_position ?= { save_scope_as = vassal_2 } #horse - } - 2 = { - court_position:court_physician_court_position ?= { save_scope_as = vassal_2 } #fresh air - } - } - } + exists = court_position:master_of_horse_court_position + } + court_position:master_of_horse_court_position ?= { save_scope_as = vassal_2 } #horse + } + 2 = { + trigger = { exists = court_position:court_physician_court_position } + court_position:court_physician_court_position ?= { save_scope_as = vassal_2 } #fresh air + } + } + } - option = { # Engage in stress coping - name = court.8140.b - flavor = court.8140.b.flavor_tt - change_current_court_grandeur = medium_court_grandeur_loss - scope:vassal_1 = { - add_opinion = { - target = root - modifier = annoyed_opinion - opinion = -15 - } - } - scope:vassal_2 = { - add_opinion = { - target = root - modifier = annoyed_opinion - opinion = -15 - } - } - stress_impact = { - base = massive_stress_impact_loss - } - ai_chance = { - base = 100 - ai_value_modifier = { + option = { # Engage in stress coping + name = court.8140.b + flavor = court.8140.b.flavor_tt + change_current_court_grandeur = medium_court_grandeur_loss + scope:vassal_1 = { + add_opinion = { + target = root + modifier = annoyed_opinion + opinion = -15 + } + } + scope:vassal_2 = { + add_opinion = { + target = root + modifier = annoyed_opinion + opinion = -15 + } + } + stress_and_fulfillment_impact = { + base = massive_stress_impact_loss + } + ai_chance = { + base = 100 + ai_value_modifier = { ai_compassion = -1 ai_energy = -1 } - modifier = { - add = -30 - has_trait = diligent - } - } - } + modifier = { + add = -30 + has_trait = diligent + } + } + } - option = { # vassal_1 proposal - name = { + option = { # vassal_1 proposal + name = { trigger = { #prayer scope:vassal_1 = cp:councillor_court_chaplain } @@ -10883,47 +10898,47 @@ court.8140 = { } text = court.8140.c.3 } - flavor = court.8140.c.flavor_tt - if = { #prayer - limit = { - scope:vassal_1 = cp:councillor_court_chaplain - } - add_piety = major_piety_gain - custom_tooltip = court.8140.c.tt.2 - add_character_flag = { - flag = court_event_discount_pilgrimage - years = 10 - } - } - else_if = { #feats - limit = { - OR = { + flavor = court.8140.c.flavor_tt + if = { #prayer + limit = { + scope:vassal_1 = cp:councillor_court_chaplain + } + add_piety = major_piety_gain + custom_tooltip = court.8140.c.tt.2 + add_character_flag = { + flag = court_event_discount_pilgrimage + years = 10 + } + } + else_if = { #feats + limit = { + OR = { scope:vassal_1 = cp:councillor_steward scope:vassal_1 = court_position:seneschal_court_position } - } - custom_tooltip = court.8140.c.tt - add_character_flag = { - flag = court_event_discount_feast - years = 5 - } - } - else = { #travel - add_character_modifier = { - modifier = enjoy_the_travel_modifier - years = 25 - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 1 } - } - } + custom_tooltip = court.8140.c.tt + add_character_flag = { + flag = court_event_discount_feast + years = 5 + } + } + else = { #travel + add_character_modifier = { + modifier = enjoy_the_travel_modifier + years = 25 + } + } + ai_chance = { + base = 100 + ai_value_modifier = { + ai_energy = 1 + } + } + } - option = { # vassal_2 proposal - name = { + option = { # vassal_2 proposal + name = { trigger = { #hunt OR = { scope:vassal_2 = cp:councillor_marshal @@ -10944,79 +10959,79 @@ court.8140 = { } text = court.8140.d.3 } - flavor = court.8140.d.flavor_tt - if = { #hunt - limit = { - OR = { + flavor = court.8140.d.flavor_tt + if = { #hunt + limit = { + OR = { scope:vassal_2 = cp:councillor_marshal scope:vassal_2 = court_position:master_of_hunt_court_position } - } - custom_tooltip = court.8140.d.tt - add_character_flag = { - flag = court_event_discount_hunt - years = 5 - } - } - else_if = { - limit = { - scope:vassal_2 = court_position:master_of_horse_court_position - } - start_warhorse_story_cycle_effect = yes - } - else = { - add_character_modifier = { - modifier = healthy_strolls_modifier - years = 25 - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 1 } - } - } + custom_tooltip = court.8140.d.tt + add_character_flag = { + flag = court_event_discount_hunt + years = 5 + } + } + else_if = { + limit = { + scope:vassal_2 = court_position:master_of_horse_court_position + } + start_warhorse_story_cycle_effect = yes + } + else = { + add_character_modifier = { + modifier = healthy_strolls_modifier + years = 25 + } + } + ai_chance = { + base = 100 + ai_value_modifier = { + ai_energy = 1 + } + } + } - option = { # Make an effort (opt out) - name = court.8140.a - flavor = court.8140.a.flavor_tt - change_current_court_grandeur = medium_court_grandeur_gain - stress_impact = { - base = minor_stress_impact_gain - } - ai_chance = { - base = 0 - ai_value_modifier = { + option = { # Make an effort (opt out) + name = court.8140.a + flavor = court.8140.a.flavor_tt + change_current_court_grandeur = medium_court_grandeur_gain + stress_and_fulfillment_impact = { + base = minor_stress_impact_gain + } + ai_chance = { + base = 0 + ai_value_modifier = { ai_rationality = 0.5 } - modifier = { - add = -15 - has_trait = fickle - } - modifier = { - add = -15 - has_trait = callous - } - modifier = { - add = -15 - has_trait = arbitrary - } - modifier = { - add = -15 - has_trait = lazy - } - } - } + modifier = { + add = -15 + has_trait = fickle + } + modifier = { + add = -15 + has_trait = callous + } + modifier = { + add = -15 + has_trait = arbitrary + } + modifier = { + add = -15 + has_trait = lazy + } + } + } - after = { - scope:vassal_1 = { - clear_court_event_participation = yes - } - scope:vassal_2 = { - clear_court_event_participation = yes - } - } + after = { + scope:vassal_1 = { + clear_court_event_participation = yes + } + scope:vassal_2 = { + clear_court_event_participation = yes + } + } } ######################### @@ -11057,170 +11072,170 @@ scripted_trigger court_8150_vassal_trigger = { } court.8150 = { - type = court_event - title = court.8150.t - desc = { - desc = court.8150.desc.intro - triggered_desc = { + type = court_event + title = court.8150.t + desc = { + desc = court.8150.desc.intro + triggered_desc = { trigger = { exists = scope:food_taster } desc = court.8150.desc.taster } - desc = court.8150.desc.body - first_valid = { - triggered_desc = { - trigger = { - exists = scope:high_almoner - exists = scope:chaplain - } - desc = court.8150.desc.almoner_chaplain - } - triggered_desc = { - trigger = { exists = scope:chaplain } - desc = court.8150.desc.chaplain - } - triggered_desc = { - trigger = { exists = scope:high_almoner } - desc = court.8150.desc.almoner - } - } - } - theme = court - cooldown = { years = 10 } - court_scene = { - button_position_character = scope:vassal_1 - roles = { - scope:vassal_1 = { - group = event_group - animation = throne_room_conversation_1 - } - scope:vassal_2 = { - group = event_group - animation = throne_room_conversation_2 - } - scope:vassal_3 = { - group = event_group - animation = throne_room_conversation_3 - } - } - } - - trigger = { - NOT = { - faith = { has_doctrine = tenet_ritual_celebrations } + desc = court.8150.desc.body + first_valid = { + triggered_desc = { + trigger = { + exists = scope:high_almoner + exists = scope:chaplain + } + desc = court.8150.desc.almoner_chaplain + } + triggered_desc = { + trigger = { exists = scope:chaplain } + desc = court.8150.desc.chaplain + } + triggered_desc = { + trigger = { exists = scope:high_almoner } + desc = court.8150.desc.almoner + } } - amenity_level = { target = court_food_quality value >= high_amenity_level } - OR = { - AND = { - is_married = yes - primary_spouse = { - court_8150_vassal_trigger = yes - has_court_event_flag = no - } - any_courtier_or_guest = { - count >= 2 + } + theme = court + cooldown = { years = 10 } + court_scene = { + button_position_character = scope:vassal_1 + roles = { + scope:vassal_1 = { + group = event_group + animation = throne_room_conversation_1 + } + scope:vassal_2 = { + group = event_group + animation = throne_room_conversation_2 + } + scope:vassal_3 = { + group = event_group + animation = throne_room_conversation_3 + } + } + } + + trigger = { + NOT = { + rite = { rite_has_tenet = tenet_ritual_celebrations } + } + amenity_level = { target = court_food_quality value >= high_amenity_level } + OR = { + AND = { + is_married = yes + primary_spouse = { + court_8150_vassal_trigger = yes + has_court_event_flag = no + } + any_courtier_or_guest = { + count >= 2 court_8150_foodie_trigger = yes has_court_event_flag = no - } - } - any_courtier_or_guest = { + } + } + any_courtier_or_guest = { count >= 3 court_8150_foodie_trigger = yes has_court_event_flag = no } - } - } + } + } - weight_multiplier = { - base = 1 - modifier = { - add = 1 - amenity_level = { target = court_food_quality value > very_high_amenity_level } - } - modifier = { - add = 1 - employs_court_position = high_almoner_court_position - } - modifier = { - add = 1 - employs_court_position = food_taster_court_position - } - } + weight_multiplier = { + base = 1 + modifier = { + add = 1 + amenity_level = { target = court_food_quality value > very_high_amenity_level } + } + modifier = { + add = 1 + employs_court_position = high_almoner_court_position + } + modifier = { + add = 1 + employs_court_position = food_taster_court_position + } + } - immediate = { - if = { - limit = { - exists = cp:councillor_court_chaplain - cp:councillor_court_chaplain = { - is_available_ai_adult = yes - NOR = { - has_trait = gluttonous - faith = { has_doctrine = tenet_hedonistic } - faith = { has_doctrine = tenet_carnal_exaltation } - } - } - } - cp:councillor_court_chaplain = { save_scope_as = chaplain } + immediate = { + if = { + limit = { + exists = cp:councillor_court_chaplain + cp:councillor_court_chaplain = { + is_available_ai_adult = yes + NOR = { + has_trait = gluttonous + rite = { rite_has_tenet = tenet_hedonistic } + rite = { rite_has_tenet = tenet_carnal_exaltation } + } + } + } + cp:councillor_court_chaplain = { save_scope_as = chaplain } } if = { - limit = { - employs_court_position = high_almoner_court_position + limit = { + employs_court_position = high_almoner_court_position any_court_position_holder = { type = high_almoner_court_position is_available_ai_adult = yes NOR = { has_trait = gluttonous - faith = { has_doctrine = tenet_hedonistic } - faith = { has_doctrine = tenet_carnal_exaltation } + rite = { rite_has_tenet = tenet_hedonistic } + rite = { rite_has_tenet = tenet_carnal_exaltation } } trigger_if = { limit = { exists = scope:chaplain } this != scope:chaplain } } - } - random_court_position_holder = { + } + random_court_position_holder = { type = high_almoner_court_position limit = { is_available_healthy_ai_adult = yes NOR = { has_trait = gluttonous - faith = { has_doctrine = tenet_hedonistic } - faith = { has_doctrine = tenet_carnal_exaltation } + rite = { rite_has_tenet = tenet_hedonistic } + rite = { rite_has_tenet = tenet_carnal_exaltation } } trigger_if = { limit = { exists = scope:chaplain } this != scope:chaplain } - } + } save_scope_as = high_almoner } - } - if = { - limit = { - employs_court_position = food_taster_court_position + } + if = { + limit = { + employs_court_position = food_taster_court_position any_court_position_holder = { type = food_taster_court_position is_available_healthy_ai_adult = yes } - } - random_court_position_holder = { + } + random_court_position_holder = { type = food_taster_court_position limit = { is_available_ai_adult = yes } save_scope_as = food_taster hidden_effect = { change_current_weight = 25 } } - } - if = { - limit = { - is_married = yes - primary_spouse = { court_8150_vassal_trigger = yes } - } - primary_spouse = { save_scope_as = vassal_1 } - } - else = { - random_courtier_or_guest = { - limit = { court_8150_vassal_trigger = yes } - weight = { + } + if = { + limit = { + is_married = yes + primary_spouse = { court_8150_vassal_trigger = yes } + } + primary_spouse = { save_scope_as = vassal_1 } + } + else = { + random_courtier_or_guest = { + limit = { court_8150_vassal_trigger = yes } + weight = { modifier = { factor = 2 has_any_court_position = yes @@ -11238,11 +11253,11 @@ court.8150 = { is_courtier = yes } } - save_scope_as = vassal_1 - court_event_character_flag_effect = yes - hidden_effect = { change_current_weight = 15 } - } - } + save_scope_as = vassal_1 + court_event_character_flag_effect = yes + hidden_effect = { change_current_weight = 15 } + } + } random_courtier_or_guest = { limit = { court_8150_vassal_trigger = yes } weight = { @@ -11307,45 +11322,45 @@ court.8150 = { } } } - } + } - option = { # Chow down - name = court.8150.a - change_current_court_grandeur = major_court_grandeur_gain - if = { - limit = { - exists = scope:food_taster - } - custom_tooltip = court.8150.a.tt - scope:food_taster = { - add_character_flag = food_taster_mettle_tested - } - } - if = { - limit = { exists = scope:chaplain } - reverse_add_opinion = { - modifier = disgusted_opinion - target = scope:chaplain - opinion = -10 - } - } - if = { - limit = { exists = scope:high_almoner } - reverse_add_opinion = { - modifier = disgusted_opinion - target = scope:high_almoner - opinion = -10 - } - } - hidden_effect = { change_current_weight = 20 } - stress_impact = { - lifestyle_reveler = medium_stress_impact_loss - comfort_eater = medium_stress_impact_loss - gluttonous = minor_stress_impact_loss - temperate = major_stress_impact_gain - inappetetic = massive_stress_impact_gain - } - ai_chance = { + option = { # Chow down + name = court.8150.a + change_current_court_grandeur = major_court_grandeur_gain + if = { + limit = { + exists = scope:food_taster + } + custom_tooltip = court.8150.a.tt + scope:food_taster = { + add_character_flag = food_taster_mettle_tested + } + } + if = { + limit = { exists = scope:chaplain } + reverse_add_opinion = { + modifier = disgusted_opinion + target = scope:chaplain + opinion = -10 + } + } + if = { + limit = { exists = scope:high_almoner } + reverse_add_opinion = { + modifier = disgusted_opinion + target = scope:high_almoner + opinion = -10 + } + } + hidden_effect = { change_current_weight = 20 } + stress_and_fulfillment_impact = { + lifestyle_reveler = medium_stress_impact_loss + comfort_eater = medium_stress_impact_loss + gluttonous = minor_stress_impact_loss + temperate = major_stress_impact_gain + inappetetic = massive_stress_impact_gain + } + ai_chance = { base = 100 ai_value_modifier = { ai_greed = 1 @@ -11372,48 +11387,48 @@ court.8150 = { has_trait = inappetetic } } - } + } - option = { # Stop foodies - name = court.8150.c - add_legitimacy = miniscule_legitimacy_gain - if = { - limit = { - NOT = { - faith = { has_doctrine = tenet_hedonistic } - } - } - add_piety = medium_piety_gain - } - if = { - limit = { exists = scope:chaplain } - reverse_add_opinion = { - modifier = pleased_opinion - target = scope:chaplain - opinion = 10 - } - } - if = { - limit = { - exists = scope:high_almoner - } - custom_tooltip = court.8150.b.tt - scope:high_almoner = { - add_character_flag = plenty_to_donate_almoner - add_opinion = { - modifier = pleased_opinion - target = root - opinion = 10 - } - } - } - stress_impact = { - gluttonous = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - profligate = medium_stress_impact_gain - cynical = medium_stress_impact_gain - } - ai_chance = { + option = { # Stop foodies + name = court.8150.c + add_legitimacy_effect = { LEGITIMACY = miniscule_legitimacy_gain } + if = { + limit = { + NOT = { + rite = { rite_has_tenet = tenet_hedonistic } + } + } + add_piety = medium_piety_gain + } + if = { + limit = { exists = scope:chaplain } + reverse_add_opinion = { + modifier = pleased_opinion + target = scope:chaplain + opinion = 10 + } + } + if = { + limit = { + exists = scope:high_almoner + } + custom_tooltip = court.8150.b.tt + scope:high_almoner = { + add_character_flag = plenty_to_donate_almoner + add_opinion = { + modifier = pleased_opinion + target = root + opinion = 10 + } + } + } + stress_and_fulfillment_impact = { + gluttonous = medium_stress_impact_gain + arrogant = medium_stress_impact_gain + profligate = medium_stress_impact_gain + cynical = medium_stress_impact_gain + } + ai_chance = { base = 100 ai_value_modifier = { ai_greed = -1 @@ -11440,12 +11455,12 @@ court.8150 = { has_trait = temperate } } - } + } - after = { - scope:vassal_1 = { - clear_court_event_participation = yes - } + after = { + scope:vassal_1 = { + clear_court_event_participation = yes + } if = { limit = { exists = scope:vassal_2 @@ -11568,15 +11583,19 @@ court.8160 = { name = court.8160.a trigger = { OR = { - any_court_position_holder = { - type = bodyguard_court_position - count < 1 + AND = { + any_court_position_holder = { + type = bodyguard_court_position + count < 1 + } + can_employ_court_position_type = bodyguard_court_position } AND = { any_court_position_holder = { type = bodyguard_court_position count < 2 } + can_employ_court_position_type = bodyguard_court_position NOT = { employs_court_position = champion_court_position } } AND = { @@ -11584,34 +11603,56 @@ court.8160 = { type = bodyguard_court_position count < 2 } + can_employ_court_position_type = bodyguard_court_position NOT = { employs_court_position = akolouthos_court_position } can_employ_court_position_type = akolouthos_court_position } - } - } - court_position_grant_effect = { POS = bodyguard CANDIDATE = scope:knight_1 EMPLOYER = root } - if = { - limit = { - any_court_position_holder = { - type = bodyguard_court_position - count = 1 + AND = { # If both bodyguard are filled, check if akolouthos & champion are available + any_court_position_holder = { + type = bodyguard_court_position + count = 2 + } + NOT = { employs_court_position = akolouthos_court_position } + can_employ_court_position_type = akolouthos_court_position + NOT = { employs_court_position = champion_court_position } } } - court_position_grant_effect = { POS = bodyguard CANDIDATE = scope:knight_2 EMPLOYER = root } } - else_if = { - limit = { - NOT = { employs_court_position = champion_court_position } + if = { + limit = { # No bodyguard, fill the 2 slots + any_court_position_holder = { + type = bodyguard_court_position + count < 1 + } } - court_position_grant_effect = { POS = champion CANDIDATE = scope:knight_2 EMPLOYER = root } - } - else = { - court_position_grant_effect = { POS = akolouthos CANDIDATE = scope:knight_2 EMPLOYER = root } - } + court_position_grant_effect = { POS = bodyguard CANDIDATE = scope:knight_1 EMPLOYER = root } + court_position_grant_effect = { POS = bodyguard CANDIDATE = scope:knight_2 EMPLOYER = root } + } + else_if = { + limit = { # 1 bodyguard, fill the other with either the champion or the akolouthos + any_court_position_holder = { + type = bodyguard_court_position + count < 2 + } + } + if = { + limit = { NOT = { employs_court_position = champion_court_position } } + court_position_grant_effect = { POS = champion CANDIDATE = scope:knight_2 EMPLOYER = root } + } + else = { + court_position_grant_effect = { POS = akolouthos CANDIDATE = scope:knight_2 EMPLOYER = root } + } + court_position_grant_effect = { POS = bodyguard CANDIDATE = scope:knight_1 EMPLOYER = root } + } + else = { #No bodyguard slot, so fill both champion & akolouthos + court_position_grant_effect = { POS = champion CANDIDATE = scope:knight_1 EMPLOYER = root } + court_position_grant_effect = { POS = akolouthos CANDIDATE = scope:knight_2 EMPLOYER = root } + } + custom_tooltip = court.8160.a.tt scope:knight_1 = { add_character_flag = competing_knight_position } scope:knight_2 = { add_character_flag = competing_knight_position } - stress_impact = { + stress_and_fulfillment_impact = { wrathful = medium_stress_impact_gain fickle = medium_stress_impact_gain arbitrary = medium_stress_impact_gain @@ -11661,7 +11702,7 @@ court.8160 = { OUTPUT_EVENT = court.8162 INVALIDATION_EVENT = fp1_tbc.0102 } - stress_impact = { + stress_and_fulfillment_impact = { craven = medium_stress_impact_gain deceitful = medium_stress_impact_gain } @@ -11690,7 +11731,7 @@ court.8160 = { modifier = disappointed_opinion opinion = -5 } - stress_impact = { + stress_and_fulfillment_impact = { arbitrary = medium_stress_impact_gain wrathful = medium_stress_impact_gain vengeful = medium_stress_impact_gain @@ -11753,10 +11794,10 @@ court.8162 = { scripted_trigger kinslayer_crime_trigger = { AND = { - liege.faith = { + liege.rite = { NOR = { - has_doctrine = doctrine_kinslaying_accepted - has_doctrine = doctrine_kinslaying_shunned + rite_has_doctrine = doctrine_kinslaying_accepted + rite_has_doctrine = doctrine_kinslaying_shunned } } OR = { @@ -11770,7 +11811,7 @@ scripted_trigger kinslayer_crime_trigger = { scripted_trigger cannibal_crime_trigger = { AND = { NOT = { - liege.faith = { has_doctrine = tenet_ritual_cannibalism } + liege.rite = { rite_has_tenet = tenet_ritual_cannibalism } } has_trait = cannibal } @@ -11778,21 +11819,21 @@ scripted_trigger cannibal_crime_trigger = { scripted_trigger witch_crime_trigger = { AND = { - liege.faith = { has_doctrine_parameter = witchcraft_illegal } + liege.rite = { rite_has_parameter = witchcraft_illegal } has_trait = witch } } scripted_trigger deviant_crime_trigger = { AND = { - liege.faith = { has_doctrine_parameter = deviancy_illegal } + liege.rite = { rite_has_parameter = deviancy_illegal } has_trait = deviant } } scripted_trigger sodomite_crime_trigger = { AND = { - liege.faith = { has_doctrine = doctrine_homosexuality_crime } + liege.rite = { rite_has_doctrine = doctrine_homosexuality_crime } is_male = yes has_trait = sodomite } @@ -11800,8 +11841,8 @@ scripted_trigger sodomite_crime_trigger = { scripted_trigger incest_crime_trigger = { AND = { - liege.faith = { - NOT = { has_doctrine = doctrine_consanguinity_unrestricted } + liege.rite = { + NOT = { rite_has_doctrine = doctrine_consanguinity_unrestricted } } has_trait = incestuous } @@ -11811,11 +11852,11 @@ scripted_trigger adultery_crime_trigger = { AND = { OR = { AND = { - liege.faith = { has_doctrine = doctrine_adultery_women_crime } + liege.rite = { rite_has_doctrine = doctrine_adultery_women_crime } is_female = yes } AND = { - liege.faith = { has_doctrine = doctrine_adultery_men_crime } + liege.rite = { rite_has_doctrine = doctrine_adultery_men_crime } is_male = yes } } @@ -11863,6 +11904,7 @@ scripted_trigger is_illegal_criminal_trigger = { scripted_trigger court_8170_criminal_trigger = { is_imprisoned = no is_landed = no + is_adult = yes is_illegal_criminal_trigger = yes NOR = { has_relation_lover = root @@ -11873,33 +11915,33 @@ scripted_trigger court_8170_criminal_trigger = { scripted_effect court_8170_torture_etc_end_effect = { if = { limit = { has_relation_friend = scope:criminal } - stress_impact = { base = major_stress_impact_gain } + stress_and_fulfillment_impact = { base = major_stress_impact_gain } } if = { limit = { is_close_family_of = scope:criminal } - stress_impact = { base = medium_stress_impact_gain } + stress_and_fulfillment_impact = { base = medium_stress_impact_gain } } if = { limit = { is_extended_family_of = scope:criminal } - stress_impact = { base = minor_stress_impact_gain } + stress_and_fulfillment_impact = { base = minor_stress_impact_gain } } if = { limit = { has_relation_rival = scope:criminal } - stress_impact = { base = medium_stress_impact_loss } + stress_and_fulfillment_impact = { base = medium_stress_impact_loss } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = major_stress_impact_gain } } scripted_effect court_8170_torture_etc_setup_effect = { change_current_court_grandeur = medium_court_grandeur_gain - add_legitimacy = miniscule_legitimacy_gain - add_character_modifier = { - modifier = fast_hard_justice_modifier - years = 10 - } - rightfully_imprison_character_effect = { + add_legitimacy_effect = { LEGITIMACY = miniscule_legitimacy_gain } + add_character_modifier = { + modifier = fast_hard_justice_modifier + years = 10 + } + rightfully_imprison_character_effect = { TARGET = scope:criminal IMPRISONER = root } @@ -11909,9 +11951,9 @@ scripted_effect court_8170_torture_etc_setup_effect = { } court.8170 = { - type = court_event - title = court.8170.t - desc = { + type = court_event + title = court.8170.t + desc = { first_valid = { triggered_desc = { trigger = { @@ -11951,7 +11993,7 @@ court.8170 = { } desc = court.8170.desc.intro_fallback } - desc = court.8170.desc.body + desc = court.8170.desc.body first_valid = { triggered_desc = { trigger = { @@ -11967,125 +12009,125 @@ court.8170 = { } desc = court.8170.desc.fallback } - } - theme = court - cooldown = { years = 10 } - court_scene = { - button_position_character = scope:criminal - roles = { - scope:criminal = { - group = event_group - animation = shame - } - } - } - - trigger = { - NOT = { court_8170_criminal_trigger = yes } - any_courtier_or_guest = { - court_8170_criminal_trigger = yes - has_court_event_flag = no + } + theme = court + cooldown = { years = 10 } + court_scene = { + button_position_character = scope:criminal + roles = { + scope:criminal = { + group = event_group + animation = shame + } } - } + } - weight_multiplier = { - base = 1 - modifier = { - any_courtier_or_guest = { - is_close_or_extended_family_of = root - court_8170_criminal_trigger = yes - } - add = 1 - } - modifier = { - any_courtier_or_guest = { - is_of_major_or_minor_interest_trigger = { CHARACTER = root } - court_8170_criminal_trigger = yes - } - add = 0.5 - } - } + trigger = { + NOT = { court_8170_criminal_trigger = yes } + any_courtier_or_guest = { + court_8170_criminal_trigger = yes + has_court_event_flag = no + } + } - immediate = { - random_courtier_or_guest = { - limit = { - is_close_or_extended_family_of = root - court_8170_criminal_trigger = yes - } - alternative_limit = { - is_of_major_or_minor_interest_trigger = { CHARACTER = root } - court_8170_criminal_trigger = yes - } - alternative_limit = { - is_courtier = yes - court_8170_criminal_trigger = yes - } - alternative_limit = { court_8170_criminal_trigger = yes } - save_scope_as = criminal - court_event_character_flag_effect = yes - } - } + weight_multiplier = { + base = 1 + modifier = { + any_courtier_or_guest = { + is_close_or_extended_family_of = root + court_8170_criminal_trigger = yes + } + add = 1 + } + modifier = { + any_courtier_or_guest = { + is_of_major_or_minor_interest_trigger = { CHARACTER = root } + court_8170_criminal_trigger = yes + } + add = 0.5 + } + } - option = { # Let them stay: dark deals to protect you - name = { - text = court.8170.a.family - trigger = { - scope:criminal = { is_close_or_extended_family_of = root } - } - } - name = { - text = court.8170.a.other - trigger = { - NOT = { - scope:criminal = { is_close_or_extended_family_of = root } - } - } - } - change_current_court_grandeur = medium_court_grandeur_loss - add_character_modifier = { - modifier = harbors_criminals_modifier - years = 10 - } - reverse_add_opinion = { - target = scope:criminal - modifier = grateful_opinion - opinion = 10 - } - stress_impact = { - just = major_stress_impact_gain - vengeful = medium_stress_impact_gain - diligent = medium_stress_impact_gain - honest = medium_stress_impact_gain - zealous = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - has_trait = just - add = -75 - } - modifier = { - has_trait = diligent - add = -50 - } - modifier = { - has_trait = honest - add = -50 - } - ai_value_modifier = { - ai_zeal = -0.5 - ai_vengefulness = -1 - } - } - } + immediate = { + random_courtier_or_guest = { + limit = { + is_close_or_extended_family_of = root + court_8170_criminal_trigger = yes + } + alternative_limit = { + is_of_major_or_minor_interest_trigger = { CHARACTER = root } + court_8170_criminal_trigger = yes + } + alternative_limit = { + is_courtier = yes + court_8170_criminal_trigger = yes + } + alternative_limit = { court_8170_criminal_trigger = yes } + save_scope_as = criminal + court_event_character_flag_effect = yes + } + } - option = { # Big deal of punishing them: blind - name = court.8170.c1 - trigger = { - scope:criminal = { NOT = { has_trait = blind } } + option = { # Let them stay: dark deals to protect you + name = { + text = court.8170.a.family + trigger = { + scope:criminal = { is_close_or_extended_family_of = root } + } + } + name = { + text = court.8170.a.other + trigger = { + NOT = { + scope:criminal = { is_close_or_extended_family_of = root } + } + } + } + change_current_court_grandeur = medium_court_grandeur_loss + add_character_modifier = { + modifier = harbors_criminals_modifier + years = 10 + } + reverse_add_opinion = { + target = scope:criminal + modifier = grateful_opinion + opinion = 10 + } + stress_and_fulfillment_impact = { + just = major_stress_impact_gain + vengeful = medium_stress_impact_gain + diligent = medium_stress_impact_gain + honest = medium_stress_impact_gain + zealous = medium_stress_impact_gain + } + ai_chance = { + base = 100 + modifier = { + has_trait = just + add = -75 + } + modifier = { + has_trait = diligent + add = -50 + } + modifier = { + has_trait = honest + add = -50 + } + ai_value_modifier = { + ai_zeal = -0.5 + ai_vengefulness = -1 + } + } + } + + option = { # Big deal of punishing them: blind + name = court.8170.c1 + trigger = { + scope:criminal = { NOT = { has_trait = blind } } culture = { has_cultural_parameter = can_blind_prisoners } - } - court_8170_torture_etc_setup_effect = yes + } + court_8170_torture_etc_setup_effect = yes blind_recipient_effect = yes # House Feud add_character_flag = house_feud_blinding_flag @@ -12111,7 +12153,7 @@ court.8170 = { } } } - court_8170_torture_etc_setup_effect = yes + court_8170_torture_etc_setup_effect = yes castrate_recipient_effect = yes # House Feud add_character_flag = house_feud_castration_flag @@ -12165,44 +12207,44 @@ court.8170 = { } } - option = { # Kick out - opt out - name = court.8170.d - change_current_court_grandeur = minor_court_grandeur_gain - if = { - limit = { has_relation_friend = scope:criminal } - stress_impact = { base = medium_stress_impact_gain } - } - if = { - limit = { is_close_family_of = scope:criminal } - stress_impact = { base = minor_stress_impact_gain } - } - if = { - limit = { is_extended_family_of = scope:criminal } - stress_impact = { base = miniscule_stress_impact_gain } - } + option = { # Kick out - opt out + name = court.8170.d + change_current_court_grandeur = minor_court_grandeur_gain + if = { + limit = { has_relation_friend = scope:criminal } + stress_and_fulfillment_impact = { base = medium_stress_impact_gain } + } + if = { + limit = { is_close_family_of = scope:criminal } + stress_and_fulfillment_impact = { base = minor_stress_impact_gain } + } + if = { + limit = { is_extended_family_of = scope:criminal } + stress_and_fulfillment_impact = { base = miniscule_stress_impact_gain } + } if = { - limit = { has_relation_rival = scope:criminal } - stress_impact = { base = medium_stress_impact_loss } - } - stress_impact = { - compassionate = minor_stress_impact_gain - } - hidden_effect = { - scope:criminal = { select_and_move_to_pool_effect = yes } - } - show_as_tooltip = { remove_courtier_or_guest = scope:criminal } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = -1 - } - } - } - after = { - scope:criminal ?= { - clear_court_event_participation = yes - } - } + limit = { has_relation_rival = scope:criminal } + stress_and_fulfillment_impact = { base = medium_stress_impact_loss } + } + stress_and_fulfillment_impact = { + compassionate = minor_stress_impact_gain + } + hidden_effect = { + scope:criminal = { select_and_move_to_pool_effect = yes } + } + show_as_tooltip = { remove_courtier_or_guest = scope:criminal } + ai_chance = { + base = 100 + ai_value_modifier = { + ai_energy = -1 + } + } + } + after = { + scope:criminal ?= { + clear_court_event_participation = yes + } + } } ######################### @@ -12224,93 +12266,93 @@ scripted_trigger court_8180_relation_trigger = { } court.8180 = { - type = court_event - title = court.8180.t - desc = court.8180.desc.intro - theme = court - cooldown = { years = 10 } - court_scene = { - button_position_character = scope:criminal - roles = { - scope:criminal = { - group = event_group - animation = worry - } - } - } + type = court_event + title = court.8180.t + desc = court.8180.desc.intro + theme = court + cooldown = { years = 10 } + court_scene = { + button_position_character = scope:criminal + roles = { + scope:criminal = { + group = event_group + animation = worry + } + } + } - trigger = { - any_courtier_or_guest = { - court_8180_relation_trigger = yes + trigger = { + any_courtier_or_guest = { + court_8180_relation_trigger = yes has_court_event_flag = no } - } + } - weight_multiplier = { - base = 1 - modifier = { - cp:councillor_spymaster.intrigue >= 15 - add = 1 - } - modifier = { - cp:councillor_spymaster ?= { is_performing_council_task = task_find_secrets } - add = 1 - } - } + weight_multiplier = { + base = 1 + modifier = { + cp:councillor_spymaster.intrigue >= 15 + add = 1 + } + modifier = { + cp:councillor_spymaster ?= { is_performing_council_task = task_find_secrets } + add = 1 + } + } - immediate = { - random_courtier_or_guest = { - limit = { - court_8180_relation_trigger = yes - has_court_event_flag = no - } - save_scope_as = criminal - court_event_character_flag_effect = yes - random_secret = { - limit = { court_8180_secret_trigger = yes } - save_scope_as = criminal_secret - } - } - save_scope_as = knower # custom_loc - save_scope_as = actor # blackmail interaction - scope:criminal = { save_scope_as = recipient } # blackmail interaction - scope:criminal_secret = { save_scope_as = target } # blackmail interaction - } + immediate = { + random_courtier_or_guest = { + limit = { + court_8180_relation_trigger = yes + has_court_event_flag = no + } + save_scope_as = criminal + court_event_character_flag_effect = yes + random_secret = { + limit = { court_8180_secret_trigger = yes } + save_scope_as = criminal_secret + } + } + save_scope_as = knower # custom_loc + save_scope_as = actor # blackmail interaction + scope:criminal = { save_scope_as = recipient } # blackmail interaction + scope:criminal_secret = { save_scope_as = target } # blackmail interaction + } - option = { # Blackmail - name = court.8180.b - trigger = { - NOT = { has_hook = scope:criminal } - } - blackmail_interaction_effect = yes - scope:criminal = { - add_character_modifier = { - modifier = liege_scrutiny_modifier - years = 20 - } - } - stress_impact = { - forgiving = major_stress_impact_gain - honest = medium_stress_impact_gain - gregarious = medium_stress_impact_gain - lazy = minor_stress_impact_gain - compassionate = minor_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = 0.5 - ai_compassion = -0.5 - } - } - } + option = { # Blackmail + name = court.8180.b + trigger = { + NOT = { has_hook = scope:criminal } + } + blackmail_interaction_effect = yes + scope:criminal = { + add_character_modifier = { + modifier = liege_scrutiny_modifier + years = 20 + } + } + stress_and_fulfillment_impact = { + forgiving = major_stress_impact_gain + honest = medium_stress_impact_gain + gregarious = medium_stress_impact_gain + lazy = minor_stress_impact_gain + compassionate = minor_stress_impact_gain + } + ai_chance = { + base = 100 + ai_value_modifier = { + ai_vengefulness = 0.5 + ai_compassion = -0.5 + } + } + } - option = { # Punish - name = court.8180.c - change_current_court_grandeur = minor_court_grandeur_loss - scope:criminal_secret = { expose_secret = root } - hidden_effect = { - rightfully_imprison_character_effect = { + option = { # Punish + name = court.8180.c + change_current_court_grandeur = minor_court_grandeur_loss + scope:criminal_secret = { expose_secret = root } + hidden_effect = { + rightfully_imprison_character_effect = { TARGET = scope:criminal IMPRISONER = root } @@ -12323,41 +12365,41 @@ court.8180 = { years = 15 } custom_tooltip = court.6002.a.tt2 - stress_impact = { - arbitrary = minor_stress_impact_gain - cynical = minor_stress_impact_gain - deceitful = medium_stress_impact_gain - compassionate = medium_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 0.5 - ai_zeal = 0.5 - } - } - } + stress_and_fulfillment_impact = { + arbitrary = minor_stress_impact_gain + cynical = minor_stress_impact_gain + deceitful = medium_stress_impact_gain + compassionate = medium_stress_impact_gain + } + ai_chance = { + base = 100 + ai_value_modifier = { + ai_rationality = 0.5 + ai_zeal = 0.5 + } + } + } - option = { # Do nothing - opt out - name = court.8180.e - stress_impact = { - base = minor_stress_impact_loss - lazy = minor_stress_impact_loss - compassionate = minor_stress_impact_loss - vengeful = medium_stress_impact_gain - zealous = medium_stress_impact_gain - diligent = medium_stress_impact_gain - deceitful = major_stress_impact_gain - } - ai_chance = { - base = 75 - } - } - after = { - scope:criminal = { - clear_court_event_participation = yes - } - } + option = { # Do nothing - opt out + name = court.8180.e + stress_and_fulfillment_impact = { + base = minor_stress_impact_loss + lazy = minor_stress_impact_loss + compassionate = minor_stress_impact_loss + vengeful = medium_stress_impact_gain + zealous = medium_stress_impact_gain + diligent = medium_stress_impact_gain + deceitful = major_stress_impact_gain + } + ai_chance = { + base = 75 + } + } + after = { + scope:criminal = { + clear_court_event_participation = yes + } + } } @@ -12536,7 +12578,7 @@ court.9000 = { } } - stress_impact = { + stress_and_fulfillment_impact = { trusting = massive_stress_impact_gain forgiving = medium_stress_impact_gain chaste = medium_stress_impact_gain @@ -12577,7 +12619,7 @@ court.9000 = { } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = massive_stress_impact_gain arrogant = major_stress_impact_gain vengeful = medium_stress_impact_gain @@ -12786,7 +12828,7 @@ court.9001 = { } } - stress_impact = { + stress_and_fulfillment_impact = { trusting = massive_stress_impact_gain forgiving = medium_stress_impact_gain chaste = medium_stress_impact_gain @@ -12826,7 +12868,7 @@ court.9001 = { } else = { add_prestige = medium_prestige_gain } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = massive_stress_impact_gain arrogant = major_stress_impact_gain vengeful = medium_stress_impact_gain @@ -13073,7 +13115,7 @@ court.9005 = { if = { limit = { scope:flirty_knight = { - government_allows = administrative + government_has_flag = government_has_influence } } scope:flirty_knight = { @@ -13256,7 +13298,7 @@ court.9100 = { desc = feasts_more_expensive_modifier_tt } custom_tooltip = feasts_more_expensive_tt - stress_impact = { + stress_and_fulfillment_impact = { gregarious = major_stress_impact_gain gluttonous = major_stress_impact_gain lazy = major_stress_impact_gain @@ -13296,7 +13338,7 @@ court.9100 = { OPINION = default_friend_opinion } - stress_impact = { + stress_and_fulfillment_impact = { sadistic = massive_stress_impact_gain greedy = medium_stress_impact_gain callous = medium_stress_impact_gain @@ -13325,7 +13367,7 @@ court.9100 = { add_prestige = minor_prestige_gain - stress_impact = { + stress_and_fulfillment_impact = { gregarious = minor_stress_impact_gain gluttonous = minor_stress_impact_gain fickle = minor_stress_impact_gain @@ -13498,7 +13540,7 @@ court.9300 = { } } - stress_impact = { + stress_and_fulfillment_impact = { forgiving = massive_stress_impact_gain compassionate = major_stress_gain patient = major_stress_impact_gain @@ -13535,7 +13577,7 @@ court.9300 = { add_prestige = medium_prestige_gain if = { limit = { - government_allows = administrative + government_has_flag = government_has_influence } change_influence = medium_influence_gain } @@ -13593,7 +13635,7 @@ court.9300 = { } } - stress_impact = { + stress_and_fulfillment_impact = { vengeful = massive_stress_impact_gain paranoid = major_stress_gain cynical = major_stress_impact_gain @@ -13630,7 +13672,7 @@ court.9300 = { } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain ambitious = medium_stress_impact_gain wrathful = medium_stress_impact_gain @@ -13843,7 +13885,7 @@ court.9400 = { REASON = death_eaten } - stress_impact = { + stress_and_fulfillment_impact = { base = massive_stress_impact_loss compassionate = massive_stress_impact_gain } @@ -13906,7 +13948,7 @@ court.9400 = { change_current_court_grandeur = medium_court_grandeur_gain - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss paranoid = massive_stress_impact_gain greedy = massive_stress_impact_gain @@ -13948,10 +13990,10 @@ court.9400 = { execute_prisoner_effect = { VICTIM = scope:court_jester EXECUTIONER = root - } + } } else = { - scope:court_jester = { + scope:court_jester = { progress_towards_rival_effect = { CHARACTER = root REASON = rival_jester_jailed @@ -13959,7 +14001,7 @@ court.9400 = { } } } - + add_character_modifier = { modifier = suspicious_against_pies_modifier years = 15 @@ -13973,7 +14015,7 @@ court.9400 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = massive_stress_impact_loss compassionate = medium_stress_impact_gain forgiving = medium_stress_impact_gain @@ -13994,7 +14036,7 @@ court.9400 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss paranoid = medium_stress_impact_gain } @@ -14282,7 +14324,7 @@ court.9500 = { court_position_grant_effect = { POS = court_tutor CANDIDATE = scope:teacher_target EMPLOYER = root } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = massive_stress_impact_gain paranoid = major_stress_gain arrogant = major_stress_impact_gain @@ -14355,7 +14397,7 @@ court.9500 = { } } - stress_impact = { + stress_and_fulfillment_impact = { generous = major_stress_impact_gain patient = medium_stress_impact_gain humble = medium_stress_impact_gain @@ -14380,7 +14422,7 @@ court.9500 = { } } - stress_impact = { + stress_and_fulfillment_impact = { diligent = medium_stress_impact_gain gregarious = medium_stress_impact_gain ambitious = medium_stress_impact_gain diff --git a/events/court_events/court_events_general_1.txt b/events/court_events/court_events_general_1.txt index 1fbe000a2..d3b29fae8 100644 --- a/events/court_events/court_events_general_1.txt +++ b/events/court_events/court_events_general_1.txt @@ -340,7 +340,7 @@ court_events.1000 = { change_development_level = 1 } remove_short_term_gold = medium_gold_value - stress_impact = { + stress_and_fulfillment_impact = { generous = miniscule_stress_impact_loss arrogant = major_stress_impact_gain greedy = major_stress_impact_gain @@ -387,7 +387,7 @@ court_events.1000 = { scope:guest_2 = { add_character_flag = travelling_friend } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_loss ambitious = miniscule_stress_impact_loss paranoid = minor_stress_impact_gain @@ -419,7 +419,7 @@ court_events.1000 = { value = root } } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_loss ambitious = miniscule_stress_impact_loss humble = minor_stress_impact_gain @@ -808,7 +808,7 @@ court_events.1010 = { } } add_prestige = medium_prestige_loss - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_loss eccentric = miniscule_stress_impact_loss arbitrary = minor_stress_impact_loss @@ -877,7 +877,7 @@ court_events.1010 = { add_prestige = major_prestige_loss - stress_impact = { + stress_and_fulfillment_impact = { trusting = miniscule_stress_impact_loss honest = medium_stress_impact_gain just = medium_stress_impact_gain @@ -926,7 +926,7 @@ court_events.1010 = { } add_piety = medium_piety_loss - stress_impact = { + stress_and_fulfillment_impact = { cynical = major_stress_impact_gain arrogant = minor_stress_impact_gain gregarious = minor_stress_impact_gain @@ -974,7 +974,7 @@ court_events.1010 = { add_prestige = minor_prestige_gain - stress_impact = { + stress_and_fulfillment_impact = { arbitrary = minor_stress_impact_gain deceitful = medium_stress_impact_gain ambitious = medium_stress_impact_gain diff --git a/events/courtier_guest_management_events/courtier_guest_management_events.txt b/events/courtier_guest_management_events/courtier_guest_management_events.txt deleted file mode 100644 index ecd0bffba..000000000 --- a/events/courtier_guest_management_events/courtier_guest_management_events.txt +++ /dev/null @@ -1,1337 +0,0 @@ -namespace = courtier_guest_management - -#COURTIERS/GUESTS LEAVING -# 0001 - Courtier is planning to leave -# 0102 - Courtier with claim is wanting to leave -# 0500 - Guests leaves -# 0999 - Maintenance - Force move to pool - -#GUESTS ARRIVING -# 1001 - Guest arriving, message if they're great - -#POOL CHARACTERS -# 2001 - "Develops" the character and gives those without location a location -# 2002 - Pool repopulation - -#COURTIERS AND GUESTS DOING STUFF -# 3001 - Sets relationships and other secrets - - - - - - -############################ -# COURTIERS/GUESTS LEAVING # -############################ - -#Courtier is planning to leave -courtier_guest_management.0001 = { - hidden = yes - - trigger = { - any_in_list = { - list = characters - is_child_of = scope:liege - } - } - - immediate = { - #Send message about child about to leave - every_in_list = { - list = characters - limit = { is_child_of = scope:liege } - - save_scope_as = child - scope:liege = { - send_interface_message = { - type = character_preparing_to_leave - title = courtier_guest_management.0001.t - desc = courtier_guest_management.desc - left_icon = scope:child - } - } - } - } -} - -# this = claimed title scope -# CLAIMANT = claimant -# RULER = ruler for claimant -scripted_trigger useful_courtier_claim_can_declare_for = { - neighboring_useful_courtier_or_guest_claim_trigger = { RULER = $RULER$ } - save_temporary_scope_as = claim_title - $RULER$ = { - can_declare_war = { - defender = scope:claim_title.holder - claimant = $CLAIMANT$ - casus_belli = claim_cb - target_titles = { scope:claim_title } - } - } -} - -#Courtier is leaving -courtier_guest_management.0101 = { - hidden = yes - - immediate = { - #Liege gets "last chance to make them stay"-event for claimants - if = { - limit = { - scope:liege = { is_ai = no } - any_in_list = { - list = characters - save_temporary_scope_as = check_character - any_claim = { - useful_courtier_claim_can_declare_for = { - CLAIMANT = scope:check_character - RULER = scope:liege - } - } - } - } - random_in_list = { - list = characters - limit = { - save_temporary_scope_as = check_character - any_claim = { - useful_courtier_claim_can_declare_for = { - CLAIMANT = scope:check_character - RULER = scope:liege - } - tier = tier_kingdom - } - } - alternative_limit = { - save_temporary_scope_as = check_character - any_claim = { - useful_courtier_claim_can_declare_for = { - CLAIMANT = scope:check_character - RULER = scope:liege - } - tier = tier_duchy - } - } - alternative_limit = { - save_temporary_scope_as = check_character - any_claim = { - useful_courtier_claim_can_declare_for = { - CLAIMANT = scope:check_character - RULER = scope:liege - } - tier = tier_county - } - } - save_scope_as = courtier - scope:liege = { trigger_event = courtier_guest_management.0102 } - } - } - else = { - move_to_pool_effect = yes - } - } -} - - -#Courtier with claim is wanting to leave -courtier_guest_management.0102 = { #by Mathilda Bjarnehed - type = character_event - title = courtier_guest_management.0102.t - desc = courtier_guest_management.0102.desc - left_portrait = scope:courtier - right_portrait = scope:courtier_claim - theme = crown - override_background = { - reference = courtyard - } - - trigger = { - scope:courtier = { - any_claim = { - useful_courtier_claim_can_declare_for = { - CLAIMANT = scope:courtier - RULER = scope:liege - } - } - is_pool_character = no - } - } - - immediate = { - #For text - scope:courtier = { - random_claim = { - limit = { - useful_courtier_claim_can_declare_for = { - CLAIMANT = scope:courtier - RULER = scope:liege - } - tier = tier_empire - } - alternative_limit = { - useful_courtier_claim_can_declare_for = { - CLAIMANT = scope:courtier - RULER = scope:liege - } - tier = tier_kingdom - } - alternative_limit = { - useful_courtier_claim_can_declare_for = { - CLAIMANT = scope:courtier - RULER = scope:liege - } - tier = tier_duchy - } - alternative_limit = { - useful_courtier_claim_can_declare_for = { - CLAIMANT = scope:courtier - RULER = scope:liege - } - tier = tier_county - } - save_scope_as = courtier_claim - } - } - - capital_province = { barony = { save_scope_as = capital } } - } - - #Yes, I promise - option = { - name = courtier_guest_management.0102.a - - show_as_tooltip = { - random_list = { - desc = courtier_guest_management.0102.a.rl.desc - 1 = { - show_chance = no - desc = courtier_guest_management.0102.a.stay - custom_tooltip = courtier_guest_management.0102.a.stay.tt - } - 1 = { - show_chance = no - desc = courtier_guest_management.0102.a.leave - scope:courtier = { select_and_move_to_pool_effect = yes } - } - } - } - - hidden_effect = { - scope:courtier = { - add_character_flag = { - flag = courtier_staying_for_claim - years = 1 - } - trigger_event = { - id = courtier_guest_management.0103 - years = 1 - } - } - } - } - - #No, I cannot - option = { - name = courtier_guest_management.0102.b - - scope:courtier = { select_and_move_to_pool_effect = yes } - } -} - -#Did liege fulfill their promise to courtier claimant? -courtier_guest_management.0103 = { - hidden = yes - - trigger = { - exists = scope:liege - is_courtier_of = scope:liege - NOT = { - scope:liege = { - any_character_war = { - casus_belli = { - any_target_title = { - scope:courtier = { has_claim_on = prev } - } - } - } - } - } - } - - immediate = { - select_and_move_to_pool_effect = yes - } -} - - -#Guest leaves -courtier_guest_management.0500 = { - hidden = yes - - immediate = { - if = { # Warning if they take your kids with them - limit = { - NOT = { has_character_flag = guest_has_given_warning_about_leaving } - #To double check that they actually can leave - is_pool_guest_of = scope:host - scope:host = { is_ai = no } - any_traveling_family_member = { - count = all - guest_allowed_to_leave_trigger = yes - } - OR = { - AND = { - OR = { - has_trait = bastard - has_trait = wild_oat - } - any_parent = { this = scope:host } - } - any_traveling_family_member = { - OR = { - has_trait = bastard - has_trait = wild_oat - } - any_parent = { this = scope:host } - } - scope:host = { - any_known_secret = { - OR = { - secret_type = secret_disputed_heritage - secret_type = secret_unmarried_illegitimate_child - } - OR = { - secret_target = { - this = root - is_adult = no - } - secret_target = { - save_temporary_scope_as = target_check - root = { - any_traveling_family_member = { - this = scope:target_check - is_adult = no - } - } - } - } - } - } - } - } - scope:host = { - send_interface_message = { - type = character_preparing_to_leave - title = courtier_guest_management.0500.t - desc = courtier_guest_management.0500.desc - left_icon = root - } - } - add_character_flag = { - flag = guest_has_given_warning_about_leaving - days = 35 - } - trigger_event = { - id = courtier_guest_management.0500 - days = { 25 30 } #You get about a month to decide if you wanna keep them around! - } - } - else = { - if = { - limit = { - has_character_flag = guest_has_given_warning_about_leaving - } - remove_character_flag = guest_has_given_warning_about_leaving - - # Now a month out of date, so lets update it - select_pool_to_move_to_effect = yes - } - move_to_pool_effect = yes - } - } -} - -# Maintenance - Force move to pool -courtier_guest_management.0999 = { - hidden = yes - - immediate = { - select_and_move_to_pool_effect = yes - } -} - - - -################### -# GUESTS ARRIVING # -################### - -#Guest arriving, message if they're great -scripted_trigger courtier_guest_management_1001_exceptional_claimant_trigger = { - any_claim = { neighboring_useful_courtier_or_guest_claim_trigger = { RULER = scope:host } } -} - -scripted_trigger courtier_guest_management_1001_exceptional_marriage_candidate_trigger = { - save_temporary_scope_as = marriage_candidate - guest_marriage_candidate_trigger = yes - age > 14 - OR = { - num_of_good_genetic_traits = 3 - AND = { - num_of_good_genetic_traits = 2 - OR = { - has_trait = beauty_good_3 - has_trait = intellect_good_3 - has_trait = physique_good_3 - } - } - scope:host = { - can_marry_character_trigger = { CHARACTER = scope:marriage_candidate } - marriage_between_characters_unlocks_alliance_of_min_tier_trigger = { - MY_CHARACTER = scope:host - THEIR_CHARACTER = scope:marriage_candidate - TIER = scope:host.highest_held_title_tier - } - } - dynasty ?= { dynasty_prestige_level >= high_dynasty_prestige_level } - has_useful_potential_spouse_claim_trigger = { RULER = scope:host } - calc_true_if = { - amount >= 2 - num_of_good_genetic_traits = 2 - AND = { - num_of_good_genetic_traits = 1 - OR = { - has_trait = beauty_good_2 - has_trait = intellect_good_2 - has_trait = physique_good_2 - } - } - dynasty ?= { dynasty_prestige_level > medium_dynasty_prestige_level } - } - calc_true_if = { - amount >= 3 - dynasty ?= { dynasty_prestige_level > low_dynasty_prestige_level } - num_of_good_genetic_traits = 1 - diplomacy >= high_skill_rating - martial >= high_skill_rating - stewardship >= high_skill_rating - intrigue >= high_skill_rating - learning >= high_skill_rating - } - } - NOR = { - num_of_bad_genetic_traits > 1 - is_lowborn = yes - } -} - -scripted_trigger courtier_guest_management_1001_exceptional_commander_trigger = { - guest_commander_candidate_trigger = { HOST = scope:host } - number_of_commander_traits >= 1 - martial >= very_high_skill_rating -} - -scripted_trigger courtier_guest_management_1001_exceptional_vassal_trigger = { - guest_vassal_candidate_trigger = yes - opinion = { - target = scope:host - value >= medium_positive_opinion - } - calc_true_if = { - amount >= 2 - OR = { - has_trait = content - has_trait = trusting - has_trait = humble - } - martial >= high_skill_rating - stewardship >= high_skill_rating - } -} - -scripted_trigger courtier_guest_management_1001_exceptional_knight_trigger = { - guest_knight_candidate_trigger = { HOST = root } - prowess >= very_high_skill_rating -} - -scripted_trigger courtier_guest_management_1001_exceptional_physician_trigger = { - guest_physician_candidate_trigger = yes - OR = { - has_trait = lifestyle_mystic - has_trait = lifestyle_physician - has_trait = lifestyle_herbalist - } - learning >= high_skill_rating -} - - - -courtier_guest_management.1001 = { - hidden = yes - - immediate = { - scope:guest = { - every_traveling_family_member = { - add_to_temporary_list = guest_arrival_list - } - } - - # To update Adventure Inspiration to make sure that the target destination isn't in the realm they just arrived to. If it is we remove it and make them pick a new destination! - every_in_list = { - list = guest_arrival_list - limit = { - inspiration ?= { has_inspiration_type = adventure_inspiration } - exists = var:adventure_destination #They know where they want to go - } - get_adventure_inspiration_start_location = { ADVENTURER = this } - if = { - limit = { - scope:host = { - any_sub_realm_county = { - this = scope:location.county - } - } - } - remove_variable = adventure_destination - if = { - limit = { - adventure_inspiration_average_skill_value >= high_inspiration_skill - } - set_adventure_location_effect = { - BASE_SCOPE = this - NO_DESTINATION = yes - } - } - else = { - set_adventure_location_effect = { - BASE_SCOPE = this - NO_DESTINATION = no - } - } - } - } - - ###DEVELOPMENT EFFECT### - #Because the characters spend so little time in the pool, we also run it now - - every_in_list = { # Very performance-intensive, so we restrict it as much as possible at this step. - list = guest_arrival_list - limit = { - is_adult = yes - is_lowborn = no - is_physically_able = yes - } - pool_character_development_effect = yes - if = { - limit = { - gold >= 1000 - } - purge_excess_wanderer_riches_effect = yes - } - } - - ###EXCEPTIONAL GUEST TOAST### - if = { - limit = { scope:host = { is_ai = no } } #This is just interface messages, AI doesn't care - - every_in_list = { - list = guest_arrival_list - limit = { - courtier_guest_management_1001_exceptional_claimant_trigger = yes - } - save_scope_as = exceptional_guest - - #CLAIMANT MESSAGE - if = { - limit = { courtier_guest_management_1001_exceptional_claimant_trigger = yes } - random_claim = { - limit = { - neighboring_useful_courtier_or_guest_claim_trigger = { RULER = scope:host } - tier = tier_kingdom - scope:host.highest_held_title_tier > tier_kingdom - } - alternative_limit = { - neighboring_useful_courtier_or_guest_claim_trigger = { RULER = scope:host } - tier = tier_duchy - scope:host.highest_held_title_tier > tier_duchy - } - alternative_limit = { - neighboring_useful_courtier_or_guest_claim_trigger = { RULER = scope:host } - tier = tier_county - scope:host.highest_held_title_tier > tier_county - } - save_scope_as = guest_claim - } - scope:host = { - send_interface_toast = { - type = msg_notable_guest - left_icon = scope:exceptional_guest - right_icon = scope:guest_claim - title = courtier_guest_management.1001.t - desc = courtier_guest_management.1001.claimant.desc - } - } - } - } - } - } -} - -################### -# POOL CHARACTERS # -################### - -#This events gives pool characters relations, skills, traits and secrets. If they lack a location, they're given a location. -courtier_guest_management.2001 = { - hidden = yes - trigger = { - is_pool_character = yes # Can cease to be in the pool between it queuing and executing - } - - immediate = { - #Am I lost in the void? - if = { - limit = { NOT = { exists = location } } - - #Oops, no good! Go someplace. (family is also moved with this effect) - fallback_move_to_pool_effect = yes - } - - #Don't I have the "last_visited_ruler" variable? (= it ran out or I'm from some weird source that doesn't set var) - if = { - limit = { NOT = { exists = var:last_visited_ruler } } - - if = { # If character is prune-able, prune. - limit = { - pool_character_is_pruneable_trigger = yes - } - if = { - limit = { - culture = { - OR = { - has_cultural_tradition = tradition_diasporic - has_cultural_tradition = tradition_itinerant_pastoralists - } - } - is_adult = yes - is_lowborn = no - age < 45 - } - random_list = { - 10 = { - create_landless_minority_title_effect = { - REASON = flag:voluntary - FLAVOR_CHAR = scope:laamp_inheritor - } - } - 60 = { - } - 30 = { - death = { death_reason = death_accident } - } - } - } - else_if = { - limit = { age < 65 } - death = { death_reason = death_accident } - } - else = { - death = { death_reason = death_old_age } - } - } - else = { # Otherwise, go somewhere else. - fallback_move_to_pool_effect = yes - } - } - - if = { - limit = { is_alive = yes } #Because we might just have killed you and then 🎵nothing else matters🎵 - - #Develop - random = { # Very performance-intensive, so we restrict it as much as possible at this step. - chance = 50 - if = { - limit = { - static_group_filter = { - group = random_dev_blocker - match = 0.8 - } - is_adult = yes - is_lowborn = no - is_physically_able = yes - } - pool_character_development_effect = yes - } - } - if = { - limit = { - gold >= 1000 - } - purge_excess_wanderer_riches_effect = yes - } - - #Is my pool full? Then move - if = { - limit = { - location = { - exists = province_owner - local_pool_is_full_trigger = yes - } - } - - location.province_owner = { - random_neighboring_and_across_water_top_liege_realm_owner = { - limit = { - capital_province ?= { local_pool_is_full_trigger = no } - } - capital_province = { save_scope_as = destination } - } - } - - if = { - limit = { exists = scope:destination } - every_traveling_family_member = { - limit = { NOT = { is_in_pool_at = scope:destination } } - move_to_pool_at = scope:destination - } - } - else = { - fallback_move_to_pool_effect = yes - } - } - } - - } -} - -#################################### -# COURTIERS AND GUESTS DOING STUFF # -#################################### - -scripted_trigger courtier_guest_management_3001_best_friend_trigger = { - opinion = { - target = scope:current_character - value >= high_positive_opinion - } - reverse_opinion = { - target = scope:current_character - value >= high_positive_opinion - } -} - -scripted_trigger courtier_guest_management_3001_soulmate_trigger = { - opinion = { - target = scope:current_character - value >= high_positive_opinion - } - reverse_opinion = { - target = scope:current_character - value >= high_positive_opinion - } -} - -scripted_trigger courtier_guest_management_3001_nemesis_trigger = { - opinion = { - target = scope:current_character - value <= high_negative_opinion - } - reverse_opinion = { - target = scope:current_character - value <= high_negative_opinion - } -} - -scripted_trigger courtier_guest_management_3001_interesting_trigger = { - OR = { - is_lowborn = no - has_trait = intellect_good - has_trait = physique_good - has_trait = beauty_good - diplomacy >= high_skill_rating - martial >= high_skill_rating - stewardship >= high_skill_rating - intrigue >= high_skill_rating - learning >= high_skill_rating - is_witch_trigger = yes - is_deviant_trigger = yes - } -} - -courtier_guest_management.3001 = { - hidden = yes - - immediate = { - every_courtier_or_guest = { - limit = { - age >= childhood_education_start_age - NOT = { has_trait = incapable } - } - add_to_list = courtiers_and_guests - } - - #Am I a player? Extra fun stuff - if = { - limit = { is_ai = no } - - save_scope_as = root_scope - random_list = { - 2 = { #Seduce - modifier = { - OR = { - has_trait = lustful - has_trait = seducer - has_focus = intrigue_temptation_focus - } - add = 3 - } - random_in_list = { - list = courtiers_and_guests - limit = { - save_temporary_scope_as = instigating_courtier - are_characters_sensible_lovers_trigger = { INSTIGATING_LOVER = scope:instigating_courtier TARGET_OF_LOVE = scope:root_scope } - can_start_scheme = { - type = seduce - target_character = root - } - } - weight = { - base = 100 - opinion_modifier = { - opinion_target = root - multiplier = 5 - } - compatibility_modifier = { - compatibility_target = root - multiplier = 20 - } - ai_value_modifier = { - ai_sociability = 1 - } - modifier = { - has_relation_potential_lover = root - add = 500 - } - - modifier = { - add = { - value = attraction - divide = high_positive_attraction - multiply = 50 - } - } - modifier = { - has_trait = lustful - factor = 1.5 - } - } - start_scheme = { - type = seduce - target_character = root - } - } - } - 2 = { #Romance - modifier = { - OR = { - has_trait = gallant - has_focus = martial_chivalry_focus - } - add = 3 - } - random_in_list = { - list = courtiers_and_guests - limit = { - save_temporary_scope_as = instigating_courtier - are_characters_sensible_and_appropriate_open_lovers_trigger = { INSTIGATING_LOVER = scope:instigating_courtier TARGET_OF_LOVE = scope:root_scope } - can_start_scheme = { - type = courting - target_character = root - } - } - weight = { - base = 100 - opinion_modifier = { - opinion_target = root - multiplier = 5 - } - compatibility_modifier = { - compatibility_target = root - multiplier = 20 - } - modifier = { - has_relation_potential_lover = root - add = 500 - } - modifier = { - is_knight = yes - add = 200 - } - ai_value_modifier = { - ai_honor = 2 - ai_sociability = 1 - } - } - start_scheme = { - type = courting - target_character = root - } - } - } - 96 = { } #Nothing - } - } - - # Every courtier gets a chance to do something (relations also include guests) - every_in_list = { - list = courtiers_and_guests - limit = { NOT = { is_in_list = already_updated } } #If another character set a relation with you, you don't get to run your own update. (However, we don't want to block you from being selected by other characters if you are the best alternative.) - - save_scope_as = current_character - - random = { - chance = 5 - modifier = { #More should happen in player's court! - root = { is_ai = no } - is_courtier_of = root - add = 15 - } - - random_list = { - ### RELATIONS ### - # Friend - 100 = { - ai_value_modifier = { - ai_compassion = 0.8 - ai_sociability = 2 - } - trigger = { - any_relation = { - type = friend - count <= 2 - } - } - - random_in_list = { - limit = { - can_set_relation_friend_trigger = { CHARACTER = scope:current_character } - } - list = courtiers_and_guests - weight = { - base = 100 - compatibility_modifier = { - who = this - compatibility_target = scope:current_character - multiplier = 20 - } - modifier = { - has_relation_potential_friend = scope:current_character - add = 500 - } - } - - add_to_list = already_updated - set_random_friendship_reason = { TARGET = scope:current_character } - } - } - # Lover - 50 = { - ai_value_modifier = { - ai_sociability = 1.5 - } - modifier = { - has_trait = lustful - add = 150 - } - modifier = { - OR = { - any_relation = { type = soulmate always = yes } - is_married = yes - } - ai_honor >= 0 - add = -150 - } - modifier = { - add = { - value = attraction - divide = high_positive_attraction - multiply = 50 - } - } - trigger = { - is_married = no - is_concubine = no - might_cheat_on_every_partner_trigger = yes - NOR = { - has_trait = chaste - has_trait = celibate - has_sexuality = asexual - } - trigger_if = { - limit = { - is_courtier = yes - is_close_or_extended_family_of = liege - } - OR = { - has_trait = lustful - is_deviant_trigger = yes - } - } - any_relation = { - type = lover - count < 1 - } - } - - random_in_list = { - limit = { - is_married = no - is_concubine = no - might_cheat_on_every_partner_trigger = yes - NOR = { - has_trait = chaste - has_trait = celibate - has_sexuality = asexual - } - any_relation = { - type = lover - count < 1 - } - trigger_if = { - limit = { - is_courtier = yes - is_close_or_extended_family_of = liege - } - scope:current_character = { is_lowborn = no } - OR = { - is_deviant_trigger = yes - has_trait = lustful - trait_compatibility = { - target = scope:current_character - value >= high_positive_trait_compatibility - } - } - } - this != scope:current_character - can_set_relation_lover_trigger = { CHARACTER = scope:current_character } - is_attracted_to_gender_of = scope:current_character - scope:current_character = { is_attracted_to_gender_of = prev } - age <= scope:current_character.age_plus_5 - age >= scope:current_character.age_minus_10 - trait_compatibility = { - target = scope:current_character - value >= low_positive_trait_compatibility - } - save_temporary_scope_as = incest_check - accepts_incest_with_each_other_trigger = { - CHARACTER_1 = scope:incest_check - CHARACTER_2 = scope:current_character - } - } - list = courtiers_and_guests - weight = { - base = 100 - compatibility_modifier = { - who = this - compatibility_target = scope:current_character - multiplier = 20 - } - modifier = { - has_relation_potential_lover = scope:current_character - add = 500 - } - modifier = { - add = { - value = attraction - divide = high_positive_attraction - multiply = 50 - } - } - modifier = { - has_trait = lustful - factor = 2 - } - } - - add_to_list = already_updated - - set_random_lover_reason = { TARGET = scope:current_character } - } - } - - # Rival - 50 = { - ai_value_modifier = { - ai_compassion = -1 - ai_vengefulness = 2 - } - trigger = { - any_relation = { - type = rival - count <= 1 - } - ai_vengefulness >= low_negative_ai_value - } - - random_in_list = { - limit = { - can_set_relation_rival_trigger = { CHARACTER = scope:current_character } - } - list = courtiers_and_guests - weight = { - base = 100 - opinion_modifier = { - trigger = { root = { is_ai = no } } - who = this - opinion_target = scope:current_character - multiplier = -5 - } - opinion_modifier = { - trigger = { root = { is_ai = no } } - who = scope:current_character - opinion_target = this - multiplier = -5 - } - compatibility_modifier = { - who = this - compatibility_target = scope:current_character - multiplier = -20 - } - modifier = { - has_relation_potential_rival = scope:current_character - add = 500 - } - } - - add_to_list = already_updated - set_random_rivalry_reason = { - TARGET = scope:current_character - RELATION = rival - } - } - } - # Best friend - 50 = { - trigger = { - any_relation = { - type = friend - courtier_guest_management_3001_best_friend_trigger = yes - can_set_relation_best_friend_trigger = { CHARACTER = scope:current_character } - } - } - random_relation = { - type = friend - limit = { - courtier_guest_management_3001_best_friend_trigger = yes - can_set_relation_best_friend_trigger = { CHARACTER = scope:current_character } - } - - add_to_list = already_updated - set_relation_best_friend = { reason = best_friend_bonded_at_court copy_reason = friend target = scope:current_character involved_character = root.liege } - } - } - # Soulmate - 25 = { - trigger = { - any_relation = { - type = lover - courtier_guest_management_3001_soulmate_trigger = yes - can_set_relation_soulmate_trigger = { CHARACTER = scope:current_character } - } - } - random_relation = { - type = lover - limit = { - courtier_guest_management_3001_soulmate_trigger = yes - can_set_relation_soulmate_trigger = { CHARACTER = scope:current_character } - } - - add_to_list = already_updated - set_relation_soulmate = { reason = soulmate_love_at_court copy_reason = lover target = scope:current_character } - } - } - # Nemesis - 25 = { - trigger = { - any_relation = { - type = rival - courtier_guest_management_3001_nemesis_trigger = yes - can_set_relation_nemesis_trigger = { CHARACTER = scope:current_character } - } - } - random_relation = { - type = rival - limit = { - courtier_guest_management_3001_nemesis_trigger = yes - can_set_relation_nemesis_trigger = { CHARACTER = scope:current_character } - } - - add_to_list = already_updated - set_relation_nemesis = { - reason = nemesis_at_court - copy_reason = rival - target = scope:current_character - } - } - } - - ### SECRETS ### - 30 = { - trigger = { - NOT = { any_secret = { always = yes } } - is_adult = yes - } - courtier_guest_pool_character_secret_giving_effect = yes - } - } - } - - } - } -} - -############################ -# WANDERER INTO ADVENTURER # -############################ - -courtier_guest_management.4001 = { - hidden = yes - trigger = { - has_ep3_dlc_trigger = yes - is_pool_character = yes # Can cease to be in the pool between it queuing and executing - ai_can_valid_to_create_laamp_trigger = yes - is_valid_for_laampdom = yes - OR = { - has_character_flag = easteregg - has_trait = historical_character - culture = { - has_cultural_parameter = much_more_likely_to_be_laamps - } - AND = { - is_lowborn = no - culture = { - has_cultural_parameter = more_likely_to_be_laamps - } - } - any_claim = { tier >= tier_kingdom } - } - pool_character_is_pruneable_trigger = no # Avoid having uninteresting characters become Adventurers - is_ai = yes - NOT = { - any_heir_title = { } - } - } - - immediate = { - random = { - chance = 0 - modifier = { add = ep3_laamp_chance_score_value } - #Counteract bonus in above value somewhat - modifier = { - culture = { has_cultural_parameter = more_likely_to_be_laamps } - add = -75 - } - modifier = { - has_trait = historical_character - add = 150 - } - create_landless_adventurer_title_effect = { - REASON = flag:wanderer - FLAVOR_CHAR = root - } - trigger_event = ep3_laamps.0003 - if = { # Debug AI tracking - limit = { debug_only = yes } - if = { - limit = { exists = global_var:ai_wanderer_laamp_count } - change_global_variable = { - name = ai_wanderer_laamp_count - add = 1 - } - } - else = { - set_global_variable = { - name = ai_wanderer_laamp_count - value = 1 - } - } - debug_log = "AI became adventurer due to cultural tradition" - debug_log_scopes = yes - } - } - } -} - -courtier_guest_management.4002 = { - hidden = yes - trigger = { - has_ep3_dlc_trigger = yes - is_pool_character = yes # Can cease to be in the pool between it queuing and executing - ai_can_valid_to_create_laamp_trigger = yes - is_valid_for_laampdom = yes - OR = { - has_character_flag = easteregg - has_trait = historical_character - culture = { - OR = { - has_cultural_tradition = tradition_diasporic - has_cultural_tradition = tradition_itinerant_pastoralists - } - } - AND = { - is_lowborn = no - culture = { - OR = { - has_cultural_tradition = tradition_diasporic - has_cultural_tradition = tradition_itinerant_pastoralists - } - } - } - any_claim = { tier >= tier_kingdom } - } - pool_character_is_pruneable_trigger = no # Avoid having uninteresting characters become Adventurers - is_ai = yes - NOT = { - any_heir_title = { } - } - } - - immediate = { - random = { - chance = 0 - modifier = { add = ep3_laamp_chance_score_value } - #Counteract bonus in above value somewhat - modifier = { - culture = { has_cultural_tradition = tradition_diasporic } - add = -10 - } - modifier = { - has_trait = historical_character - add = 150 - } - create_landless_minority_title_effect = { - REASON = flag:voluntary - FLAVOR_CHAR = root - } - if = { # Debug AI tracking - limit = { debug_only = yes } - if = { - limit = { exists = global_var:ai_wanderer_laamp_count } - change_global_variable = { - name = ai_wanderer_laamp_count - add = 1 - } - } - else = { - set_global_variable = { - name = ai_wanderer_laamp_count - value = 1 - } - } - debug_log = "AI became adventurer due to cultural tradition" - debug_log_scopes = yes - } - } - } -} - diff --git a/events/death_events/death_management_events.txt b/events/death_events/death_management_events.txt deleted file mode 100644 index ae34d0708..000000000 --- a/events/death_events/death_management_events.txt +++ /dev/null @@ -1,6494 +0,0 @@ -#Events for managing death of characters - -namespace = death_management - -# Finds everyone who should care about the death and clean stuff up -scripted_trigger death_management_0001_valid_for_death_event_trigger = { - NOR = { - this = scope:dead_character - block_death_event_trigger = { DEAD = scope:dead_character } - is_player_heir_of = scope:dead_character - is_in_list = send_death_management_0002 - } -} - -# Calculates how much Stress a character should gain/lose from the death of someone they care about (in some fashion, love or hate) and saves that value for later event usage. -# This must be run before the character actually dies, as death removes all extant relationships and opinion modifiers. -scripted_effect calculate_stress_gain_loss_from_deceased_character_effect = { - save_scope_value_as = { - name = deceased_character_stress - value = { - # Dying characters was the centre of this character's world. - if = { - limit = { - has_character_flag = dead_ritual_best_friend - has_relation_best_friend = $DYING_CHARACTER$ - } - value = monumental_stress_gain - } - # Dying character was extremely close to this character. - else_if = { - limit = { - OR = { - has_relation_soulmate = $DYING_CHARACTER$ - has_relation_best_friend = $DYING_CHARACTER$ - } - } - value = major_stress_gain - } - # Dying character was close and/or otherwise important to this character. - else_if = { - limit = { - OR = { - has_relation_lover = $DYING_CHARACTER$ - has_relation_friend = $DYING_CHARACTER$ - AND = { - reverse_opinion = { - target = $DYING_CHARACTER$ - value >= 75 - } - NOT = { has_relation_rival = $DYING_CHARACTER$ } - } - } - } - value = medium_stress_gain - } - # Dying character was strongly disliked, rivaled, or was an obstacle to this character's ambitions. - else_if = { - limit = { - OR = { - has_relation_rival = $DYING_CHARACTER$ - reverse_opinion = { - target = $DYING_CHARACTER$ - value < -20 - } - AND = { - is_heir_of = $DYING_CHARACTER$ - ai_greed >= 50 - } - } - } - if = { - limit = { - NOT = { has_trait = forgiving } - } - value = minor_stress_loss - } - } - # Dying character was only moderately important to this character (siblings who weren't very close, for example). - ## Characters who are less important than this shouldn't gain/lose stress at all (councillors, vassals, lieges, etc.). - else = { - value = minor_stress_gain - } - # Callous characters are less affected by the deaths of others, both positively and negatively. - if = { - limit = { has_trait = callous } - multiply = 0.5 - } - # Sadistic and Vengeful characters are fully affected (but will probably have fewer friends and more enemies to begin with). - } - } - -} - -death_management.0001 = { - type = character_event - - hidden = yes - - immediate = { - save_scope_as = dead_character - - ### CHECKING STATUSES & HANDLING LOANS ### - - #To save imprisoner & prisons status - if = { - limit = { - is_in_prison_type = dungeon - exists = imprisoner - } - imprisoner = { - save_scope_as = prison_holder - } - } - else_if = { - limit = { - is_in_prison_type = house_arrest - } - imprisoner = { - save_scope_as = house_arrest_holder - } - } - - #To save battle - if = { - limit = { has_variable = battle_death_enemy } - var:battle_death_enemy = { save_scope_as = battle_death_enemy } - remove_variable = battle_death_enemy - } - if = { - limit = { has_variable = battle_death_leader } - var:battle_death_leader = { save_scope_as = battle_death_leader } - remove_variable = battle_death_leader - } - if = { - limit = { has_variable = battle_death_location } - var:battle_death_location = { save_scope_as = battle_death_location } - remove_variable = battle_death_location - } - - # Dead character has debtors who their heir should inherit (make them have a money claim) - if = { - limit = { - any_in_list = { variable = owes_me_money } - } - every_in_list = { - variable = owes_me_money - limit = { - is_alive = yes - NOR = { - this = scope:dead_character - is_player_heir_of = scope:dead_character - exists = var:loan_holder # cannot support owing two loans to different people at the same time, so we just wipe this inherited debt for simplicity - } - } - save_temporary_scope_as = loanee_temp - scope:dead_character.player_heir ?= { - save_scope_as = new_loan_holder - add_to_variable_list = { - name = owes_me_money - target = scope:loanee_temp - } - } - set_variable = { - name = loan_holder - value = scope:new_loan_holder - } - } - } - - #Dead character has a loan that an heir should inherit (make them owe someone money) - if = { - limit = { - exists = var:loan_amount_owed - var:loan_holder ?= { - is_alive = yes - NOR = { - this = scope:dead_character - is_player_heir_of = scope:dead_character - } - } - player_heir ?= { - NOT = { exists = var:loan_holder } # cannot support owing two loans to different people at the same time, so we just wipe this inherited debt for simplicity - } - } - save_scope_as = loan_passer - player_heir = { - save_scope_as = loan_inheritor - set_variable = { - name = loan_holder - value = scope:loan_passer.var:loan_holder - } - set_variable = { - name = loan_amount_owed - value = scope:loan_passer.var:loan_amount_owed - } - if = { - limit = { exists = scope:loan_passer.var:original_loan_holder } - set_variable = { - name = original_loan_holder - value = scope:loan_passer.var:original_loan_holder - } - } - else = { - set_variable = { - name = original_loan_holder - value = scope:loan_passer - } - } - if = { - limit = { exists = scope:loan_passer.var:original_lender } - set_variable = { - name = original_lender - value = scope:loan_passer.var:original_lender - } - } - else = { - set_variable = { - name = original_lender - value = scope:loan_passer.var:loan_holder - } - } - trigger_event = { - id = death_management.0003 - delayed = yes - } - } - var:loan_holder ?= { - send_interface_toast = { - type = event_toast_effect_neutral - title = ho_loan_inherited_title - left_icon = scope:loan_passer - right_icon = scope:loan_passer.var:loan_holder - custom_tooltip = ho_loan_inherited_loaner_tt - remove_list_variable = { - name = owes_me_money - target = scope:loan_passer - } - add_to_variable_list = { - name = owes_me_money - target = scope:loan_inheritor - } - } - } - } - # Wipe invalid loans - else_if = { - limit = { - exists = var:loan_amount_owed - exists = var:loan_holder - } - var:loan_holder = { - remove_list_variable = { - name = owes_me_money - target = scope:dead_character - } - } - clear_loanee_variables_effect = yes - } - - #SEND EVENT ABOUT DEATH - - #Send event about relevant death to consorts - every_consort = { - limit = { death_management_0001_valid_for_death_event_trigger = yes } - add_to_list = send_death_management_0002 - - #If heir's spouse dies - if = { - limit = { - any_parent = { - primary_heir ?= { is_consort_of = scope:dead_character } - death_management_0001_valid_for_death_event_trigger = yes - } - } - random_parent = { - limit = { - primary_heir ?= { is_consort_of = scope:dead_character } - death_management_0001_valid_for_death_event_trigger = yes - any_courtier = { is_consort_of = scope:dead_character } - is_ai = no #priority to players, who are the only people these are *really* relevant for - } - alternative_limit = { - primary_heir ?= { is_consort_of = scope:dead_character } - death_management_0001_valid_for_death_event_trigger = yes - is_ai = no #priority to players, who are the only people these are *really* relevant for - } - alternative_limit = { - primary_heir ?= { is_consort_of = scope:dead_character } - death_management_0001_valid_for_death_event_trigger = yes - } - primary_heir = { save_scope_as = spouse_of_dead_character } - save_scope_as = parent_of_spouse_of_dead_character - add_to_list = send_death_management_0002 - } - } - } - #Send event about relevant death to betrothed - if = { - limit = { - exists = betrothed - # Grand Weddings and their betrothals have their own invalidation - has_been_promised_grand_wedding = no - trigger_if = { - limit = { - betrothed = { - is_alive = yes - } - } - betrothed = { has_been_promised_grand_wedding = no } - } - } - betrothed = { - if = { - limit = { death_management_0001_valid_for_death_event_trigger = yes } - add_to_list = send_death_management_0002 - } - save_scope_as = betrothed_of_dead_character - add_to_list = send_death_management_0002_betrothed - random_parent = { #The parent who most likely set up/agreed to the betrothal - limit = { - any_courtier = { this = scope:betrothed_of_dead_character } - death_management_0001_valid_for_death_event_trigger = yes - is_ai = no #priority to players, who are the only people these are *really* relevant for - } - alternative_limit = { - any_courtier = { this = scope:betrothed_of_dead_character } - death_management_0001_valid_for_death_event_trigger = yes - } - save_scope_as = parent_of_betrothed_of_dead_character - add_to_list = send_death_management_0002 - } - } - } - #Send event about relevant death to parents - every_parent = { - limit = { death_management_0001_valid_for_death_event_trigger = yes } - add_to_list = send_death_management_0002 - } - - #Send event about relevant death to "predecessor" if heir - if = { - limit = { - any_heir_title = { } - } - every_heir_title = { - limit = { exists = holder } - holder = { - if = { - limit = { - player_heir = scope:dead_character - NOT = { - is_in_list = title_holder_list - } - death_management_0001_valid_for_death_event_trigger = yes - } - add_to_list = title_holder_list - } - } - } - } - every_in_list = { - list = title_holder_list - add_to_list = send_death_management_0002 - } - - #Send event about relevant death to children - every_child = { - limit = { death_management_0001_valid_for_death_event_trigger = yes } - add_to_list = send_death_management_0002 - } - #Send event about relevant death to siblings - every_sibling = { - limit = { death_management_0001_valid_for_death_event_trigger = yes } - add_to_list = send_death_management_0002 - } - #Send event about relevant death to lovers - every_relation = { - type = lover - limit = { - is_alive = yes - death_management_0001_valid_for_death_event_trigger = yes - } - add_to_list = send_death_management_0002_lover - if = { - limit = { - OR = { - has_relation_soulmate = scope:dead_character - has_opinion_modifier = { - target = scope:dead_character - modifier = love_opinion - value >= 40 - } - } - } - add_character_flag = { - flag = important_lover - days = 3 - } - } - add_to_list = send_death_management_0002 - } - #Send event about relevant death to friends - every_relation = { - type = friend - limit = { - is_alive = yes - death_management_0001_valid_for_death_event_trigger = yes - NOT = { has_relation_best_friend = scope:dead_character } - } - add_to_list = send_death_management_0002_friend - add_to_list = send_death_management_0002 - } - #Send event about relevant death to best friends - every_relation = { - type = best_friend - limit = { - is_alive = yes - OR = { - death_management_0001_valid_for_death_event_trigger = yes - has_character_flag = dead_ritual_best_friend - } - } - add_to_list = send_death_management_0002_best_friend - add_to_list = send_death_management_0002 - } - #Send event about relevant death to rivals - every_relation = { - type = rival - limit = { - is_alive = yes - death_management_0001_valid_for_death_event_trigger = yes - NOT = { - has_relation_nemesis = scope:dead_character - } - } - add_to_list = send_death_management_0002_rival - add_to_list = send_death_management_0002 - } - #Send event about relevant death to Wards - every_relation = { - type = ward - limit = { - is_alive = yes - } - if = { - limit = { is_foreign_court_guest = yes } - return_to_court = yes - } - if = { - limit = { death_management_0001_valid_for_death_event_trigger = yes } - add_to_list = send_death_management_0002 - } - - #Send event about relevant death to Ward's parent if they have no other relationship to the Educator - every_parent = { - limit = { - is_ai = no - is_alive = yes - death_management_0001_valid_for_death_event_trigger = yes - } - add_to_list = send_death_management_0002 #Child's educator's death notification - } - } - every_relation = { - type = disciple - limit = { - is_ai = no - is_available_adult = no - } - if = { - limit = { death_management_0001_valid_for_death_event_trigger = yes } - add_to_list = send_death_management_0002_elder - add_to_list = send_death_management_0002 - } - } - #For liege if they're a councillor - if = { - limit = { - liege ?= { - this != root - death_management_0001_valid_for_death_event_trigger = yes - } - is_councillor_of = liege - } - liege = { - save_scope_as = liege_of_dead_character_councillor - add_to_list = send_death_management_0002 - } - } - ##For liege if they're a powerful vassal - #if = { - # limit = { - # exists = liege - # liege = { - # NOT = { - # this = root - # } - # death_management_0001_valid_for_death_event_trigger = yes - # } - # is_powerful_vassal_of = liege - # } - # liege = { - # save_scope_as = liege_of_dead_character - # add_to_list = send_death_management_0002 - # } - #} - - #Check for a prison owner - if = { - limit = { - exists = scope:prison_holder - } - scope:prison_holder = { - if = { - limit = { death_management_0001_valid_for_death_event_trigger = yes } - add_to_list = send_death_management_0002 - } - } - } - - #For pinned characters - every_pinning_character = { - limit = { death_management_0001_valid_for_death_event_trigger = yes } - add_to_list = send_death_management_0002 - } - - #Send death_management.0002 - every_in_list = { - list = send_death_management_0002 - - # Calculate and save how much stress we should gain/lose from this character's death. - calculate_stress_gain_loss_from_deceased_character_effect = { - DYING_CHARACTER = root - } - - if = { - limit = { - NOT = { - has_any_bad_relationship_with_character_trigger = { CHARACTER = root } - } - OR = { - opinion = { - target = root - value >= 10 - } - has_any_good_relationship_with_character_trigger = { CHARACTER = root } - } - } - add_to_variable_list = { - name = like - target = root - } - } - else_if = { - limit = { - OR = { - has_any_bad_relationship_with_character_trigger = { CHARACTER = root } - opinion = { - target = root - value < -30 - } - } - } - add_to_variable_list = { - name = dislike - target = root - } - } - - # Queue up a death notification event. - trigger_event = { - id = death_management.0002 - delayed = yes - } - - #To block any death notification events sent after this for 3 days - add_death_event_blocker_effect = { DEAD = root } - } - } -} - -#Someone you care about (in some capacity) has died -death_management.0002 = { - type = character_event - hidden = yes - - trigger = { - trigger_if = { - limit = { - exists = scope:killer - } - this != scope:killer #Killers already know - } - NOT = { has_character_flag = bp1_yearly_2020_suppress_death_events } - } - - on_trigger_fail = { - if = { - limit = { - has_character_flag = bp1_yearly_2020_suppress_death_events - } - remove_character_flag = bp1_yearly_2020_suppress_death_events - } - } - - immediate = { #Finds most important relation for notification & mourning events - - if = { - limit = { #To block the player from getting events about themselves dying - NOT = { is_player_heir_of = scope:dead_character } - } - if = { #Spouse - limit = { - exists = scope:prison_holder - this != scope:prison_holder - any_consort = { even_if_dead = yes this = scope:dead_character } - } - trigger_event = death_management.2000 #Spouse death in dungeon notification - } - - else_if = { #Spouse - limit = { - exists = scope:prison_holder - this = scope:prison_holder - any_consort = { even_if_dead = yes this = scope:dead_character } - } - trigger_event = death_management.3000 #Spouse death in YOUR dungeon notification - } - - else_if = { #Spouse - limit = { - exists = scope:house_arrest_holder - any_consort = { even_if_dead = yes this = scope:dead_character } - } - trigger_event = death_management.4000 #Spouse death in house arrest notification - } - - else_if = { #Spouse - limit = { - exists = scope:battle_death_leader - any_consort = { even_if_dead = yes this = scope:dead_character } - } - trigger_event = death_management.1200 #Spouse death in battle - } - - else_if = { #Spouse - limit = { - any_consort = { even_if_dead = yes this = scope:dead_character } - } - trigger_event = death_management.1000 #Spouse death notification - } - - else_if = { #Heir - limit = { - exists = scope:prison_holder - this != scope:prison_holder - is_in_list = title_holder_list - } - trigger_event = death_management.2007 #Heir death in dungeon notification - } - - else_if = { #Heir - limit = { - exists = scope:prison_holder - this = scope:prison_holder - is_in_list = title_holder_list - is_close_or_extended_family_of = scope:dead_character - } - trigger_event = death_management.3007 #Heir death in YOUR dungeon notification - } - - else_if = { #Heir - limit = { - exists = scope:house_arrest_holder - is_in_list = title_holder_list - is_close_or_extended_family_of = scope:dead_character - } - trigger_event = death_management.4007 #Heir death in house arrest notification - } - - else_if = { #Heir - limit = { - exists = scope:battle_death_leader - is_in_list = title_holder_list - is_close_or_extended_family_of = scope:dead_character - } - trigger_event = death_management.1207 #Heir death in battle notification - } - - else_if = { #Heir - limit = { - is_in_list = title_holder_list - is_close_or_extended_family_of = scope:dead_character - } - trigger_event = death_management.1007 #Heir death notification (for family) - } - - else_if = { #Heir - limit = { - is_in_list = title_holder_list - } - send_interface_message = { #Heir death notification (for others) - type = family_has_died - desc = death_management.1007.a.tt - left_icon = scope:dead_character - } - } - - else_if = { #Betrothed - limit = { - exists = scope:prison_holder - this != scope:prison_holder - is_in_list = send_death_management_0002_betrothed - } - trigger_event = death_management.2008 #Betrothed death in dungeon notification - } - - else_if = { #Betrothed - limit = { - exists = scope:prison_holder - this = scope:prison_holder - is_in_list = send_death_management_0002_betrothed - } - trigger_event = death_management.3008 #Betrothed death in YOUR dungeon notification - } - - else_if = { #Betrothed - limit = { - exists = scope:house_arrest_holder - is_in_list = send_death_management_0002_betrothed - } - trigger_event = death_management.4008 #Betrothed death in house arrest notification - } - - else_if = { #Betrothed - limit = { - is_in_list = send_death_management_0002_betrothed - } - send_interface_message = { - type = notable_has_died - desc = death_management.betrothed.desc - left_icon = scope:dead_character - } - } - - else_if = { #Child - limit = { - exists = scope:prison_holder - this != scope:prison_holder - any_child = { even_if_dead = yes this = scope:dead_character } - } - trigger_event = death_management.2001 #Child death in dungeon notification - } - - else_if = { #Child - limit = { - exists = scope:prison_holder - this = scope:prison_holder - any_child = { even_if_dead = yes this = scope:dead_character } - } - trigger_event = death_management.3001 #Child death in YOUR dungeon notification - } - - else_if = { #Child - limit = { - exists = scope:house_arrest_holder - any_child = { even_if_dead = yes this = scope:dead_character } - } - trigger_event = death_management.4001 #Child death in house arrest notification - } - - else_if = { #Child - limit = { - exists = scope:battle_death_leader - any_child = { even_if_dead = yes this = scope:dead_character } - } - trigger_event = death_management.1201 #Child death in battle notification - } - - else_if = { #Child - limit = { - any_child = { even_if_dead = yes this = scope:dead_character } - } - trigger_event = death_management.1001 #Child death notification - } - - else_if = { #Parent - limit = { - exists = scope:prison_holder - this != scope:prison_holder - any_parent = { even_if_dead = yes this = scope:dead_character } - } - trigger_event = death_management.2002 #Parent death in dungeon notification - } - - else_if = { #Parent - limit = { - exists = scope:prison_holder - this = scope:prison_holder - any_parent = { even_if_dead = yes this = scope:dead_character } - } - trigger_event = death_management.3002 #Parent death in YOUR dungeon notification - } - - else_if = { #Parent - limit = { - exists = scope:house_arrest_holder - any_parent = { even_if_dead = yes this = scope:dead_character } - } - trigger_event = death_management.4002 #Parent death in house arrest notification - } - - else_if = { #Parent died in battle - limit = { - exists = scope:battle_death_leader - any_parent = { even_if_dead = yes this = scope:dead_character } - } - trigger_event = death_management.1202 #Parent death in battle notification - } - - else_if = { #Parent - limit = { - any_parent = { even_if_dead = yes this = scope:dead_character } - } - send_interface_message = { - type = family_has_died - desc = death_management.parent.desc - left_icon = scope:dead_character - - if = { - limit = { - NOT = { - scope:dead_character = { - age >= 65 - death_reason = death_old_age - } - } - } - add_stress = scope:deceased_character_stress - } - } - } - - else_if = { #Sibling - limit = { - any_sibling = { even_if_dead = yes this = scope:dead_character } - } - send_interface_message = { - type = family_has_died - desc = death_management.sibling.desc - left_icon = scope:dead_character - - if = { - limit = { - scope:dead_character = { - age < 40 - } - } - add_stress = scope:deceased_character_stress - } - } - } - - else_if = { #Best friend died in battle - limit = { - exists = scope:battle_death_leader - is_in_list = send_death_management_0002_lover - } - trigger_event = death_management.1204 #Lover death in battle notification - } - - else_if = { #Lover - limit = { - is_in_list = send_death_management_0002_lover - } - if = { - limit = { - has_character_flag = important_lover - } - remove_character_flag = important_lover - trigger_event = death_management.1004 #Lover death notification - } - else = { - send_interface_message = { - type = lover_has_died - desc = death_management.lover.desc - left_icon = scope:dead_character - - add_stress = scope:deceased_character_stress - } - } - } - - else_if = { #Friend - limit = { - is_in_list = send_death_management_0002_friend - } - send_interface_message = { - type = friend_has_died - title = friend_death_notification_title - desc = death_management.friend.desc - left_icon = scope:dead_character - - add_stress = scope:deceased_character_stress - } - } - - else_if = { #Best friend died in battle - limit = { - exists = scope:battle_death_leader - is_in_list = send_death_management_0002_best_friend - } - trigger_event = death_management.1205 #Best friend death in battle notification - } - - else_if = { #Best Friend - limit = { - is_in_list = send_death_management_0002_best_friend - has_bp1_dlc_trigger = no - } - trigger_event = death_management.1005 #Best Friend death notification - } - - else_if = { #Rival in your dungeon - limit = { - exists = scope:prison_holder - scope:prison_holder = root - is_in_list = send_death_management_0002_rival - } - trigger_event = death_management.3006 #Rival death notification - } - - else_if = { #Rival died in battle - limit = { - exists = scope:battle_death_leader - is_in_list = send_death_management_0002_rival - } - trigger_event = death_management.1206 #Rival death in battle notification - } - - else_if = { #Rival - limit = { - is_in_list = send_death_management_0002_rival - } - trigger_event = death_management.1006 #Rival death notification - } - - else_if = { # Guardian - limit = { - any_relation = { type = guardian even_if_dead = yes this = scope:dead_character } - } - trigger_event = death_management.1010 #Educator death notification - } - - else_if = { #Parent of spouse (if primary heir) - limit = { - exists = scope:parent_of_spouse_of_dead_character - this = scope:parent_of_spouse_of_dead_character - } - if = { - limit = { - tier_difference = { - target = scope:dead_character - value >= 4 - } - } - trigger_event = death_management.1008 #Spouse of child death notification - } - else = { - send_interface_message = { - type = notable_has_died - desc = death_management.spouse_child.desc - left_icon = scope:dead_character - } - } - } - - else_if = { #Parent of betrothed - limit = { - exists = scope:parent_of_betrothed_of_dead_character - this = scope:parent_of_betrothed_of_dead_character - } - if = { - limit = { - tier_difference = { - target = scope:dead_character - value >= 4 - } - } - trigger_event = death_management.1009 #Betrothed of child death notification - } - else = { - send_interface_message = { - type = notable_has_died - desc = death_management.betrothed_child.desc - left_icon = scope:dead_character - } - } - } - - else_if = { # Child's Guardian - limit = { - any_child = { - any_relation = { type = guardian even_if_dead = yes this = scope:dead_character } - } - } - random_child = { - limit = { any_relation = { type = guardian even_if_dead = yes this = scope:dead_character } } - save_scope_as = ward_of_dead_character - } - send_interface_message = { #Child's educator's death notification - type = notable_has_died - desc = death_management.educator.desc - left_icon = scope:dead_character - right_icon = scope:ward_of_dead_character - } - } - - else_if = { # Prisoner - limit = { - exists = scope:prison_holder - this = scope:prison_holder - } - send_interface_message = { #A prisoner died notification - type = prisoner_has_died - desc = death_management.prisoner.desc - left_icon = scope:dead_character - } - } - - else_if = { # Councillor - limit = { - exists = scope:liege_of_dead_character_councillor - this = scope:liege_of_dead_character_councillor - NOT = { - scope:liege_of_dead_character_councillor = { has_government = landless_adventurer_government } - } - } - send_interface_message = { - type = councillor_has_died - desc = death_management.liege_councillor.desc - left_icon = scope:dead_character - } - } - - else_if = { # Elder - limit = { - is_in_list = send_death_management_0002_elder - } - send_interface_message = { #Heir death notification (for others) - type = elder_has_died - desc = death_management.elder.desc - left_icon = scope:dead_character - } - } - - #else_if = { - # limit = { - # exists = scope:liege_of_dead_character - # this = scope:liege_of_dead_character - # } - # send_interface_message = { - # type = family_has_died - # desc = death_management.liege.desc - # left_icon = scope:dead_character - # } - #} - - else_if = { # Pinned - limit = { - any_pinned_character = { this = scope:dead_character } - } - send_interface_message = { - type = notable_has_died - desc = death_management.pinned.desc - left_icon = scope:dead_character - } - } - } - } -} - -death_management.0003 = { - type = character_event - hidden = yes - - immediate = { - send_interface_toast = { - type = event_toast_effect_neutral - title = ho_loan_inherited_title - left_icon = scope:loan_passer - right_icon = var:loan_holder - custom_tooltip = ho_loan_inherited_debtor_tt - } - } -} - - -###################################################### -# NOTIFICATION EVENTS -# 1000-1999 -###################################################### - -#Notification about dead spouse -death_management.1000 = { - type = character_event - title = death_management.1000.t - desc = { - triggered_desc = { - trigger = { - exists = scope:killer - } - desc = death_management.1000.murder - } - first_valid = { - triggered_desc = { - trigger = { - has_variable = bloody_wedding_murder - } - desc = death_management.1000.murder_wedding - } - triggered_desc = { #Plague killed them: You liked your spouse - trigger = { - NOT = { #Ensure not murdered - exists = scope:killer - } - has_variable_list = like - is_target_in_variable_list = { - name = like - target = scope:dead_character - } - scope:dead_character = { - OR = { - has_trait = bubonic_plague - has_trait = smallpox - has_trait = typhus - has_trait = consumption - has_trait = measles - has_trait = dysentery - has_trait = ergotism - } - } - } - desc = { - desc = death_management.1000.plaguestart - desc = death_management.1000.plaguespouse - desc = death_management.1000.like - } - } - triggered_desc = { #Plague killed them: You disliked them - trigger = { - NOT = { #Ensure not murdered - exists = scope:killer - } - has_variable_list = dislike - is_target_in_variable_list = { - name = dislike - target = scope:dead_character - } - scope:dead_character = { - OR = { - has_trait = bubonic_plague - has_trait = smallpox - has_trait = typhus - has_trait = consumption - has_trait = measles - has_trait = dysentery - has_trait = ergotism - } - } - } - desc = { - desc = death_management.1000.plaguestart - desc = death_management.1000.plaguespouse - desc = death_management.1000.dislike - } - } - triggered_desc = { #Plague killed them: They were just your spouse, nothing more - trigger = { - NOT = { #Ensure not murdered - exists = scope:killer - } - scope:dead_character = { - OR = { - has_trait = bubonic_plague - has_trait = smallpox - has_trait = typhus - has_trait = consumption - has_trait = measles - has_trait = dysentery - has_trait = ergotism - } - } - } - desc = { - desc = death_management.1000.plaguestart - desc = death_management.1000.plaguespouse - desc = death_management.1000.neutral - } - } - triggered_desc = { - trigger = { - has_variable_list = like - is_target_in_variable_list = { - name = like - target = scope:dead_character - } - } - desc = death_management.1000.like - } - triggered_desc = { - trigger = { - has_variable_list = dislike - is_target_in_variable_list = { - name = dislike - target = scope:dead_character - } - } - desc = death_management.1000.dislike - } - desc = death_management.1000.neutral - } - } - theme = death - override_background = { - trigger = { is_travelling = yes } - reference = terrain - } - left_portrait = { - character = root - triggered_animation = { - trigger = { - has_variable_list = like - is_target_in_variable_list = { - name = like - target = scope:dead_character - } - } - animation = grief - } - triggered_animation = { - trigger = { - has_variable_list = dislike - is_target_in_variable_list = { - name = dislike - target = scope:dead_character - } - } - animation = dismissal - } - animation = sadness - } - right_portrait = { - character = scope:dead_character - animation = dead - } - lower_right_portrait = { - character = scope:killer - trigger = { exists = scope:known_killer } - } - - trigger = { - NOT = { has_character_flag = knows_of_spouse_death_flag } - } - - immediate = { - play_music_cue = mx_cue_death - root.primary_title ?= { - save_scope_as = realm - } - - if = { - limit = { - has_variable_list = like - is_target_in_variable_list = { - name = like - target = scope:dead_character - } - } - save_scope_value_as = { - name = like - value = yes - } - } - else_if = { - limit = { - has_variable_list = dislike - is_target_in_variable_list = { - name = dislike - target = scope:dead_character - } - } - save_scope_value_as = { - name = dislike - value = yes - } - } - - if = { - limit = { - exists = scope:killer - scope:killer = { - OR = { - # No Secret because everyone knows - NOT = { - any_secret = { - type = secret_murder - secret_target = scope:dead_character - } - } - # Secret, but you happen to know - any_secret = { - type = secret_murder - secret_target = scope:dead_character - is_known_by = root - } - } - } - } - save_scope_value_as = { - name = known_killer - value = yes - } - } - } - - #My beloved spouse! - option = { - trigger = { - exists = scope:like - } - name = death_management.1000.a - - stress_impact = { - base = medium_stress_impact_gain - callous = minor_stress_impact_loss - } - stress_save_deceased_character_for_mental_break = { - TARGET = scope:dead_character - FLAG = spouse - } - } - - #That's a shame - option = { - trigger = { - NOR = { - exists = scope:like - exists = scope:dislike - } - } - name = death_management.1000.b - - if = { - limit = { - OR = { - has_any_bad_relationship_with_root_trigger = yes - opinion = { - target = scope:dead_character - value < -30 - } - } - } - } - else = { - stress_impact = { - base = minor_stress_impact_gain - callous = minor_stress_impact_loss - } - } - stress_save_deceased_character_for_mental_break = { - TARGET = scope:dead_character - FLAG = spouse - } - } - - #What a relief! - option = { - trigger = { - exists = scope:dislike - } - exclusive = yes - name = death_management.1000.c - - stress_impact = { - base = minor_stress_impact_loss - } - } - after = { - # We change your legend in case you really loved your spouse - if = { - limit = { - exists = scope:like - has_legend_chapter_trigger = { CHAPTER = conclusion } - NOT = { - promoted_legend ?= { - has_legend_chapter = { - name = conclusion - localization_key = legend_chapter_conclusion_dead_loved_spouse - } - } - } - NOT = { # Unless you killed them yourself - scope:killer ?= root - } - } - random = { - chance = 75 - send_interface_toast = { - title = legend_chapter_change_toast - left_icon = root - right_icon = scope:dead_character - promoted_legend = { - set_legend_chapter = { - name = conclusion - localization_key = legend_chapter_conclusion_dead_loved_spouse - } - } - } - } - } - if = { - limit = { - exists = scope:known_killer - } - custom_tooltip = death_management.1000.killed.tt - } - else = { - custom_tooltip = death_management.1001.tt - } - clear_variable_list = like - clear_variable_list = dislike - } -} - -#Notification for parent of dead child -death_management.1001 = { - type = character_event - title = death_management.1001.t - desc = { - triggered_desc = { - trigger = { - exists = scope:killer - } - desc = death_management.1001.murder - } - first_valid = { - triggered_desc = { - trigger = { - NOT = { #Ensure not murdered - exists = scope:killer - } - scope:dead_character = { - age < 16 - OR = { - has_trait = bubonic_plague - has_trait = smallpox - has_trait = typhus - has_trait = consumption - has_trait = measles - has_trait = dysentery - has_trait = ergotism - } - } - } - desc = { - desc = death_management.1000.plaguestart - desc = death_management.1001.plaguechild - } - } - triggered_desc = { - trigger = { - scope:dead_character = { - age < 16 - } - } - desc = death_management.1001.child - } - triggered_desc = { - trigger = { - reverse_opinion = { - target = scope:dead_character - value >= 40 - } - } - desc = death_management.1001.like - } - triggered_desc = { - trigger = { - reverse_opinion = { - target = scope:dead_character - value < 0 - } - } - desc = death_management.1001.dislike - } - desc = death_management.1001.neutral - } - } - theme = death - override_background = { - trigger = { is_travelling = yes } - reference = terrain - } - left_portrait = { - character = root - animation = grief - } - right_portrait = { - character = scope:dead_character - animation = dead - } - lower_right_portrait = { - character = scope:killer - trigger = { exists = scope:known_killer } - } - - immediate = { - play_music_cue = mx_cue_death - root.primary_title ?= { - save_scope_as = realm - } - if = { - limit = { - exists = scope:killer - scope:killer = { - OR = { - # No Secret because everyone knows - NOT = { - any_secret = { - type = secret_murder - secret_target = scope:dead_character - } - } - # Secret, but you happen to know - any_secret = { - type = secret_murder - secret_target = scope:dead_character - is_known_by = root - } - } - } - } - save_scope_value_as = { - name = known_killer - value = yes - } - } - } - - #Good child - option = { - trigger = { - scope:dead_character = { - is_adult = yes - } - reverse_opinion = { - target = scope:dead_character - value >= 40 - } - } - name = death_management.1001.a - - stress_impact = { - base = medium_stress_impact_gain - } - stress_save_deceased_character_for_mental_break = { - TARGET = scope:dead_character - FLAG = child - } - } - - #Neutral - option = { - trigger = { - scope:dead_character = { - is_adult = yes - } - reverse_opinion = { - target = scope:dead_character - value < 40 - } - reverse_opinion = { - target = scope:dead_character - value >= 0 - } - } - name = death_management.1000.b - - stress_impact = { - base = minor_stress_impact_gain - } - stress_save_deceased_character_for_mental_break = { - TARGET = scope:dead_character - FLAG = child - } - } - - #Relieved - option = { - trigger = { - scope:dead_character = { - is_adult = yes - } - reverse_opinion = { - target = scope:dead_character - value < 0 - } - } - name = death_management.1001.c - - stress_impact = { - base = minor_stress_impact_loss - } - } - - #Little child... - option = { - trigger = { - scope:dead_character = { - is_adult = no - } - } - name = death_management.1001.d - - if = { - limit = { - any_child = { - count >= 10 - } - } - stress_impact = { - base = minor_stress_impact_gain - } - } - else = { - stress_impact = { - base = medium_stress_impact_gain - } - } - stress_save_deceased_character_for_mental_break = { - TARGET = scope:dead_character - FLAG = child - } - } - after = { - if = { - limit = { - exists = scope:known_killer - } - custom_tooltip = death_management.1000.killed.tt - } - else = { - custom_tooltip = death_management.1001.tt - } - } -} - -# Sound Foundations stat removal -death_management.1002 = { - hidden = yes - orphan = yes - - immediate = { - every_parent = { sound_foundations_random_removal_effect = yes } - } -} - -# Friendly Counsel -# Called from on action: death & on action: remove friendship -death_management.1003 = { - hidden = yes - - immediate = { - every_relation = { - type = friend - add_to_temporary_list = death_management_1002_friendly_counsel_friends - } - every_relation = { - type = best_friend - add_to_temporary_list = death_management_1002_friendly_counsel_friends - } - every_in_list = { - list = death_management_1002_friendly_counsel_friends - friendly_counsel_random_removal_effect = yes - } - } -} - -#Dead lover -death_management.1004 = { - type = character_event - title = death_management.1004.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - NOT = { #Ensure not murdered - exists = scope:killer - } - scope:dead_character = { - OR = { - has_trait = bubonic_plague - has_trait = smallpox - has_trait = typhus - has_trait = consumption - has_trait = measles - has_trait = dysentery - has_trait = ergotism - } - } - } - desc = { - desc = death_management.1000.plaguestart - desc = death_management.1004.desc - } - } - desc = death_management.1004.desc - } - } - theme = death - override_background = { - trigger = { is_travelling = yes } - reference = terrain - } - left_portrait = { - character = root - animation = grief - } - right_portrait = { - character = scope:dead_character - animation = dead - } - - immediate = { - play_music_cue = mx_cue_death - root.primary_title ?= { - save_scope_as = realm - } - } - - option = { - name = death_management.1004.a - - add_stress = scope:deceased_character_stress - stress_save_deceased_character_for_mental_break = { - TARGET = scope:dead_character - FLAG = lover - } - } - - after = { - if = { - limit = { - exists = scope:killer - } - custom_tooltip = death_management.1000.killed.tt - } - else = { - custom_tooltip = death_management.1004.a.tt - } - } -} - -#Dead best friend -death_management.1005 = { - type = character_event - title = death_management.1005.t - desc = { - first_valid = { - triggered_desc = { - trigger = { exists = scope:dead_ritual_best_friend } - desc = death_management.1005.desc.ritual_best_friend - } - triggered_desc = { - trigger = { - NOT = { #Ensure not murdered - exists = scope:killer - } - scope:dead_character = { - OR = { - has_trait = bubonic_plague - has_trait = smallpox - has_trait = typhus - has_trait = consumption - has_trait = measles - has_trait = dysentery - has_trait = ergotism - } - } - } - desc = { - desc = death_management.1000.plaguestart - desc = death_management.1005.desc - } - } - desc = death_management.1005.desc - } - } - theme = death - override_background = { - trigger = { is_travelling = yes } - reference = terrain - } - left_portrait = { - character = root - animation = grief - } - right_portrait = { - character = scope:dead_character - animation = dead - } - - immediate = { - play_music_cue = mx_cue_death - # Remove the best friend flag, if it's around, but note that it was here for loc. - if = { - limit = { has_character_flag = dead_ritual_best_friend } - remove_character_flag = dead_ritual_best_friend - save_scope_as = dead_ritual_best_friend - } - } - - option = { - name = death_management.1005.a - - add_stress = scope:deceased_character_stress - stress_save_deceased_character_for_mental_break = { - TARGET = scope:dead_character - FLAG = friend - } - } - after = { - if = { - limit = { - exists = scope:killer - } - custom_tooltip = death_management.1000.killed.tt - } - else = { - custom_tooltip = death_management.1005.a.tt - } - } -} - -#Dead rival -death_management.1006 = { - type = character_event - title = death_management.1006.t - desc = death_management.1006.desc - theme = death - override_background = { - trigger = { is_travelling = yes } - reference = terrain - } - left_portrait = { - character = root - animation = happiness - } - right_portrait = { - character = scope:dead_character - animation = dead - } - - immediate = { - play_music_cue = mx_cue_death - add_stress = scope:deceased_character_stress - if = { - limit = { - exists = scope:killer - } - custom_tooltip = death_management.1000.killed.tt - if = { - limit = { - scope:killer = root - } - add_prestige = medium_prestige_gain - } - } - else = { - custom_tooltip = death_management.1006.a.tt - } - } - - option = { - name = death_management.1000.c - trigger = { - NOT = { - house_has_feud_relation_with_trigger = { TARGET = scope:dead_character } - } - } - } - - option = { # Continue - name = death_management.1006.d - trigger = { - house_has_feud_relation_with_trigger = { TARGET = scope:dead_character } - NOT = { - house_feud_wiped_out_trigger = { TARGET = scope:dead_character } - } - } - custom_tooltip = house_feud_continue_tt - ai_chance = { - base = 25 - ai_value_modifier = { - ai_vengefulness = 1 - ai_boldness = 1 - } - } - } - - option = { # End - name = death_management.1006.e - trigger = { - house_has_feud_relation_with_trigger = { TARGET = scope:dead_character } - NOT = { - house_feud_wiped_out_trigger = { TARGET = scope:dead_character } - } - } - house ?= { - change_house_relation_effect = { - HOUSE = scope:dead_character.house - VALUE = house_relation_improve_major_value - REASON = de_escalation - CHAR = root - TARGET_CHAR = scope:dead_character - TITLE = scope:dummy_gender - } - } - ai_chance = { - base = 25 - ai_value_modifier = { - ai_vengefulness = -1 - ai_boldness = -1 - } - } - } - - option = { # Wipe end - name = death_management.1006.f - trigger = { - house_has_feud_relation_with_trigger = { TARGET = scope:dead_character } - house_feud_wiped_out_trigger = { TARGET = scope:dead_character } - } - } -} - -#Dead heir -death_management.1007 = { - type = character_event - title = death_management.1007.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - exists = scope:killer - } - desc = death_management.1007.start_murder - } - desc = death_management.1007.start - } - first_valid = { - triggered_desc = { - trigger = { scope:dead_character.highest_held_title_tier >= root.highest_held_title_tier } - desc = death_management.1007.same_or_higher_tier - } - triggered_desc = { - trigger = { - OR = { - AND = { - is_male = yes - scope:dead_character = { is_male = yes } - } - AND = { - is_female = yes - scope:dead_character = { is_female = yes } - } - } - } - desc = death_management.1007.mytitle - } - desc = death_management.1007.ruler - } - desc = death_management.1007.end - } - theme = death - override_background = { - trigger = { is_travelling = yes } - reference = terrain - } - left_portrait = { - character = root - animation = grief - } - right_portrait = { - character = scope:dead_character - animation = dead - } - lower_right_portrait = { - trigger = { exists = scope:known_killer } - character = scope:killer - } - - trigger = { - exists = player_heir - } - - immediate = { - play_music_cue = mx_cue_death - if = { - limit = { - exists = scope:killer - scope:killer = { - OR = { - # No Secret because everyone knows - NOT = { - any_secret = { - type = secret_murder - secret_target = scope:dead_character - } - } - # Secret, but you happen to know - any_secret = { - type = secret_murder - secret_target = scope:dead_character - is_known_by = root - } - } - } - } - save_scope_value_as = { - name = known_killer - value = yes - } - } - } - - option = { - name = death_management.1007.a - - stress_impact = { - base = minor_stress_impact_gain - } - } - - after = { - if = { - limit = { - exists = scope:known_killer - } - custom_tooltip = death_management.1000.killed.tt - } - else = { - custom_tooltip = death_management.1007.a.tt - } - } -} - -#Death of child's spouse (if child is primary heir) -death_management.1008 = { - type = character_event - title = death_management.1009.t - desc = death_management.1008.desc - theme = death - override_background = { - trigger = { is_travelling = yes } - reference = terrain - } - left_portrait = { - character = root - animation = grief - } - right_portrait = { - character = scope:dead_character - animation = dead - } - lower_left_portrait = scope:spouse_of_dead_character - - immediate = { - play_music_cue = mx_cue_death - } - - option = { - name = death_management.1008.a - } - - after = { - if = { - limit = { - exists = scope:killer - } - custom_tooltip = death_management.1000.killed.tt - } - else = { - custom_tooltip = death_management.1008.a.tt - } - } -} - -#Death of child's betrothed -death_management.1009 = { - type = character_event - title = death_management.1009.t - desc = death_management.1009.desc - theme = death - override_background = { - trigger = { is_travelling = yes } - reference = terrain - } - left_portrait = { - character = root - animation = sadness - } - right_portrait = { - character = scope:dead_character - animation = dead - } - lower_left_portrait = scope:betrothed_of_dead_character - - trigger = { - - } - - immediate = { - play_music_cue = mx_cue_death - } - - option = { - name = { - trigger = { age <= 16 } - text = death_management.1009.a - } - name = { - trigger = { age > 16 } - text = death_management.1008.a - } - } - - after = { - if = { - limit = { - exists = scope:killer - } - custom_tooltip = death_management.1000.killed.tt - } - else = { - custom_tooltip = death_management.1009.a.tt - } - } -} - - -#Death of child's Educator - event for child -death_management.1010 = { - type = character_event - title = death_management.1010.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - exists = scope:killer - scope:killer = root - } - desc = death_management.1010.murderer - } - triggered_desc = { - trigger = { age < 12 } - desc = death_management.1010.under_12 - } - desc = death_management.1010.12_or_over - } - } - theme = death - override_background = { - trigger = { is_travelling = yes } - reference = terrain - } - - immediate = { - play_music_cue = mx_cue_death - } - - option = { - name = { - text = death_management.1010.under_12_liked_educator - trigger = { - age < 12 - opinion = { - target = scope:dead_character - value > 0 - } - trigger_if = { - limit = { - exists = scope:killer - } - scope:killer != root - } - } - } - name = { - text = death_management.1010.under_12_disliked_educator - trigger = { - age < 12 - opinion = { - target = scope:dead_character - value <= 0 - } - trigger_if = { - limit = { - exists = scope:killer - } - scope:killer != root - } - } - } - name = { - text = death_management.1010.over_12_liked_educator - trigger = { - age >= 12 - opinion = { - target = scope:dead_character - value > 0 - } - trigger_if = { - limit = { - exists = scope:killer - } - scope:killer != root - } - } - } - name = { - text = death_management.1010.over_12_disliked_educator - trigger = { - OR = { - AND = { - age >= 12 - opinion = { - target = scope:dead_character - value <= 0 - } - } - AND = { - exists = scope:killer - scope:killer = root - } - } - } - } - custom_tooltip = death_management.1010.a.tt - } -} - -###################################################### -# NOTIFICATION EVENTS - BATTLE DEATH EVENTS -# 1200-1207 -###################################################### - -scripted_effect death_in_battle_memory_effect = { - if = { - limit = { - this = scope:portrait_scope - is_alive = yes - } - if = { - limit = { exists = scope:battle_death_killer } - create_character_memory = { - type = witnessed_death_battle_$TYPE$_killer - - participants = { - dead_relation = scope:dead_character - relation_killer = scope:battle_death_killer - } - } - } - else = { - create_character_memory = { - type = witnessed_death_battle_$TYPE$ - - participants = { - dead_relation = scope:dead_character - } - } - } - random_memory = { - limit = { - OR = { - has_memory_type = witnessed_death_battle_good_killer - has_memory_type = witnessed_death_battle_bad_killer - has_memory_type = witnessed_death_battle_good - has_memory_type = witnessed_death_battle_bad - } - NOT = { has_variable = battle_location } - } - set_variable = { - name = battle_location - value = scope:battle_death_location - } - } - } -} - -scripted_effect death_in_battle_scope_effect = { - if = { - limit = { - is_in_army = yes - OR = { - this = scope:battle_death_enemy - this = scope:battle_death_leader - } - } - save_scope_as = portrait_scope - } - else = { - scope:dead_character = { save_scope_as = portrait_scope } - } - scope:dead_character = { - if = { - limit = { - exists = killer - scope:killer = { - is_alive = yes - } - } - killer = { - save_scope_as = battle_death_killer - set_signature_weapon_effect = yes - } - show_as_tooltip = { - death = { - death_reason = death_battle - killer = scope:battle_death_killer - } - } - } - else = { - show_as_tooltip = { - death = { death_reason = death_battle } - } - } - } -} - -scripted_effect set_and_inform_slayer_rivalry_effect = { - save_scope_as = avenger - scope:battle_death_killer = { - send_interface_message = { - type = send_interface_message_bad - left_icon = scope:avenger - right_icon = scope:dead_character - title = death_battle_new_rivalry_title - set_relation_rival = { - target = scope:avenger - reason = rival_killed_heir - involved_character = scope:dead_character - } - } - } -} - -scripted_trigger set_and_inform_slayer_rivalry_trigger = { - exists = scope:battle_death_killer - can_set_relation_rival_trigger = { CHARACTER = scope:battle_death_killer } -} - -# Spouse dies in battle -death_management.1200 = { - type = character_event - title = death_management.1200.t - desc = { - # Intro 1 - In battle or reading a letter? - first_valid = { - triggered_desc = { # Died in battle you were part of - trigger = { this = scope:portrait_scope } - desc = death_management.intro.witnessed # generic - } - triggered_desc = { # Died in a battle involving your army - trigger = { - OR = { - this = scope:battle_death_enemy - this = scope:battle_death_leader - } - } - desc = death_management.intro.war # generic - } - desc = death_management.intro # generic - } - # Intro 2 - In battle or reading a letter? - first_valid = { - triggered_desc = { # You saw them die, friendly - trigger = { - this = scope:portrait_scope - this = scope:battle_death_enemy - } - desc = death_management.intro.enemy # generic - } - triggered_desc = { # You saw them die, enemy - trigger = { - this = scope:portrait_scope - this = scope:battle_death_leader - } - desc = death_management.intro.friendly # generic - } - desc = death_management.intro.letter.spouse # unique - } - # Death details - first_valid = { - triggered_desc = { # You saw them die, enemy - trigger = { - this = scope:portrait_scope - this = scope:battle_death_enemy - } - desc = death_management.death.witnessed.enemy # generic - } - triggered_desc = { # You saw them die, friendly - trigger = { - this = scope:portrait_scope - this = scope:battle_death_leader - } - desc = death_management.death.witnessed.friendly # generic - } - triggered_desc = { # They died on other side - trigger = { scope:battle_death_enemy = root } - desc = death_management.death.war.enemy # generic - } - triggered_desc = { # They died on your side - trigger = { scope:battle_death_leader = root } - desc = death_management.death.war.friendly # generic - } - desc = death_management.death.uninvolved # generic - } - # Killer details - first_valid = { - triggered_desc = { # On other side - trigger = { - this = scope:portrait_scope - scope:battle_death_enemy = root - exists = scope:battle_death_killer - } - desc = death_management.killer.witnessed.enemy # generic - } - triggered_desc = { # On same side - trigger = { - this = scope:portrait_scope - scope:battle_death_leader = root - exists = scope:battle_death_killer - } - desc = death_management.killer.witnessed.friendly # generic - } - triggered_desc = { # In some other battle - trigger = { exists = scope:battle_death_killer } - desc = death_management.killer # generic - } - triggered_desc = { # In some other battle - trigger = { - NOT = { - exists = scope:battle_death_killer - } - } - desc = death_management.no_killer # generic - } - } - first_valid = { - triggered_desc = { # You disliked them - trigger = { - exists = scope:dislike - } - desc = death_management.1200.desc_happy #happy - } - triggered_desc = { # You didn't dislike them - trigger = { - NOT = { - exists = scope:dislike - } - } - desc = death_management.1200.desc_sad #generic - } - } - } - theme = death - override_background = { reference = battlefield } - left_portrait = { - character = scope:portrait_scope - triggered_animation = { - trigger = { - OR = { - this = scope:battle_death_enemy - this = scope:battle_death_leader - } - } - animation = grief - } - triggered_animation = { - trigger = { always = yes } - animation = idle - } - } - lower_right_portrait = { - character = scope:battle_death_killer - trigger = { - exists = scope:battle_death_killer - scope:battle_death_killer != root - } - } - lower_center_portrait = { - character = scope:dead_character - trigger = { scope:portrait_scope = root } - } - - immediate = { - play_music_cue = mx_cue_death - death_in_battle_scope_effect = yes - # Taken from death.management.1000 - if = { - limit = { - reverse_opinion = { - target = scope:dead_character - value >= 10 - } - scope:dead_character = { has_any_bad_relationship_with_root_trigger = no } - OR = { - opinion = { - target = scope:dead_character - value >= 10 - } - scope:dead_character = { has_friendly_relationship_with_root_trigger = yes } - } - } - add_to_variable_list = { - name = like - target = scope:dead_character - } - death_in_battle_memory_effect = { TYPE = good } - } - else_if = { - limit = { - OR = { - has_any_bad_relationship_with_root_trigger = yes - opinion = { - target = scope:dead_character - value < -30 - } - } - } - add_to_variable_list = { - name = dislike - target = scope:dead_character - } - death_in_battle_memory_effect = { TYPE = bad } - } - else = { - death_in_battle_memory_effect = { TYPE = good } - } - if = { - limit = { - has_variable_list = like - is_target_in_variable_list = { - name = like - target = scope:dead_character - } - } - save_scope_value_as = { - name = like - value = yes - } - } - else_if = { - limit = { - has_variable_list = dislike - is_target_in_variable_list = { - name = dislike - target = scope:dead_character - } - } - save_scope_value_as = { - name = dislike - value = yes - } - } - } - - # New rival - option = { - name = death_management.1200.a - trigger = { - NOT = { - exists = scope:dislike - } - set_and_inform_slayer_rivalry_trigger = yes - } - stress_impact = { - base = medium_stress_impact_gain - callous = minor_stress_impact_loss - } - stress_save_deceased_character_for_mental_break = { - TARGET = scope:dead_character - FLAG = spouse - } - set_and_inform_slayer_rivalry_effect = yes - } - - #My beloved spouse! - option = { - name = death_management.1200.b - trigger = { - exists = scope:like - } - stress_impact = { - base = medium_stress_impact_gain - callous = minor_stress_impact_loss - } - stress_save_deceased_character_for_mental_break = { - TARGET = scope:dead_character - FLAG = spouse - } - } - - #That's a shame - option = { - trigger = { - NOR = { - exists = scope:like - exists = scope:dislike - } - } - name = death_management.1200.c - if = { - limit = { - OR = { - has_any_bad_relationship_with_root_trigger = yes - opinion = { - target = scope:dead_character - value < -30 - } - } - } - } - else = { - stress_impact = { - base = minor_stress_impact_gain - callous = minor_stress_impact_loss - } - } - stress_save_deceased_character_for_mental_break = { - TARGET = scope:dead_character - FLAG = spouse - } - } - - #What a relief! - option = { - trigger = { - exists = scope:dislike - } - exclusive = yes - name = death_management.1200.d - stress_impact = { - base = minor_stress_impact_loss - } - } - - after = { - clear_variable_list = like - clear_variable_list = dislike - } -} - -# Child dies in battle -death_management.1201 = { - type = character_event - title = death_management.1201.t - desc = { - # Intro 1 - In battle or reading a letter? - first_valid = { - triggered_desc = { # Died in battle you were part of - trigger = { this = scope:portrait_scope } - desc = death_management.intro.witnessed # generic - } - triggered_desc = { # Died in a battle involving your army - trigger = { - OR = { - this = scope:battle_death_enemy - this = scope:battle_death_leader - } - } - desc = death_management.intro.war # generic - } - desc = death_management.intro # generic - } - # Intro 2 - In battle or reading a letter? - first_valid = { - triggered_desc = { # You saw them die, friendly - trigger = { - this = scope:portrait_scope - this = scope:battle_death_enemy - } - desc = death_management.intro.enemy # generic - } - triggered_desc = { # You saw them die, enemy - trigger = { - this = scope:portrait_scope - this = scope:battle_death_leader - } - desc = death_management.intro.friendly # generic - } - desc = death_management.intro.letter.family # unique - } - # Death details - first_valid = { - triggered_desc = { # You saw them die, enemy - trigger = { - this = scope:portrait_scope - this = scope:battle_death_enemy - } - desc = death_management.death.witnessed.enemy # generic - } - triggered_desc = { # You saw them die, friendly - trigger = { - this = scope:portrait_scope - this = scope:battle_death_leader - } - desc = death_management.death.witnessed.friendly # generic - } - triggered_desc = { # They died on other side - trigger = { scope:battle_death_enemy = root } - desc = death_management.death.war.enemy # generic - } - triggered_desc = { # They died on your side - trigger = { scope:battle_death_leader = root } - desc = death_management.death.war.friendly # generic - } - desc = death_management.death.uninvolved # generic - } - # Killer details - first_valid = { - triggered_desc = { # On other side - trigger = { - this = scope:portrait_scope - scope:battle_death_enemy = root - exists = scope:battle_death_killer - } - desc = death_management.killer.witnessed.enemy # generic - } - triggered_desc = { # On same side - trigger = { - this = scope:portrait_scope - scope:battle_death_leader = root - exists = scope:battle_death_killer - } - desc = death_management.killer.witnessed.friendly # generic - } - triggered_desc = { # In some other battle - trigger = { exists = scope:battle_death_killer } - desc = death_management.killer # generic - } - triggered_desc = { # In some other battle - trigger = { - NOT = { - exists = scope:battle_death_killer - } - } - desc = death_management.no_killer # generic - } - } - desc = death_management.1201.desc # unique - } - theme = death - override_background = { reference = battlefield } - left_portrait = { - character = scope:portrait_scope - triggered_animation = { - trigger = { - OR = { - this = scope:battle_death_enemy - this = scope:battle_death_leader - } - } - animation = grief - } - triggered_animation = { - trigger = { always = yes } - animation = idle - } - } - lower_right_portrait = { - character = scope:battle_death_killer - trigger = { - exists = scope:battle_death_killer - scope:battle_death_killer != root - } - } - lower_center_portrait = { - character = scope:dead_character - trigger = { scope:portrait_scope = root } - } - - immediate = { - play_music_cue = mx_cue_death - death_in_battle_scope_effect = yes - death_in_battle_memory_effect = { TYPE = good } - # Taken from death_management.1001 - if = { - limit = { - reverse_opinion = { - target = scope:dead_character - value >= 0 - } - } - stress_save_deceased_character_for_mental_break = { - TARGET = scope:dead_character - FLAG = child - } - if = { - limit = { - reverse_opinion = { - target = scope:dead_character - value >= 40 - } - } - stress_impact = { base = medium_stress_impact_gain } - } - else_if = { - limit = { - reverse_opinion = { - target = scope:dead_character - value >= 0 - } - } - stress_impact = { base = minor_stress_impact_gain } - } - } - else = { - stress_impact = { base = minor_stress_impact_loss } - } - } - - # New rival - option = { - name = death_management.1201.a - trigger = { - reverse_opinion = { - target = scope:dead_character - value >= 0 - } - set_and_inform_slayer_rivalry_trigger = yes - } - set_and_inform_slayer_rivalry_effect = yes - } - - #Good child - option = { - name = death_management.1201.b - trigger = { - scope:dead_character = { is_adult = yes } - reverse_opinion = { - target = scope:dead_character - value >= 40 - } - } - } - - #Neutral - option = { - name = death_management.1201.c - trigger = { - scope:dead_character = { is_adult = yes } - reverse_opinion = { - target = scope:dead_character - value < 40 - } - reverse_opinion = { - target = scope:dead_character - value >= 0 - } - } - } - - #Relieved - option = { - name = death_management.1201.d - trigger = { - scope:dead_character = { is_adult = yes } - reverse_opinion = { - target = scope:dead_character - value < 0 - } - } - } -} - -# Parent dies in battle -death_management.1202 = { - type = character_event - title = death_management.1202.t - desc = { - # Intro 1 - In battle or reading a letter? - first_valid = { - triggered_desc = { # Died in battle you were part of - trigger = { this = scope:portrait_scope } - desc = death_management.intro.witnessed # generic - } - triggered_desc = { # Died in a battle involving your army - trigger = { - OR = { - this = scope:battle_death_enemy - this = scope:battle_death_leader - } - } - desc = death_management.intro.war # generic - } - desc = death_management.intro # generic - } - # Intro 2 - In battle or reading a letter? - first_valid = { - triggered_desc = { # You saw them die, friendly - trigger = { - this = scope:portrait_scope - this = scope:battle_death_enemy - } - desc = death_management.intro.enemy # generic - } - triggered_desc = { # You saw them die, enemy - trigger = { - this = scope:portrait_scope - this = scope:battle_death_leader - } - desc = death_management.intro.friendly # generic - } - desc = death_management.intro.letter.family # unique - } - # Death details - first_valid = { - triggered_desc = { # You saw them die, enemy - trigger = { - this = scope:portrait_scope - this = scope:battle_death_enemy - } - desc = death_management.death.witnessed.enemy # generic - } - triggered_desc = { # You saw them die, friendly - trigger = { - this = scope:portrait_scope - this = scope:battle_death_leader - } - desc = death_management.death.witnessed.friendly # generic - } - triggered_desc = { # They died on other side - trigger = { scope:battle_death_enemy = root } - desc = death_management.death.war.enemy # generic - } - triggered_desc = { # They died on your side - trigger = { scope:battle_death_leader = root } - desc = death_management.death.war.friendly # generic - } - desc = death_management.death.uninvolved # generic - } - # Killer details - first_valid = { - triggered_desc = { # On other side - trigger = { - this = scope:portrait_scope - scope:battle_death_enemy = root - exists = scope:battle_death_killer - } - desc = death_management.killer.witnessed.enemy # generic - } - triggered_desc = { # On same side - trigger = { - this = scope:portrait_scope - scope:battle_death_leader = root - exists = scope:battle_death_killer - } - desc = death_management.killer.witnessed.friendly # generic - } - triggered_desc = { # In some other battle - trigger = { exists = scope:battle_death_killer } - desc = death_management.killer # generic - } - triggered_desc = { # In some other battle - trigger = { - NOT = { - exists = scope:battle_death_killer - } - } - desc = death_management.no_killer # generic - } - } - desc = death_management.1202.desc # unique - } - theme = death - override_background = { reference = battlefield } - left_portrait = { - character = scope:portrait_scope - triggered_animation = { - trigger = { - OR = { - this = scope:battle_death_enemy - this = scope:battle_death_leader - } - } - animation = grief - } - triggered_animation = { - trigger = { always = yes } - animation = idle - } - } - lower_right_portrait = { - character = scope:battle_death_killer - trigger = { - exists = scope:battle_death_killer - scope:battle_death_killer != root - } - } - lower_center_portrait = { - character = scope:dead_character - trigger = { scope:portrait_scope = root } - } - - immediate = { - play_music_cue = mx_cue_death - death_in_battle_scope_effect = yes - death_in_battle_memory_effect = { TYPE = good } - if = { - limit = { - opinion = { - target = scope:dead_character - value >= 60 - } - } - stress_impact = { - base = medium_stress_impact_gain - } - } - else = { - stress_impact = { - base = minor_stress_impact_gain - } - } - } - - option = { - name = death_management.1202.a - } - - option = { - name = death_management.1202.b - trigger = { - set_and_inform_slayer_rivalry_trigger = yes - } - set_and_inform_slayer_rivalry_effect = yes - } -} - -# Lover dies in battle -death_management.1204 = { - type = character_event - title = death_management.1204.t - desc = { - # Intro 1 - In battle or reading a letter? - first_valid = { - triggered_desc = { # Died in battle you were part of - trigger = { this = scope:portrait_scope } - desc = death_management.intro.witnessed # generic - } - triggered_desc = { # Died in a battle involving your army - trigger = { - OR = { - this = scope:battle_death_enemy - this = scope:battle_death_leader - } - } - desc = death_management.intro.war # generic - } - desc = death_management.intro # generic - } - # Intro 2 - In battle or reading a letter? - first_valid = { - triggered_desc = { # You saw them die, friendly - trigger = { - this = scope:portrait_scope - this = scope:battle_death_enemy - } - desc = death_management.intro.enemy # generic - } - triggered_desc = { # You saw them die, enemy - trigger = { - this = scope:portrait_scope - this = scope:battle_death_leader - } - desc = death_management.intro.friendly # generic - } - desc = death_management.intro.letter.lover # unique - } - # Death details - first_valid = { - triggered_desc = { # You saw them die, enemy - trigger = { - this = scope:portrait_scope - this = scope:battle_death_enemy - } - desc = death_management.death.witnessed.enemy # generic - } - triggered_desc = { # You saw them die, friendly - trigger = { - this = scope:portrait_scope - this = scope:battle_death_leader - } - desc = death_management.death.witnessed.friendly # generic - } - triggered_desc = { # They died on other side - trigger = { scope:battle_death_enemy = root } - desc = death_management.death.war.enemy # generic - } - triggered_desc = { # They died on your side - trigger = { scope:battle_death_leader = root } - desc = death_management.death.war.friendly # generic - } - desc = death_management.death.uninvolved # generic - } - # Killer details - first_valid = { - triggered_desc = { # On other side - trigger = { - this = scope:portrait_scope - scope:battle_death_enemy = root - exists = scope:battle_death_killer - } - desc = death_management.killer.witnessed.enemy # generic - } - triggered_desc = { # On same side - trigger = { - this = scope:portrait_scope - scope:battle_death_leader = root - exists = scope:battle_death_killer - } - desc = death_management.killer.witnessed.friendly # generic - } - triggered_desc = { # In some other battle - trigger = { exists = scope:battle_death_killer } - desc = death_management.killer # generic - } - triggered_desc = { # In some other battle - trigger = { - NOT = { - exists = scope:battle_death_killer - } - } - desc = death_management.no_killer # generic - } - } - desc = death_management.1204.desc # unique - } - theme = death - override_background = { reference = battlefield } - left_portrait = { - character = scope:portrait_scope - triggered_animation = { - trigger = { - OR = { - this = scope:battle_death_enemy - this = scope:battle_death_leader - } - } - animation = grief - } - triggered_animation = { - trigger = { always = yes } - animation = idle - } - } - lower_right_portrait = { - character = scope:battle_death_killer - trigger = { - exists = scope:battle_death_killer - scope:battle_death_killer != root - } - } - lower_center_portrait = { - character = scope:dead_character - trigger = { scope:portrait_scope = root } - } - - immediate = { - play_music_cue = mx_cue_death - death_in_battle_scope_effect = yes - death_in_battle_memory_effect = { TYPE = good } - # Taken from death_management.1004 - add_stress = scope:deceased_character_stress - stress_save_deceased_character_for_mental_break = { - TARGET = scope:dead_character - FLAG = lover - } - } - - option = { - name = death_management.1204.a - } - - option = { - name = death_management.1204.b - trigger = { - set_and_inform_slayer_rivalry_trigger = yes - } - set_and_inform_slayer_rivalry_effect = yes - } -} - -# Best friend dies in battle -death_management.1205 = { - type = character_event - title = death_management.1205.t - desc = { - # Intro 1 - In battle or reading a letter? - first_valid = { - triggered_desc = { # Died in battle you were part of - trigger = { this = scope:portrait_scope } - desc = death_management.intro.witnessed # generic - } - triggered_desc = { # Died in a battle involving your army - trigger = { - OR = { - this = scope:battle_death_enemy - this = scope:battle_death_leader - } - } - desc = death_management.intro.war # generic - } - desc = death_management.intro # generic - } - # Intro 2 - In battle or reading a letter? - first_valid = { - triggered_desc = { # You saw them die, friendly - trigger = { - this = scope:portrait_scope - this = scope:battle_death_enemy - } - desc = death_management.intro.enemy # generic - } - triggered_desc = { # You saw them die, enemy - trigger = { - this = scope:portrait_scope - this = scope:battle_death_leader - } - desc = death_management.intro.friendly # generic - } - desc = death_management.intro.letter.friend # unique - } - # Death details - first_valid = { - triggered_desc = { # You saw them die, enemy - trigger = { - this = scope:portrait_scope - this = scope:battle_death_enemy - } - desc = death_management.death.witnessed.enemy # generic - } - triggered_desc = { # You saw them die, friendly - trigger = { - this = scope:portrait_scope - this = scope:battle_death_leader - } - desc = death_management.death.witnessed.friendly # generic - } - triggered_desc = { # They died on other side - trigger = { scope:battle_death_enemy = root } - desc = death_management.death.war.enemy # generic - } - triggered_desc = { # They died on your side - trigger = { scope:battle_death_leader = root } - desc = death_management.death.war.friendly # generic - } - desc = death_management.death.uninvolved # generic - } - # Killer details - first_valid = { - triggered_desc = { # On other side - trigger = { - this = scope:portrait_scope - scope:battle_death_enemy = root - exists = scope:battle_death_killer - } - desc = death_management.killer.witnessed.enemy # generic - } - triggered_desc = { # On same side - trigger = { - this = scope:portrait_scope - scope:battle_death_leader = root - exists = scope:battle_death_killer - } - desc = death_management.killer.witnessed.friendly # generic - } - triggered_desc = { # In some other battle - trigger = { exists = scope:battle_death_killer } - desc = death_management.killer # generic - } - triggered_desc = { # In some other battle - trigger = { - NOT = { - exists = scope:battle_death_killer - } - } - desc = death_management.no_killer # generic - } - } - desc = death_management.1205.desc # unique - } - theme = death - override_background = { reference = battlefield } - left_portrait = { - character = scope:portrait_scope - triggered_animation = { - trigger = { - OR = { - this = scope:battle_death_enemy - this = scope:battle_death_leader - } - } - animation = grief - } - triggered_animation = { - trigger = { always = yes } - animation = idle - } - } - lower_right_portrait = { - character = scope:battle_death_killer - trigger = { - exists = scope:battle_death_killer - scope:battle_death_killer != root - } - } - lower_center_portrait = { - character = scope:dead_character - trigger = { scope:portrait_scope = root } - } - - immediate = { - play_music_cue = mx_cue_death - death_in_battle_scope_effect = yes - death_in_battle_memory_effect = { TYPE = good } - add_stress = scope:deceased_character_stress - stress_save_deceased_character_for_mental_break = { - TARGET = scope:dead_character - FLAG = friend - } - } - - # Oh no - option = { - name = death_management.1205.a - } - - # New rival - option = { - name = death_management.1205.b - trigger = { - set_and_inform_slayer_rivalry_trigger = yes - } - set_and_inform_slayer_rivalry_effect = yes - } -} - -# Rival dies in battle -death_management.1206 = { - type = character_event - title = death_management.1206.t - desc = { - # Intro 1 - In battle or reading a letter? - first_valid = { - triggered_desc = { # Died in battle you were part of - trigger = { this = scope:portrait_scope } - desc = death_management.intro.witnessed # generic - } - triggered_desc = { # Died in a battle involving your army - trigger = { - OR = { - this = scope:battle_death_enemy - this = scope:battle_death_leader - } - } - desc = death_management.intro.war # generic - } - desc = death_management.intro # generic - } - # Intro 2 - In battle or reading a letter? - first_valid = { - triggered_desc = { # You saw them die, friendly - trigger = { - this = scope:portrait_scope - this = scope:battle_death_enemy - } - desc = death_management.intro.enemy # generic - } - triggered_desc = { # You saw them die, enemy - trigger = { - this = scope:portrait_scope - this = scope:battle_death_leader - } - desc = death_management.intro.friendly # generic - } - desc = death_management.intro.letter.rival # unique - } - # Death details - first_valid = { - triggered_desc = { # You saw them die, enemy - trigger = { - this = scope:portrait_scope - this = scope:battle_death_enemy - } - desc = death_management.death.witnessed.enemy # generic - } - triggered_desc = { # You saw them die, friendly - trigger = { - this = scope:portrait_scope - this = scope:battle_death_leader - } - desc = death_management.death.witnessed.friendly # generic - } - triggered_desc = { # They died on other side - trigger = { scope:battle_death_enemy = root } - desc = death_management.death.war.enemy # generic - } - triggered_desc = { # They died on your side - trigger = { scope:battle_death_leader = root } - desc = death_management.death.war.friendly # generic - } - desc = death_management.death.uninvolved # generic - } - # Killer details - first_valid = { - triggered_desc = { # On other side - trigger = { - this = scope:portrait_scope - scope:battle_death_enemy = root - exists = scope:battle_death_killer - } - desc = death_management.killer.witnessed.enemy # generic - } - triggered_desc = { # On same side - trigger = { - this = scope:portrait_scope - scope:battle_death_leader = root - exists = scope:battle_death_killer - } - desc = death_management.killer.witnessed.friendly # generic - } - triggered_desc = { # In some other battle - trigger = { exists = scope:battle_death_killer } - desc = death_management.killer # generic - } - triggered_desc = { # In some other battle - trigger = { - NOT = { - exists = scope:battle_death_killer - } - } - desc = death_management.no_killer # generic - } - } - desc = death_management.1206.desc # unique - } - theme = death - override_background = { reference = battlefield } - left_portrait = { - character = scope:portrait_scope - animation = schadenfreude - } - lower_right_portrait = { - character = scope:battle_death_killer - trigger = { - exists = scope:battle_death_killer - scope:battle_death_killer != root - } - } - lower_center_portrait = { - character = scope:dead_character - trigger = { scope:portrait_scope = root } - } - - immediate = { - play_music_cue = mx_cue_death - death_in_battle_scope_effect = yes - death_in_battle_memory_effect = { TYPE = bad } - # Taken from death_management.1006 - add_stress = scope:deceased_character_stress - } - - option = { - name = death_management.1206.a - } - - option = { - name = death_management.1206.b - trigger = { - set_and_inform_slayer_rivalry_trigger = yes - } - set_and_inform_slayer_rivalry_effect = yes - } - - option = { - name = death_management.1206.c - trigger = { - exists = scope:battle_death_killer - is_attracted_to_gender_of = scope:battle_death_killer - } - reverse_add_opinion = { - target = scope:battle_death_killer - modifier = flattered_opinion - opinion = 10 - } - if = { - limit = { - can_start_scheme = { - type = seduce - target_character = scope:battle_death_killer - } - } - start_scheme = { - type = seduce - target_character = scope:battle_death_killer - } - hidden_effect = { - random_scheme = { - type = seduce - limit = { - scheme_target_character = scope:battle_death_killer - } - add_scheme_modifier = { - type = extra_success_chance_modifier - } - } - } - } - } -} - -# Heir dies in battle -death_management.1207 = { - type = character_event - title = death_management.1207.t - desc = { - # Intro 1 - In battle or reading a letter? - first_valid = { - triggered_desc = { # Died in battle you were part of - trigger = { this = scope:portrait_scope } - desc = death_management.intro.witnessed # generic - } - triggered_desc = { # Died in a battle involving your army - trigger = { - OR = { - this = scope:battle_death_enemy - this = scope:battle_death_leader - } - } - desc = death_management.intro.war # generic - } - desc = death_management.intro # generic - } - # Intro 2 - In battle or reading a letter? - first_valid = { - triggered_desc = { # You saw them die, friendly - trigger = { - this = scope:portrait_scope - this = scope:battle_death_enemy - } - desc = death_management.intro.enemy # generic - } - triggered_desc = { # You saw them die, enemy - trigger = { - this = scope:portrait_scope - this = scope:battle_death_leader - } - desc = death_management.intro.friendly # generic - } - desc = death_management.intro.letter.heir # unique - } - # Death details - first_valid = { - triggered_desc = { # You saw them die, enemy - trigger = { - this = scope:portrait_scope - this = scope:battle_death_enemy - } - desc = death_management.death.witnessed.enemy # generic - } - triggered_desc = { # You saw them die, friendly - trigger = { - this = scope:portrait_scope - this = scope:battle_death_leader - } - desc = death_management.death.witnessed.friendly # generic - } - triggered_desc = { # They died on other side - trigger = { scope:battle_death_enemy = root } - desc = death_management.death.war.enemy # generic - } - triggered_desc = { # They died on your side - trigger = { scope:battle_death_leader = root } - desc = death_management.death.war.friendly # generic - } - desc = death_management.death.uninvolved # generic - } - # Killer details - first_valid = { - triggered_desc = { # On other side - trigger = { - this = scope:portrait_scope - scope:battle_death_enemy = root - exists = scope:battle_death_killer - } - desc = death_management.killer.witnessed.enemy # generic - } - triggered_desc = { # On same side - trigger = { - this = scope:portrait_scope - scope:battle_death_leader = root - exists = scope:battle_death_killer - } - desc = death_management.killer.witnessed.friendly # generic - } - triggered_desc = { # In some other battle - trigger = { exists = scope:battle_death_killer } - desc = death_management.killer # generic - } - triggered_desc = { # In some other battle - trigger = { - NOT = { - exists = scope:battle_death_killer - } - } - desc = death_management.no_killer # generic - } - } - desc = death_management.1207.desc # unique - } - theme = death - override_background = { reference = battlefield } - left_portrait = { - character = scope:portrait_scope - triggered_animation = { - trigger = { - OR = { - this = scope:battle_death_enemy - this = scope:battle_death_leader - } - } - animation = grief - } - triggered_animation = { - trigger = { always = yes } - animation = idle - } - } - lower_right_portrait = { - character = scope:battle_death_killer - trigger = { - exists = scope:battle_death_killer - scope:battle_death_killer != root - } - } - lower_center_portrait = { - character = scope:dead_character - trigger = { scope:portrait_scope = root } - } - - immediate = { - play_music_cue = mx_cue_death - death_in_battle_scope_effect = yes - death_in_battle_memory_effect = { TYPE = good } - # Taken from death_management.1007 - stress_impact = { base = minor_stress_impact_gain } - } - - option = { - name = death_management.1207.a - } - - option = { - name = death_management.1207.b - trigger = { - set_and_inform_slayer_rivalry_trigger = yes - } - set_and_inform_slayer_rivalry_effect = yes - } -} - -###################################################### -# NOTIFICATION EVENTS - DUNGEON DEATH OR MURDER -# 2000-2999 -###################################################### - -#Notification about dead spouse - Dungeon or murder -death_management.2000 = { - type = character_event - title = { - first_valid = { - triggered_desc = { - trigger = { - exists = scope:prison_holder - scope:prison_holder != root - } - desc = death_management.2000.t - } - triggered_desc = { - trigger = { - exists = scope:killer - scope:killer = root - } - desc = death_management.2000.t.root_killer - } - desc = death_management.2000.t.no_killer - } - } - desc = { - first_valid = { - triggered_desc = { # Special desc for killing own spouse - trigger = { - exists = scope:killer - scope:killer = root - } - desc = death_management.2000.murderer - } - triggered_desc = { - trigger = { - opinion = { - target = scope:dead_character - value >= medium_positive_opinion - } - } - desc = { - desc = death_management.2000.like - first_valid = { - triggered_desc = { - trigger = { - exists = scope:killer - scope:killer = scope:prison_holder - } - desc = death_management.2000.like_end_killer - } - desc = death_management.2000.like_end - } - } - } - triggered_desc = { - trigger = { - opinion = { - target = scope:dead_character - value < medium_positive_opinion - } - opinion = { - target = scope:dead_character - value >= low_negative_opinion - } - } - desc = { - desc = death_management.2000.neutral - first_valid = { - triggered_desc = { - trigger = { - exists = scope:killer - scope:killer = scope:prison_holder - } - desc = death_management.2000.neutral_end_killer - } - desc = death_management.2000.neutral_end - } - } - } - triggered_desc = { - trigger = { - opinion = { - target = scope:dead_character - value < low_negative_opinion - } - } - desc = { - desc = death_management.2000.dislike - first_valid = { - triggered_desc = { - trigger = { - exists = scope:killer - scope:killer = scope:prison_holder - } - desc = death_management.2000.dislike_end_killer - } - triggered_desc = { - trigger = { - exists = scope:killer - scope:killer != scope:prison_holder - } - desc = death_management.2000.dislike_end_unknown_killer - } - desc = death_management.2000.dislike_end_no_killer - } - } - } - } - } - theme = death - left_portrait = scope:dead_character - - immediate = { - play_music_cue = mx_cue_death - if = { - limit = { - exists = scope:killer - scope:killer = { - any_secret = { - type = secret_murder - secret_target = scope:dead_character - is_known_by = root - } - } - } - scope:killer = { - save_scope_as = prison_holder - } - } - } - - #My beloved spouse! - option = { - trigger = { - opinion = { - target = scope:dead_character - value >= medium_positive_opinion - } - OR = { - NOT = { exists = scope:prison_holder } - AND = { - exists = scope:prison_holder - scope:prison_holder != root - } - } - } - name = death_management.2000.a - if = { - limit = { - exists = scope:prison_holder - } - custom_tooltip = death_management.1000.killed.tt - } - else = { - custom_tooltip = death_management.2000.tt - } - } - - #That's a shame - option = { - trigger = { - opinion = { - target = scope:dead_character - value < medium_positive_opinion - } - opinion = { - target = scope:dead_character - value >= neutral_opinion - } - OR = { - NOT = { exists = scope:prison_holder } - AND = { - exists = scope:prison_holder - scope:prison_holder != root - } - } - } - name = death_management.2000.b - if = { - limit = { - exists = scope:prison_holder - } - custom_tooltip = death_management.1000.killed.tt - } - else = { - custom_tooltip = death_management.2000.tt - } - } - - #What a relief! - option = { - trigger = { - opinion = { - target = scope:dead_character - value < neutral_opinion - } - OR = { - NOT = { exists = scope:prison_holder } - AND = { - exists = scope:prison_holder - scope:prison_holder != root - } - } - } - name = death_management.2000.c - if = { - limit = { - exists = scope:prison_holder - } - custom_tooltip = death_management.1000.killed.tt - } - else = { - custom_tooltip = death_management.2000.tt - } - } - - # What a way to go - option = { - trigger = { - exists = scope:prison_holder - root = scope:prison_holder - } - name = death_management.2000.d - } - - after = { - if = { - limit = { - NOT = { exists = scope:prison_holder } - } - add_opinion = { - modifier = loved_one_dungeon_death - target = scope:prison_holder - } - } - } -} - -#Dead heir - Dungeon -death_management.2007 = { - type = character_event - title = death_management.2007.t - desc = { - desc = death_management.2007.start - first_valid = { - triggered_desc = { - trigger = { - OR = { - AND = { - is_male = yes - scope:dead_character = { is_male = yes } - } - AND = { - is_female = yes - scope:dead_character = { is_female = yes } - } - } - } - desc = death_management.2007.mytitle - } - desc = death_management.2007.ruler - } - desc = death_management.2007.end - } - theme = death - left_portrait = scope:dead_character - right_portrait = scope:new_heir - - immediate = { - play_music_cue = mx_cue_death - if = { - limit = { exists = player_heir } - player_heir = { - save_scope_as = new_heir - } - } - if = { - limit = { - exists = scope:killer - scope:killer = { - NOT = { - any_secret = { - type = secret_murder - secret_target = scope:dead_character - is_known_by = root - } - } - } - } - scope:killer = { - save_scope_as = prison_holder - } - } - } - - - option = { - name = death_management.2007.a - if = { - limit = { - exists = scope:prison_holder - } - custom_tooltip = death_management.1000.killed.tt - } - else = { - custom_tooltip = death_management.2007.a.tt - } - if = { - limit = { exists = scope:new_heir } - custom_tooltip = death_management.2007.a.new_heir.tt - } - - stress_impact = { - base = minor_stress_impact_gain - } - } - after = { - if = { - limit = { - NOT = { exists = scope:prison_holder } - } - add_opinion = { - modifier = loved_one_dungeon_death - target = scope:prison_holder - } - } - } -} - -#Notification for parent of dead child - Dungeon -death_management.2001 = { - type = character_event - title = death_management.2001.t - desc = { - desc = death_management.2001.opening - first_valid = { - triggered_desc = { - trigger = { - scope:dead_character = { - age < 16 - } - } - desc = death_management.2001.child - } - triggered_desc = { - trigger = { - opinion = { - target = scope:dead_character - value >= 40 - } - } - desc = { - desc = death_management.2001.like - first_valid = { - triggered_desc = { - trigger = { - exists = scope:prison_holder - } - desc = death_management.2001.like_end_killer - } - desc = death_management.2001.like_end - } - } - } - triggered_desc = { - trigger = { - opinion = { - target = scope:dead_character - value < 40 - } - opinion = { - target = scope:dead_character - value >= 0 - } - } - desc = death_management.2001.neutral - } - triggered_desc = { - trigger = { - opinion = { - target = scope:dead_character - value < 0 - } - } - desc = { - desc = death_management.2001.dislike - first_valid = { - triggered_desc = { - trigger = { - exists = scope:prison_holder - } - desc = death_management.2001.dislike_end_killer - } - desc = death_management.2001.dislike_end - } - } - } - } - } - theme = death - left_portrait = scope:dead_character - - immediate = { - play_music_cue = mx_cue_death - if = { - limit = { - exists = scope:killer - scope:killer = { - OR = { - any_secret = { - type = secret_murder - secret_target = scope:dead_character - is_known_by = root - } - NOT = { - any_secret = { - type = secret_murder - secret_target = scope:dead_character - } - } - } - } - } - scope:killer = { - save_scope_as = prison_holder - } - } - } - - #Liked child - option = { - trigger = { - scope:dead_character = { - is_adult = yes - } - opinion = { - target = scope:dead_character - value >= 0 - } - } - name = death_management.2000.b - if = { - limit = { - exists = scope:prison_holder - } - custom_tooltip = death_management.1000.killed.tt - } - else = { - custom_tooltip = death_management.2001.tt - } - - stress_impact = { - base = minor_stress_impact_gain - } - stress_save_deceased_character_for_mental_break = { - TARGET = scope:dead_character - FLAG = child - } - } - - #Relieved - option = { - trigger = { - scope:dead_character = { - is_adult = yes - } - opinion = { - target = scope:dead_character - value < 0 - } - } - name = death_management.2001.c - if = { - limit = { - exists = scope:killer - } - custom_tooltip = death_management.1000.killed.tt - } - else = { - custom_tooltip = death_management.2001.tt - } - - stress_impact = { - base = minor_stress_impact_loss - } - } - - #Little child... - option = { - trigger = { - scope:dead_character = { - is_adult = no - } - } - name = death_management.2001.d - if = { - limit = { - exists = scope:killer - } - custom_tooltip = death_management.1000.killed.tt - } - else = { - custom_tooltip = death_management.2001.tt - } - - stress_impact = { - base = medium_stress_impact_gain - } - stress_save_deceased_character_for_mental_break = { - TARGET = scope:dead_character - FLAG = child - } - } - after = { - if = { - limit = { - NOT = { exists = scope:killer } - } - add_opinion = { - modifier = loved_one_dungeon_death - target = scope:prison_holder - } - } - } -} - - -#Dead parent - Dungeon -death_management.2002 = { - type = character_event - title = death_management.2002.t - desc = { - first_valid = { - triggered_desc = { - trigger = { age < 14 } - desc = death_management.2002.child - } - triggered_desc = { - trigger = { - opinion = { - target = scope:dead_character - value >= 30 - } - } - desc = death_management.2002.like - } - triggered_desc = { - trigger = { - opinion = { - target = scope:dead_character - value < 30 - } - opinion = { - target = scope:dead_character - value >= 0 - } - } - desc = death_management.2002.neutral - } - triggered_desc = { - trigger = { - opinion = { - target = scope:dead_character - value < 0 - } - } - desc = death_management.2002.dislike - } - } - } - theme = death - left_portrait = scope:dead_character - - immediate = { - play_music_cue = mx_cue_death - if = { - limit = { - exists = scope:killer - scope:killer = { - any_secret = { - type = secret_murder - secret_target = scope:dead_character - is_known_by = root - } - } - } - scope:killer = { - save_scope_as = prison_holder - } - } - } - - #Like - option = { - trigger = { - age >= 14 - opinion = { - target = scope:dead_character - value >= 40 - } - } - name = death_management.2002.a - if = { - limit = { - exists = scope:killer - } - custom_tooltip = death_management.1000.killed.tt - } - else = { - custom_tooltip = death_management.2002.tt - } - - stress_impact = { - base = minor_stress_impact_gain - } - stress_save_deceased_character_for_mental_break = { - TARGET = scope:dead_character - FLAG = parent - } - } - - #Neutral - option = { - trigger = { - age >= 14 - opinion = { - target = scope:dead_character - value < 40 - } - opinion = { - target = scope:dead_character - value >= 0 - } - } - name = death_management.2002.b - if = { - limit = { - exists = scope:killer - } - custom_tooltip = death_management.1000.killed.tt - } - else = { - custom_tooltip = death_management.2002.tt - } - stress_save_deceased_character_for_mental_break = { - TARGET = scope:dead_character - FLAG = parent - } - } - - #Dislike - option = { - trigger = { - age >= 14 - opinion = { - target = scope:dead_character - value < 0 - } - } - name = death_management.2002.c - if = { - limit = { - exists = scope:killer - } - custom_tooltip = death_management.1000.killed.tt - } - else = { - custom_tooltip = death_management.2002.tt - } - - - stress_impact = { - base = minor_stress_impact_loss - } - } - - #Child reacts - option = { - trigger = { - age < 14 - } - name = death_management.2002.d - if = { - limit = { - exists = scope:killer - } - custom_tooltip = death_management.1000.killed.tt - } - else = { - custom_tooltip = death_management.2002.tt - } - - stress_impact = { - base = medium_stress_impact_gain - } - stress_save_deceased_character_for_mental_break = { - TARGET = scope:dead_character - FLAG = parent - } - } - after = { - if = { - limit = { - NOT = { exists = scope:killer } - } - add_opinion = { - modifier = loved_one_dungeon_death - target = scope:prison_holder - } - } - } -} - -#Dead betrothed - Dungeon -death_management.2008 = { - type = character_event - title = death_management.2008.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - opinion = { - target = scope:dead_character - value >= 40 - } - } - desc = { - desc = death_management.2008.desc.like - first_valid = { - triggered_desc = { - trigger = { - exists = scope:prison_holder - } - desc = death_management.2008.like_end_killer - } - desc = death_management.2008.like_end - } - } - } - triggered_desc = { - trigger = { - OR = { - opinion = { - target = scope:dead_character - value < 10 - } - AND = { - has_personality_benevolent_trigger = no - OR = { - has_trait = callous - has_trait = sadistic - has_trait = lunatic - has_trait = possessed - has_trait = leper - has_trait = disfigured - has_trait = beauty_bad_2 - has_trait = beauty_bad_3 - has_trait = intellect_bad_2 - has_trait = intellect_bad_3 - has_trait = clubfooted - has_trait = hunchbacked - has_trait = dwarf - has_trait = inbred - } - } - } - } - desc = { - first_valid = { - triggered_desc = { - trigger = { - exists = scope:prison_holder - } - desc = death_management.2008.dislike_killer - } - desc = death_management.2008.dislike - } - } - } - desc = death_management.2008.desc.neutral - } - } - theme = death - left_portrait = scope:dead_character - - immediate = { - play_music_cue = mx_cue_death - if = { - limit = { - exists = scope:killer - scope:killer = { - any_secret = { - type = secret_murder - secret_target = scope:dead_character - is_known_by = root - } - } - } - scope:killer = { - save_scope_as = prison_holder - } - } - } - - option = { #Like/neutral - trigger = { - NOR = { - opinion = { - target = scope:dead_character - value < 10 - } - AND = { - has_personality_benevolent_trigger = no - OR = { - has_trait = callous - has_trait = sadistic - has_trait = lunatic - has_trait = possessed - has_trait = leper - has_trait = disfigured - has_trait = beauty_bad_2 - has_trait = beauty_bad_3 - has_trait = intellect_bad_2 - has_trait = intellect_bad_3 - has_trait = clubfooted - has_trait = hunchbacked - has_trait = dwarf - has_trait = inbred - } - } - } - } - name = death_management.2008.a - if = { - limit = { - exists = scope:killer - } - custom_tooltip = death_management.1000.killed.tt - } - else = { - custom_tooltip = death_management.2002.tt - } - - if = { - limit = { - opinion = { - target = scope:dead_character - value >= 60 - } - } - stress_impact = { - base = medium_stress_impact_gain - } - } - else = { - stress_impact = { - base = minor_stress_impact_gain - } - } - } - - option = { #Dislike - trigger = { - OR = { - opinion = { - target = scope:dead_character - value < 10 - } - AND = { - has_personality_benevolent_trigger = no - OR = { - has_trait = callous - has_trait = sadistic - has_trait = lunatic - has_trait = possessed - has_trait = leper - has_trait = disfigured - has_trait = beauty_bad_2 - has_trait = beauty_bad_3 - has_trait = intellect_bad_2 - has_trait = intellect_bad_3 - has_trait = clubfooted - has_trait = hunchbacked - has_trait = dwarf - has_trait = inbred - } - } - } - } - name = death_management.2008.b - if = { - limit = { - exists = scope:killer - } - custom_tooltip = death_management.1000.killed.tt - } - else = { - custom_tooltip = death_management.2002.tt - } - - stress_impact = { - base = minor_stress_impact_loss - } - } - after = { - if = { - limit = { - NOT = { exists = scope:killer } - } - add_opinion = { - modifier = loved_one_dungeon_death - target = scope:prison_holder - } - } - } -} - - - - -###################################################### -# NOTIFICATION EVENTS - YOUR DUNGEON DEATH -# 3000-3999 -###################################################### - -#Dead heir - Your dungeon -death_management.3007 = { - type = character_event - title = death_management.3007.t - desc = { - desc = death_management.3007.start - first_valid = { - triggered_desc = { - trigger = { - OR = { - AND = { - is_male = yes - scope:dead_character = { is_male = yes } - } - AND = { - is_female = yes - scope:dead_character = { is_female = yes } - } - } - } - desc = death_management.3007.mytitle - } - desc = death_management.3007.ruler - } - desc = death_management.3007.end - } - theme = death - left_portrait = scope:dead_character - right_portrait = scope:new_heir - - immediate = { - play_music_cue = mx_cue_death - primary_heir = { - save_scope_as = new_heir - } - } - - - option = { - name = death_management.3007.a - custom_tooltip = death_management.3007.a.tt - - stress_impact = { - base = minor_stress_impact_gain - } - } -} - - -#Notification about dead spouse - Your dungeon -death_management.3000 = { - type = character_event - title = death_management.3000.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - opinion = { - target = scope:dead_character - value >= 40 - } - } - desc = death_management.3000.like - } - triggered_desc = { - trigger = { - opinion = { - target = scope:dead_character - value < 40 - } - opinion = { - target = scope:dead_character - value >= 0 - } - } - desc = death_management.3000.neutral - } - triggered_desc = { - trigger = { - opinion = { - target = scope:dead_character - value < 0 - } - } - desc = death_management.3000.dislike - } - } - } - theme = death - left_portrait = scope:dead_character - - immediate = { - play_music_cue = mx_cue_death - } - - #My beloved spouse! - option = { - trigger = { - opinion = { - target = scope:dead_character - value >= 40 - } - } - name = death_management.3000.a - custom_tooltip = death_management.3000.tt - - stress_impact = { - base = minor_stress_impact_gain - } - stress_save_deceased_character_for_mental_break = { - TARGET = scope:dead_character - FLAG = spouse - } - } - - #That's a shame - option = { - trigger = { - opinion = { - target = scope:dead_character - value < 40 - } - opinion = { - target = scope:dead_character - value >= 0 - } - } - name = death_management.3000.b - custom_tooltip = death_management.3000.tt - - stress_save_deceased_character_for_mental_break = { - TARGET = scope:dead_character - FLAG = spouse - } - } - - #What a relief! - option = { - trigger = { - opinion = { - target = scope:dead_character - value < 0 - } - } - name = death_management.3000.c - custom_tooltip = death_management.3000.tt - - - stress_impact = { - base = medium_stress_impact_loss - } - } -} - -#Notification for parent of dead child - Your dungeon -death_management.3001 = { - type = character_event - title = death_management.3001.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - scope:dead_character = { - age < 16 - } - } - desc = death_management.3001.child - } - triggered_desc = { - trigger = { - opinion = { - target = scope:dead_character - value >= 40 - } - } - desc = death_management.3001.like - } - triggered_desc = { - trigger = { - opinion = { - target = scope:dead_character - value < 40 - } - opinion = { - target = scope:dead_character - value >= 0 - } - } - desc = death_management.3001.neutral - } - triggered_desc = { - trigger = { - opinion = { - target = scope:dead_character - value < 0 - } - } - desc = death_management.3001.dislike - } - } - } - theme = death - left_portrait = scope:dead_character - - immediate = { - play_music_cue = mx_cue_death - } - - #Good child - option = { - trigger = { - scope:dead_character = { - is_adult = yes - } - opinion = { - target = scope:dead_character - value >= 50 - } - } - name = death_management.3001.a - custom_tooltip = death_management.3001.tt - - stress_impact = { - base = minor_stress_impact_gain - } - stress_save_deceased_character_for_mental_break = { - TARGET = scope:dead_character - FLAG = child - } - } - - #Neutral - option = { - trigger = { - scope:dead_character = { - is_adult = yes - } - opinion = { - target = scope:dead_character - value < 50 - } - opinion = { - target = scope:dead_character - value >= 0 - } - } - name = death_management.3000.b - custom_tooltip = death_management.3001.tt - - stress_save_deceased_character_for_mental_break = { - TARGET = scope:dead_character - FLAG = child - } - } - - #Relieved - option = { - trigger = { - scope:dead_character = { - is_adult = yes - } - opinion = { - target = scope:dead_character - value < 0 - } - } - name = death_management.3001.c - custom_tooltip = death_management.3001.tt - - - stress_impact = { - base = medium_stress_impact_loss - } - } - - #Little child... - option = { - trigger = { - scope:dead_character = { - is_adult = no - } - } - name = death_management.3001.d - custom_tooltip = death_management.3001.tt - - stress_impact = { - base = medium_stress_impact_gain - } - stress_save_deceased_character_for_mental_break = { - TARGET = scope:dead_character - FLAG = child - } - } -} - - -#Dead parent - Your dungeon -death_management.3002 = { - type = character_event - title = death_management.3002.t - desc = { - first_valid = { - triggered_desc = { - trigger = { age < 14 } - desc = death_management.3002.child - } - triggered_desc = { - trigger = { - opinion = { - target = scope:dead_character - value >= 40 - } - } - desc = death_management.3002.like - } - triggered_desc = { - trigger = { - opinion = { - target = scope:dead_character - value < 40 - } - opinion = { - target = scope:dead_character - value >= 0 - } - } - desc = death_management.3002.neutral - } - triggered_desc = { - trigger = { - opinion = { - target = scope:dead_character - value < 0 - } - } - desc = death_management.3002.dislike - } - } - } - theme = death - left_portrait = scope:dead_character - - immediate = { - play_music_cue = mx_cue_death - } - - #Like - option = { - trigger = { - age >= 14 - opinion = { - target = scope:dead_character - value >= 40 - } - } - name = death_management.3002.a - custom_tooltip = death_management.3002.tt - - stress_impact = { - base = minor_stress_impact_gain - } - stress_save_deceased_character_for_mental_break = { - TARGET = scope:dead_character - FLAG = parent - } - } - - #Neutral - option = { - trigger = { - age >= 14 - opinion = { - target = scope:dead_character - value < 40 - } - opinion = { - target = scope:dead_character - value >= 0 - } - } - name = death_management.3002.b - custom_tooltip = death_management.3002.tt - - stress_save_deceased_character_for_mental_break = { - TARGET = scope:dead_character - FLAG = parent - } - } - - #Dislike - option = { - trigger = { - age >= 14 - opinion = { - target = scope:dead_character - value < 0 - } - } - name = death_management.3002.c - custom_tooltip = death_management.3002.tt - - - stress_impact = { - base = medium_stress_impact_loss - } - } - - #Child reacts - option = { - trigger = { - age < 14 - } - name = death_management.3002.d - custom_tooltip = death_management.3002.tt - - - stress_impact = { - base = medium_stress_impact_gain - } - stress_save_deceased_character_for_mental_break = { - TARGET = scope:dead_character - FLAG = parent - } - } -} - - -#Dead Rival - Your Dungeon -death_management.3006 = { - type = character_event - title = death_management.3006.t - desc = death_management.3006.desc - theme = death - left_portrait = scope:dead_character - - immediate = { - play_music_cue = mx_cue_death - custom_tooltip = death_management.3006.a.tt - add_prestige = medium_prestige_gain - stress_impact = { - base = major_stress_impact_loss - } - } - - option = { - name = death_management.3006.a - trigger = { - NOT = { - house_has_feud_relation_with_trigger = { TARGET = scope:dead_character } - } - } - } - - option = { # Continue - name = death_management.3006.b - trigger = { - house_has_feud_relation_with_trigger = { TARGET = scope:dead_character } - NOT = { - house_feud_wiped_out_trigger = { TARGET = scope:dead_character } - } - } - custom_tooltip = house_feud_continue_tt - ai_chance = { - base = 25 - ai_value_modifier = { - ai_vengefulness = 1 - ai_boldness = 1 - } - } - } - - option = { # End - name = death_management.3006.c - trigger = { - house_has_feud_relation_with_trigger = { TARGET = scope:dead_character } - NOT = { - house_feud_wiped_out_trigger = { TARGET = scope:dead_character } - } - } - house ?= { - change_house_relation_effect = { - HOUSE = scope:house_feud_rival.house - VALUE = house_relation_improve_major_value - REASON = de_escalation - CHAR = root - TARGET_CHAR = scope:dead_character - TITLE = scope:dummy_gender - } - } - ai_chance = { - base = 25 - ai_value_modifier = { - ai_vengefulness = -1 - ai_boldness = -1 - } - } - } - - option = { # Wipe end - name = death_management.3006.d - trigger = { - house_has_feud_relation_with_trigger = { TARGET = scope:dead_character } - house_feud_wiped_out_trigger = { TARGET = scope:dead_character } - } - } -} - -#Dead betrothed - Your dungeon -death_management.3008 = { - type = character_event - title = death_management.3008.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - opinion = { - target = scope:dead_character - value >= 40 - } - } - desc = death_management.3008.desc.like - } - triggered_desc = { - trigger = { - OR = { - opinion = { - target = scope:dead_character - value < 10 - } - AND = { - has_personality_benevolent_trigger = no - OR = { - has_trait = callous - has_trait = sadistic - has_trait = lunatic - has_trait = possessed - has_trait = leper - has_trait = disfigured - has_trait = beauty_bad_2 - has_trait = beauty_bad_3 - has_trait = intellect_bad_2 - has_trait = intellect_bad_3 - has_trait = clubfooted - has_trait = hunchbacked - has_trait = dwarf - has_trait = inbred - } - } - } - } - desc = death_management.3008.desc.dislike - } - desc = death_management.3008.desc.neutral - } - } - theme = death - left_portrait = scope:dead_character - - immediate = { - play_music_cue = mx_cue_death - } - - option = { #Like/neutral - trigger = { - NOR = { - opinion = { - target = scope:dead_character - value < 10 - } - AND = { - has_personality_benevolent_trigger = no - OR = { - has_trait = callous - has_trait = sadistic - has_trait = lunatic - has_trait = possessed - has_trait = leper - has_trait = disfigured - has_trait = beauty_bad_2 - has_trait = beauty_bad_3 - has_trait = intellect_bad_2 - has_trait = intellect_bad_3 - has_trait = clubfooted - has_trait = hunchbacked - has_trait = dwarf - has_trait = inbred - } - } - } - } - name = death_management.3008.a - custom_tooltip = death_management.3008.a.tt - - if = { - limit = { - opinion = { - target = scope:dead_character - value >= 60 - } - } - stress_impact = { - base = minor_stress_impact_gain - } - } - } - - option = { #Dislike - trigger = { - OR = { - opinion = { - target = scope:dead_character - value < 10 - } - AND = { - has_personality_benevolent_trigger = no - OR = { - has_trait = callous - has_trait = sadistic - has_trait = lunatic - has_trait = possessed - has_trait = leper - has_trait = disfigured - has_trait = beauty_bad_2 - has_trait = beauty_bad_3 - has_trait = intellect_bad_2 - has_trait = intellect_bad_3 - has_trait = clubfooted - has_trait = hunchbacked - has_trait = dwarf - has_trait = inbred - } - } - } - } - name = death_management.3008.b - custom_tooltip = death_management.3008.a.tt - - stress_impact = { - base = medium_stress_impact_loss - } - } -} - - -###################################################### -# NOTIFICATION EVENTS - HOUSE ARREST DEATH -# 4000-4999 -###################################################### - -#Notification about dead spouse - House arrest -death_management.4000 = { - type = character_event - title = death_management.4000.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - exists = scope:like - } - desc = { - desc = death_management.4000.like_opening - first_valid = { - triggered_desc = { - trigger = { - this = scope:house_arrest_holder - } - desc = death_management.4000.like_my_prison - } - triggered_desc = { - trigger = { - this != scope:house_arrest_holder - } - desc = death_management.4000.like - } - } - } - } - triggered_desc = { - trigger = { - NOR = { - exists = scope:like - exists = scope:dislike - } - } - desc = { - desc = death_management.4000.neutral_opening - first_valid = { - triggered_desc = { - trigger = { - this = scope:house_arrest_holder - } - desc = death_management.4000.neutral_my_prison - } - triggered_desc = { - trigger = { - this != scope:house_arrest_holder - } - desc = death_management.4000.neutral - } - } - } - } - triggered_desc = { - trigger = { - exists = scope:dislike - } - desc = { - first_valid = { - triggered_desc = { - trigger = { - this = scope:house_arrest_holder - } - desc = death_management.4000.dislike_my_prison - } - triggered_desc = { - trigger = { - this != scope:house_arrest_holder - } - desc = death_management.4000.dislike - } - } - } - } - } - } - theme = death - left_portrait = scope:dead_character - - immediate = { - play_music_cue = mx_cue_death - if = { - limit = { - has_variable_list = like - is_target_in_variable_list = { - name = like - target = scope:dead_character - } - } - save_scope_value_as = { - name = like - value = yes - } - } - else_if = { - limit = { - has_variable_list = dislike - is_target_in_variable_list = { - name = dislike - target = scope:dead_character - } - } - save_scope_value_as = { - name = dislike - value = yes - } - } - } - - #My beloved spouse! - option = { - trigger = { - exists = scope:like - } - name = death_management.4000.a - custom_tooltip = death_management.4000.tt - - if = { - limit = { - this != scope:house_arrest_holder - } - stress_impact = { - base = medium_stress_impact_gain - } - stress_save_deceased_character_for_mental_break = { - TARGET = scope:dead_character - FLAG = spouse - } - } - else = { - stress_impact = { - base = minor_stress_impact_gain - } - stress_save_deceased_character_for_mental_break = { - TARGET = scope:dead_character - FLAG = spouse - } - } - } - - #That's a shame - option = { - trigger = { - NOR = { - exists = scope:like - exists = scope:dislike - } - } - name = death_management.4000.b - custom_tooltip = death_management.4000.tt - - if = { - limit = { - this != scope:house_arrest_holder - } - stress_impact = { - base = minor_stress_impact_gain - } - stress_save_deceased_character_for_mental_break = { - TARGET = scope:dead_character - FLAG = spouse - } - } - } - - #What a relief! - option = { - trigger = { - exists = scope:dislike - } - name = death_management.4000.c - custom_tooltip = death_management.4000.tt - - if = { - limit = { - this != scope:house_arrest_holder - } - stress_impact = { - base = minor_stress_impact_loss - } - } - else = { - stress_impact = { - base = medium_stress_impact_loss - } - } - } -} - -#Dead heir - House arrest -death_management.4007 = { - type = character_event - title = death_management.4007.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - this = scope:house_arrest_holder - } - desc = death_management.4007.start_my_prison - } - triggered_desc = { - trigger = { - this != scope:house_arrest_holder - } - desc = death_management.4007.start - } - } - first_valid = { - triggered_desc = { - trigger = { - OR = { - AND = { - is_male = yes - scope:dead_character = { is_male = yes } - } - AND = { - is_female = yes - scope:dead_character = { is_female = yes } - } - } - } - desc = death_management.4007.mytitle - } - desc = death_management.4007.ruler - } - first_valid = { - triggered_desc = { - trigger = { - has_government = landless_adventurer_government - } - desc = death_management.4007.end_adventurer - } - desc = death_management.4007.end - } - desc = death_management.4007.end.heir - } - theme = death - left_portrait = scope:dead_character - right_portrait = scope:new_heir - - immediate = { - play_music_cue = mx_cue_death - if = { - limit = { - exists = player_heir - } - player_heir = { - save_scope_as = new_heir - } - } - } - - - option = { - name = death_management.4007.a - trigger = { - this != scope:house_arrest_holder - } - custom_tooltip = death_management.4007.a.tt - if = { - limit = { exists = scope:new_heir } - custom_tooltip = death_management.4007.a.tt.heir - } - - stress_impact = { - base = minor_stress_impact_gain - } - } - - option = { - name = death_management.4007.b - trigger = { - this = scope:house_arrest_holder - } - custom_tooltip = death_management.4007.a.tt - if = { - limit = { exists = scope:new_heir } - custom_tooltip = death_management.4007.a.tt.heir - } - - stress_impact = { - base = minor_stress_impact_gain - } - } -} - -#Notification for parent of dead child - House arrest -death_management.4001 = { - type = character_event - title = death_management.4001.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - scope:dead_character = { - age < 16 - } - } - desc = { - first_valid = { - triggered_desc = { - trigger = { - this = scope:house_arrest_holder - } - desc = death_management.4001.child_my_prison - } - triggered_desc = { - trigger = { - this != scope:house_arrest_holder - } - desc = death_management.4001.child - } - } - } - } - triggered_desc = { - trigger = { - opinion = { - target = scope:dead_character - value >= 40 - } - } - desc = { - first_valid = { - triggered_desc = { - trigger = { - this = scope:house_arrest_holder - } - desc = death_management.4001.like_my_prison - } - triggered_desc = { - trigger = { - this != scope:house_arrest_holder - } - desc = death_management.4001.like - } - } - } - } - triggered_desc = { - trigger = { - opinion = { - target = scope:dead_character - value < 40 - } - opinion = { - target = scope:dead_character - value >= 0 - } - } - desc = { - desc = death_management.4001.neutral_opening - first_valid = { - triggered_desc = { - trigger = { - this = scope:house_arrest_holder - } - desc = death_management.4001.neutral_my_prison - } - triggered_desc = { - trigger = { - this != scope:house_arrest_holder - } - desc = death_management.4001.neutral - } - } - } - } - triggered_desc = { - trigger = { - opinion = { - target = scope:dead_character - value < 0 - } - } - desc = { - desc = death_management.4001.dislike_opening - first_valid = { - triggered_desc = { - trigger = { - this = scope:house_arrest_holder - } - desc = death_management.4001.dislike_my_prison - } - triggered_desc = { - trigger = { - this != scope:house_arrest_holder - } - desc = death_management.4001.dislike - } - } - desc = death_management.4001.dislike_end - } - } - } - } - theme = death - left_portrait = scope:dead_character - - immediate = { - play_music_cue = mx_cue_death - } - - #Good child - option = { - trigger = { - scope:dead_character = { - is_adult = yes - } - opinion = { - target = scope:dead_character - value >= 50 - } - } - name = death_management.4001.a - custom_tooltip = death_management.4001.tt - - if = { - limit = { - this != scope:house_arrest_holder - } - stress_impact = { - base = medium_stress_impact_gain - } - stress_save_deceased_character_for_mental_break = { - TARGET = scope:dead_character - FLAG = child - } - } - else = { - stress_impact = { - base = minor_stress_impact_gain - } - stress_save_deceased_character_for_mental_break = { - TARGET = scope:dead_character - FLAG = child - } - } - } - - #Neutral - option = { - trigger = { - scope:dead_character = { - is_adult = yes - } - opinion = { - target = scope:dead_character - value < 50 - } - opinion = { - target = scope:dead_character - value >= 0 - } - } - name = death_management.4000.b - custom_tooltip = death_management.4001.tt - - if = { - limit = { - this != scope:house_arrest_holder - } - stress_impact = { - base = minor_stress_impact_gain - } - stress_save_deceased_character_for_mental_break = { - TARGET = scope:dead_character - FLAG = child - } - } - } - - #Relieved - option = { - trigger = { - scope:dead_character = { - is_adult = yes - } - opinion = { - target = scope:dead_character - value < 0 - } - } - name = death_management.4001.c - custom_tooltip = death_management.4001.tt - - - if = { - limit = { - this != scope:house_arrest_holder - } - stress_impact = { - base = minor_stress_impact_loss - } - } - else = { - stress_impact = { - base = medium_stress_impact_loss - } - } - } - - #Little child... - option = { - trigger = { - scope:dead_character = { - is_adult = no - } - } - name = death_management.4001.d - custom_tooltip = death_management.4001.tt - - if = { - limit = { - this != scope:house_arrest_holder - } - stress_impact = { - base = medium_stress_impact_gain - } - stress_save_deceased_character_for_mental_break = { - TARGET = scope:dead_character - FLAG = child - } - } - else = { - stress_impact = { - base = minor_stress_impact_gain - } - stress_save_deceased_character_for_mental_break = { - TARGET = scope:dead_character - FLAG = child - } - } - } -} - - -#Dead parent - House arrest -death_management.4002 = { - type = character_event - title = death_management.4002.t - desc = { - first_valid = { - triggered_desc = { - trigger = { age < 14 } - desc = death_management.4002.child - } - triggered_desc = { - trigger = { - opinion = { - target = scope:dead_character - value >= 40 - } - } - desc = { - desc = death_management.4002.like_opening - first_valid = { - triggered_desc = { - trigger = { - this = scope:house_arrest_holder - } - desc = death_management.4002.like_my_prison - } - triggered_desc = { - trigger = { - this != scope:house_arrest_holder - } - desc = death_management.4002.like - } - } - } - } - triggered_desc = { - trigger = { - opinion = { - target = scope:dead_character - value < 40 - } - opinion = { - target = scope:dead_character - value >= 0 - } - } - desc = { - desc = death_management.4002.neutral_opening - first_valid = { - triggered_desc = { - trigger = { - this = scope:house_arrest_holder - } - desc = death_management.4002.neutral_my_prison - } - triggered_desc = { - trigger = { - this != scope:house_arrest_holder - } - desc = death_management.4002.neutral - } - } - } - } - triggered_desc = { - trigger = { - opinion = { - target = scope:dead_character - value < 0 - } - } - desc = { - desc = death_management.4002.dislike_opening - first_valid = { - triggered_desc = { - trigger = { - this = scope:house_arrest_holder - } - desc = death_management.4002.dislike_my_prison - } - triggered_desc = { - trigger = { - this != scope:house_arrest_holder - } - desc = death_management.4002.dislike - } - } - } - } - } - } - theme = death - left_portrait = scope:dead_character - - immediate = { - play_music_cue = mx_cue_death - } - - #Like - option = { - trigger = { - age >= 14 - opinion = { - target = scope:dead_character - value >= 40 - } - } - name = death_management.4002.a - custom_tooltip = death_management.4002.tt - - if = { - limit = { - this != scope:house_arrest_holder - } - stress_impact = { - base = minor_stress_impact_gain - } - stress_save_deceased_character_for_mental_break = { - TARGET = scope:dead_character - FLAG = parent - } - } - } - - #Neutral - option = { - trigger = { - age >= 14 - opinion = { - target = scope:dead_character - value < 40 - } - opinion = { - target = scope:dead_character - value >= 0 - } - } - name = death_management.4002.b - custom_tooltip = death_management.4002.tt - } - - #Dislike - option = { - trigger = { - age >= 14 - opinion = { - target = scope:dead_character - value < 0 - } - } - name = death_management.4002.c - custom_tooltip = death_management.4002.tt - - - if = { - limit = { - this != scope:house_arrest_holder - } - stress_impact = { - base = minor_stress_impact_loss - } - } - else = { - stress_impact = { - base = medium_stress_impact_loss - } - } - } - - #Child reacts - option = { - trigger = { - age < 14 - } - name = death_management.4002.d - custom_tooltip = death_management.4002.tt - - if = { - limit = { - this != scope:house_arrest_holder - } - stress_impact = { - base = medium_stress_impact_gain - } - stress_save_deceased_character_for_mental_break = { - TARGET = scope:dead_character - FLAG = parent - } - } - else = { - stress_impact = { - base = minor_stress_impact_gain - } - stress_save_deceased_character_for_mental_break = { - TARGET = scope:dead_character - FLAG = parent - } - } - } -} - -#Dead betrothed - House arrest -death_management.4008 = { - type = character_event - title = death_management.4008.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - opinion = { - target = scope:dead_character - value >= 40 - } - } - desc = { - first_valid = { - triggered_desc = { - trigger = { - this = scope:house_arrest_holder - } - desc = death_management.4008.desc.like_my_prison - } - triggered_desc = { - trigger = { - this != scope:house_arrest_holder - } - desc = death_management.4008.desc.like - } - } - } - } - triggered_desc = { - trigger = { - OR = { - opinion = { - target = scope:dead_character - value < 10 - } - AND = { - has_personality_benevolent_trigger = no - OR = { - has_trait = callous - has_trait = sadistic - has_trait = lunatic - has_trait = possessed - has_trait = leper - has_trait = disfigured - has_trait = beauty_bad_2 - has_trait = beauty_bad_3 - has_trait = intellect_bad_2 - has_trait = intellect_bad_3 - has_trait = clubfooted - has_trait = hunchbacked - has_trait = dwarf - has_trait = inbred - } - } - } - } - desc = { - first_valid = { - triggered_desc = { - trigger = { - this = scope:house_arrest_holder - } - desc = death_management.4008.desc.dislike_my_prison - } - triggered_desc = { - trigger = { - this != scope:house_arrest_holder - } - desc = death_management.4008.desc.dislike - } - } - } - } - desc = { - first_valid = { - triggered_desc = { - trigger = { - this = scope:house_arrest_holder - } - desc = death_management.4008.desc.neutral_my_prison - } - triggered_desc = { - trigger = { - this != scope:house_arrest_holder - } - desc = death_management.4008.desc.neutral - } - } - } - } - } - theme = death - left_portrait = scope:dead_character - - immediate = { - play_music_cue = mx_cue_death - } - - option = { #Like/neutral - trigger = { - NOR = { - opinion = { - target = scope:dead_character - value < 10 - } - AND = { - has_personality_benevolent_trigger = no - OR = { - has_trait = callous - has_trait = sadistic - has_trait = lunatic - has_trait = possessed - has_trait = leper - has_trait = disfigured - has_trait = beauty_bad_2 - has_trait = beauty_bad_3 - has_trait = intellect_bad_2 - has_trait = intellect_bad_3 - has_trait = clubfooted - has_trait = hunchbacked - has_trait = dwarf - has_trait = inbred - } - } - } - } - name = death_management.4008.a - custom_tooltip = death_management.4008.a.tt - - if = { - limit = { - opinion = { - target = scope:dead_character - value >= 60 - } - } - if = { - limit = { - this != scope:house_arrest_holder - } - stress_impact = { - base = medium_stress_impact_gain - } - } - else = { - stress_impact = { - base = minor_stress_impact_gain - } - } - } - else = { - if = { - limit = { - this != scope:house_arrest_holder - } - stress_impact = { - base = minor_stress_impact_gain - } - } - } - } - - option = { #Dislike - trigger = { - OR = { - opinion = { - target = scope:dead_character - value < 10 - } - AND = { - has_personality_benevolent_trigger = no - OR = { - has_trait = callous - has_trait = sadistic - has_trait = lunatic - has_trait = possessed - has_trait = leper - has_trait = disfigured - has_trait = beauty_bad_2 - has_trait = beauty_bad_3 - has_trait = intellect_bad_2 - has_trait = intellect_bad_3 - has_trait = clubfooted - has_trait = hunchbacked - has_trait = dwarf - has_trait = inbred - } - } - } - } - name = death_management.4008.b - custom_tooltip = death_management.4008.a.tt - - if = { - limit = { - this != scope:house_arrest_holder - } - stress_impact = { - base = minor_stress_impact_loss - } - } - else = { - stress_impact = { - base = medium_stress_impact_loss - } - } - } -} - - -###################################################### -# OTHER DEATH MAINTENANCE EVENTS -# 4000-4999 -###################################################### - -#Sets a variable on the pregnant mother so that the dead spouse will be assumed to be the child's father -death_management.0099 = { - type = character_event - hidden = yes - - trigger = { - any_spouse = { - is_pregnant = yes - this = prev.primary_spouse - pregnancy_real_father = { - NOT = { is_consort_of = prev } - } - } - } - - immediate = { - save_scope_as = dead_spouse - random_spouse = { - limit = { - is_pregnant = yes - pregnancy_real_father = { - NOT = { is_consort_of = prev } - } - } - save_scope_as = spouse_with_secret - } - scope:spouse_with_secret = { - set_variable = { - name = dead_spouse - value = scope:dead_spouse - days = 730 - } - } - } -} - -#Removes rejected_from_marriage_bed_modifier from spouses -death_management.0098 = { - type = character_event - hidden = yes - - trigger = { - any_spouse = { - this = prev.primary_spouse - has_character_modifier = rejected_from_marriage_bed_modifier - } - } - - immediate = { - every_spouse = { - remove_character_modifier = rejected_from_marriage_bed_modifier - } - } -} - - -#Sets a flag if the dead one was someone you loved (to make suicide available) -death_management.0097 = { - type = character_event - hidden = yes - - immediate = { - save_scope_as = dead_character - every_relation = { - type = soulmate - limit = { - NOT = { is_in_list = loved_ones_left_behind } - NOT = { has_trait = callous } - } - add_to_list = loved_ones_left_behind - set_variable = { - name = mourning_soulmate - value = scope:dead_character - } - } - every_parent = { - limit = { - NOT = { is_in_list = loved_ones_left_behind } - NOT = { has_trait = callous } - OR = { - opinion = { - target = scope:dead_character - value >= 70 - } - reverse_opinion = { - target = scope:dead_character - value >= 70 - } - } - NOR = { - has_relation_rival = scope:dead_character - has_relation_potential_rival = scope:dead_character - } - } - add_to_list = loved_ones_left_behind - set_variable = { - name = mourning_parent - value = scope:dead_character - } - } - every_relation = { - type = best_friend - limit = { - NOT = { is_in_list = loved_ones_left_behind } - NOT = { has_trait = callous } - NOR = { - has_relation_rival = scope:dead_character - has_relation_potential_rival = scope:dead_character - } - } - add_to_list = loved_ones_left_behind - set_variable = { - name = mourning_friend - value = scope:dead_character - } - } - - #Add flag - every_in_list = { - list = loved_ones_left_behind - add_character_flag = { - flag = make_suicide_available - years = 10 - } - } - } -} - -# Flags that we need to update the opinions of any other spouses (if they exist) of our spouse/concubine after we die. -death_management.0096 = { - type = character_event - hidden = yes - - immediate = { - every_consort = { - save_scope_as = surviving_consort - every_consort = { - limit = { this != root} - trigger_event = { - id = death_management.0095 - days = 1 - } - } - } - } -} - -# Actually updates the opinions of other spouses/concubines. -death_management.0095 = { - type = character_event - hidden = yes - - immediate = { - update_active_consort_opinion_effect = { PARTNER = scope:surviving_consort } - } -} - -#Clan Succession Laws: delaying reducing of house unity on house head death, to prevent premature changing of succession laws -death_management.0100 = { - type = character_event - hidden = yes - - immediate = { - house = { - # Needs to be add_unity_value and not add_unity_interaction_effect because add_unity_interaction_effect does not allow only one person to affect unity - # Value and character scopes are saved in on_death effect - add_unity_value = { - value = scope:unity_change - character = scope:dead_house_head - desc = clan_unity_house_head_died.desc - } - } - } -} - -death_management.0123 = { - type = character_event - hidden = yes - - trigger = { - exists = house - exists = scope:killer.house - } - immediate = { - save_scope_as = victim - trigger_event = { - id = death_management.0124 - delayed = yes - } - } -} - - -death_management.0124 = { - type = character_event - hidden = yes - - trigger = { - exists = scope:killer.house - scope:victim = { death_killer_always_public_trigger = yes } - } - - immediate = { - scope:victim.house ?= { - change_house_relation_effect = { - HOUSE = scope:killer.house - VALUE = house_relation_damage_medium_value - REASON = killed - CHAR = scope:killer - TARGET_CHAR = scope:victim - TITLE = scope:dummy_gender - } - } - } -} - -death_management.0150 = { - type = character_event - hidden = yes - - immediate = { - debug_log = "death_management.0150 fired" - save_scope_as = dead_ruler - artifact_visual_after_death_dead_character_event_effect = yes - } -} - -death_management.0151 = { - type = character_event - hidden = yes - immediate = { - debug_log = "death_management.0151 fired" - save_scope_as = dead_artifact_visual_heir - scope:dead_ruler = { - artifact_visual_after_death_dead_character_flag_effect = yes - } - } -} - -### KNOW THYSELF PERK: Death is coming soon -death_management.9998 = { - type = character_event - title = death_management.9998.t - desc = death_management.9998.desc - theme = death - left_portrait = root - trigger = { - NOT = { has_character_flag = had_death_management_9998_recently } - } - option = { - name = death_management.9998.a - flavor = death_management.9998.a.tt - hidden_effect = { - add_character_flag = { - flag = had_death_management_9998_recently - days = 370 - } - } - } -} - - -### NATURAL DEATH BY EVENT -death_management.9999 = { - hidden = yes - - trigger = { - is_alive = yes - } - - immediate = { - death = natural - } -} diff --git a/events/decisions_events/bp3_decisions_events.txt b/events/decisions_events/bp3_decisions_events.txt deleted file mode 100644 index bef01c233..000000000 --- a/events/decisions_events/bp3_decisions_events.txt +++ /dev/null @@ -1,42 +0,0 @@ -namespace = bp3_decisions - -bp3_decisions.0100 = { - type = character_event - title = bp3_decisions.0100.t - desc = bp3_decisions.0100.desc - theme = realm - - left_portrait = { - character = root - animation = personality_honorable - } - - immediate = { - house = { - add_house_modifier = { - modifier = legacy_adventurer_house_modifier - } - } - } - - # Do some justicar contracts - option = { - name = bp3_decisions.0100.a - custom_tooltip = bp3_decisions.0100.a_tt - - hidden_effect = { - populate_task_contracts_for_area = { - location = root.location - amount = 3 - group = { laamp_contracts_justicar_group } - } - } - } - - # Become legitimists - option = { - name = bp3_decisions.0100.b - trigger = { NOT = { has_realm_law = camp_purpose_legitimists } } - add_realm_law_skip_effects = camp_purpose_legitimists - } -} \ No newline at end of file diff --git a/events/decisions_events/major_decisions_events.txt b/events/decisions_events/major_decisions_events.txt index 306641c6f..f33e13b45 100644 --- a/events/decisions_events/major_decisions_events.txt +++ b/events/decisions_events/major_decisions_events.txt @@ -68,15 +68,7 @@ major_decisions.0002 = { #by Linnéa Thimrén immediate = { show_as_tooltip = { - if = { - limit = { government_has_flag = government_is_japan_feudal } - change_government = japan_feudal_government - } - else_if = { - limit = { government_has_flag = government_is_clan } - change_government = clan_government - } - else = { change_government = feudal_government } + change_government = government_type } } @@ -457,7 +449,7 @@ major_decisions.0501 = { #by Mathilda Bjarnehed random_in_list = { list = dynasty_realms - limit = { tier = tier_empire } + limit = { tier >= tier_empire } alternative_limit = { always = yes } save_scope_as = realm_2 } @@ -465,7 +457,7 @@ major_decisions.0501 = { #by Mathilda Bjarnehed random_in_list = { list = dynasty_realms limit = { - tier = tier_empire + tier >= tier_empire this != scope:realm_2 } alternative_limit = { @@ -477,7 +469,7 @@ major_decisions.0501 = { #by Mathilda Bjarnehed random_in_list = { list = dynasty_realms limit = { - tier = tier_empire + tier >= tier_empire NOR = { this = scope:realm_2 this = scope:realm_3 @@ -591,7 +583,7 @@ major_decisions.1002 = { } override_background = { trigger = { - scope:cannibal = { is_landed_or_landless_administrative = yes } + scope:cannibal = { is_landed_or_landless_administrative_or_theocratic = yes } } reference = feast } @@ -638,7 +630,7 @@ major_decisions.1101 = { } desc = major_decisions.1101.desc } - theme = realm + theme = coronation left_portrait = { character = root animation = personality_greedy @@ -702,7 +694,7 @@ major_decisions.1102 = { type = character_event title = major_decisions.1101.t desc = major_decisions.1102.desc - theme = realm + theme = coronation left_portrait = { character = root animation = personality_greedy @@ -764,7 +756,7 @@ major_decisions.1103 = { desc = major_decisions.1103.i_am_religious_head } } - theme = realm + theme = coronation left_portrait = { character = root animation = personality_greedy @@ -862,7 +854,7 @@ major_decisions.1104 = { } desc = major_decisions.1104.end } - theme = realm + theme = coronation left_portrait = { character = root animation = personality_greedy @@ -890,15 +882,57 @@ major_decisions.1104 = { } -#I have lost de jure territory to a new Kingdom +#I have lost de jure territory to a new title major_decisions.1105 = { type = character_event title = major_decisions.1105.t - desc = major_decisions.1105.desc - theme = realm + desc = { + desc = major_decisions.1105.desc + triggered_desc = { + trigger = { + exists = scope:religious_interceder + } + desc = major_decisions.1105.desc_authority + } + } + theme = coronation left_portrait = { character = scope:founder - animation = personality_greedy + triggered_animation = { + trigger = { + OR = { + scope:founder.faith.religion = religion:catholic_religion + scope:founder.faith.religion = religion:eastern_orthodox_religion + scope:founder.faith.religion = religion:protestant_religion + } + } + animation = scepter + } + animation = personality_callous + camera = camera_event_right_wedding + } + right_portrait = { + character = scope:religious_interceder + animation = zealous_superior + } + trigger = { + NOT = { + scope:religious_authority ?= root + } + } + immediate = { + if = { + limit = { + scope:religious_authority ?= { + NOT = { + this = root + } + } + } + scope:religious_authority = { + save_scope_as = religious_interceder + } + } } option = { diff --git a/events/decisions_events/mpo_greatest_of_khans_events.txt b/events/decisions_events/mpo_greatest_of_khans_events.txt index 38b766552..6d77e6398 100644 --- a/events/decisions_events/mpo_greatest_of_khans_events.txt +++ b/events/decisions_events/mpo_greatest_of_khans_events.txt @@ -568,7 +568,7 @@ mpo_greatest_of_khans.0101 = { limit = { is_ai = no } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = major_stress_impact_gain brave = major_stress_impact_gain ambitious = major_stress_impact_gain @@ -602,7 +602,7 @@ mpo_greatest_of_khans.0101 = { name = fought_for_gok_alone value = gok_obedient_vassals_strength_value } - stress_impact = { + stress_and_fulfillment_impact = { humble = medium_stress_impact_gain craven = major_stress_impact_gain } @@ -739,7 +739,7 @@ mpo_greatest_of_khans.0102 = { target = scope:gurkhan_to_gok opinion = 40 } - stress_impact = { + stress_and_fulfillment_impact = { craven = medium_stress_impact_gain } } @@ -793,7 +793,7 @@ mpo_greatest_of_khans.0102 = { opinion = -40 } } - stress_impact = { + stress_and_fulfillment_impact = { craven = medium_stress_impact_gain } } @@ -816,7 +816,7 @@ mpo_greatest_of_khans.0102 = { target = scope:gurkhan_to_gok opinion = 10 } - stress_impact = { + stress_and_fulfillment_impact = { brave = medium_stress_impact_gain arrogant = major_stress_impact_gain } @@ -867,7 +867,7 @@ mpo_greatest_of_khans.0102 = { opinion = 30 } - stress_impact = { + stress_and_fulfillment_impact = { brave = medium_stress_impact_gain arrogant = major_stress_impact_gain } @@ -1001,6 +1001,7 @@ scripted_trigger mpo_greatest_of_khans_0002_confederation_trigger = { mpo_greatest_of_khans.0001 = { type = character_event window = fullscreen_event + queue_icon = "gfx/interface/icons/situation_types/the_great_steppe.dds" title = mpo_greatest_of_khans.0001.t desc = mpo_greatest_of_khans.0001.desc theme = nomads @@ -1068,6 +1069,7 @@ mpo_greatest_of_khans.0001 = { mpo_greatest_of_khans.0002 = { type = character_event window = fullscreen_event + queue_icon = "gfx/interface/icons/situation_types/the_great_steppe.dds" title = mongol_invasion.1002.t desc = { first_valid = { @@ -1221,7 +1223,7 @@ mpo_greatest_of_khans.0002 = { resolve_title_and_vassal_change = scope:change } - stress_impact = { + stress_and_fulfillment_impact = { brave = minor_stress_impact_gain stubborn = minor_stress_impact_gain } @@ -1316,7 +1318,7 @@ mpo_greatest_of_khans.0002 = { change_county_fertility = major_county_fertility_level_gain } } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = minor_stress_impact_gain } ai_chance = { @@ -1504,7 +1506,7 @@ mpo_greatest_of_khans.0003 = { trigger = { OR = { faith = faith:nestorian - faith.religion = faith:manichean.religion + faith.religion = faith:manichaean_faith.religion } } name = mpo_greatest_of_khans.0003.f @@ -1955,7 +1957,7 @@ mpo_greatest_of_khans.0030 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = major_stress_impact_gain greedy = massive_stress_impact_gain lazy = medium_stress_impact_gain @@ -2098,6 +2100,12 @@ mpo_greatest_of_khans.0030 = { } add = -50 } + modifier = { + culture = { + culture_is_historically_admin_trigger = yes + } + add = 100 + } } } #Convert to feudal government @@ -2398,6 +2406,7 @@ mpo_greatest_of_khans.0051 = { mpo_greatest_of_khans.1001 = { type = character_event window = fullscreen_event + queue_icon = "gfx/interface/icons/situation_types/the_great_steppe.dds" title = mongol_invasion.1002.t desc = { first_valid = { @@ -2560,7 +2569,7 @@ mpo_greatest_of_khans.1001 = { resolve_title_and_vassal_change = scope:change } - stress_impact = { + stress_and_fulfillment_impact = { brave = minor_stress_impact_gain stubborn = minor_stress_impact_gain } @@ -2655,7 +2664,7 @@ mpo_greatest_of_khans.1001 = { change_county_fertility = major_county_fertility_level_gain } } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = minor_stress_impact_gain } ai_chance = { diff --git a/events/dlc/ach/ach_coronation_events.txt b/events/dlc/ach/ach_coronation_events.txt index bb805c6d9..4a250caa1 100644 --- a/events/dlc/ach/ach_coronation_events.txt +++ b/events/dlc/ach/ach_coronation_events.txt @@ -41,7 +41,7 @@ ach_coronation.0001 = { } triggered_desc = { trigger = { - scope:host = { primary_title = title:e_byzantium } + scope:host = { is_eastern_roman_emperor_primary_title_trigger = yes } this = scope:host } desc = ach_coronation.0001.intro.byzantine_host @@ -70,7 +70,7 @@ ach_coronation.0001 = { } triggered_desc = { trigger = { - scope:host = { primary_title = title:e_byzantium } + scope:host = { is_eastern_roman_emperor_primary_title_trigger = yes } } desc = ach_coronation.0001.intro.byzantine } @@ -99,7 +99,7 @@ ach_coronation.0001 = { has_trait = cynical OR = { scope:priest ?= { is_important_hof_trigger = yes } - faith = { has_doctrine_parameter = theocratic_coronation } # To give something to complain about + rite = { rite_has_parameter = theocratic_coronation } # To give something to complain about } } desc = { @@ -109,7 +109,7 @@ ach_coronation.0001 = { desc = ach_coronation.0001.ending.host_cynical_hof } triggered_desc = { - trigger = { faith = { has_doctrine_parameter = theocratic_coronation } } + trigger = { rite = { rite_has_parameter = theocratic_coronation } } desc = ach_coronation.0001.ending.host_cynical } } @@ -238,22 +238,13 @@ ach_coronation.0001 = { involved_activity = { activity_host = { save_scope_as = host } var:officiator ?= { save_scope_as = priest } - if = { - limit = { - has_activity_option = { - category = special_type - option = coronation_type_anointment - } - } - scope:host.faith.religious_head = { save_scope_as = priest } - } } - # Send out the papal fanfare + # Send out the religious authority's fanfare if = { limit = { - # Is the host's religious head - scope:host.faith.religious_head ?= this - # The HoF actually matters for the ceremony + # Is the authority that approved the anointment + scope:activity.var:anointment_authority ?= this + # The authority actually matters for the ceremony scope:activity = { has_activity_option = { category = special_type @@ -492,7 +483,7 @@ scripted_effect ach_coronation_0010_choose_greeters = { # Grab the greeter's court chaplain if they exist exists = scope:greeter.cp:councillor_court_chaplain # Make sure it isn't the player - scope:greeter.cp:councillor_court_chaplain = { is_physically_able_ai = yes } + scope:greeter.cp:councillor_court_chaplain = { is_physically_able_ai = yes } } scope:greeter.cp:councillor_court_chaplain = { save_scope_as = greeter_2 } } @@ -817,7 +808,7 @@ ach_coronation.0010 = { title = ach_coronation.0010.a.tt.success left_icon = scope:hof remove_trait = excommunicated - stress_impact = { + stress_and_fulfillment_impact = { base = major_stress_loss arrogant = minor_stress_loss zealous = major_stress_loss @@ -830,7 +821,7 @@ ach_coronation.0010 = { } } } - + } 50 = { # They ignore you compare_modifier = { @@ -856,7 +847,7 @@ ach_coronation.0010 = { if = { limit = { is_ai = yes } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_gain shy = minor_stress_loss # Honestly? Thank HighGod } @@ -899,7 +890,7 @@ ach_coronation.0010 = { opinion = -30 } add_prestige = minor_prestige_loss - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_gain arrogant = minor_stress_gain zealous = minor_stress_gain @@ -1154,7 +1145,7 @@ ach_coronation.0011 = { } weight = { base = 1 - + ach_likely_plotter_modifier = yes modifier = { # Weighted up if there is actually a scheme against a guest @@ -1226,7 +1217,7 @@ ach_coronation.0011 = { trigger = { intrigue >= very_high_skill_rating } - + hidden_effect = { if = { limit = { exists = scope:coward_scheme } @@ -1266,7 +1257,7 @@ ach_coronation.0011 = { } } scope:coward = { - add_opinion = { + add_opinion = { target = root modifier = scared_opinion opinion = -20 @@ -1275,7 +1266,7 @@ ach_coronation.0011 = { add_prestige = minor_prestige_loss } - stress_impact = { + stress_and_fulfillment_impact = { sadistic = medium_stress_loss trusting = medium_stress_gain compassionate = medium_stress_gain @@ -1323,7 +1314,7 @@ ach_coronation.0011 = { } } } - + option = { # Arrest the traitors! name = { trigger = { has_trait = paranoid } @@ -1372,7 +1363,7 @@ ach_coronation.0011 = { coronation_weaken_detractors_opinion_effect = yes } - stress_impact = { + stress_and_fulfillment_impact = { wrathful = medium_stress_loss arbitrary = medium_stress_loss paranoid = major_stress_loss @@ -1423,7 +1414,7 @@ ach_coronation.0011 = { } } } - + option = { # Catch HerHim in a lie! name = ach_coronation.0011.a skill = intrigue @@ -1487,14 +1478,14 @@ ach_coronation.0011 = { } } - stress_impact = { + stress_and_fulfillment_impact = { trusting = medium_stress_gain paranoid = medium_stress_loss } ai_chance = { base = 150 - modifier = { + modifier = { intrigue <= mediocre_skill_rating add = -50 } @@ -1550,7 +1541,7 @@ ach_coronation.0011 = { opinion = 10 } - stress_impact = { + stress_and_fulfillment_impact = { # This is somewhat worrying base = minor_stress_gain # Doesn't actually care @@ -1633,7 +1624,7 @@ scripted_effect get_random_coronation_object = { trigger = { faith = { NOR = { - has_doctrine_parameter = unreformed_syncretic_actor_opinion_active + has_doctrine_parameter = unreformed_syncretic_actor has_doctrine_parameter = unreformed } } @@ -1783,7 +1774,7 @@ ach_coronation.0012 = { save_scope_as = first } random_attending_character = { - limit = { + limit = { is_eligible_random_squabbler = yes this != scope:first # Try and get the rival of the first character @@ -1791,7 +1782,7 @@ ach_coronation.0012 = { highest_held_title_tier >= tier_duchy ach_coronation_0012_mutual_enmity = yes } - alternative_limit = { + alternative_limit = { is_eligible_random_squabbler = yes this != scope:first # Try and get the rival of the first character @@ -1873,7 +1864,7 @@ ach_coronation.0012 = { } } - stress_impact = { + stress_and_fulfillment_impact = { fickle = minor_stress_gain } @@ -1930,7 +1921,7 @@ ach_coronation.0012 = { } } - stress_impact = { + stress_and_fulfillment_impact = { fickle = minor_stress_gain } @@ -2015,7 +2006,7 @@ ach_coronation.0012 = { } } - stress_impact = { + stress_and_fulfillment_impact = { craven = minor_stress_loss fickle = minor_stress_loss } @@ -2100,7 +2091,7 @@ ach_coronation.0012 = { } } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = medium_stress_loss } @@ -2156,14 +2147,14 @@ ach_coronation.0012 = { opinion = -10 } } - + add_character_modifier = { modifier = ach_imperious_modifier years = 5 } add_prestige = minor_prestige_gain - stress_impact = { + stress_and_fulfillment_impact = { impatient = minor_stress_loss lazy = minor_stress_loss arrogant = minor_stress_loss @@ -2396,9 +2387,9 @@ ach_coronation.0013 = { override_effect_2d = { trigger = { exists = scope:rain_day } - reference = rain + reference = rain } - + trigger = { OR = { involved_activity.var:activity_special_type_progression < 25 @@ -2436,6 +2427,7 @@ ach_coronation.0013 = { template = drunken_peasant_character culture = root.location.county.culture faith = root.location.county.faith + rite = root.location.county.rite save_scope_as = peasant after_creation = { # To make sure they fit the event window if = { @@ -2453,6 +2445,7 @@ ach_coronation.0013 = { template = drunken_peasant_character culture = root.location.county.culture faith = root.location.county.faith + rite = root.location.county.rite save_scope_as = peasant_2 after_creation = { if = { @@ -2524,7 +2517,7 @@ ach_coronation.0013 = { base = 1 is_of_major_interest_to_weight_up_modifier = { CHARACTER = root } is_of_minor_interest_to_weight_up_modifier = { CHARACTER = root } - + # Less likely to get rumors to stick on proper political operators modifier = { add = { @@ -2548,7 +2541,7 @@ ach_coronation.0013 = { title = ach_coronation.0013.a.weaken_detractors.tt left_icon = scope:detractor_1 right_icon = scope:detractor_2 - + scope:detractor_1 = { add_character_modifier = { modifier = ach_negative_rumors_modifier @@ -2571,7 +2564,7 @@ ach_coronation.0013 = { coronation_weaken_detractors_opinion_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_gain # Talking to peasants shy = minor_stress_gain # Talking to anyone } @@ -2658,7 +2651,7 @@ ach_coronation.0013 = { min = -49 } desc = ach_coronation.0013.c.tt.failure - send_interface_toast = { + send_interface_toast = { title = ach_coronation.0013.c.tt.failure left_icon = root add_prestige = minor_prestige_loss @@ -2671,7 +2664,7 @@ ach_coronation.0013 = { } } - stress_impact = { + stress_and_fulfillment_impact = { forgiving = minor_stress_gain just = minor_stress_loss wrathful = minor_stress_loss @@ -2724,7 +2717,7 @@ ach_coronation.0013 = { highlight_portrait = scope:peasant - stress_impact = { + stress_and_fulfillment_impact = { forgiving = medium_stress_gain compassionate = minor_stress_gain calm = miniscule_stress_gain @@ -2789,7 +2782,7 @@ ach_coronation.0013 = { highlight_portrait = scope:peasant highlight_portrait = scope:peasant_2 - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_loss gregarious = minor_stress_loss lifestyle_reveler = minor_stress_loss @@ -2829,7 +2822,7 @@ ach_coronation.0013 = { modifier = ach_positive_rumors_modifier years = 5 } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_loss } } @@ -2838,7 +2831,7 @@ ach_coronation.0013 = { modifier = ach_negative_rumors_modifier years = 5 } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_loss vengeful = medium_stress_gain wrathful = minor_stress_gain @@ -2976,9 +2969,9 @@ ach_coronation.0014 = { trigger = { culture = { has_cultural_pillar = language_greek } OR = { - has_title = title:e_byzantium + is_eastern_roman_emperor_trigger = yes top_liege = { - has_title = title:e_byzantium + is_eastern_roman_emperor_trigger = yes } } } @@ -3035,7 +3028,7 @@ ach_coronation.0014 = { exists = scope:rain_day NOT = { scope:crush_scenario = flag:generic_indoors } } - reference = rain + reference = rain } trigger = { @@ -3181,6 +3174,7 @@ ach_coronation.0014 = { template = soldier_friend_character culture = scope:first.culture faith = scope:first.faith + rite = scope:first.rite save_scope_as = guard } create_character = { @@ -3188,6 +3182,7 @@ ach_coronation.0014 = { template = servant_character culture = root.location.county.culture faith = root.location.county.faith + rite = root.location.county.rite save_scope_as = peasant } @@ -3294,7 +3289,7 @@ ach_coronation.0014 = { } show_as_tooltip = { ach_coronation_0015_minor_crush_effect = yes } custom_tooltip = ach_coronation.0014.a.tt.host.success - + custom_description_no_bullet = { text = if_crush_happens_desc object = scope:host @@ -3350,7 +3345,7 @@ ach_coronation.0014 = { factor = 2 } } - stress_impact = { + stress_and_fulfillment_impact = { sadistic = medium_stress_impact_loss callous = minor_stress_impact_loss honest = minor_stress_impact_gain @@ -3359,7 +3354,7 @@ ach_coronation.0014 = { compassionate = massive_stress_gain } } - + option = { # These crowds could be useful... name = ach_coronation.0014.b trigger = { @@ -3386,7 +3381,7 @@ ach_coronation.0014 = { base = 150 } } - + option = { # Go schmooze with the oncoming lord instead name = ach_coronation.0014.c reverse_add_opinion = { @@ -3451,7 +3446,7 @@ ach_coronation.0015 = { override_effect_2d = { trigger = { exists = scope:rain_day } - reference = rain + reference = rain } trigger = { @@ -3467,6 +3462,7 @@ ach_coronation.0015 = { template = diseased_peasant_character culture = root.location.county.culture faith = root.location.county.faith + rite = root.location.county.rite save_scope_as = filthy_peasant } create_character = { @@ -3474,9 +3470,10 @@ ach_coronation.0015 = { template = servant_character culture = root.location.county.culture faith = root.location.county.faith + rite = root.location.county.rite save_scope_as = peasant } - + ach_coronation_0015_minor_crush_effect = yes custom_tooltip = ach_coronation.0015.has_happened @@ -3572,7 +3569,7 @@ ach_coronation.0015 = { left_icon = root right_icon = scope:host - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_gain irritable = medium_stress_impact_gain } @@ -3700,7 +3697,7 @@ ach_coronation.0015 = { left_icon = root type = event_toast_effect_bad - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_gain irritable = medium_stress_impact_gain } @@ -3718,7 +3715,7 @@ ach_coronation.0015 = { show_as_tooltip = { scope:host = { - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_gain irritable = medium_stress_impact_gain } @@ -3741,7 +3738,7 @@ ach_coronation.0015 = { } } - stress_impact = { + stress_and_fulfillment_impact = { callous = minor_stress_impact_gain # Doesn't care shy = minor_stress_impact_gain # Talk to people!? } @@ -3852,7 +3849,7 @@ ach_coronation.0015 = { } } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = medium_stress_impact_gain # "Peasant blood? On *my* hands?" sadistic = medium_stress_impact_gain # "No wait this is great let's just watch" compassionate = major_stress_impact_loss # "Mass casualty events are bad :(((" ~ local buzzkill @@ -3995,7 +3992,7 @@ ach_coronation.0015 = { } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = medium_stress_impact_gain arrogant = minor_stress_impact_loss # Loves calling guards on the commons # Loves seeing guards beat people @@ -4003,7 +4000,7 @@ ach_coronation.0015 = { sadistic = medium_stress_impact_loss overseer = minor_stress_impact_loss } - + ai_chance = { base = 100 modifier = { @@ -4060,7 +4057,7 @@ ach_coronation.0015 = { show_as_tooltip = { scope:host = { - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_gain irritable = medium_stress_impact_gain } @@ -4075,7 +4072,7 @@ ach_coronation.0015 = { } } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_loss callous = minor_stress_impact_loss sadistic = medium_stress_impact_loss @@ -4158,7 +4155,7 @@ scripted_effect liege_reward_effect = { } else_if = { limit = { - government_allows = administrative + government_has_flag = government_has_influence top_liege = involved_activity.activity_host } change_influence = medium_influence_gain @@ -4228,7 +4225,7 @@ scripted_effect liege_reward_effect = { coronation_seize_advantages = { if = { limit = { - government_allows = administrative + government_has_flag = government_has_influence top_liege = involved_activity.activity_host } change_influence = medium_influence_gain @@ -4250,7 +4247,7 @@ scripted_effect liege_reward_effect = { opinion = 15 } } - + custom_tooltip = ach_coronation.0016.reward.tt } @@ -4282,7 +4279,7 @@ ach_coronation.0016 = { trigger = { is_physically_able = yes - involved_activity = { + involved_activity ?= { activity_host = { this != root is_ai = yes @@ -4301,10 +4298,10 @@ ach_coronation.0016 = { is_in_guest_subset = { name = detractor } } trigger_else = { - involved_activity = { + involved_activity ?= { is_target_in_variable_list = { name = major_detractor - target = root + target = root } } } @@ -4378,7 +4375,7 @@ ach_coronation.0016 = { } } } - + option = { # A: Martial - Promise Troops name = ach_coronation.0016.a.martial trigger = { @@ -4440,21 +4437,21 @@ ach_coronation.0016 = { } } add_martial_lifestyle_xp = minor_lifestyle_xp - + liege_reward_effect = yes ai_chance = { base = 100 } } - + option = { # A: Stewardship - Organize Donations name = ach_coronation.0016.a.stewardship trigger = { highest_skill = stewardship stewardship >= good_skill_level } - + if = { limit = { has_trait = greedy } # Custom tooltip since flavor text isn't triggerable @@ -4522,7 +4519,7 @@ ach_coronation.0016 = { } liege_reward_effect = yes } - + option = { # A: Intrigue - Offer Spies name = ach_coronation.0016.a.intrigue trigger = { @@ -4555,7 +4552,7 @@ ach_coronation.0016 = { } } } - + option = { # A: Learning - Appeal to Church name = ach_coronation.0016.a.learning trigger = { @@ -4580,7 +4577,7 @@ ach_coronation.0016 = { } } } - + option = { # A: Fallback - Become Loyal and give a hook name = ach_coronation.0016.a.loyal @@ -4599,7 +4596,7 @@ ach_coronation.0016 = { } add_trait = loyal - scope:host = { + scope:host = { add_hook = { type = loyalty_hook target = root @@ -4622,7 +4619,7 @@ ach_coronation.0016 = { add = 50 } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain ambitious = medium_stress_impact_gain content = medium_stress_impact_loss @@ -4671,7 +4668,7 @@ ach_coronation.0016 = { add_stress = minor_stress_gain } } - + option = { # B: Host has Embrace Supporters name = ach_coronation.0016.b.bonds trigger = { @@ -4706,7 +4703,7 @@ ach_coronation.0016 = { add_stress = minor_stress_gain } } - + option = { # C: Give artifact name = ach_coronation.0016.c.artifact trigger = { exists = scope:gifted_artifact } @@ -4717,8 +4714,8 @@ ach_coronation.0016 = { value = yes days = 1 } - set_variable = { - name = gifted_artifact + set_variable = { + name = gifted_artifact value = yes days = 1825 } @@ -4756,7 +4753,7 @@ ach_coronation.0016 = { add_dynasty_prestige = miniscule_dynasty_prestige_gain } } - + ai_chance = { base = 100 @@ -4777,14 +4774,14 @@ ach_coronation.0016 = { add = 50 } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain avaricious = minor_stress_impact_gain disloyal = medium_stress_impact_gain loyal = medium_stress_impact_loss } } - + option = { # C: Fallback: Give gold name = ach_coronation.0016.c.gold @@ -4826,7 +4823,7 @@ ach_coronation.0016 = { add = 50 } } - stress_impact = { + stress_and_fulfillment_impact = { generous = minor_stress_impact_loss greedy = minor_stress_impact_gain avaricious = minor_stress_impact_gain @@ -4835,7 +4832,7 @@ ach_coronation.0016 = { disloyal = medium_stress_impact_gain } } - + option = { # D: I'm good, thanks name = { trigger = { has_any_bad_relationship_with_character_trigger = { CHARACTER = scope:host } } @@ -4849,7 +4846,7 @@ ach_coronation.0016 = { } reverse_add_opinion = { target = scope:host - modifier = insulted_opinion + modifier = insulted_opinion opinion = -5 } } @@ -4870,7 +4867,7 @@ ach_coronation.0016 = { add = -25 } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_loss disloyal = minor_stress_impact_loss loyal = minor_stress_impact_gain @@ -5150,7 +5147,7 @@ ach_coronation.0017 = { custom = every_zealot_vassal_guest_tt add_opinion = { target = scope:host - modifier = impious_opinion + modifier = impious_opinion opinion = -15 } } @@ -5158,7 +5155,7 @@ ach_coronation.0017 = { scope:host = { add_opinion = { target = root - modifier = shamed_me_opinion + modifier = shamed_me_opinion opinion = -25 } add_prestige = medium_prestige_loss @@ -5236,7 +5233,7 @@ ach_coronation.0017 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { # Doesn't care that much, but can be doing this cynically cynical = minor_stress_impact_gain # Doesn't like the attention @@ -5260,7 +5257,7 @@ ach_coronation.0017 = { modifier = ach_focusing_on_prayer_modifier years = 5 } - stress_impact = { + stress_and_fulfillment_impact = { # Is annoyed by it base = medium_stress_impact_gain # Does *not* want to pray, actually @@ -5318,12 +5315,12 @@ ach_coronation.0017 = { scope:guest = { add_opinion = { target = root - modifier = respect_opinion + modifier = respect_opinion opinion = 10 } } - stress_impact = { + stress_and_fulfillment_impact = { # No Zealot impact because the player can interpret this either way arrogant = medium_stress_impact_gain # You *do* deserve it more humble = medium_stress_impact_loss @@ -5470,7 +5467,7 @@ ach_coronation.0018 = { # If there is a Seneschal than low Aptitude raises likeliness activity_court_position_aptitude_negative_modifier = { LIEGE = root POS = seneschal } } - + theme = coronation_activity cooldown = { years = 1 } @@ -5633,7 +5630,7 @@ ach_coronation.0018 = { multiplier = 2 } desc = ach_coronation.0018.a.tt_success - + custom_tooltip = ach_can_refuse_reward if = { # Offer a title @@ -5692,7 +5689,7 @@ ach_coronation.0018 = { else = { # Give public praise show_as_tooltip = { add_prestige = medium_prestige_gain - + involved_activity = { every_attending_character = { limit = { @@ -5739,14 +5736,14 @@ ach_coronation.0018 = { desc = ach_coronation.0018.a.tt_failure send_interface_toast = { title = ach_coronation.0018.a.tt_failure - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_gain arrogant = minor_stress_impact_gain } } } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain arrogant = minor_stress_impact_gain lazy = medium_stress_impact_gain @@ -5880,7 +5877,7 @@ ach_coronation.0018 = { desc = ach_coronation.0018.a.tt_failure send_interface_toast = { title = ach_coronation.0018.a.tt_failure - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain arrogant = minor_stress_impact_gain } @@ -5888,7 +5885,7 @@ ach_coronation.0018 = { } } - stress_impact = { + stress_and_fulfillment_impact = { # Work is hard base = minor_stress_impact_gain # But not for some @@ -5952,7 +5949,7 @@ ach_coronation.0018 = { } } } - 25 = { + 25 = { compare_modifier = { value = scope:duel_value multiplier = -5 @@ -5972,7 +5969,7 @@ ach_coronation.0018 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { gregarious = minor_stress_impact_loss # Sitting around and talking sucks, actually impatient = minor_stress_impact_gain @@ -6044,7 +6041,7 @@ ach_coronation.0018 = { years = 5 } - stress_impact = { + stress_and_fulfillment_impact = { diligent = minor_stress_impact_loss # Super down for not talking shy = minor_stress_impact_loss @@ -6068,7 +6065,7 @@ ach_coronation.0018 = { highlight_portrait = root - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss # Wants to do something diligent = minor_stress_impact_gain @@ -6192,7 +6189,7 @@ ach_coronation.0019 = { } flag:praise = { add_prestige = medium_prestige_gain - + involved_activity = { every_attending_character = { limit = { @@ -6342,7 +6339,7 @@ ach_coronation.0020 = { triggered_animation = { trigger = { NOT = { OR = { scope:host.religion = religion:eastern_orthodox_religion scope:host.religion = religion:catholic_religion scope:host.religion = religion:protestant_religion } } } animation = thinking - } + } camera = camera_event_very_left_pointing_right } @@ -6562,7 +6559,7 @@ ach_coronation.0020 = { } } } - + option = { # C: They truly are a great GetRelationToMe name = ach_coronation.0020.c if = { @@ -6591,7 +6588,7 @@ ach_coronation.0020 = { } } } - + option = { # D: They're a model for all my subjects name = ach_coronation.0020.d add_prestige = minor_prestige_gain @@ -6666,7 +6663,7 @@ ach_coronation.0022 = { desc = ach_coronation.0022.desc first_valid = { triggered_desc = { - trigger = { scope:host = { primary_title = title:e_byzantium } } + trigger = { scope:host = { is_eastern_roman_emperor_primary_title_trigger = yes } } desc = ach_coronation.0022.desc.whisper.byzantine } triggered_desc = { @@ -7094,7 +7091,7 @@ ach_coronation.0022 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { fickle = minor_stress_impact_gain } ai_chance = { @@ -7146,9 +7143,9 @@ ach_coronation.0022 = { opinion = 20 } } - - stress_impact = { + + stress_and_fulfillment_impact = { cynical = medium_stress_impact_gain zealous = medium_stress_impact_loss compassionate = minor_stress_impact_loss @@ -7193,7 +7190,7 @@ ach_coronation.0022 = { years = 4 } - stress_impact = { + stress_and_fulfillment_impact = { gregarious = miniscule_stress_impact_gain } @@ -7259,7 +7256,7 @@ scripted_trigger ach_coronation_0023_eligible_clergy_trigger = { scripted_effect ach_coronation_0023_generic_acceptance_effect = { if = { limit = { - faith = { NOT = { has_doctrine = doctrine_pluralism_pluralistic } } + rite = { NOT = { rite_has_doctrine = doctrine_pluralism_pluralistic } } } # Fundamentalists won't be happy about this every_vassal = { @@ -7277,7 +7274,7 @@ scripted_effect ach_coronation_0023_generic_acceptance_effect = { add_piety = medium_piety_loss if = { limit = { has_trait = zealous } - stress_impact = { + stress_and_fulfillment_impact = { zealous = medium_stress_impact_gain } } @@ -7290,7 +7287,7 @@ scripted_effect ach_coronation_0023_generic_acceptance_effect = { } } - stress_impact = { + stress_and_fulfillment_impact = { trusting = medium_stress_loss # Trusts this strange foreigner implicitly paranoid = medium_stress_loss # Is very happy to have less incompetent guards } @@ -7305,8 +7302,8 @@ ach_coronation.0023 = { triggered_desc = { trigger = { exists = scope:clergy - scope:clergy.faith = { - NOT = { has_doctrine = doctrine_pluralism_pluralistic } + scope:clergy.rite = { + NOT = { rite_has_doctrine = doctrine_pluralism_pluralistic } } } desc = ach_coronation.0023.desc.clergy.angry @@ -7336,8 +7333,8 @@ ach_coronation.0023 = { trigger = { exists = scope:clergy } triggered_animation = { trigger = { - scope:clergy.faith = { - NOT = { has_doctrine = doctrine_pluralism_pluralistic } + scope:clergy.rite = { + NOT = { rite_has_doctrine = doctrine_pluralism_pluralistic } } } animation = disapproval @@ -7347,7 +7344,7 @@ ach_coronation.0023 = { } cooldown = { years = 1 } - + theme = coronation_activity override_background = { @@ -7443,6 +7440,7 @@ ach_coronation.0023 = { template = bp1_yearly_2021_martial_person_template location = root.location faith = scope:foreign_ruler.faith + rite = scope:foreign_ruler.rite culture = scope:foreign_ruler.culture trait = loyal save_scope_as = foreign_warrior @@ -7535,13 +7533,13 @@ ach_coronation.0023 = { multiplier = -1 } # Faith modifiers - modifier = { - faith = { NOT = { has_doctrine = doctrine_pluralism_pluralistic } } + modifier = { + rite = { NOT = { rite_has_doctrine = doctrine_pluralism_pluralistic } } NOT = { has_trait = cynical } add = -50 } - modifier = { - faith = { NOT = { has_doctrine = doctrine_pluralism_pluralistic } } + modifier = { + rite = { NOT = { rite_has_doctrine = doctrine_pluralism_pluralistic } } has_trait = zealous factor = 0 } @@ -7594,13 +7592,13 @@ ach_coronation.0023 = { multiplier = -1 } # Faith modifiers - modifier = { - faith = { NOT = { has_doctrine = doctrine_pluralism_pluralistic } } + modifier = { + rite = { NOT = { rite_has_doctrine = doctrine_pluralism_pluralistic } } NOT = { has_trait = cynical } add = -50 } - modifier = { - faith = { NOT = { has_doctrine = doctrine_pluralism_pluralistic } } + modifier = { + rite = { NOT = { rite_has_doctrine = doctrine_pluralism_pluralistic } } has_trait = zealous factor = 0 } @@ -7624,13 +7622,13 @@ ach_coronation.0023 = { ai_chance = { base = 100 # Faith modifiers - modifier = { - faith = { NOT = { has_doctrine = doctrine_pluralism_pluralistic } } + modifier = { + rite = { NOT = { rite_has_doctrine = doctrine_pluralism_pluralistic } } NOT = { has_trait = cynical } add = -50 } - modifier = { - faith = { NOT = { has_doctrine = doctrine_pluralism_pluralistic } } + modifier = { + rite = { NOT = { rite_has_doctrine = doctrine_pluralism_pluralistic } } has_trait = zealous factor = 0 } @@ -7642,7 +7640,7 @@ ach_coronation.0023 = { if = { limit = { - faith = { NOT = { has_doctrine = doctrine_pluralism_pluralistic } } + rite = { NOT = { rite_has_doctrine = doctrine_pluralism_pluralistic } } } every_vassal = { limit = { @@ -7679,7 +7677,7 @@ ach_coronation.0023 = { } ###################### -# Open up drinks to the locals +# Open up drinks to the locals # by Jay Zaborowski # 0025 ach_coronation.0025 = { @@ -7751,10 +7749,10 @@ ach_coronation.0025 = { } } # And a willing host - activity_host = { faith_forbids_alcohol_trigger = no } + activity_host = { drinks_alcohol_trigger = yes } } # And a willing you - faith_forbids_alcohol_trigger = no + drinks_alcohol_trigger = yes } immediate = { @@ -7835,7 +7833,7 @@ ach_coronation.0025 = { CHAR = root } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss temperate = medium_stress_impact_gain # Doesn't partake } @@ -7954,7 +7952,7 @@ ach_coronation.0025 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss temperate = medium_stress_impact_gain # Doesn't partake } @@ -7992,7 +7990,7 @@ ach_coronation.0025 = { min = -49 } desc = ach_coronation.0025.b.tt.failure - send_interface_toast = { + send_interface_toast = { title = ach_coronation.0025.b.tt.failure left_icon = scope:baron @@ -8007,7 +8005,7 @@ ach_coronation.0025 = { } } - stress_impact = { # Disappointment + stress_and_fulfillment_impact = { # Disappointment drunkard = minor_stress_impact_gain lifestyle_reveler = minor_stress_impact_gain } @@ -8039,7 +8037,7 @@ ach_coronation.0025 = { flavor = ach_coronation.0025.c.flavor # Stress loss - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss drunkard = minor_stress_impact_gain lifestyle_reveler = minor_stress_impact_gain @@ -8070,7 +8068,7 @@ ach_coronation.0026 = { camera = camera_event_very_left_fov35 } - center_portrait = { + center_portrait = { character = root animation = stress camera = camera_event_center_very_large @@ -8204,7 +8202,7 @@ ach_coronation.0026 = { opinion = 15 } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_loss } } @@ -8301,7 +8299,7 @@ scripted_trigger can_be_hashishiyah_ignoring_region_trigger = { has_trait = temperate } NAND = { - faith = { trait_is_sin = hashishiyah } + rite = { trait_is_sin_rite = hashishiyah } has_trait = zealous } } @@ -8344,23 +8342,23 @@ ach_coronation.0027 = { } } - left_portrait = { + left_portrait = { character = root animation = interested } - center_portrait = { + center_portrait = { character = scope:partaker animation = interested_left } - right_portrait = { + right_portrait = { character = scope:stoner animation = wedding_drunk } cooldown = { years = 1 } - + theme = feast_activity trigger = { @@ -8424,7 +8422,6 @@ ach_coronation.0027 = { } immediate = { - play_music_cue = "middleeasterncourt_cue" involved_activity = { random_attending_character = { limit = { @@ -8461,7 +8458,7 @@ ach_coronation.0027 = { location = { geographical_region = world_europe_north } title:e_byzantium ?= { has_variable = founded_varangian_guard } OR = { - culture = { has_cultural_pillar = heritage_north_germanic } + culture = { has_cultural_pillar = heritage_north_germanic } dynasty = { has_dynasty_perk = fp1_adventure_legacy_1 } } } @@ -8469,6 +8466,7 @@ ach_coronation.0027 = { save_scope_as = stoner culture = root.culture faith = root.faith + rite = root.rite location = root.location template = varangian_template trait = hashishiyah @@ -8485,6 +8483,7 @@ ach_coronation.0027 = { save_scope_as = stoner culture = root.culture faith = root.faith + rite = root.rite location = root.location template = knight trait = hashishiyah @@ -8496,6 +8495,7 @@ ach_coronation.0027 = { save_scope_as = stoner culture = root.culture faith = root.faith + rite = root.rite location = root.location template = diplomacy_court_position_holder_template trait = hashishiyah @@ -8504,8 +8504,8 @@ ach_coronation.0027 = { } scope:stoner = { add_to_activity = root.involved_activity + add_character_flag = created_character_ach_coronation_0027 } - add_character_flag = created_character_ach_coronation_0027 } } @@ -8557,31 +8557,31 @@ ach_coronation.0027 = { if = { limit = { - faith = { trait_is_sin = hashishiyah } + rite = { trait_is_sin_rite = hashishiyah } } add_piety = major_piety_loss - stress_impact = { + stress_and_fulfillment_impact = { zealous = major_stress_impact_gain cynical = minor_stress_impact_loss } } else_if = { limit = { - faith = { trait_is_virtue = hashishiyah } + rite = { trait_is_virtue_rite = hashishiyah } } add_piety = minor_piety_gain - stress_impact = { + stress_and_fulfillment_impact = { cynical = medium_stress_impact_gain zealous = minor_stress_impact_loss } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain avaricious = minor_stress_impact_gain temperate = medium_stress_impact_gain } - + ai_chance = { modifier = { OR = { @@ -8681,37 +8681,37 @@ ach_coronation.0027 = { if = { limit = { - faith = { trait_is_sin = hashishiyah } + rite = { trait_is_sin_rite = hashishiyah } } add_piety = minor_piety_loss - stress_impact = { + stress_and_fulfillment_impact = { zealous = medium_stress_impact_gain cynical = minor_stress_impact_loss } } else_if = { limit = { - faith = { trait_is_virtue = hashishiyah } + rite = { trait_is_virtue_rite = hashishiyah } } add_piety = minor_piety_gain - stress_impact = { + stress_and_fulfillment_impact = { cynical = medium_stress_impact_gain zealous = minor_stress_impact_loss } } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss temperate = medium_stress_impact_gain shy = minor_stress_impact_gain hashishiyah = minor_stress_impact_loss # Bonus stress loss if you're already a fan } - + ai_chance = { base = 100 modifier = { NOT = { has_trait = cynical } - faith = { trait_is_virtue = hashishiyah } + rite = { trait_is_virtue_rite = hashishiyah } factor = 2 } modifier = { @@ -8753,41 +8753,41 @@ ach_coronation.0027 = { if = { limit = { - faith = { trait_is_sin = hashishiyah } + rite = { trait_is_sin_rite = hashishiyah } } add_piety = medium_piety_gain - stress_impact = { + stress_and_fulfillment_impact = { cynical = minor_stress_impact_gain zealous = medium_stress_impact_loss } } else_if = { limit = { - faith = { trait_is_virtue = hashishiyah } + rite = { trait_is_virtue_rite = hashishiyah } } add_piety = medium_piety_loss - stress_impact = { + stress_and_fulfillment_impact = { zealous = minor_stress_impact_gain cynical = medium_stress_impact_loss } } - stress_impact = { + stress_and_fulfillment_impact = { gregarious = minor_stress_impact_gain lifestyle_reveler = minor_stress_impact_gain hashishiyah = major_stress_impact_gain } - + ai_chance = { base = 50 modifier = { has_trait = zealous - faith = { trait_is_sin = hashishiyah } + rite = { trait_is_sin_rite = hashishiyah } factor = 4 } modifier = { has_trait = cynical - faith = { trait_is_virtue = hashishiyah } + rite = { trait_is_virtue_rite = hashishiyah } factor = 4 } } @@ -8817,24 +8817,24 @@ ach_coronation.0027 = { if = { limit = { - faith = { trait_is_sin = hashishiyah } + rite = { trait_is_sin_rite = hashishiyah } } add_piety = minor_piety_gain } else_if = { limit = { - faith = { trait_is_virtue = hashishiyah } + rite = { trait_is_virtue_rite = hashishiyah } } add_piety = minor_piety_loss } - stress_impact = { + stress_and_fulfillment_impact = { lifestyle_reveler = minor_stress_impact_gain gregarious = minor_stress_impact_gain temperate = minor_stress_impact_loss hashishiyah = medium_stress_impact_gain } - + ai_chance = { base = 100 modifier = { @@ -8857,13 +8857,16 @@ ach_coronation.0027 = { } after = { - if = { - limit = { - has_character_flag = created_character_ach_coronation_0027 - scope:stoner = { NOT = { has_relation_friend = root } } - } - hidden_effect = { - scope:stoner = { silent_disappearance_effect = yes } + scope:stoner = { + if = { + limit = { has_character_flag = created_character_ach_coronation_0027 } + if = { + limit = { has_relation_friend = root } + remove_character_flag = created_character_ach_coronation_0027 + } + else = { + hidden_effect = { silent_disappearance_effect = yes } + } } } } @@ -8936,24 +8939,24 @@ ach_coronation.0028 = { title = ach_coronation.0028.t desc = ach_coronation.0028.desc - left_portrait = { + left_portrait = { character = root animation = disapproval camera = camera_event_left_pointing_back_fov20 } - center_portrait = { + center_portrait = { character = scope:drinker animation = rage camera = camera_event_center_pointing_forward_fov35 } - right_portrait = { + right_portrait = { character = scope:onlooker animation = interested camera = camera_event_very_right_forward_fov30 } - + theme = feast_activity cooldown = { years = 1 } @@ -9115,8 +9118,8 @@ ach_coronation.0028 = { chance = 5 add_trait = drunkard } - - stress_impact = { + + stress_and_fulfillment_impact = { drunkard = medium_stress_impact_loss lifestyle_reveler = minor_stress_impact_loss gregarious = minor_stress_impact_loss @@ -9268,8 +9271,8 @@ ach_coronation.0028 = { } } } - - stress_impact = { + + stress_and_fulfillment_impact = { honest = massive_stress_impact_gain just = medium_stress_impact_gain temperate = minor_stress_impact_gain @@ -9306,7 +9309,7 @@ ach_coronation.0028 = { add_legitimacy = minor_legitimacy_loss - stress_impact = { + stress_and_fulfillment_impact = { temperate = minor_stress_impact_loss drunkard = medium_stress_impact_gain lifestyle_reveler = minor_stress_impact_gain @@ -9342,13 +9345,13 @@ ach_coronation.0029 = { title = ach_coronation.0029.t desc = ach_coronation.0029.desc - left_portrait = { + left_portrait = { character = root animation = thinking camera = camera_event_table_left } - center_portrait = { + center_portrait = { character = scope:second triggered_animation = { trigger = { use_goblet_in_tavern_trigger = yes } @@ -9361,7 +9364,7 @@ ach_coronation.0029 = { camera = camera_event_table_center } - right_portrait = { + right_portrait = { character = scope:first triggered_animation = { trigger = { use_goblet_in_tavern_trigger = yes } @@ -9373,7 +9376,7 @@ ach_coronation.0029 = { } camera = camera_event_table_right_far } - + theme = feast_activity cooldown = { years = 1 } @@ -9393,7 +9396,7 @@ ach_coronation.0029 = { } } } - + weight_multiplier = { base = 1 modifier = { @@ -9568,7 +9571,7 @@ ach_coronation.0029 = { } } } - + switch = { trigger = has_activity_intent coronation_impress_attendees = { @@ -9589,7 +9592,7 @@ ach_coronation.0029 = { option = { # Want to try falconry? name = ach_coronation.0029.b trigger = { has_dlc_feature = tours_and_tournaments } - + flavor = ach_coronation.0029.b.flavor custom_tooltip = ach_coronation.0029.b.free_falconry @@ -9599,7 +9602,7 @@ ach_coronation.0029 = { option = { # Is Temperance not a virtue? name = { trigger = { - faith = { trait_is_virtue = temperate } + rite = { trait_is_virtue_rite = temperate } NOR = { has_trait = gluttonous has_trait = cynical @@ -9611,14 +9614,14 @@ ach_coronation.0029 = { if = { limit = { - faith = { trait_is_virtue = temperate } + rite = { trait_is_virtue_rite = temperate } NOR = { has_trait = gluttonous has_trait = cynical } } custom_tooltip = ach_coronation.0029.c.virtuous.tt - + add_piety = medium_piety_gain every_vassal = { diff --git a/events/dlc/ach/ach_maintenance_events.txt b/events/dlc/ach/ach_maintenance_events.txt deleted file mode 100644 index 3864adc47..000000000 --- a/events/dlc/ach/ach_maintenance_events.txt +++ /dev/null @@ -1,720 +0,0 @@ -namespace = ach_maintenance_events - -ach_maintenance_events.0001 = { # Clean up of Coronation realm law, will happen 1 tick after you gain the title (due to on_actions) - type = character_event - hidden = yes - - trigger = { - coronation_trigger = yes - } - - immediate = { - if = { - limit = { - NOT = { - has_game_rule = coronation_laws_off - } - } - if = { - limit = { - has_variable = crowned_king_var - NOT = { has_realm_law = crowned_king } - } - add_realm_law_skip_effects = crowned_king - } - else_if = { - limit = { - has_variable = crowned_emperor_var - NOT = { has_realm_law = crowned_emperor } - } - add_realm_law_skip_effects = crowned_emperor - } - else_if = { - limit = { - NOR = { - has_variable = crowned_king_var - has_variable = crowned_emperor_var - } - NOT = { has_realm_law = uncrowned } - } - add_realm_law_skip_effects = uncrowned - } - } - } -} - -ach_maintenance_events.0002 = { # ACH Oath synergy culture rewards - type = character_event - hidden = yes - - trigger = { - has_variable = mend_the_fracture_oath_target_culture - culture ?= { - has_cultural_tradition = oath_mend_the_fracture_tradition - } - top_liege = root - var:mend_the_fracture_oath_target_culture = { - has_cultural_tradition = oath_mend_the_fracture_tradition - NOT = { this = root.culture } - any_culture_county = { - count >= 3 - top_liege = root.top_liege - } - } - } - - immediate = { - # calculate the chances of a positive thing happening - set_variable = { - name = synergy_cultures_chance - value = 0.1 - } - set_variable = { - name = synergy_cultures_amount - value = 0 - } - var:mend_the_fracture_oath_target_culture = { - if = { - limit = { - cultural_acceptance = { - target = root.culture - value >= 99 - } - } - root = { - change_variable = { - name = synergy_cultures_chance - add = 0.4 - } - } - } - else_if = { - limit = { - cultural_acceptance = { - target = root.culture - value >= 80 - } - } - root = { - change_variable = { - name = synergy_cultures_chance - add = 0.3 - } - } - } - else_if = { - limit = { - cultural_acceptance = { - target = root.culture - value >= 60 - } - } - root = { - change_variable = { - name = synergy_cultures_chance - add = 0.2 - } - } - } - else_if = { - limit = { - cultural_acceptance = { - target = root.culture - value >= 40 - } - } - root = { - change_variable = { - name = synergy_cultures_chance - add = 0.1 - } - } - } - if = { - limit = { - culture_head ?= { - opinion = { - target = root - value >= 80 - } - } - } - root = { - change_variable = { - name = synergy_cultures_chance - add = 0.3 - } - } - } - else_if = { - limit = { - culture_head ?= { - opinion = { - target = root - value >= 40 - } - } - } - root = { - change_variable = { - name = synergy_cultures_chance - add = 0.2 - } - } - } - else_if = { - limit = { - culture_head ?= { - opinion = { - target = root - value >= 20 - } - } - } - root = { - change_variable = { - name = synergy_cultures_chance - add = 0.1 - } - } - } - } - if = { - limit = { - exists = var:mend_the_fracture_oath_target_culture.culture_head - } - if = { - limit = { - opinion = { - target = var:mend_the_fracture_oath_target_culture.culture_head - value >= 80 - } - } - root = { - change_variable = { - name = synergy_cultures_chance - add = 0.3 - } - } - } - else_if = { - limit = { - opinion = { - target = var:mend_the_fracture_oath_target_culture.culture_head - value >= 40 - } - } - root = { - change_variable = { - name = synergy_cultures_chance - add = 0.2 - } - } - } - else_if = { - limit = { - opinion = { - target = var:mend_the_fracture_oath_target_culture.culture_head - value >= 20 - } - } - root = { - change_variable = { - name = synergy_cultures_chance - add = 0.1 - } - } - } - } - - if = { - limit = { - prestige_level = 5 - } - change_variable = { - name = synergy_cultures_chance - add = 0.2 - } - } - else_if = { - limit = { - prestige_level = 4 - } - change_variable = { - name = synergy_cultures_chance - add = 0.15 - } - } - else_if = { - limit = { - prestige_level = 3 - } - change_variable = { - name = synergy_cultures_chance - add = 0.1 - } - } - else_if = { - limit = { - prestige_level = 2 - } - change_variable = { - name = synergy_cultures_chance - add = 0.05 - } - } - else_if = { - limit = { - prestige_level = 1 - } - change_variable = { - name = synergy_cultures_chance - add = 0.02 - } - } - - - if = { - limit = { - var:synergy_cultures_chance >= 1 - } - change_variable = { - name = synergy_cultures_amount - add = var:synergy_cultures_chance - multiply = 2 - } - set_variable = { - name = synergy_cultures_chance - value = 1 - } - } - - # calculate the amount of a positive things happening - var:mend_the_fracture_oath_target_culture = { - every_culture_county = { - limit = { - top_liege = root.top_liege - } - change_variable = { - name = synergy_cultures_amount - add = 1 - } - } - } - change_variable = { - name = synergy_cultures_amount - multiply = 0.2 - multiply = var:synergy_cultures_chance - min = 1 - } - - while = { - limit = { - var:synergy_cultures_amount > 0 - } - random_list = { - 1 = { - culture ?= { - random_culture_county = { - limit = { - NOT = { - has_county_modifier = oath_mend_the_fracture_county - } - holder = root - } - alternative_limit = { - NOT = { - has_county_modifier = oath_mend_the_fracture_county - } - top_liege = root.top_liege - } - alternative_limit = { - NOT = { - has_county_modifier = oath_mend_the_fracture_county - } - } - add_county_modifier = { - modifier = oath_mend_the_fracture_county - years = 2 - } - add_to_list = synergy_culture_counties - } - } - var:mend_the_fracture_oath_target_culture = { - random_culture_county = { - limit = { - NOT = { - has_county_modifier = oath_mend_the_fracture_county - } - holder = root - } - alternative_limit = { - NOT = { - has_county_modifier = oath_mend_the_fracture_county - } - top_liege = root.top_liege - } - alternative_limit = { - NOT = { - has_county_modifier = oath_mend_the_fracture_county - } - } - add_county_modifier = { - modifier = oath_mend_the_fracture_county - years = 3 - } - add_to_list = synergy_culture_counties - } - } - save_scope_as = county_reward - } - 1 = { - modifier = { - NOT = { - root.culture.culture_head ?= root - } - factor = 0 - } - spawn_army = { - name = ach_culture_synergy_troops - men_at_arms = { - type = accolade_maa_archers - stacks = 1 - } - men_at_arms = { - type = accolade_maa_skirmishers - stacks = 1 - } - location = root.capital_province - uses_supply = no - inheritable = yes - } - var:mend_the_fracture_oath_target_culture = { - if = { - limit = { - NOT = { - culture_head ?= root - } - } - } - culture_head ?= { - spawn_army = { - name = ach_culture_synergy_troops - men_at_arms = { - type = accolade_maa_skirmishers - stacks = 1 - } - location = root.capital_province - uses_supply = no - inheritable = yes - } - } - } - save_scope_as = army_reward - } - 1 = { - modifier = { - NOT = { - root.culture.culture_head ?= root - var:mend_the_fracture_oath_target_culture.culture_head != root - } - factor = 0 - } - modifier = { - opinion = { - target = var:mend_the_fracture_oath_target_culture.culture_head - value = 100 - } - factor = 0 - } - add_opinion = { - target = var:mend_the_fracture_oath_target_culture.culture_head - opinion = 20 - modifier = ach_synergy_culture_opinion - } - save_scope_as = opinion_reward - } - } - - change_variable = { - name = synergy_cultures_amount - subtract = 1 - } - } - - # inform the player about what happened - send_interface_message = { - title = ach_maintenance_events.0002.title - if = { - limit = { - exists = scope:army_reward - } - custom_tooltip = ach_maintenance_events.0002.army_reward - } - if = { - limit = { - exists = scope:opinion_reward - } - custom_tooltip = ach_maintenance_events.0002.opinion_reward - } - if = { - limit = { - exists = scope:county_reward - } - every_in_list = { - list = synergy_culture_counties - show_as_tooltip = { - add_county_modifier = { - modifier = oath_mend_the_fracture_county - years = 2 - } - } - } - } - } - - if = { - limit = { - var:mend_the_fracture_oath_target_culture = { - any_culture_county = { - holder = { - culture = var:mend_the_fracture_oath_target_culture - is_ai = no - } - } - } - } - send_interface_message = { - title = ach_maintenance_events.0002.title - if = { - limit = { - exists = scope:army_reward - } - custom_tooltip = ach_maintenance_events.0002.army_reward - } - if = { - limit = { - exists = scope:opinion_reward - } - custom_tooltip = ach_maintenance_events.0002.opinion_reward - } - if = { - limit = { - exists = scope:county_reward - } - every_in_list = { - list = synergy_culture_counties - show_as_tooltip = { - add_county_modifier = { - modifier = oath_mend_the_fracture_county - years = 2 - } - } - } - } - } - } - remove_variable = synergy_cultures_chance - remove_variable = synergy_cultures_amount - } -} - -ach_maintenance_events.0100 = { #Coronation host is ded, notify guests - type = character_event - title = ach_maintenance_events.0100.t - desc = ach_maintenance_events.0100.desc - theme = realm - - left_portrait = { - character = root - animation = shock - } - - right_portrait = { - character = scope:host - animation = dead - } - - immediate = { - - } - - option = { - name = ach_maintenance_events.0100.a - } - -} - -ach_maintenance_events.0101 = { #Coronation host has been imprisoned, notify guests - type = character_event - title = ach_maintenance_events.0101.t - desc = ach_maintenance_events.0101.desc - theme = realm - - left_portrait = { - character = root - animation = shock - } - - right_portrait = { - character = scope:host - animation = prisonhouse - } - - lower_left_portrait = { - character = scope:gaoler - } - - immediate = { - scope:host.imprisoner = { - save_scope_as = gaoler - } - } - - trigger = { - NOT = { #you know what you did - this = scope:host.imprisoner - } - } - - option = { - name = ach_maintenance_events.0101.a - } - -} - -ach_maintenance_events.0102 = { #Coronation host has been imprisoned, notify host and cancellation - type = character_event - title = ach_maintenance_events.0102.t - desc = ach_maintenance_events.0102.desc - theme = realm - - left_portrait = { - character = root - animation = prisonhouse - } - - right_portrait = { - character = scope:gaoler - animation = manic - } - - immediate = { - scope:host.imprisoner = { - save_scope_as = gaoler - } - } - - option = { - name = ach_maintenance_events.0102.a - } -} - -ach_maintenance_events.0103 = { #No one shows up, notify host - type = character_event - title = ach_maintenance_events.0103.t - desc = ach_maintenance_events.0103.desc - theme = realm - - left_portrait = { - character = root - animation = worry - } - - - immediate = { - - } - - option = { - name = ach_maintenance_events.0103.a - } - -} - -ach_maintenance_events.0104 = { #Officiator ded, host cancelled the coronation, notify guests - type = character_event - title = ach_maintenance_events.0104.t - desc = ach_maintenance_events.0104.desc - theme = realm - - left_portrait = { - character = root - animation = stunned - } - - right_portrait = { - character = scope:host - animation = wailing - } - - lower_right_portrait = { - character = scope:dead_officiator - } - - immediate = { - scope:activity.var:officiator ?= { save_scope_as = dead_officiator } - } - - option = { - name = ach_maintenance_events.0104.a - } - -} - -ach_maintenance_events.0105 = { #Host excommunicated, notify guests - type = character_event - title = ach_maintenance_events.0105.t - desc = ach_maintenance_events.0105.desc - theme = realm - - left_portrait = { - character = root - animation = worry - } - - center_portrait = { - character = scope:host - animation = shame - } - - right_portrait = { - character = scope:hof - animation = go_to_your_room - } - - immediate = { - scope:host.faith.religious_head = { save_scope_as = hof } - } - - option = { - name = ach_maintenance_events.0105.a - } - -} - -ach_maintenance_events.0106 = { #Host excommunicated, notify host - type = character_event - title = ach_maintenance_events.0106.t - desc = ach_maintenance_events.0106.desc - theme = realm - - left_portrait = { - character = root - animation = shame - } - - right_portrait = { - character = scope:hof - animation = go_to_your_room - } - - immediate = { - scope:hof.faith.religious_head = { save_scope_as = hof } - } - - option = { - name = ach_maintenance_events.0106.a - } - -} diff --git a/events/dlc/ach/ach_yearly_events.txt b/events/dlc/ach/ach_yearly_events.txt deleted file mode 100644 index e9fa1d79e..000000000 --- a/events/dlc/ach/ach_yearly_events.txt +++ /dev/null @@ -1,2198 +0,0 @@ -namespace = ach_yearly_events - -ach_yearly_events.1001 = { - type = character_event - title = ach_yearly_events.1001.t - desc = ach_yearly_events.1001.desc - theme = stewardship - left_portrait = { - character = root - animation = happy_teacher - } - right_portrait = { - character = scope:liege - animation = thinking - } - - trigger = { - #Standard checks - basic_is_valid_for_yearly_events_trigger = yes - is_adult = yes - is_councillor = yes - has_council_position = councillor_steward - liege = { - is_available_ai = yes - age >= 10 - } - stewardship > liege.stewardship - stewardship >= decent_skill_rating - } - - immediate = { - liege = { - save_scope_as = liege - } - } - - weight_multiplier = { - modifier = { - factor = 0.1 - is_ai = yes - } - } - - cooldown = { years = 20 } - - # Well, you could always give it to me to use... - option = { - name = ach_yearly_events.1001.a - - trigger = { - OR = { - has_trait = deceitful - intrigue >= high_skill_rating - } - NOR = { - has_trait = just - has_trait = honest - } - scope:liege = { - is_ai = yes - } - } - - duel = { - skill = intrigue - target = scope:liege - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - desc = ach_yearly_events.1001.a.success - modifier = { - add = 20 - scope:liege = { - has_trait = trusting - } - } - send_interface_toast = { - title = ach_yearly_events.1001.a.success - left_icon = root - right_icon = scope:liege - - scope:liege = { - pay_short_term_gold = { - target = root - gold = minor_gold_value - } - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - desc = ach_yearly_events.1001.a.failure - modifier = { - add = 10 - scope:liege = { - has_trait = paranoid - } - } - send_interface_toast = { - title = ach_yearly_events.1001.a.failure - left_icon = root - right_icon = scope:liege - - reverse_add_opinion = { - modifier = suspicion_opinion - target = scope:liege - opinion = -25 - } - } - } - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_honor = -0.5 - ai_boldness = 0.5 - ai_greed = 1 - } - } - } - - # Being cautious is useful for a rainy day - option = { - name = ach_yearly_events.1001.b - - add_character_modifier = { - modifier = ach_spending_advice_modifier - years = 10 - } - - if = { - limit = { - scope:liege = { - is_ai = yes - } - } - scope:liege = { - add_character_modifier = { - modifier = ach_cautious_spender_modifier - years = 10 - } - } - } - - stress_impact = { - lazy = minor_stress_impact_gain - impatient = minor_stress_impact_gain - patient = minor_stress_impact_loss - diligent = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = -1 - ai_greed = -0.5 - } - } - } - - # You're the king, go crazy bro! - option = { - name = ach_yearly_events.1001.c - - add_character_modifier = { - modifier = ach_spending_advice_modifier - years = 10 - } - - if = { - limit = { - scope:liege = { - is_ai = yes - } - } - scope:liege = { - add_character_modifier = { - modifier = ach_extravagant_spender_modifier - years = 10 - } - } - } - - stress_impact = { - lazy = minor_stress_impact_gain - impatient = minor_stress_impact_gain - patient = minor_stress_impact_loss - diligent = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 1 - ai_greed = 0.5 - } - } - } - - # Perhaps a balanced approach? - option = { - name = ach_yearly_events.1001.d - - duel = { - skill = diplomacy - target = scope:liege - - 50 = { #Your liege is impressed - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - desc = ach_yearly_events.1001.d.success - modifier = { - add = 20 - scope:liege = { - has_trait = ambitious - } - } - send_interface_toast = { - title = ach_yearly_events.1001.d.success - left_icon = root - right_icon = scope:liege - - add_prestige = medium_prestige_gain - - add_character_modifier = { - modifier = ach_budgeting_mentor_modifier - years = 10 - } - - if = { - limit = { - scope:liege = { - is_ai = yes - } - } - scope:liege = { - add_character_modifier = { - modifier = ach_balanced_budget_modifier - years = 10 - } - } - } - } - } - 50 = { #Your liege is unimpressed - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - desc = ach_yearly_events.1001.d.failure - modifier = { - add = 10 - scope:liege = { - has_trait = content - } - } - send_interface_toast = { - title = ach_yearly_events.1001.d.failure - left_icon = root - right_icon = scope:liege - - add_prestige = minor_prestige_loss - - add_character_modifier = { - modifier = ach_fence_sitter_modifier - years = 10 - } - } - } - } - - stress_impact = { - content = minor_stress_impact_loss - ambitious = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = -1 - } - } - } -} - -scripted_trigger ach_yearly_events_1002_non_joined_trigger = { - NOR = { - scope:faction = { - any_faction_member = { - this = scope:temp_vassal - } - } - this = root - } - can_join_faction = scope:faction - is_incapable = no - opinion = { - target = liege - value <= 30 - } - is_ai = yes -} - -#You're the Chancellor and your liege has a faction -ach_yearly_events.1002 = { - type = character_event - title = ach_yearly_events.1002.t - desc = ach_yearly_events.1002.desc - - theme = diplomacy - override_background = { - reference = ep3_relaxing_tent - } - left_portrait = { - character = scope:unjoined_vassal - animation = scheme - } - right_portrait = { - character = scope:faction_member - animation = bribing - } - lower_center_portrait = scope:liege - - cooldown = { years = 10 } - - trigger = { - is_independent_ruler = no - liege = { - cp:councillor_chancellor ?= { - this = root - } - any_targeting_faction = { - NOT = { - any_faction_member = { - this = root - } - } - any_faction_member = { - count >= 2 - } - any_faction_member = { - is_ai = yes - is_a_faction_leader = no - } - save_temporary_scope_as = temp_faction - } - any_vassal = { - save_temporary_scope_as = temp_vassal - NOR = { - scope:temp_faction = { - any_faction_member = { - this = scope:temp_vassal - } - } - this = root - } - can_join_faction = scope:temp_faction - is_incapable = no - opinion = { - target = liege - value <= 30 - } - is_ai = yes - } - NOT = { - has_character_flag = had_ach_yearly_events_1002 - } - } - basic_is_valid_for_yearly_events_trigger = yes - } - immediate = { - liege = { - save_scope_as = liege - add_character_flag = { - flag = had_ach_yearly_events_1002 - years = 10 - } - random_targeting_faction = { - limit = { - NOT = { - any_faction_member = { - this = root - } - } - any_faction_member = { - count >= 2 - } - } - save_scope_as = faction - random_faction_member = { - limit = { - is_a_faction_leader = no - is_ai = yes - } - save_scope_as = faction_member - } - } - random_vassal = { - limit = { - scope:faction = { - OR = { - faction_is_type = independence_faction - faction_is_type = nation_fracturing_faction - } - } - save_temporary_scope_as = temp_vassal - primary_title = { - NOT = { - target_is_de_jure_liege_or_above = scope:liege.primary_title - } - } - is_powerful_vassal_of = scope:liege - ach_yearly_events_1002_non_joined_trigger = yes - opinion = { - target = liege - value < 0 - } - } - alternative_limit = { - scope:faction = { - OR = { - faction_is_type = independence_faction - faction_is_type = nation_fracturing_faction - } - } - save_temporary_scope_as = temp_vassal - primary_title = { - NOT = { - target_is_de_jure_liege_or_above = scope:liege.primary_title - } - } - is_powerful_vassal_of = scope:liege - ach_yearly_events_1002_non_joined_trigger = yes - } - alternative_limit = { - scope:faction = { - OR = { - faction_is_type = independence_faction - faction_is_type = nation_fracturing_faction - } - } - save_temporary_scope_as = temp_vassal - primary_title = { - NOT = { - target_is_de_jure_liege_or_above = scope:liege.primary_title - } - } - ach_yearly_events_1002_non_joined_trigger = yes - opinion = { - target = liege - value < 0 - } - } - alternative_limit = { - scope:faction = { - OR = { - faction_is_type = independence_faction - faction_is_type = nation_fracturing_faction - } - } - save_temporary_scope_as = temp_vassal - primary_title = { - NOT = { - target_is_de_jure_liege_or_above = scope:liege.primary_title - } - } - ach_yearly_events_1002_non_joined_trigger = yes - } - alternative_limit = { - save_temporary_scope_as = temp_vassal - is_powerful_vassal_of = scope:liege - opinion = { - target = liege - value <= -50 - } - ach_yearly_events_1002_non_joined_trigger = yes - } - alternative_limit = { - save_temporary_scope_as = temp_vassal - is_powerful_vassal_of = scope:liege - opinion = { - target = liege - value < 0 - } - ach_yearly_events_1002_non_joined_trigger = yes - } - alternative_limit = { - save_temporary_scope_as = temp_vassal - opinion = { - target = liege - value <= -50 - } - ach_yearly_events_1002_non_joined_trigger = yes - } - alternative_limit = { - save_temporary_scope_as = temp_vassal - ach_yearly_events_1002_non_joined_trigger = yes - opinion = { - target = liege - value < 0 - } - } - alternative_limit = { - save_temporary_scope_as = temp_vassal - ach_yearly_events_1002_non_joined_trigger = yes - } - save_scope_as = unjoined_vassal - } - } - } - #You're such a seasoned chancellor, you can stop other players from joining - option = { - name = ach_yearly_events.1002.a - trigger = { diplomacy >= very_high_skill_rating } - add_diplomacy_lifestyle_xp = medium_lifestyle_xp - scope:liege = { - send_interface_message = { - type = msg_chancellor_task_good - title = chancellor_isolates_factions_title - desc = chancellor_isolates_factions_desc - left_icon = root - - add_character_modifier = { - modifier = ach_chancellor_isolating_factions_modifier - years = 5 - } - scope:unjoined_vassal = { - add_opinion = { - modifier = loyalty_opinion - target = scope:liege - opinion = 40 - } - } - } - } - stress_impact = { - impatient = minor_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = 0.5 - ai_energy = -0.5 - } - modifier = { - add = -50 - has_trait = impatient - } - } - } - #Try to stop other characters from joining - option = { - name = ach_yearly_events.1002.b - trigger = { diplomacy < very_high_skill_rating } - add_diplomacy_lifestyle_xp = medium_lifestyle_xp - duel = { - skill = diplomacy - value = medium_skill_rating - 50 = { #You reorganize the administration and plan for the future - desc = ach_yearly_events.1002.b.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - - send_interface_toast = { - type = event_toast_effect_good - title = ach_yearly_events.1002.b.success - left_icon = root - right_icon = scope:liege - - scope:liege = { - send_interface_message = { - type = msg_chancellor_task_good - title = chancellor_isolates_factions_title - desc = chancellor_isolates_factions_desc - left_icon = root - - add_character_modifier = { - modifier = ach_chancellor_isolating_factions_modifier - years = 5 - } - scope:unjoined_vassal = { - add_opinion = { - modifier = loyalty_opinion - target = scope:liege - opinion = 40 - } - } - } - } - } - } - 50 = { #You fail so bad you drive the character into the faction - desc = ach_yearly_events.1002.b.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - send_interface_toast = { - type = event_toast_effect_bad - title = ach_yearly_events.1002.b.failure - left_icon = root - right_icon = scope:liege - add_stress = minor_stress_gain - scope:unjoined_vassal = { - join_faction = scope:faction - } - } - } - } - stress_impact = { - impatient = minor_stress_impact_gain - } - ai_chance = { - base = 50 - ai_value_modifier = { - ai_sociability = 0.5 - ai_energy = -0.5 - } - modifier = { - add = -50 - has_trait = impatient - } - modifier = { - add = 50 - diplomacy > high_skill_rating - } - modifier = { - add = 50 - diplomacy >= extremely_high_skill_rating - } - modifier = { - add = -50 - diplomacy < medium_skill_rating - } - modifier = { - factor = 0 - diplomacy <= low_skill_rating - } - } - } - #They have a point... - option = { - name = ach_yearly_events.1002.c - flavor = ach_yearly_events.1002.c.flavor - trigger = { - can_join_faction = scope:faction - OR = { - NOT = { - scope:faction = { - OR = { - faction_is_type = independence_faction - faction_is_type = nation_fracturing_faction - } - } - } - OR = { - has_trait = ambitious - has_trait = greedy - has_trait = arrogant - has_trait = arbitrary - has_trait = fickle - has_trait = eccentric - has_trait = disloyal - primary_title = { - NOT = { - target_is_de_jure_liege_or_above = scope:liege.primary_title - } - } - } - } - } - add_internal_flag = dangerous - join_faction = scope:faction - scope:unjoined_vassal = { - join_faction = scope:faction - } - reverse_add_opinion = { - modifier = betrayal_opinion - target = scope:liege - opinion = -30 - } - - add_joined_faction_discontent = 20 - stress_impact = { - arrogant = miniscule_stress_impact_loss - loyal = minor_stress_impact_gain - trusting = medium_stress_impact_gain - just = medium_stress_impact_gain - content = medium_stress_impact_gain - humble = major_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = -1 - ai_greed = 1 - } - modifier = { - add = -75 - scope:faction = { - OR = { - faction_is_type = independence_faction - faction_is_type = nation_fracturing_faction - } - } - primary_title = { - target_is_de_jure_liege_or_above = scope:liege.primary_title - } - } - modifier = { - add = 100 - scope:faction = { - OR = { - faction_is_type = independence_faction - faction_is_type = nation_fracturing_faction - } - } - primary_title = { - NOT = { - target_is_de_jure_liege_or_above = scope:liege.primary_title - } - } - } - modifier = { - add = 50 - has_trait = disloyal - } - modifier = { - add = -50 - has_trait = loyal - } - modifier = { - factor = 0 - OR = { - has_trait = trusting - has_trait = just - has_trait = content - has_trait = humble - } - } - } - } - #Remove existing faction member - option = { - name = ach_yearly_events.1002.d - flavor = ach_yearly_events.1002.d.flavor - reverse_add_opinion = { - target = scope:liege - modifier = grateful_opinion - opinion = 30 - } - scope:liege = { - send_interface_message = { - type = msg_chancellor_task_good - title = chancellor_removes_faction_member_title - desc = chancellor_removes_faction_member_desc - left_icon = root - - scope:faction_member = { - leave_faction = scope:faction - } - } - } - #Modifier that applies effect which makes vassals less likely to join factions - if = { - limit = { - scope:faction = { - any_faction_member = { - NOT = { - this = scope:faction_member - } - } - } - } - scope:faction = { - every_faction_member = { - custom = custom.every_scope_faction_member - limit = { - NOT = { - this = scope:faction_member - } - } - add_opinion = { - modifier = angry_opinion - target = root - opinion = -20 - } - } - } - } - stress_impact = { - patient = minor_stress_impact_gain - craven = minor_stress_impact_gain - gregarious = minor_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = -0.5 - ai_energy = 0.5 - } - modifier = { - add = -50 - OR = { - has_trait = patient - has_trait = craven - has_trait = gregarious - } - } - } - } -} - -#You're the marshal and your liege just lost a big battle -ach_yearly_events.1003 = { - type = character_event - title = ach_yearly_events.1003.t - desc = ach_yearly_events.1003.desc - - theme = martial - override_background = { - reference = battlefield - } - override_effect_2d = { - trigger = { - NOR = { - scope:battle_province = { - terrain = desert - } - scope:battle_province = { - terrain = desert_mountains - } - scope:battle_province = { - terrain = drylands - } - scope:battle_province = { - terrain = oasis - } - scope:battle_province = { - location_has_harsh_winter_trigger = yes - } - } - } - reference = rain - } - left_portrait = { - character = scope:commander - triggered_animation = { - trigger = { - scope:commander = { - NOT = { this = scope:liege } - } - } - animation = sword_yield_start - } - triggered_animation = { - trigger = { - scope:commander = { - this = scope:liege - } - } - animation = war_over_loss - } - } - lower_right_portrait = scope:foe - lower_left_portrait = scope:show_liege - - trigger = { - basic_is_valid_for_yearly_events_trigger = yes - is_at_war = no - liege = { is_landed = yes } - has_council_position = councillor_marshal - } - immediate = { - liege ?= { - save_scope_as = liege - add_character_flag = { - flag = had_ach_yearly_events_1003 - years = 10 - } - } - if = { - limit = { - OR = { - NOT = { - exists = scope:commander - } - scope:commander = scope:liege - scope:commander = root - } - } - liege = { - save_scope_as = commander - } - } - else = { - liege = { - save_scope_as = show_liege - } - } - } - cooldown = { years = 10 } - - #I AM GOOD MARSHAL AND CAN SORT THIS - option = { - name = ach_yearly_events.1003.a - trigger = { - martial >= very_high_skill_rating - } - add_martial_lifestyle_xp = medium_lifestyle_xp - scope:liege = { - send_interface_message = { - type = msg_marshal_task_good - title = marshal_aids_troop_recovery_title - desc = marshal_aids_troop_recovery_desc - left_icon = root - add_character_modifier = { - modifier = ach_marshal_reconstituting_army_modifier - years = 2 - } - } - } - stress_impact = { - lazy = minor_stress_impact_gain - fickle = minor_stress_impact_gain - } - ai_chance = { - base = 200 - ai_value_modifier = { - ai_energy = 1 - ai_honor = 0.5 - ai_rationality = 0.5 - } - modifier = { - opinion = { - target = liege - value < -50 - } - add = -50 - } - modifier = { - opinion = { - target = liege - value < 0 - } - add = -25 - } - modifier = { - opinion = { - target = liege - value >= 50 - } - add = 25 - } - modifier = { - opinion = { - target = liege - value > 75 - } - add = 50 - } - modifier = { - OR = { - has_trait = lazy - has_trait = fickle - } - add = -50 - } - modifier = { - opinion = { - target = liege - value < -80 - } - factor = 0 - } - } - } - #I AM HONORABLE AND WILL FIGHT TOO - option = { - name = ach_yearly_events.1003.b - save_scope_as = marshal - scope:liege = { - send_interface_message = { - type = msg_marshal_task_good - title = marshal_joins_war_title - desc = marshal_joins_war_desc - left_icon = root - scope:liege_war = { - if = { - limit = { - primary_attacker = scope:liege - } - add_attacker = root - } - else = { - add_defender = root - } - } - } - every_vassal = { - custom = custom.every_fellow_vassal - limit = { - NOT = { - this = root - } - } - add_opinion = { - target = root - modifier = impressed_opinion - opinion = 10 - } - } - } - reverse_add_opinion = { - modifier = grateful_opinion - target = scope:liege - opinion = 25 - } - - if = { - limit = { - OR = { - NOT = { has_trait = loyal } - AND = { - NOT = { has_trait = unyielding_defender } - scope:liege_war = { - primary_defender = scope:liege - } - } - AND = { - NOT = { has_trait = aggressive_attacker } - scope:liege_war = { - primary_attacker = scope:liege - } - } - } - } - random_list = { - 10 = { - trigger = { - NOT = { has_trait = unyielding_defender } - scope:liege_war = { - primary_defender = scope:liege - } - } - add_trait = unyielding_defender - } - 10 = { - trigger = { - NOT = { has_trait = aggressive_attacker } - scope:liege_war = { - primary_attacker = scope:liege - } - } - add_trait = aggressive_attacker - } - 20 = { - trigger = { - NOT = { has_trait = loyal } - } - add_trait = loyal - } - 70 = {} - } - } - else = { - add_prestige = minor_prestige_gain - } - stress_impact = { - arbitrary = major_stress_impact_gain - craven = major_stress_impact_gain - lazy = medium_stress_impact_gain - calm = minor_stress_impact_gain - paranoid = minor_stress_impact_gain - fickle = minor_stress_impact_gain - } - ai_chance = { - base = 0 - ai_value_modifier = { - ai_honor = 1 - ai_compassion = 1 - ai_boldness = 1 - } - modifier = { - opinion = { - target = liege - value < -50 - } - add = -100 - } - modifier = { - opinion = { - target = liege - value < 0 - } - add = -50 - } - modifier = { - opinion = { - target = liege - value >= 50 - } - add = 50 - } - modifier = { - opinion = { - target = liege - value >= 75 - } - add = 50 - } - modifier = { - OR = { - has_trait = calm - has_trait = paranoid - has_trait = fickle - } - add = -50 - } - modifier = { - OR = { - has_trait = arbitrary - has_trait = craven - has_trait = lazy - opinion = { - target = liege - value < -50 - } - } - } - } - } - #I'll try to help him recover... although I'm not great at marshaling - option = { - name = ach_yearly_events.1003.c - trigger = { - martial < very_high_skill_rating - } - show_unlock_reason = no - add_martial_lifestyle_xp = medium_lifestyle_xp - duel = { - skill = martial - value = medium_skill_rating - 50 = { #The army is restored - desc = ach_yearly_events.1003.c.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - send_interface_toast = { - type = event_toast_effect_good - title = ach_yearly_events.1003.c.success - left_icon = root - right_icon = scope:liege - scope:liege = { - send_interface_message = { - type = msg_marshal_task_good - title = marshal_aids_troop_recovery_title - desc = marshal_aids_troop_recovery_desc - left_icon = root - add_character_modifier = { - modifier = ach_marshal_reconstituting_army_modifier - years = 2 - } - } - } - } - } - 50 = { #Everything remains in shambles - desc = ach_yearly_events.1003.c.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - send_interface_toast = { - type = event_toast_effect_bad - title = ach_yearly_events.1003.c.failure - left_icon = root - right_icon = scope:liege - add_prestige = minor_prestige_loss - } - } - } - stress_impact = { - lazy = minor_stress_impact_gain - fickle = minor_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 1 - ai_honor = 0.5 - ai_rationality = 0.5 - } - modifier = { - opinion = { - target = liege - value < -50 - } - add = -50 - } - modifier = { - opinion = { - target = liege - value < 0 - } - add = -25 - } - modifier = { - opinion = { - target = liege - value >= 50 - } - add = 25 - } - modifier = { - opinion = { - target = liege - value > 75 - } - add = 50 - } - modifier = { - OR = { - has_trait = lazy - has_trait = fickle - } - add = -50 - } - modifier = { - opinion = { - target = liege - value < -80 - } - factor = 0 - } - } - } - #My liege deserves this mess and so do his terrible troops - option = { - name = ach_yearly_events.1003.d - flavor = ach_yearly_events.1003.d.flavor - add_dread = minor_dread_gain - reverse_add_opinion = { - modifier = frustrated_opinion - target = scope:liege - opinion = -10 - } - stress_impact = { - compassionate = medium_stress_impact_gain - generous = minor_stress_impact_gain - diligent = medium_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = -1 - ai_energy = -1 - } - modifier = { - add = -50 - OR = { - has_trait = generous - } - } - modifier = { - factor = 0 - OR = { - has_trait = diligent - has_trait = compassionate - } - } - } - } - after = { - if = { - limit = { - exists = scope:foe - is_at_war_with = scope:foe - } - scope:foe = { - send_interface_message = { - type = msg_marshal_task_bad - title = marshal_joins_war_title_foe - desc = marshal_joins_war_desc_foe - left_icon = root - } - } - } - } -} - -#You're the steward and your liege is broke -ach_yearly_events.1004 = { - type = character_event - title = ach_yearly_events.1004.t - desc = { - desc = ach_yearly_events.1004.desc - first_valid = { - triggered_desc = { - trigger = { - scope:liege = { - OR = { - has_trait = humble - has_trait = patient - has_trait = temperate - has_trait = compassionate - has_trait = calm - has_trait = forgiving - } - } - } - desc = ach_yearly_events.1004.desc_end - } - desc = ach_yearly_events.1004.desc_harsh - } - } - - theme = stewardship - override_background = { - trigger = { - liege = { - culture = { - OR = { - has_graphical_mediterranean_culture_group_trigger = yes - has_graphical_mena_culture_group_trigger = yes - has_graphical_african_culture_group_trigger = yes - } - } - NOT = { government_has_flag = government_is_tribal } - } - } - reference = ep3_city_gate - } - override_background = { - trigger = { - liege = { - OR = { - culture = { - NOR = { - has_graphical_mediterranean_culture_group_trigger = yes - has_graphical_mena_culture_group_trigger = yes - has_graphical_african_culture_group_trigger = yes - } - } - government_has_flag = government_is_tribal - } - } - - } - reference = market - } - left_portrait = { - character = root - animation = debating - camera = camera_event_left_away_3_4 - } - right_portrait = { - character = scope:liege - animation = jockey_wave - camera = camera_event_horse_right - } - - cooldown = { years = 10 } - - trigger = { - is_independent_ruler = no - liege ?= { - age >= 10 - cp:councillor_steward ?= { - this = root - } - - OR = { - gold < 0 - AND = { - monthly_character_income < 0 - is_at_war = no - gold <= medium_gold_value - } - } - NOT = { - has_character_flag = had_ach_yearly_1004 - } - basic_is_available_ai = yes - NOT = { exists = involved_activity } - is_travelling = no - } - basic_is_valid_for_yearly_events_trigger = yes - } - immediate = { - liege = { - save_scope_as = liege - add_character_flag = { - flag = had_ach_yearly_1004 - years = 10 - } - } - } - #A quick cash injection, by any means! - option = { - name = ach_yearly_events.1004.a - flavor = ach_yearly_events.1004.a.flavor - trigger = { - liege = { - any_powerful_vassal = { - is_ai = yes - NOT = { this = root } - NOT = { is_at_war_with = scope:liege } - } - } - } - reverse_add_opinion = { - target = scope:liege - modifier = grateful_opinion - opinion = 40 - } - pay_short_term_gold = { - target = scope:liege - gold = minor_gold_value - } - scope:liege = { - every_powerful_vassal = { - custom = custom.every_liege_lending_vassal - limit = { - is_ai = yes - NOT = { this = root } - NOT = { is_at_war_with = scope:liege } - } - pay_short_term_gold = { - target = scope:liege - gold = scope:liege.minor_gold_value - } - add_opinion = { - target = root - modifier = irritated_opinion - opinion = -25 - } - } - } - hidden_effect = { - scope:liege = { - send_interface_message = { - type = msg_steward_task_good - title = steward_gathers_emergency_tithe_title - desc = steward_gathers_emergency_tithe_desc - left_icon = root - - show_as_tooltip = { - add_gold = major_gold_value - } - } - } - } - stress_impact = { - greedy = medium_stress_impact_gain - paranoid = medium_stress_impact_gain - arrogant = major_stress_impact_gain - vengeful = minor_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -1 - ai_compassion = 1 - } - modifier = { - add = -50 - opinion = { - target = scope:liege - value < 0 - } - } - modifier = { - add = 50 - opinion = { - target = scope:liege - value > 50 - } - } - modifier = { - add = -50 - OR = { - gold < major_gold_value - has_trait = vengeful - } - } - modifier = { - factor = 0 - OR = { - gold < medium_gold_value - opinion = { - target = scope:liege - value < -50 - } - has_trait = greedy - has_trait = paranoid - has_trait = arrogant - } - } - } - } - #My liege needs steady income coming in, not cash now - option = { - name = ach_yearly_events.1004.b - trigger = { - stewardship < very_high_skill_rating - } - add_stewardship_lifestyle_xp = medium_lifestyle_xp - duel = { - skill = stewardship - value = average_skill_rating - 50 = { #You reorganize the administration and plan for the future - desc = ach_yearly_events.1004.b.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - send_interface_toast = { - type = event_toast_effect_good - title = ach_yearly_events.1004.b.success - left_icon = root - right_icon = scope:liege - scope:liege = { - #Only shown because of custom loc making it look right - show_as_tooltip = { - every_held_title = { - custom = custom.every_liege_domain_county - limit = { - tier = tier_county - NOT = { - any_county_province = { - is_occupied = yes - } - } - } - add_county_modifier = { - modifier = ach_stewardship_bankruptcy_modifier - years = 10 - } - } - } - send_interface_message = { - type = msg_steward_task_good - title = steward_aids_financial_recovery_title - desc = steward_aids_financial_recovery_desc - left_icon = root - - #hidden because of custom loc making it look right - hidden_effect = { - every_held_title = { - custom = custom.every_domain_county - limit = { - tier = tier_county - NOT = { - any_county_province = { - is_occupied = yes - } - } - } - add_county_modifier = { - modifier = ach_stewardship_bankruptcy_modifier - years = 10 - } - } - } - } - } - } - } - 50 = { #You fail so bad you doubt your abilities - desc = ach_yearly_events.1004.b.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - send_interface_toast = { - type = event_toast_effect_bad - title = ach_yearly_events.1004.b.failure - left_icon = root - right_icon = scope:liege - - add_stress = medium_stress_gain - } - } - } - stress_impact = { - diligent = miniscule_stress_impact_loss - lazy = medium_stress_impact_gain - impatient = major_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 1 - ai_energy = 1 - } - modifier = { - add = -50 - opinion = { - target = scope:liege - value < -50 - } - } - modifier = { - add = -25 - opinion = { - target = scope:liege - value < 0 - } - } - modifier = { - add = 25 - opinion = { - target = scope:liege - value > 50 - } - } - modifier = { - add = -50 - stewardship <= average_skill_rating - } - modifier = { - factor = 0 - OR = { - stewardship < low_skill_rating - has_trait = lazy - has_trait = impatient - } - } - } - } - #I am the god-tier steward that can easily reform the realm to get more tax - option = { - name = ach_yearly_events.1004.c - trigger = { - stewardship >= very_high_skill_rating - } - add_stewardship_lifestyle_xp = medium_lifestyle_xp - scope:liege = { - #Only shown because of custom loc making it look right - show_as_tooltip = { - every_held_title = { - custom = custom.every_liege_domain_county - limit = { - tier = tier_county - NOT = { - any_county_province = { - is_occupied = yes - } - } - } - add_county_modifier = { - modifier = ach_stewardship_bankruptcy_modifier - years = 10 - } - } - } - - send_interface_message = { - type = msg_steward_task_good - title = steward_aids_financial_recovery_title - desc = steward_aids_financial_recovery_desc - left_icon = root - #hidden because of custom loc making it look right - hidden_effect = { - every_held_title = { - custom = custom.every_domain_county - limit = { - tier = tier_county - NOT = { - any_county_province = { - is_occupied = yes - } - } - } - add_county_modifier = { - modifier = ach_stewardship_bankruptcy_modifier - years = 10 - } - } - } - - } - } - stress_impact = { - diligent = miniscule_stress_impact_loss - lazy = medium_stress_impact_gain - impatient = major_stress_impact_gain - } - ai_chance = { - base = 150 - ai_value_modifier = { - ai_rationality = 1 - ai_energy = 1 - } - modifier = { - add = -50 - opinion = { - target = scope:liege - value < -50 - } - } - modifier = { - add = -25 - opinion = { - target = scope:liege - value < 0 - } - } - modifier = { - add = 25 - opinion = { - target = scope:liege - value > 50 - } - } - modifier = { - factor = 0 - OR = { - stewardship < low_skill_rating - has_trait = lazy - has_trait = impatient - } - } - } - } - #I can just welcome his creditors and the impoverished into my domain - option = { - name = ach_yearly_events.1004.d - flavor = ach_yearly_events.1004.d.flavor - capital_county = { - add_county_modifier = { - modifier = ach_welcoming_lieges_creditors_modifier - years = 10 - } - } - reverse_add_opinion = { - target = scope:liege - modifier = insult_opinion - opinion = -25 - } - stress_impact = { - forgiving = medium_stress_impact_gain - generous = major_stress_impact_gain - diligent = medium_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = 1 - ai_greed = 1 - } - modifier = { - add = -50 - opinion = { - target = scope:liege - value > 50 - } - } - modifier = { - add = -25 - opinion = { - target = scope:liege - value > 0 - } - } - modifier = { - add = 50 - opinion = { - target = scope:liege - value < -50 - } - } - modifier = { - factor = 0 - OR = { - has_trait = forgiving - has_trait = generous - has_trait = diligent - } - } - } - } -} - -ach_yearly_events.1005 = { #Coronation call to action if player forgetii - type = character_event - - title = ach_yearly_events.1005.t - desc = ach_yearly_events.1005.desc - - theme = coronation - - left_portrait = { - character = root - animation = personality_bold - } - - trigger = { - has_ach_dlc_trigger = yes - is_ai = no - primary_title.tier >= tier_kingdom - has_realm_law = uncrowned - NOR = { - has_character_flag = had_coronation_reminder - any_sponsored_inspiration = { has_inspiration_type = smith_inspiration } - } - is_available_adult = yes - } - - on_trigger_fail = { - if = { - limit = { - primary_title.tier >= tier_kingdom - has_realm_law = uncrowned - NOT = { has_character_flag = had_coronation_reminder } - } - trigger_event = { - id = ach_yearly_events.1005 - years = 1 - } - } - } - - immediate = { - add_character_flag = had_coronation_reminder - if = { - limit = { - exists = cp:councillor_chancellor - } - cp:councillor_chancellor = { save_scope_as = messenger } - } - else_if = { - limit = { - any_councillor = { - is_kurultai_trigger = yes - } - } - random_councillor = { - limit = { - is_kurultai_trigger = yes - } - save_scope_as = messenger - } - } - else = { - random_vassal = { save_scope_as = messenger } - } - } - - option = { #Get me a crown worthy of GetPrimaryTitle.GetName! - name = ach_yearly_events.1005.a - trigger = { coronation_has_proper_artifact_trigger = no } - custom_tooltip = court_maintenance.0011.coronation.tooltip - create_proper_coronation_artifact = yes - } - - option = { #Ye, let's have it - name = ach_yearly_events.1005.b - trigger = { coronation_has_proper_artifact_trigger = yes } - custom_tooltip = fund_inspiration.1001.b.coronation_ready - open_view_data = { - view = activity_list_detail_host_window - data = activity_type:activity_coronation - player = root - } - } - - option = { - name = ach_yearly_events.1005.c - custom_tooltip = court_maintenance.0011.b.tooltip.ach - } - -} - -scripted_trigger ach_yearly_events_1010_fawner_trigger = { - is_alive = yes - is_imprisoned = no - is_incapable = no - has_contagious_deadly_disease_trigger = no - is_adult = yes - NOT = { - has_any_bad_relationship_with_character_trigger = { CHARACTER = root } - } - opinion = { - target = root - value > 0 - } - NOR = { - is_consort_of = root - is_close_family_of = root - } -} - -#Emperor+ becoming uncrowned again -ach_yearly_events.1010 = { #Coronation call to action if player forgetii - type = character_event - - title = ach_yearly_events.1010.t - desc = { - desc = ach_yearly_events.1010.desc - first_valid = { - triggered_desc = { - trigger = { - exists = scope:vassal_title_2 - } - desc = ach_yearly_events.1010.desc_vassals - } - desc = ach_yearly_events.1010.desc_no_vassals - } - first_valid = { - triggered_desc = { - trigger = { - coronation_proper_artifact_regalia_trigger = yes - } - desc = ach_yearly_events.1010.desc_outro_regalia - } - desc = ach_yearly_events.1010.desc_outro_crown - } - } - window = big_event_window - theme = coronation - - override_background = { - reference = holy_site_unique - } - left_portrait = { - character = scope:fawner_2 - animation = throne_room_cheer_1 - camera = camera_event_left_away_3_4 - } - center_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_trait = eccentric - has_trait = lunatic_1 - has_trait = lunatic_genetic - ai_rationality <= high_negative_ai_value - } - ai_greed > low_positive_ai_value - } - animation = manic - } - triggered_animation = { - trigger = { - ai_compassion > low_positive_ai_value - NOR = { - has_trait = depressed - has_trait = temperate - has_trait = cynical - has_trait = callous - has_trait = sadistic - has_trait = vengeful - has_trait = just - has_trait = arrogant - has_trait = ambitious - has_trait = paranoid - dread >= 20 - } - } - animation = personality_compassionate - } - triggered_animation = { - trigger = { - has_lifestyle = martial_lifestyle - } - animation = marshal - } - animation = war_over_win - } - right_portrait = { - character = scope:fawner - animation = throne_room_cheer_2 - camera = camera_event_right_away_3_4 - } - override_effect_2d = { - reference = legend_glow - } - - immediate = { - #Sorry dawg - show_as_tooltip = { add_realm_law = uncrowned } - custom_tooltip = ach_coronation_suggestion_tt - primary_title = { - save_scope_as = new_title - random_direct_de_jure_vassal_title = { - limit = { - OR = { - holder.top_liege = root - holder.suzerain = root - NOR = { - exists = holder - this = scope:title - } - } - } - save_scope_as = vassal_title_1 - } - random_direct_de_jure_vassal_title = { - limit = { - OR = { - holder.top_liege = root - holder.suzerain = root - NOR = { - exists = holder - this = scope:title - } - } - NOT = { - this = scope:vassal_title_1 - } - } - save_scope_as = vassal_title_2 - } - } - ordered_councillor = { - order_by = "opinion(root)" - limit = { - ach_yearly_events_1010_fawner_trigger = yes - NOR = { - is_at_war_with = root - is_a_faction_member = yes - } - } - save_scope_as = fawner - } - if = { - limit = { - NOT = { - exists = scope:fawner - } - } - ordered_vassal = { - order_by = "opinion(root)" - limit = { - ach_yearly_events_1010_fawner_trigger = yes - NOR = { - is_at_war_with = root - is_a_faction_member = yes - } - } - save_scope_as = fawner - } - } - if = { - limit = { - NOT = { - exists = scope:fawner - } - } - ordered_courtier = { - order_by = "opinion(root)" - limit = { - ach_yearly_events_1010_fawner_trigger = yes - } - alternative_limit = { - is_alive = yes - is_imprisoned = no - age >= 12 - NOT = { - has_any_bad_relationship_with_character_trigger = { CHARACTER = root } - } - } - save_scope_as = fawner - } - } - if = { - limit = { - NOT = { - exists = scope:fawner - } - } - ordered_courtier = { - order_by = "opinion(root)" - save_scope_as = fawner - } - } - if = { - limit = { - NOT = { - exists = scope:fawner - } - } - ordered_pool_guest = { - order_by = "opinion(root)" - limit = { - is_alive = yes - is_imprisoned = no - age >= 12 - NOT = { - has_any_bad_relationship_with_character_trigger = { CHARACTER = root } - } - } - save_scope_as = fawner - } - } - #SAVE ANOTHER - ordered_councillor = { - order_by = "opinion(root)" - limit = { - ach_yearly_events_1010_fawner_trigger = yes - NOR = { - is_at_war_with = root - is_a_faction_member = yes - this = scope:fawner - } - } - save_scope_as = fawner_2 - } - if = { - limit = { - NOT = { - exists = scope:fawner_2 - } - } - ordered_vassal = { - order_by = "opinion(root)" - limit = { - ach_yearly_events_1010_fawner_trigger = yes - NOR = { - is_at_war_with = root - is_a_faction_member = yes - this = scope:fawner - } - } - save_scope_as = fawner_2 - } - } - if = { - limit = { - NOT = { - exists = scope:fawner_2 - } - } - ordered_courtier = { - order_by = "opinion(root)" - limit = { - ach_yearly_events_1010_fawner_trigger = yes - NOT = { - this = scope:fawner - } - } - alternative_limit = { - is_alive = yes - is_imprisoned = no - age >= 12 - NOR = { - has_any_bad_relationship_with_character_trigger = { CHARACTER = root } - this = scope:fawner - } - } - save_scope_as = fawner_2 - } - } - if = { - limit = { - NOT = { - exists = scope:fawner_2 - } - } - ordered_pool_guest = { - order_by = "opinion(root)" - limit = { - is_alive = yes - is_imprisoned = no - age >= 12 - NOT = { - has_any_bad_relationship_with_character_trigger = { CHARACTER = root } - this = scope:fawner - } - } - save_scope_as = fawner_2 - } - } - } - option = { - name = ach_yearly_events.1010.a - } -} diff --git a/events/dlc/bp1/bp1_filippa_yearly_events.txt b/events/dlc/bp1/bp1_filippa_yearly_events.txt deleted file mode 100644 index 01b80f39f..000000000 --- a/events/dlc/bp1/bp1_filippa_yearly_events.txt +++ /dev/null @@ -1,4763 +0,0 @@ -namespace = bp1_yearly -#### -# bp1_yearly.2020 - A consort attempts to influence you into changing your heir -# bp1_yearly.2030 - Mopey consort wants some guidance -# bp1_yearly.2040 - Two consorts are disagreeing -# bp1_yearly.2050 - Friendly consorts want to start a study circle -# bp1_yearly.2060 - Friendly consorts want to tutor other consort's child -# bp1_yearly.2070 - Childless older soulmate spouse ponders your relationship -# -#### - -################################################## -# #A spouse/consort attempts to influence you into changing your heir -# by Filippa Gannholm Kirsten -# #bp1_yearly.2020-2023 -################################################## -scripted_trigger bp1_yearly_2020_relevant_consort_trigger = { - is_available_ai_adult = yes - NOT = { has_relation_rival = root } - any_child = { - NOT = { - this = { is_primary_heir_of = root } - } - } - any_child = { - count > 0 - bp1_yearly_2020_relevant_child_trigger = yes - } -} - -scripted_trigger bp1_yearly_2020_relevant_child_trigger = { - age >= 13 - is_available_child = yes - NOT = { has_relation_rival = root } - trigger_if = { - limit = { - root = { - has_realm_law = male_only_law - } - } - is_male = yes - } - trigger_else_if = { - limit = { - root = { - has_realm_law = female_only_law - } - } - is_female = yes - } - trigger_else = { - always = yes - } -} - -scripted_effect bp1_yearly_2020_duel_effect = { - duel = { - skill = $SKILL$ - target = scope:bp1_yearly_2020_target - #They brute force kill the rival/nemesis - 25 = { - modifier = { - $SKILL$ = martial - factor = 0.5 - } - if = { - limit = { - scope:bp1_yearly_2020_influencing_partner = { intrigue > martial } - } - scope:bp1_yearly_2020_target = { - death = { - death_reason = death_murder - killer = scope:bp1_yearly_2020_influencing_partner - } - } - } - else = { - scope:bp1_yearly_2020_target = { - death = { - death_reason = death_defenestration - killer = scope:bp1_yearly_2020_influencing_partner - } - } - } - #Set designated heir-event - root = { - add_character_flag = bp1_yearly_2020_target_killed - trigger_event = { - id = bp1_yearly.2023 - days = { 2 5 } - } - } - } - #They are imprisoned by the rival/nemesis - 25 = { - #Needs to have a prison to imprison - trigger = { - scope:bp1_yearly_2020_target = { - is_landed = yes - } - } - #To block narration-breaking notification events - scope:bp1_yearly_2020_influencing_partner = { - add_character_flag = { - flag = bp1_yearly_2020_block_imprisonment_event - days = 1 - } - } - rightfully_imprison_character_effect = { TARGET = scope:bp1_yearly_2020_influencing_partner IMPRISONER = scope:bp1_yearly_2020_target } - #Imprisonment letter - root = { - trigger_event = { - id = bp1_yearly.2022 - days = 3 - } - } - } - #They are killed by the rival/nemesis - 25 = { - scope:bp1_yearly_2020_influencing_partner = { - death = { - death_reason = death_defenestration - killer = scope:bp1_yearly_2020_target - } - } - #Death letter - root = { - trigger_event = { - id = bp1_yearly.2022 - days = 3 - } - } - } - } -} - -scripted_effect bp1_yearly_2020_chance_of_murderous_partner_effect = { - $MURDEROUS_PARTNER$ = { - random_list = { - #Attempt to murder heir - 25 = { - trigger = { - OR = { - has_trait = vengeful - has_trait = deceitful - has_trait = sadistic - has_trait = ambitious - has_trait = wrathful - } - can_start_scheme = { - type = murder - target_character = root.player_heir - } - } - #If they killed our rival/nemesis we probably deserve some payback - modifier = { - has_character_flag = bp1_yearly_2020_target_killed - factor = 2 - } - #If we took the person option but didn't pick anyone, they can sort of understand - modifier = { - NOT = { exists = scope:bp1_yearly_2021_new_courtier } - factor = 1.25 - } - #MURDER VENGEANCE reeee - start_scheme = { - type = murder - target_character = root.player_heir - } - } - 50 = { - modifier = { - NOR = { - has_character_flag = bp1_yearly_2020_target_killed - exists = scope:bp1_yearly_2021_new_courtier - } - factor = 1.5 - } - #Do nothing - } - } - } -} - -scripted_trigger bp1_yearly_2020_landed_partners_parent_trigger = { - is_available_ai_adult = yes - is_at_war = no - is_landed = yes - opinion = { - target = scope:bp1_yearly_2020_influencing_partner - value >= 0 - } -} - -scripted_effect bp1_yearly_2020_rival_nemesis_progress_effect = { - $PERSON$ = { - save_temporary_scope_as = new_heir_parent - } - if = { - limit = { - OR = { - can_set_relation_potential_rival_trigger = { CHARACTER = scope:new_heir_parent } - can_set_relation_rival_trigger = { CHARACTER = scope:new_heir_parent } - } - } - progress_towards_rival_effect = { CHARACTER = scope:new_heir_parent OPINION = default_rival_opinion REASON = rival_succession_scheme } - } - else_if = { - limit = { - NOR = { - can_set_relation_potential_rival_trigger = { CHARACTER = scope:new_heir_parent } - can_set_relation_rival_trigger = { CHARACTER = scope:new_heir_parent } - } - can_set_relation_nemesis_trigger = { CHARACTER = scope:new_heir_parent } - } - set_relation_nemesis = { - reason = nemesis_heir_ousted - copy_reason = rival - target = scope:new_heir_parent - } - } -} - -scripted_effect bp1_yearly_2020_heir_change_opinions_effect = { - reverse_add_opinion = { - target = root.player_heir - modifier = primary_heir_replaced_opinion - opinion = -50 - } - #Apply opinion & rivalry to the appropriate opposite-sex biological parent - if = { - limit = { - scope:bp1_yearly_2020_influencing_partner = { is_female = yes } - } - if = { - limit = { - exists = root.player_heir.mother - root.player_heir.mother = { is_alive = yes } - } - root.player_heir.mother = { - add_opinion = { - target = root - modifier = parent_primary_heir_replaced_opinion - opinion = -50 - } - save_scope_as = bp1_yearly_2020_scorned_parent - if = { - limit = { - scope:bp1_yearly_2020_influencing_partner = { is_alive = yes } - } - bp1_yearly_2020_rival_nemesis_progress_effect = { PERSON = scope:bp1_yearly_2020_influencing_partner } - } - } - } - } - else_if = { - limit = { - exists = root.player_heir.father - root.player_heir.father = { is_alive = yes } - } - root.player_heir.father = { - add_opinion = { - target = root - modifier = parent_primary_heir_replaced_opinion - opinion = -50 - } - save_scope_as = bp1_yearly_2020_scorned_parent - if = { - limit = { - scope:bp1_yearly_2020_influencing_partner = { is_alive = yes } - } - bp1_yearly_2020_rival_nemesis_progress_effect = { PERSON = scope:bp1_yearly_2020_influencing_partner } - } - } - } - reverse_add_opinion = { - target = scope:bp1_yearly_2020_child_to_become_heir - modifier = pleased_opinion - opinion = 50 - } - if = { - limit = { - scope:bp1_yearly_2020_influencing_partner = { is_alive = yes } - } - reverse_add_opinion = { - target = scope:bp1_yearly_2020_influencing_partner - modifier = pleased_opinion - opinion = 50 - } - } -} - -bp1_yearly.2020 = { - type = character_event - content_source = dlc_006 - title = bp1_yearly.2020.t - desc = bp1_yearly.2020.desc - theme = family - override_background = { reference = council_chamber } - left_portrait = { - character = root - triggered_animation = { - trigger = { - has_trait = paranoid - } - animation = paranoia - } - animation = worry - } - right_portrait = { - character = scope:bp1_yearly_2020_influencing_partner - animation = personality_greedy - } - lower_center_portrait = { - character = scope:bp1_yearly_2020_child_to_become_heir - } - lower_right_portrait = { - trigger = { exists = scope:bp1_yearly_2020_influencing_partners_parent } - character = scope:bp1_yearly_2020_influencing_partners_parent - } - #Set up the cooldown - cooldown = { years = 5 } - trigger = { - #DLC check - has_bp1_dlc_trigger = yes - #Standard checks - is_available_adult = yes - is_ai = no - is_landed = yes - exists = root.primary_heir - #Do we have any marital-like relationships with partners whose child is not your primary heir - any_consort = { bp1_yearly_2020_relevant_consort_trigger = yes } - any_relation = { - type = rival # Includes nemeses - is_available_at_peace_adult = yes - highest_held_title_tier <= tier_county - } - } - weight_multiplier = { - base = 1 - modifier = { - any_consort = { - bp1_yearly_2020_relevant_consort_trigger = yes - has_trait = family_first - } - add = 2 - } - modifier = { - any_consort = { - bp1_yearly_2020_relevant_consort_trigger = yes - has_trait_rank = { - trait = education_intrigue - rank >= 3 - } - } - add = 2 - } - modifier = { - any_consort = { - bp1_yearly_2020_relevant_consort_trigger = yes - has_trait = schemer - } - add = 2 - } - modifier = { - any_consort = { - bp1_yearly_2020_relevant_consort_trigger = yes - has_trait = ambitious - } - add = 2 - } - modifier = { - any_consort = { - bp1_yearly_2020_relevant_consort_trigger = yes - short_term_gold >= root.massive_gold_value - } - add = 2 - } - } - immediate = { - #play_music_cue = "mx_cue_secret" - #Pick a relevant, weighted partner - random_consort = { - limit = { bp1_yearly_2020_relevant_consort_trigger = yes } - weight = { - base = 1 - modifier = { - has_trait = ambitious - add = 2 - } - modifier = { - has_trait = arrogant - add = 2 - } - modifier = { - has_trait = diligent - add = 2 - } - modifier = { - has_trait = deceitful - add = 5 - } - modifier = { - has_trait = schemer - add = 5 - } - modifier = { - has_trait = family_first - add = 10 - } - modifier = { - has_trait_rank = { - trait = education_intrigue - rank >= 3 - } - add = 10 - } - modifier = { - short_term_gold >= massive_gold_value - add = 100 - } - modifier = { - has_trait = forgiving - add = -2 - } - modifier = { - has_trait = compassionate - add = -2 - } - modifier = { - has_trait = generous - add = -2 - } - modifier = { - has_trait = dull - add = -3 - } - modifier = { - has_trait = lazy - add = -5 - } - modifier = { - has_trait_rank = { - trait = intellect_bad - rank > 0 - } - add = -5 - } - } - save_scope_as = bp1_yearly_2020_influencing_partner - } - #Pick a child - scope:bp1_yearly_2020_influencing_partner = { - random_child = { - limit = { - bp1_yearly_2020_relevant_child_trigger = yes - #_Tradeoff_ they said - OR = { - has_trait = clubfooted - has_trait = hunchbacked - has_trait = lisping - has_trait = stuttering - has_trait = dwarf - has_trait = giant - has_trait = inbred - has_trait = weak - has_trait = dull - has_trait = spindly - has_trait = scaly - has_trait = albino - has_trait = wheezing - has_trait = bleeder - has_trait_rank = { - trait = beauty_bad - rank >= 1 - } - has_trait_rank = { - trait = intellect_bad - rank >= 1 - } - has_trait_rank = { - trait = physique_bad - rank >= 1 - } - has_trait = maimed - has_trait = one_eyed - has_trait = one_legged - has_trait = disfigured - has_trait = scarred - has_trait = blind - has_trait = depressed_genetic - has_trait = lunatic_genetic - has_trait = possessed_genetic - has_trait = ill - has_trait = leper - } - } - alternative_limit = { - bp1_yearly_2020_relevant_child_trigger = yes - } - save_scope_as = bp1_yearly_2020_child_to_become_heir - } - } - #Set up a rival/nemesis, if any - random_relation = { - type = rival - limit = { - has_relation_nemesis = root - is_available_at_peace_adult = yes - highest_held_title_tier <= tier_county - } - alternative_limit = { - is_available_at_peace_adult = yes - highest_held_title_tier <= tier_county - } - save_scope_as = bp1_yearly_2020_target - } - #Saving scope for halfsies comparisons - save_scope_value_as = { - name = half_gold_check_2020 - value = { - value = root.massive_gold_value - multiply = 0.5 - } - } - #Look for a hookable landed parent of your partner - scope:bp1_yearly_2020_influencing_partner = { - #If our partner has enough gold, we only need a hookable landed parent - if = { - limit = { short_term_gold >= root.massive_gold_value } - random_parent = { - limit = { bp1_yearly_2020_landed_partners_parent_trigger = yes } - save_scope_as = bp1_yearly_2020_influencing_partners_parent_only_hook - #For the portrait - save_scope_as = bp1_yearly_2020_influencing_partners_parent - } - } - #Else check if they can go halfsies on the gold - else_if = { - limit = { - short_term_gold < root.massive_gold_value - short_term_gold >= scope:half_gold_check_2020 - } - random_parent = { - limit = { - short_term_gold < root.massive_gold_value - bp1_yearly_2020_landed_partners_parent_trigger = yes - } - #For the portrait - save_scope_as = bp1_yearly_2020_influencing_partners_parent - #Do they have enough gold together to warrant the root.massive_gold_value - save_scope_value_as = { - name = halfsies_check_2020 - value = { - value = scope:bp1_yearly_2020_influencing_partner.gold - add = scope:bp1_yearly_2020_influencing_partners_parent.gold - } - } - if = { - limit = { - scope:halfsies_check_2020 >= root.massive_gold_value - } - scope:bp1_yearly_2020_influencing_partners_parent = { - save_scope_as = bp1_yearly_2020_influencing_partners_parent_halfsies - } - } - } - } - #Else the partner parent pays and gets hooked - else_if = { - limit = { - short_term_gold < root.massive_gold_value - } - random_parent = { - limit = { - short_term_gold >= root.massive_gold_value - bp1_yearly_2020_landed_partners_parent_trigger = yes - } - save_scope_as = bp1_yearly_2020_influencing_partners_parent_pays - #For the portrait - save_scope_as = bp1_yearly_2020_influencing_partners_parent - } - } - } - } - #Martial/intrigue brute force duel - option = { - name = bp1_yearly.2020.a - trigger = { exists = scope:bp1_yearly_2020_target } - #To block the narration-breaking default death notification - add_character_flag = { - flag = bp1_yearly_2020_suppress_death_events - days = 5 - } - if = { - #Prioritize intrigue duel, less chance of death - limit = { - scope:bp1_yearly_2020_influencing_partner = { intrigue > martial } - } - scope:bp1_yearly_2020_influencing_partner = { - bp1_yearly_2020_duel_effect = { SKILL = intrigue } - } - } - else = { - scope:bp1_yearly_2020_influencing_partner = { - bp1_yearly_2020_duel_effect = { SKILL = martial } - } - } - stress_impact = { - vengeful = medium_stress_impact_gain - family_first = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - } - } - #Pay you a massive amount of gold + a hook - option = { - name = bp1_yearly.2020.c - flavor = { - first_valid = { - triggered_desc = { - trigger = { exists = scope:bp1_yearly_2020_influencing_partners_parent_only_hook } - desc = bp1_yearly.2020.c_tt_only_hook - } - triggered_desc = { - trigger = { - exists = scope:bp1_yearly_2020_influencing_partners_parent_halfsies - can_add_hook = { - target = scope:bp1_yearly_2020_influencing_partners_parent_halfsies - type = favor_hook - } - } - desc = bp1_yearly.2020.c_tt_halfsies - } - triggered_desc = { - trigger = { - exists = scope:bp1_yearly_2020_influencing_partners_parent_pays - can_add_hook = { - target = scope:bp1_yearly_2020_influencing_partners_parent_pays - type = favor_hook - } - } - desc = bp1_yearly.2020.c_tt_pay_and_hook - } - } - } - trigger = { - OR = { - #If our partner has enough gold - scope:bp1_yearly_2020_influencing_partner = { short_term_gold >= root.massive_gold_value } - #Or if they can go halfsies - AND = { - scope:bp1_yearly_2020_influencing_partner = { - short_term_gold < root.massive_gold_value - short_term_gold >= scope:half_gold_check_2020 - } - exists = scope:bp1_yearly_2020_influencing_partners_parent_halfsies - } - #Or if partner's parent has enough gold - exists = scope:bp1_yearly_2020_influencing_partners_parent_pays - } - } - #Partner pays - if = { - limit = { - scope:bp1_yearly_2020_influencing_partner = { short_term_gold >= root.massive_gold_value } - } - scope:bp1_yearly_2020_influencing_partner = { - pay_short_term_gold = { - target = root - gold = root.massive_gold_value - } - } - #Hook partner's parent first - if = { - limit = { exists = scope:bp1_yearly_2020_influencing_partners_parent_only_hook } - add_hook = { - target = scope:bp1_yearly_2020_influencing_partners_parent_only_hook - type = favor_hook - } - } - #Else hook partner - else_if = { - limit = { - can_add_hook = { - target = scope:bp1_yearly_2020_influencing_partner - type = favor_hook - } - } - add_hook = { - target = scope:bp1_yearly_2020_influencing_partner - type = favor_hook - } - } - } - #They go halfsies - else_if = { - limit = { - exists = scope:bp1_yearly_2020_influencing_partners_parent_halfsies - can_add_hook = { - target = scope:bp1_yearly_2020_influencing_partners_parent_halfsies - type = favor_hook - } - } - scope:bp1_yearly_2020_influencing_partner = { - pay_short_term_gold = { - target = root - gold = scope:half_gold_check_2020 - } - } - scope:bp1_yearly_2020_influencing_partners_parent_halfsies = { - pay_short_term_gold = { - target = root - gold = scope:half_gold_check_2020 - } - } - #Hook partner's parent first - if = { - limit = { - exists = scope:bp1_yearly_2020_influencing_partners_parent_halfsies - can_add_hook = { - target = scope:bp1_yearly_2020_influencing_partners_parent_halfsies - type = favor_hook - } - } - add_hook = { - target = scope:bp1_yearly_2020_influencing_partners_parent_halfsies - type = favor_hook - } - } - #Else hook partner - else_if = { - limit = { - can_add_hook = { - target = scope:bp1_yearly_2020_influencing_partner - type = favor_hook - } - } - add_hook = { - target = scope:bp1_yearly_2020_influencing_partner - type = favor_hook - } - } - } - #Partner's parent pays - else_if = { - limit = { exists = scope:bp1_yearly_2020_influencing_partners_parent_pays } - scope:bp1_yearly_2020_influencing_partners_parent_pays = { - pay_short_term_gold = { - target = root - gold = root.massive_gold_value - } - } - #Hook partner's parent first - if = { - limit = { - exists = scope:bp1_yearly_2020_influencing_partners_parent_pays - can_add_hook = { - target = scope:bp1_yearly_2020_influencing_partners_parent_pays - type = favor_hook - } - } - add_hook = { - target = scope:bp1_yearly_2020_influencing_partners_parent_pays - type = favor_hook - } - } - #Else hook partner - else_if = { - limit = { - root = { - can_add_hook = { - target = scope:bp1_yearly_2020_influencing_partner - type = favor_hook - } - } - } - add_hook = { - target = scope:bp1_yearly_2020_influencing_partner - type = favor_hook - } - } - } - #Deal with opinion reactions to this - bp1_yearly_2020_heir_change_opinions_effect = yes - if = { - limit = { exists = scope:bp1_yearly_2020_influencing_partners_parent_only_hook } - reverse_add_opinion = { - target = scope:bp1_yearly_2020_influencing_partners_parent_only_hook - modifier = pleased_opinion - opinion = 50 - } - } - else_if = { - limit = { exists = scope:bp1_yearly_2020_influencing_partners_parent_halfsies } - reverse_add_opinion = { - target = scope:bp1_yearly_2020_influencing_partners_parent_halfsies - modifier = pleased_opinion - opinion = 50 - } - } - else_if = { - limit = { exists = scope:bp1_yearly_2020_influencing_partners_parent_pays } - reverse_add_opinion = { - target = scope:bp1_yearly_2020_influencing_partners_parent_pays - modifier = pleased_opinion - opinion = 50 - } - } - send_interface_toast = { - title = designate_heir_interaction_notification - left_icon = root - right_icon = scope:bp1_yearly_2020_child_to_become_heir - set_designated_heir = scope:bp1_yearly_2020_child_to_become_heir - } - hidden_effect = { - if = { - limit = { exists = scope:bp1_yearly_2020_scorned_parent } - bp1_yearly_2020_chance_of_murderous_partner_effect = { MURDEROUS_PARTNER = scope:bp1_yearly_2020_scorned_parent } - } - } - stress_impact = { - craven = minor_stress_impact_gain - paranoid = medium_stress_impact_gain - greedy = minor_stress_impact_loss - } - ai_chance = { - base = 100 - } - } - #Summon an interesting person to join your court - option = { - name = bp1_yearly.2020.b - trigger = { - #Mutually exclusive to the money + gold option - NOR = { - scope:bp1_yearly_2020_influencing_partner = { short_term_gold >= root.massive_gold_value } - exists = scope:bp1_yearly_2020_influencing_partners_parent_halfsies - exists = scope:bp1_yearly_2020_influencing_partners_parent_pays - } - } - custom_tooltip = bp1_yearly.2020.b_tt - trigger_event = { - id = bp1_yearly.2021 - days = 2 - } - ai_chance = { - base = 100 - } - } - #Imprison them for merely suggesting this - option = { - name = bp1_yearly.2020.d - trigger = { - OR = { - has_trait = sadistic - has_trait = callous - has_trait = irritable - has_trait = paranoid - has_trait = craven - has_trait = fickle - } - } - flavor = bp1_yearly.2020.d_tt - rightfully_imprison_character_effect = { TARGET = scope:bp1_yearly_2020_influencing_partner IMPRISONER = root } - stress_impact = { - craven = miniscule_stress_impact_loss - paranoid = minor_stress_impact_loss - } - ai_chance = { - base = 100 - } - } - #Not interested - option = { - name = bp1_yearly.2020.e - reverse_add_opinion = { - target = scope:bp1_yearly_2020_influencing_partner - modifier = insulted_opinion - opinion = -20 - } - stress_impact = { - craven = minor_stress_impact_gain - paranoid = medium_stress_impact_gain - } - hidden_effect = { - bp1_yearly_2020_chance_of_murderous_partner_effect = { MURDEROUS_PARTNER = scope:bp1_yearly_2020_influencing_partner } - } - ai_chance = { - base = 100 - } - } -} - -scripted_trigger bp1_yearly_2021_relevant_dynasty_person_trigger = { - this != scope:bp1_yearly_2020_influencing_partner - NOT = { is_child_of = scope:bp1_yearly_2020_influencing_partner } - NOT = { is_primary_heir_of = liege } - has_any_bad_relationship_with_root_trigger = no - opinion = { - target = scope:bp1_yearly_2020_influencing_partner - value >= 0 - } - is_landed_or_landless_administrative = no - is_available_at_peace_ai_adult = yes - $SKILL$ >= $TARGET$.$SKILL$ -} - -scripted_trigger bp1_yearly_2021_relevant_dynasty_person_no_target_trigger = { - this != scope:bp1_yearly_2020_influencing_partner - NOT = { is_child_of = scope:bp1_yearly_2020_influencing_partner } - NOT = { is_primary_heir_of = liege } - has_any_bad_relationship_with_root_trigger = no - opinion = { - target = scope:bp1_yearly_2020_influencing_partner - value >= 0 - } - is_landed_or_landless_administrative = no - is_available_at_peace_ai_adult = yes - $SKILL$ >= high_skill_rating -} - -scripted_effect bp1_yearly_2021_add_interesting_courtier_effect = { - random_list = { - #Martial Person - 1 = { - trigger = { - NOT = { exists = scope:bp1_yearly_2021_martial_person } - } - #Let's inject a partner dynasty member if we can - modifier = { - scope:bp1_yearly_2020_influencing_partner = { - exists = dynasty - OR = { - AND = { - exists = scope:bp1_yearly_2021_marshal_scope - dynasty = { - any_dynasty_member = { - bp1_yearly_2021_relevant_dynasty_person_trigger = { SKILL = martial TARGET = scope:bp1_yearly_2021_marshal_scope } - } - } - } - dynasty = { - any_dynasty_member = { - bp1_yearly_2021_relevant_dynasty_person_no_target_trigger = { SKILL = martial } - } - } - } - } - add = 20 - } - modifier = { - OR = { - AND = { - exists = scope:bp1_yearly_2021_marshal_scope - scope:bp1_yearly_2021_marshal_scope.martial < high_skill_rating - } - NOT = { exists = scope:bp1_yearly_2021_marshal_scope } - } - add = 10 - } - #Look for a dynasty member of the consort first - if = { - limit = { - scope:bp1_yearly_2020_influencing_partner = { - exists = dynasty - OR = { - AND = { - exists = scope:bp1_yearly_2021_marshal_scope - dynasty = { - any_dynasty_member = { - bp1_yearly_2021_relevant_dynasty_person_trigger = { SKILL = martial TARGET = scope:bp1_yearly_2021_marshal_scope } - } - } - } - dynasty = { - any_dynasty_member = { - bp1_yearly_2021_relevant_dynasty_person_no_target_trigger = { SKILL = martial } - } - } - } - } - } - scope:bp1_yearly_2020_influencing_partner = { - #If a marshal currently exists and our dynast has more martial - if = { - limit = { exists = scope:bp1_yearly_2021_marshal_scope } - dynasty = { - random_dynasty_member = { - limit = { - bp1_yearly_2021_relevant_dynasty_person_trigger = { SKILL = martial TARGET = scope:bp1_yearly_2021_marshal_scope } - } - save_scope_as = bp1_yearly_2021_martial_person - } - } - } - #Else just check if the dynast has above 15 martial - else = { - dynasty = { - random_dynasty_member = { - limit = { - bp1_yearly_2021_relevant_dynasty_person_no_target_trigger = { SKILL = martial } - } - save_scope_as = bp1_yearly_2021_martial_person - } - } - } - } - } - else = { - create_character = { - location = root.location - template = bp1_yearly_2021_martial_person_template - save_scope_as = bp1_yearly_2021_martial_person - } - scope:bp1_yearly_2021_martial_person = { - set_variable = { - name = created_in_bp1_yearly_2021 - value = yes - days = 60 - } - } - } - } - #Learning Person - 1 = { - trigger = { - NOT = { exists = scope:bp1_yearly_2021_learning_person } - } - #Let's inject a partner dynasty member if we can - modifier = { - #If we can change our learning councillor and have an appropriate dynast - faith = { has_doctrine = doctrine_clerical_succession_temporal_appointment } - scope:bp1_yearly_2020_influencing_partner = { - exists = dynasty - OR = { - AND = { - exists = scope:bp1_yearly_2021_chaplain_scope - dynasty = { - any_dynasty_member = { - bp1_yearly_2021_relevant_dynasty_person_trigger = { SKILL = learning TARGET = scope:bp1_yearly_2021_chaplain_scope } - } - } - } - dynasty = { - any_dynasty_member = { - bp1_yearly_2021_relevant_dynasty_person_no_target_trigger = { SKILL = learning } - } - } - } - } - add = 20 - } - modifier = { - OR = { - #If we can change our learning councillor and they don't exist - AND = { - faith = { has_doctrine = doctrine_clerical_succession_temporal_appointment } - NOT = { exists = scope:bp1_yearly_2021_chaplain_scope } - } - #If we can change our learning councillor and they have less than 15 learning - AND = { - faith = { has_doctrine = doctrine_clerical_succession_temporal_appointment } - exists = scope:bp1_yearly_2021_chaplain_scope - scope:bp1_yearly_2021_chaplain_scope.learning < high_skill_rating - } - } - add = 10 - } - #Look for a dynasty member of the consort first - if = { - limit = { - scope:bp1_yearly_2020_influencing_partner = { - exists = dynasty - OR = { - AND = { - exists = scope:bp1_yearly_2021_chaplain_scope - dynasty = { - any_dynasty_member = { - bp1_yearly_2021_relevant_dynasty_person_trigger = { SKILL = learning TARGET = scope:bp1_yearly_2021_chaplain_scope } - } - } - } - dynasty = { - any_dynasty_member = { - bp1_yearly_2021_relevant_dynasty_person_no_target_trigger = { SKILL = learning } - } - } - } - } - } - scope:bp1_yearly_2020_influencing_partner = { - #If a chaplain currently exists and our dynast has more learning - if = { - limit = { exists = scope:bp1_yearly_2021_chaplain_scope } - dynasty = { - random_dynasty_member = { - limit = { - bp1_yearly_2021_relevant_dynasty_person_trigger = { SKILL = learning TARGET = scope:bp1_yearly_2021_chaplain_scope } - } - save_scope_as = bp1_yearly_2021_learning_person - } - } - } - #Else just check if the dynast has above 15 learning - else = { - dynasty = { - random_dynasty_member = { - limit = { - bp1_yearly_2021_relevant_dynasty_person_no_target_trigger = { SKILL = learning } - } - save_scope_as = bp1_yearly_2021_learning_person - } - } - } - } - } - else = { - if = { - #If witchcraft is accepted, create a witch - limit = { - faith = { has_doctrine = doctrine_witchcraft_accepted } - } - create_character = { - location = root.location - template = bp1_yearly_2021_learning_witch_template - save_scope_as = bp1_yearly_2021_learning_person - } - scope:bp1_yearly_2021_learning_person = { - set_variable = { - name = created_in_bp1_yearly_2021 - value = yes - days = 60 - } - } - } - else = { - create_character = { - location = root.location - template = bp1_yearly_2021_learning_person_template - save_scope_as = bp1_yearly_2021_learning_person - } - scope:bp1_yearly_2021_learning_person = { - set_variable = { - name = created_in_bp1_yearly_2021 - value = yes - days = 60 - } - } - } - } - } - #Stewardship Person - 1 = { - trigger = { - NOT = { exists = scope:bp1_yearly_2021_stewardship_person } - } - #Let's inject a partner dynasty member if we can - modifier = { - scope:bp1_yearly_2020_influencing_partner = { - exists = dynasty - OR = { - AND = { - exists = scope:bp1_yearly_2021_steward_scope - dynasty = { - any_dynasty_member = { - bp1_yearly_2021_relevant_dynasty_person_trigger = { SKILL = stewardship TARGET = scope:bp1_yearly_2021_steward_scope } - } - } - } - dynasty = { - any_dynasty_member = { - bp1_yearly_2021_relevant_dynasty_person_no_target_trigger = { SKILL = stewardship } - } - } - } - } - add = 20 - } - modifier = { - OR = { - AND = { - exists = scope:bp1_yearly_2021_steward_scope - scope:bp1_yearly_2021_steward_scope.stewardship < high_skill_rating - } - NOT = { exists = scope:bp1_yearly_2021_steward_scope } - } - add = 10 - } - #Look for a dynasty member of the consort first - if = { - limit = { - scope:bp1_yearly_2020_influencing_partner = { - exists = dynasty - OR = { - AND = { - exists = scope:bp1_yearly_2021_steward_scope - dynasty = { - any_dynasty_member = { - bp1_yearly_2021_relevant_dynasty_person_trigger = { SKILL = stewardship TARGET = scope:bp1_yearly_2021_steward_scope } - } - } - } - dynasty = { - any_dynasty_member = { - bp1_yearly_2021_relevant_dynasty_person_no_target_trigger = { SKILL = stewardship } - } - } - } - } - } - scope:bp1_yearly_2020_influencing_partner = { - #If a steward currently exists and our dynast has more stewardship - if = { - limit = { exists = scope:bp1_yearly_2021_steward_scope } - dynasty = { - random_dynasty_member = { - limit = { - bp1_yearly_2021_relevant_dynasty_person_trigger = { SKILL = stewardship TARGET = scope:bp1_yearly_2021_steward_scope } - } - save_scope_as = bp1_yearly_2021_stewardship_person - } - } - } - #Else just check if the dynast has above 15 stewardship - else = { - dynasty = { - random_dynasty_member = { - limit = { - bp1_yearly_2021_relevant_dynasty_person_no_target_trigger = { SKILL = stewardship } - } - save_scope_as = bp1_yearly_2021_stewardship_person - } - } - } - } - } - else = { - create_character = { - location = root.location - template = bp1_yearly_2021_stewardship_person_template - save_scope_as = bp1_yearly_2021_stewardship_person - } - scope:bp1_yearly_2021_stewardship_person = { - set_variable = { - name = created_in_bp1_yearly_2021 - value = yes - days = 60 - } - } - } - } - #Diplomacy Person - 1 = { - trigger = { - NOT = { exists = scope:bp1_yearly_2021_diplomacy_person } - } - #Let's inject a partner dynasty member if we can - modifier = { - scope:bp1_yearly_2020_influencing_partner = { - exists = dynasty - OR = { - AND = { - exists = scope:bp1_yearly_2021_chancellor_scope - dynasty = { - any_dynasty_member = { - bp1_yearly_2021_relevant_dynasty_person_trigger = { SKILL = diplomacy TARGET = scope:bp1_yearly_2021_chancellor_scope } - } - } - } - dynasty = { - any_dynasty_member = { - bp1_yearly_2021_relevant_dynasty_person_no_target_trigger = { SKILL = diplomacy } - } - } - } - } - add = 20 - } - modifier = { - OR = { - AND = { - exists = scope:bp1_yearly_2021_chancellor_scope - scope:bp1_yearly_2021_chancellor_scope.diplomacy < high_skill_rating - } - NOT = { exists = scope:bp1_yearly_2021_chancellor_scope } - } - add = 10 - } - #Look for a dynasty member of the consort first - if = { - limit = { - scope:bp1_yearly_2020_influencing_partner = { - exists = dynasty - OR = { - AND = { - exists = scope:bp1_yearly_2021_chancellor_scope - dynasty = { - any_dynasty_member = { - bp1_yearly_2021_relevant_dynasty_person_trigger = { SKILL = diplomacy TARGET = scope:bp1_yearly_2021_chancellor_scope } - } - } - } - dynasty = { - any_dynasty_member = { - bp1_yearly_2021_relevant_dynasty_person_no_target_trigger = { SKILL = diplomacy } - } - } - } - } - } - scope:bp1_yearly_2020_influencing_partner = { - #If a chancellor currently exists and our dynast has more diplomacy - if = { - limit = { exists = scope:bp1_yearly_2021_chancellor_scope } - dynasty = { - random_dynasty_member = { - limit = { - bp1_yearly_2021_relevant_dynasty_person_trigger = { SKILL = diplomacy TARGET = scope:bp1_yearly_2021_chancellor_scope } - } - save_scope_as = bp1_yearly_2021_diplomacy_person - } - } - } - #Else just check if the dynast has above 15 diplomacy - else = { - dynasty = { - random_dynasty_member = { - limit = { - bp1_yearly_2021_relevant_dynasty_person_no_target_trigger = { SKILL = diplomacy } - } - save_scope_as = bp1_yearly_2021_diplomacy_person - } - } - } - } - } - else = { - create_character = { - location = root.location - template = bp1_yearly_2021_diplomacy_person_template - save_scope_as = bp1_yearly_2021_diplomacy_person - } - scope:bp1_yearly_2021_diplomacy_person = { - set_variable = { - name = created_in_bp1_yearly_2021 - value = yes - days = 60 - } - } - } - } - #Intrigue Person - 1 = { - trigger = { - NOT = { exists = scope:bp1_yearly_2021_intrigue_person } - } - #Let's inject a partner dynasty member if we can - modifier = { - scope:bp1_yearly_2020_influencing_partner = { - exists = dynasty - OR = { - AND = { - exists = scope:bp1_yearly_2021_spymaster_scope - dynasty = { - any_dynasty_member = { - bp1_yearly_2021_relevant_dynasty_person_trigger = { SKILL = intrigue TARGET = scope:bp1_yearly_2021_spymaster_scope } - } - } - } - dynasty = { - any_dynasty_member = { - bp1_yearly_2021_relevant_dynasty_person_no_target_trigger = { SKILL = intrigue } - } - } - } - } - add = 20 - } - modifier = { - OR = { - AND = { - exists = scope:bp1_yearly_2021_spymaster_scope - scope:bp1_yearly_2021_spymaster_scope.intrigue < high_skill_rating - } - NOT = { exists = scope:bp1_yearly_2021_spymaster_scope } - } - add = 10 - } - #Look for a dynasty member of the consort first - if = { - limit = { - scope:bp1_yearly_2020_influencing_partner = { - exists = dynasty - OR = { - AND = { - exists = scope:bp1_yearly_2021_spymaster_scope - dynasty = { - any_dynasty_member = { - bp1_yearly_2021_relevant_dynasty_person_trigger = { SKILL = intrigue TARGET = scope:bp1_yearly_2021_spymaster_scope } - } - } - } - dynasty = { - any_dynasty_member = { - bp1_yearly_2021_relevant_dynasty_person_no_target_trigger = { SKILL = intrigue } - } - } - } - } - } - scope:bp1_yearly_2020_influencing_partner = { - #If a spymaster currently exists and our dynast has more intrigue - if = { - limit = { exists = scope:bp1_yearly_2021_spymaster_scope } - dynasty = { - random_dynasty_member = { - limit = { - bp1_yearly_2021_relevant_dynasty_person_trigger = { SKILL = intrigue TARGET = scope:bp1_yearly_2021_spymaster_scope } - } - save_scope_as = bp1_yearly_2021_intrigue_person - } - } - } - #Else just check if the dynast has above 15 intrigue - else = { - dynasty = { - random_dynasty_member = { - limit = { - bp1_yearly_2021_relevant_dynasty_person_no_target_trigger = { SKILL = intrigue } - } - } - save_scope_as = bp1_yearly_2021_intrigue_person - } - } - } - } - else = { - create_character = { - location = root.location - template = bp1_yearly_2021_intrigue_person_template - save_scope_as = bp1_yearly_2021_intrigue_person - } - scope:bp1_yearly_2021_intrigue_person = { - set_variable = { - name = created_in_bp1_yearly_2021 - value = yes - days = 60 - } - } - } - } - } -} - -scripted_effect bp1_yearly_2021_set_up_portrait_effect = { - $SCOPE$ = { - if = { - limit = { - NOT = { exists = scope:bp1_yearly_2021_first_person } - } - save_scope_as = bp1_yearly_2021_first_person - } - else_if = { - limit = { - NOT = { exists = scope:bp1_yearly_2021_second_person } - } - save_scope_as = bp1_yearly_2021_second_person - } - else_if = { - limit = { - NOT = { exists = scope:bp1_yearly_2021_third_person } - } - save_scope_as = bp1_yearly_2021_third_person - } - } -} - -scripted_trigger bp1_yearly_2021_clean_up_character_trigger = { - exists = scope:bp1_yearly_2021_$SKILL$_person - scope:bp1_yearly_2021_$SKILL$_person = { - has_variable = created_in_bp1_yearly_2021 - NOT = { has_character_flag = bp1_yearly_2021_chosen_courtier } - } -} - -scripted_effect bp1_yearly_2021_clean_up_character_effect = { - scope:bp1_yearly_2021_$SKILL$_person = { - death = { - death_reason = death_vanished - } - } -} - -#Summon up a person to your liking -bp1_yearly.2021 = { - type = character_event - content_source = dlc_006 - title = bp1_yearly.2021.t - desc = bp1_yearly.2021.desc - theme = family - override_background = { reference = throne_room } - left_portrait = { - character = root - animation = personality_rational - } - right_portrait = { - character = scope:bp1_yearly_2020_influencing_partner - animation = chancellor - } - #First Person - lower_left_portrait = { - trigger = { exists = scope:bp1_yearly_2021_first_person } - character = scope:bp1_yearly_2021_first_person - } - #Second Person - lower_center_portrait = { - trigger = { exists = scope:bp1_yearly_2021_second_person } - character = scope:bp1_yearly_2021_second_person - } - #Third Person - lower_right_portrait = { - trigger = { exists = scope:bp1_yearly_2021_third_person } - character = scope:bp1_yearly_2021_third_person - } - immediate = { - if = { - limit = { exists = cp:councillor_marshal } - cp:councillor_marshal = { save_scope_as = bp1_yearly_2021_marshal_scope } - } - if = { - limit = { exists = cp:councillor_court_chaplain } - cp:councillor_court_chaplain = { save_scope_as = bp1_yearly_2021_chaplain_scope } - } - if = { - limit = { exists = cp:councillor_steward } - cp:councillor_steward = { save_scope_as = bp1_yearly_2021_steward_scope } - } - if = { - limit = { exists = cp:councillor_chancellor } - cp:councillor_chancellor = { save_scope_as = bp1_yearly_2021_chancellor_scope } - } - if = { - limit = { exists = cp:councillor_spymaster } - cp:councillor_spymaster = { save_scope_as = bp1_yearly_2021_spymaster_scope } - } - #Conjure up 3 interesting courtiers - bp1_yearly_2021_add_interesting_courtier_effect = yes - bp1_yearly_2021_add_interesting_courtier_effect = yes - bp1_yearly_2021_add_interesting_courtier_effect = yes - #Set up portraits to display - if = { - limit = { exists = scope:bp1_yearly_2021_martial_person } - bp1_yearly_2021_set_up_portrait_effect = { SCOPE = scope:bp1_yearly_2021_martial_person } - } - if = { - limit = { exists = scope:bp1_yearly_2021_learning_person } - bp1_yearly_2021_set_up_portrait_effect = { SCOPE = scope:bp1_yearly_2021_learning_person } - } - if = { - limit = { exists = scope:bp1_yearly_2021_stewardship_person } - bp1_yearly_2021_set_up_portrait_effect = { SCOPE = scope:bp1_yearly_2021_stewardship_person } - } - if = { - limit = { exists = scope:bp1_yearly_2021_diplomacy_person } - bp1_yearly_2021_set_up_portrait_effect = { SCOPE = scope:bp1_yearly_2021_diplomacy_person } - } - if = { - limit = { exists = scope:bp1_yearly_2021_intrigue_person } - bp1_yearly_2021_set_up_portrait_effect = { SCOPE = scope:bp1_yearly_2021_intrigue_person } - } - } - #Pick Martial - option = { - name = bp1_yearly.2021.a - trigger = { exists = scope:bp1_yearly_2021_martial_person } - send_interface_toast = { - title = bp1_yearly.2021.a_tt - left_icon = scope:bp1_yearly_2021_martial_person - add_courtier = scope:bp1_yearly_2021_martial_person - scope:bp1_yearly_2021_martial_person = { - add_character_flag = bp1_yearly_2021_chosen_courtier - } - reverse_add_opinion = { - target = scope:bp1_yearly_2021_martial_person - modifier = pleased_opinion - opinion = 40 - } - } - save_scope_as = bp1_yearly_2021_new_courtier - } - #Pick Learning - option = { - name = bp1_yearly.2021.b - trigger = { exists = scope:bp1_yearly_2021_learning_person } - send_interface_toast = { - title = bp1_yearly.2021.b_tt - left_icon = scope:bp1_yearly_2021_learning_person - add_courtier = scope:bp1_yearly_2021_learning_person - scope:bp1_yearly_2021_learning_person = { - add_character_flag = bp1_yearly_2021_chosen_courtier - } - reverse_add_opinion = { - target = scope:bp1_yearly_2021_learning_person - modifier = pleased_opinion - opinion = 40 - } - } - save_scope_as = bp1_yearly_2021_new_courtier - } - #Pick Stewardship - option = { - name = bp1_yearly.2021.c - trigger = { exists = scope:bp1_yearly_2021_stewardship_person } - send_interface_toast = { - title = bp1_yearly.2021.c_tt - left_icon = scope:bp1_yearly_2021_stewardship_person - add_courtier = scope:bp1_yearly_2021_stewardship_person - scope:bp1_yearly_2021_stewardship_person = { - add_character_flag = bp1_yearly_2021_chosen_courtier - } - reverse_add_opinion = { - target = scope:bp1_yearly_2021_stewardship_person - modifier = pleased_opinion - opinion = 40 - } - } - save_scope_as = bp1_yearly_2021_new_courtier - } - #Pick Diplomacy - option = { - name = bp1_yearly.2021.d - trigger = { exists = scope:bp1_yearly_2021_diplomacy_person } - send_interface_toast = { - title = bp1_yearly.2021.d_tt - left_icon = scope:bp1_yearly_2021_diplomacy_person - add_courtier = scope:bp1_yearly_2021_diplomacy_person - scope:bp1_yearly_2021_diplomacy_person = { - add_character_flag = bp1_yearly_2021_chosen_courtier - } - reverse_add_opinion = { - target = scope:bp1_yearly_2021_diplomacy_person - modifier = pleased_opinion - opinion = 40 - } - } - save_scope_as = bp1_yearly_2021_new_courtier - } - #Pick Intrigue - option = { - name = bp1_yearly.2021.e - trigger = { exists = scope:bp1_yearly_2021_intrigue_person } - send_interface_toast = { - title = bp1_yearly.2021.e_tt - left_icon = scope:bp1_yearly_2021_intrigue_person - add_courtier = scope:bp1_yearly_2021_intrigue_person - scope:bp1_yearly_2021_intrigue_person = { - add_character_flag = bp1_yearly_2021_chosen_courtier - } - reverse_add_opinion = { - target = scope:bp1_yearly_2021_intrigue_person - modifier = pleased_opinion - opinion = 40 - } - } - save_scope_as = bp1_yearly_2021_new_courtier - } - #Actually, I have changed my mind - option = { - name = bp1_yearly.2021.f - add_character_flag = bp1_yearly_2021_picked_none - stress_impact = { - fickle = miniscule_stress_impact_loss - } - } - after = { - hidden_effect = { - #...clean up the unused characters - if = { - limit = { - bp1_yearly_2021_clean_up_character_trigger = { SKILL = martial } - } - bp1_yearly_2021_clean_up_character_effect = { SKILL = martial } - } - if = { - limit = { - bp1_yearly_2021_clean_up_character_trigger = { SKILL = learning } - } - bp1_yearly_2021_clean_up_character_effect = { SKILL = learning } - } - if = { - limit = { - bp1_yearly_2021_clean_up_character_trigger = { SKILL = stewardship } - } - bp1_yearly_2021_clean_up_character_effect = { SKILL = stewardship } - } - if = { - limit = { - bp1_yearly_2021_clean_up_character_trigger = { SKILL = diplomacy } - } - bp1_yearly_2021_clean_up_character_effect = { SKILL = diplomacy } - } - if = { - limit = { - bp1_yearly_2021_clean_up_character_trigger = { SKILL = intrigue } - } - bp1_yearly_2021_clean_up_character_effect = { SKILL = intrigue } - } - } - trigger_event = { - id = bp1_yearly.2023 - days = { 2 5 } - } - } -} - -#Your partner is imprisoned/dead -bp1_yearly.2022 = { - type = letter_event - opening = bp1_yearly.2022.t - desc = { - desc = bp1_yearly.2022.desc_intro - first_valid = { - #Your partner is imprisoned - triggered_desc = { - trigger = { - scope:bp1_yearly_2020_influencing_partner = { is_alive = yes } - } - desc = bp1_yearly.2022.desc_imprisoned - } - #Your partner died - triggered_desc = { - desc = bp1_yearly.2022.desc_dead - } - } - } - sender = scope:bp1_yearly_2020_target - #Oh no! - option = { - name = { - text = { - first_valid = { - #If our partner was imprisoned - triggered_desc = { - trigger = { - scope:bp1_yearly_2020_influencing_partner = { is_alive = yes } - } - desc = bp1_yearly.2022.a_imprisoned - } - #Else they died - triggered_desc = { - desc = bp1_yearly.2022.b_dead - } - } - } - } - #If our partner was imprisoned or killed by rival, deepen rivalry - if = { - limit = { - scope:bp1_yearly_2020_influencing_partner = { - OR = { - is_imprisoned_by = scope:bp1_yearly_2020_target - is_alive = no - } - } - can_set_relation_nemesis_trigger = { CHARACTER = scope:bp1_yearly_2020_target } - } - # Split set_relation nemesis into two cases based on what the reason should be. - Chad - if = { - limit = { - scope:bp1_yearly_2020_influencing_partner = { is_imprisoned_by = scope:bp1_yearly_2020_target } - } - set_relation_nemesis = { - reason = nemesis_imprisoned_partner - target = scope:bp1_yearly_2020_target - involved_character = scope:bp1_yearly_2020_influencing_partner - } - } - else_if = { - limit = { - scope:bp1_yearly_2020_influencing_partner = { is_alive = no } - } - set_relation_nemesis = { - reason = nemesis_killed_partner - target = scope:bp1_yearly_2020_target - involved_character = scope:bp1_yearly_2020_influencing_partner - } - } - } - if = { - limit = { - scope:bp1_yearly_2020_influencing_partner = { is_alive = no } - } - stress_impact = { - vengeful = medium_stress_impact_gain - wrathful = medium_stress_impact_gain - family_first = medium_stress_impact_gain - just = minor_stress_impact_gain - } - } - else = { - stress_impact = { - vengeful = minor_stress_impact_gain - wrathful = minor_stress_impact_gain - family_first = minor_stress_impact_gain - just = miniscule_stress_impact_gain - } - } - trigger_event = { - id = bp1_yearly.2023 - days = { 2 5 } - } - } -} - -scripted_effect bp1_yearly_2023_apply_dis_or_honorable_modifier_effect = { - #If we already have the modifier, refresh it - if = { - limit = { - NOT = { has_character_modifier = bp1_yearly_2023_$REMOVE$_modifier } - has_character_modifier = bp1_yearly_2023_$ADD$_modifier - } - remove_character_modifier = bp1_yearly_2023_$ADD$_modifier - add_character_modifier = { - modifier = bp1_yearly_2023_$ADD$_modifier - years = 30 - } - } - #If we already have the modifier, remove and replace - else_if = { - limit = { has_character_modifier = bp1_yearly_2023_$REMOVE$_modifier } - remove_character_modifier = bp1_yearly_2023_$REMOVE$_modifier - add_character_modifier = { - modifier = bp1_yearly_2023_$ADD$_modifier - years = 30 - } - } - #If we don't have any previously, get ADD - else_if = { - limit = { - NOR = { - has_character_modifier = bp1_yearly_2023_$ADD$_modifier - has_character_modifier = bp1_yearly_2023_$REMOVE$_modifier - } - } - add_character_modifier = { - modifier = bp1_yearly_2023_$ADD$_modifier - years = 30 - } - } -} - -#Handle the set_designated_heir -bp1_yearly.2023 = { - type = character_event - content_source = dlc_006 - title = bp1_yearly.2023.t - desc = { - first_valid = { - triggered_desc = { - #They completed their task - trigger = { - OR = { - has_character_flag = bp1_yearly_2020_target_killed - exists = scope:bp1_yearly_2021_new_courtier - } - } - desc = bp1_yearly.2023.desc_triumphant - } - triggered_desc = { - #They died while trying to kill your rival/nemesis - trigger = { - exists = scope:bp1_yearly_2020_target - scope:bp1_yearly_2020_influencing_partner = { - OR = { - is_imprisoned_by = scope:bp1_yearly_2020_target - is_alive = no - } - } - } - desc = bp1_yearly.2023.desc_sad - } - triggered_desc = { - #They killed your rival/nemesis, is presenting their head - trigger = { - NOT = { exists = scope:bp1_yearly_2021_new_courtier } - } - desc = bp1_yearly.2023.desc_hesitant - } - } - first_valid = { - #They attempted to kill your rival/nemesis - triggered_desc = { - #They killed your rival/nemesis, is presenting their head - trigger = { - exists = scope:bp1_yearly_2020_target - has_character_flag = bp1_yearly_2020_target_killed - } - desc = bp1_yearly.2023.desc_killed_target - } - triggered_desc = { - #They are imprisoned by your rival/nemesis - trigger = { - exists = scope:bp1_yearly_2020_target - scope:bp1_yearly_2020_influencing_partner = { - is_imprisoned_by = scope:bp1_yearly_2020_target - } - } - desc = bp1_yearly.2023.desc_imprisoned - } - triggered_desc = { - #They died attempting to kill your rival/nemesis - trigger = { - exists = scope:bp1_yearly_2020_target - scope:bp1_yearly_2020_influencing_partner = { is_alive = no } - } - desc = bp1_yearly.2023.desc_died - } - #They summoned a person of your liking to court - triggered_desc = { - #You picked the martial person - trigger = { - exists = scope:bp1_yearly_2021_new_courtier - # CU: added check for error suppression - exists = scope:bp1_yearly_2021_martial_person - scope:bp1_yearly_2021_new_courtier = scope:bp1_yearly_2021_martial_person - } - desc = bp1_yearly.2023.desc_picked_martial - } - triggered_desc = { - #You picked the learning person - trigger = { - exists = scope:bp1_yearly_2021_new_courtier - # CU: added check for error suppression - exists = scope:bp1_yearly_2021_learning_person - scope:bp1_yearly_2021_new_courtier = scope:bp1_yearly_2021_learning_person - } - desc = bp1_yearly.2023.desc_picked_learning - } - triggered_desc = { - #You picked the stewardship person - trigger = { - exists = scope:bp1_yearly_2021_new_courtier - # CU: added check for error suppression - exists = scope:bp1_yearly_2021_stewardship_person - scope:bp1_yearly_2021_new_courtier = scope:bp1_yearly_2021_stewardship_person - } - desc = bp1_yearly.2023.desc_picked_stewardship - } - triggered_desc = { - #You picked the diplomacy person - trigger = { - exists = scope:bp1_yearly_2021_new_courtier - # CU: added check for error suppression - exists = scope:bp1_yearly_2021_diplomacy_person - scope:bp1_yearly_2021_new_courtier = scope:bp1_yearly_2021_diplomacy_person - } - desc = bp1_yearly.2023.desc_picked_diplomacy - } - triggered_desc = { - #You picked the intrigue person - trigger = { - exists = scope:bp1_yearly_2021_new_courtier - # CU: added check for error suppression - exists = scope:bp1_yearly_2021_intrigue_person - scope:bp1_yearly_2021_new_courtier = scope:bp1_yearly_2021_intrigue_person - } - desc = bp1_yearly.2023.desc_picked_intrigue - } - triggered_desc = { - #You didn't pick any of the summoned people - trigger = { - NOT = { exists = scope:bp1_yearly_2021_new_courtier } - } - desc = bp1_yearly.2023.desc_picked_none - } - } - first_valid = { - #If they did something for us and we're supposed to honor our agreement - triggered_desc = { - trigger = { - OR = { - has_character_flag = bp1_yearly_2020_target_killed - exists = scope:bp1_yearly_2021_new_courtier - } - } - desc = bp1_yearly.2023.desc_outro - } - #If the partner is imprisoned or dead - triggered_desc = { - trigger = { - exists = scope:bp1_yearly_2020_target - scope:bp1_yearly_2020_influencing_partner = { - OR = { - is_imprisoned_by = scope:bp1_yearly_2020_target - is_alive = no - } - } - } - desc = bp1_yearly.2023.desc_outro_sad - } - } - } - theme = family - override_background = { reference = bp1_kitchen_western } - left_portrait = { - character = root - triggered_animation = { - trigger = { has_character_flag = bp1_yearly_2020_target_killed } - animation = disbelief - } - triggered_animation = { - trigger = { - scope:bp1_yearly_2020_influencing_partner = { - OR = { - is_imprisoned = yes - is_alive = no - } - } - } - animation = sadness - } - animation = personality_rational - } - #If the partner isn't dead or imprisoned, display them - right_portrait = { - trigger = { - scope:bp1_yearly_2020_influencing_partner = { - is_imprisoned = no - is_alive = yes - } - } - character = scope:bp1_yearly_2020_influencing_partner - animation = war_over_win - } - #If we picked one of the people to join our court, display that person - lower_left_portrait = { - trigger = { exists = scope:bp1_yearly_2021_new_courtier } - character = scope:bp1_yearly_2021_new_courtier - } - #Display the 'new heir' in question - lower_center_portrait = { - character = scope:bp1_yearly_2020_child_to_become_heir - } - lower_right_portrait = { - trigger = { - scope:bp1_yearly_2020_influencing_partner = { is_alive = no } - } - character = scope:bp1_yearly_2020_influencing_partner - } - immediate = { - #Lose the stress you were supposed to lose when rival/nemesis died - if = { - limit = { has_character_flag = bp1_yearly_2020_target_killed } - stress_impact = { - base = minor_stress_impact_loss - } - } - } - #Set designated heir - option = { - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { - scope:bp1_yearly_2020_influencing_partner = { - OR = { - is_imprisoned_by = scope:bp1_yearly_2020_target - is_alive = no - } - } - } - desc = bp1_yearly.2023.a_imprisoned_dead - } - triggered_desc = { - desc = bp1_yearly.2023.a - } - } - } - } - #Deal with opinion reactions to this - bp1_yearly_2020_heir_change_opinions_effect = yes - if = { - limit = { - scope:bp1_yearly_2020_influencing_partner = { is_alive = no } - } - bp1_yearly_2023_apply_dis_or_honorable_modifier_effect = { ADD = honorable REMOVE = dishonorable } - stress_impact = { - family_first = miniscule_stress_impact_loss - honest = miniscule_stress_impact_loss - } - } - send_interface_toast = { - title = designate_heir_interaction_notification - left_icon = root - right_icon = scope:bp1_yearly_2020_child_to_become_heir - set_designated_heir = scope:bp1_yearly_2020_child_to_become_heir - } - hidden_effect = { - if = { - limit = { exists = scope:bp1_yearly_2020_scorned_parent } - bp1_yearly_2020_chance_of_murderous_partner_effect = { MURDEROUS_PARTNER = scope:bp1_yearly_2020_scorned_parent } - } - } - } - #No, imprison them - option = { - name = { - text = { - first_valid = { - #If they successfully killed the rival/nemesis - triggered_desc = { - trigger = { has_character_flag = bp1_yearly_2020_target_killed } - desc = bp1_yearly.2023.b_killer - } - #If we just don't trust them - triggered_desc = { - desc = bp1_yearly.2023.b - } - } - } - } - trigger = { - scope:bp1_yearly_2020_influencing_partner = { - is_imprisoned = no - is_alive = yes - } - } - rightfully_imprison_character_effect = { TARGET = scope:bp1_yearly_2020_influencing_partner IMPRISONER = root } - #Sting more if they actually killed your rival/nemesis - if = { - limit = { has_character_flag = bp1_yearly_2020_target_killed } - bp1_yearly_2023_apply_dis_or_honorable_modifier_effect = { ADD = dishonorable REMOVE = honorable } - reverse_add_opinion = { - target = scope:bp1_yearly_2020_influencing_partner - modifier = betrayed_me_opinion - opinion = -50 - } - stress_impact = { - family_first = minor_stress_impact_gain - honest = medium_stress_impact_gain - craven = miniscule_stress_impact_loss - paranoid = minor_stress_impact_loss - } - } - else = { - reverse_add_opinion = { - target = scope:bp1_yearly_2020_influencing_partner - modifier = betrayed_me_opinion - opinion = -30 - } - stress_impact = { - honest = minor_stress_impact_gain - craven = miniscule_stress_impact_loss - paranoid = minor_stress_impact_loss - } - } - } - #No, I've changed my mind - option = { - name = { - text = { - first_valid = { - #I mean, _technically_ they didn't finish the job... - triggered_desc = { - trigger = { - scope:bp1_yearly_2020_influencing_partner = { - OR = { - is_imprisoned_by = scope:bp1_yearly_2020_target - is_alive = no - } - } - } - desc = bp1_yearly.2023.c_imprisoned_dead - } - #This isn't right - triggered_desc = { - desc = bp1_yearly.2023.c - } - } - } - } - #If the partner is available - if = { - limit = { - scope:bp1_yearly_2020_influencing_partner = { - is_imprisoned = no - is_alive = yes - } - } - #And we took the person option but didn't pick anyone, they can sort of understand - if = { - limit = { has_character_flag = bp1_yearly_2021_picked_none } - reverse_add_opinion = { - target = scope:bp1_yearly_2020_influencing_partner - modifier = insulted_opinion - opinion = -20 - } - stress_impact = { - craven = miniscule_stress_impact_gain - paranoid = minor_stress_impact_gain - } - } - #Otherwise, if they killed our rival/nemesis we're just being an ass - else_if = { - limit = { has_character_flag = bp1_yearly_2020_target_killed } - reverse_add_opinion = { - target = scope:bp1_yearly_2020_influencing_partner - modifier = betrayed_me_opinion - opinion = -50 - } - bp1_yearly_2023_apply_dis_or_honorable_modifier_effect = { ADD = dishonorable REMOVE = honorable } - stress_impact = { - family_first = minor_stress_impact_gain - honest = medium_stress_impact_gain - craven = minor_stress_impact_gain - paranoid = medium_stress_impact_gain - } - } - hidden_effect = { - bp1_yearly_2020_chance_of_murderous_partner_effect = { MURDEROUS_PARTNER = scope:bp1_yearly_2020_influencing_partner } - } - } - #If they're dead or imprisoned, nothing happens - } - after = { - remove_character_flag = bp1_yearly_2020_target_killed - remove_character_flag = bp1_yearly_2021_picked_none - } -} - -################################################## -# #Mopey consort wants some guidance -# by Filippa Gannholm Kirsten -# #bp1_yearly.2030 -################################################## -scripted_trigger bp1_yearly_2030_is_relevant_consort_trigger = { - is_available_ai_adult = yes - NOR = { - this = $TARGET$ - has_relation_nemesis = $TARGET$ - has_relation_best_friend = $TARGET$ - } -} - -scripted_effect bp1_yearly_2030_relationship_effect = { - #Starting as Potential Friends - if = { - limit = { - has_relation_potential_friend = $TARGET$ - } - random_list = { - #Increase friendship - Friends - 2 = { - trigger = { - can_set_relation_friend_trigger = { CHARACTER = $TARGET$ } - } - modifier = { - number_of_personality_traits_in_common = { - target = $TARGET$ - value >= 1 - } - factor = 2 - } - modifier = { - number_of_personality_traits_in_common = { - target = $TARGET$ - value >= 2 - } - factor = 3 - } - modifier = { - number_of_personality_traits_in_common = { - target = $TARGET$ - value >= 3 - } - factor = 4 - } - desc = bp1_yearly.2030.tt_friend - root = { - send_interface_toast = { - title = bp1_yearly.2030.tt_success - left_icon = scope:bp1_yearly_2030_mopey_consort - right_icon = scope:bp1_yearly_2030_target_consort - scope:bp1_yearly_2030_mopey_consort = { - improve_relationship_effect = { - TARGET = $TARGET$ - REASON = generic_encouraged_bonding_at_court - } - } - } - } - } - #Nothing happens - 1 = { - desc = bp1_yearly.2030.tt_nothing - } - #Decrease friendship - Potential Rival - 2 = { - desc = bp1_yearly.2030.tt_potential_rival - root = { - send_interface_toast = { - title = bp1_yearly.2030.tt_failure - left_icon = scope:bp1_yearly_2030_mopey_consort - right_icon = scope:bp1_yearly_2030_target_consort - scope:bp1_yearly_2030_mopey_consort = { - worsen_relationship_effect = { - TARGET = $TARGET$ - REASON = rival_forced_to_socialize - } - } - } - } - } - } - } - #Starting as Friends - else_if = { - limit = { - has_relation_friend = $TARGET$ - } - random_list = { - #Increase friendship - Best Friend - 2 = { - trigger = { - can_set_relation_best_friend_trigger = { CHARACTER = $TARGET$ } - } - modifier = { - number_of_personality_traits_in_common = { - target = $TARGET$ - value >= 1 - } - factor = 2 - } - modifier = { - number_of_personality_traits_in_common = { - target = $TARGET$ - value >= 2 - } - factor = 3 - } - modifier = { - number_of_personality_traits_in_common = { - target = $TARGET$ - value >= 3 - } - factor = 4 - } - desc = bp1_yearly.2030.tt_best_friend - root = { - send_interface_toast = { - title = bp1_yearly.2030.tt_success - left_icon = scope:bp1_yearly_2030_mopey_consort - right_icon = scope:bp1_yearly_2030_target_consort - scope:bp1_yearly_2030_mopey_consort = { - improve_relationship_effect = { - TARGET = $TARGET$ - REASON = best_friend_socializing - } - } - } - } - } - #Nothing happens - 1 = { - desc = bp1_yearly.2030.tt_nothing - } - #Decrease friendship - Potential Friend - 2 = { - desc = bp1_yearly.2030.tt_potential_rival - root = { - send_interface_toast = { - title = bp1_yearly.2030.tt_failure - left_icon = scope:bp1_yearly_2030_mopey_consort - right_icon = scope:bp1_yearly_2030_target_consort - scope:bp1_yearly_2030_mopey_consort = { - worsen_relationship_effect = { - TARGET = $TARGET$ - REASON = rival_forced_to_socialize - } - } - } - } - } - } - } - #Starting as Potential Rivals - else_if = { - limit = { - has_relation_potential_rival = $TARGET$ - } - random_list = { - #Increase friendship - Potential Friend - 2 = { - modifier = { - number_of_personality_traits_in_common = { - target = $TARGET$ - value >= 1 - } - factor = 2 - } - modifier = { - number_of_personality_traits_in_common = { - target = $TARGET$ - value >= 2 - } - factor = 3 - } - modifier = { - number_of_personality_traits_in_common = { - target = $TARGET$ - value >= 3 - } - factor = 4 - } - desc = bp1_yearly.2030.tt_potential_friend - root = { - send_interface_toast = { - title = bp1_yearly.2030.tt_success - left_icon = scope:bp1_yearly_2030_mopey_consort - right_icon = scope:bp1_yearly_2030_target_consort - scope:bp1_yearly_2030_mopey_consort = { - improve_relationship_effect = { - TARGET = $TARGET$ - REASON = generic_encouraged_bonding_at_court - } - } - } - } - } - #Nothing happens - 1 = { - desc = bp1_yearly.2030.tt_nothing - } - #Decrease friendship - Rival - 2 = { - desc = bp1_yearly.2030.tt_rival - root = { - send_interface_toast = { - title = bp1_yearly.2030.tt_failure - left_icon = scope:bp1_yearly_2030_mopey_consort - right_icon = scope:bp1_yearly_2030_target_consort - scope:bp1_yearly_2030_mopey_consort = { - worsen_relationship_effect = { - TARGET = $TARGET$ - REASON = rival_forced_to_socialize - } - } - } - } - } - } - } - #Starting as Rivals - else_if = { - limit = { - has_relation_rival = $TARGET$ - } - random_list = { - #Increase friendship - Potential Friend - 2 = { - modifier = { - number_of_personality_traits_in_common = { - target = $TARGET$ - value >= 1 - } - factor = 2 - } - modifier = { - number_of_personality_traits_in_common = { - target = $TARGET$ - value >= 2 - } - factor = 3 - } - modifier = { - number_of_personality_traits_in_common = { - target = $TARGET$ - value >= 3 - } - factor = 4 - } - desc = bp1_yearly.2030.tt_potential_friend - root = { - send_interface_toast = { - title = bp1_yearly.2030.tt_success - left_icon = scope:bp1_yearly_2030_mopey_consort - right_icon = scope:bp1_yearly_2030_target_consort - scope:bp1_yearly_2030_mopey_consort = { - improve_relationship_effect = { - TARGET = $TARGET$ - REASON = generic_encouraged_bonding_at_court - } - } - } - } - } - #Nothing happens - 1 = { - desc = bp1_yearly.2030.tt_nothing - } - #Decrease friendship - Nemesis - 2 = { - desc = bp1_yearly.2030.tt_nemesis - root = { - send_interface_toast = { - title = bp1_yearly.2030.tt_failure - left_icon = scope:bp1_yearly_2030_mopey_consort - right_icon = scope:bp1_yearly_2030_target_consort - scope:bp1_yearly_2030_mopey_consort = { - worsen_relationship_effect = { - TARGET = $TARGET$ - REASON = rival_forced_to_socialize - } - } - } - } - } - } - } - #Blank Slate - else = { - random_list = { - #Increase friendship - Potential Friend - 2 = { - modifier = { - number_of_personality_traits_in_common = { - target = $TARGET$ - value >= 1 - } - factor = 2 - } - modifier = { - number_of_personality_traits_in_common = { - target = $TARGET$ - value >= 2 - } - factor = 3 - } - modifier = { - number_of_personality_traits_in_common = { - target = $TARGET$ - value >= 3 - } - factor = 4 - } - desc = bp1_yearly.2030.tt_potential_friend - root = { - send_interface_toast = { - title = bp1_yearly.2030.tt_success - left_icon = scope:bp1_yearly_2030_mopey_consort - right_icon = scope:bp1_yearly_2030_target_consort - scope:bp1_yearly_2030_mopey_consort = { - improve_relationship_effect = { - TARGET = $TARGET$ - REASON = generic_encouraged_bonding_at_court - } - } - } - } - } - #Nothing happens - 1 = { - desc = bp1_yearly.2030.tt_nothing - } - #Decrease friendship - Nemesis - 2 = { - desc = bp1_yearly.2030.tt_potential_rival - root = { - send_interface_toast = { - title = bp1_yearly.2030.tt_failure - left_icon = scope:bp1_yearly_2030_mopey_consort - right_icon = scope:bp1_yearly_2030_target_consort - scope:bp1_yearly_2030_mopey_consort = { - worsen_relationship_effect = { - TARGET = $TARGET$ - REASON = rival_forced_to_socialize - } - } - } - } - } - } - } -} - -scripted_effect bp1_yearly_2030_improve_lowest_skill_effect = { - random_list = { - 1 = { - add_$SKILL$_skill = 1 - } - 1 = { - add_character_modifier = { - modifier = bp1_yearly_2030_failed_student_modifier - years = 5 - } - } - } -} - -#Credit to Hugo Cortell -scripted_effect bp1_yearly_2030_get_lowest_skill_effect = { - save_scope_value_as = { - name = lowest_character_skill - value = flag:diplomacy - } - save_scope_value_as = { - name = lowest_character_skill_value - value = diplomacy - } - #Let's make it a bit more random in case you have the same level in a lot of skills - random_list = { - 50 = { - if = { - limit = { martial <= scope:lowest_character_skill_value } - save_scope_value_as = { - name = lowest_character_skill - value = flag:martial - } - save_scope_value_as = { - name = lowest_character_skill_value - value = martial - } - } - if = { - limit = { stewardship <= scope:lowest_character_skill_value } - save_scope_value_as = { - name = lowest_character_skill - value = flag:stewardship - } - save_scope_value_as = { - name = lowest_character_skill_value - value = stewardship - } - } - if = { - limit = { intrigue <= scope:lowest_character_skill_value } - save_scope_value_as = { - name = lowest_character_skill - value = flag:intrigue - } - save_scope_value_as = { - name = lowest_character_skill_value - value = intrigue - } - } - if = { - limit = { learning <= scope:lowest_character_skill_value } - save_scope_value_as = { - name = lowest_character_skill - value = flag:learning - } - save_scope_value_as = { - name = lowest_character_skill_value - value = learning - } - } - } - 50 = { - if = { - limit = { learning <= scope:lowest_character_skill_value } - save_scope_value_as = { - name = lowest_character_skill - value = flag:learning - } - save_scope_value_as = { - name = lowest_character_skill_value - value = learning - } - } - if = { - limit = { intrigue <= scope:lowest_character_skill_value } - save_scope_value_as = { - name = lowest_character_skill - value = flag:intrigue - } - save_scope_value_as = { - name = lowest_character_skill_value - value = intrigue - } - } - if = { - limit = { stewardship <= scope:lowest_character_skill_value } - save_scope_value_as = { - name = lowest_character_skill - value = flag:stewardship - } - save_scope_value_as = { - name = lowest_character_skill_value - value = stewardship - } - } - if = { - limit = { martial <= scope:lowest_character_skill_value } - save_scope_value_as = { - name = lowest_character_skill - value = flag:martial - } - save_scope_value_as = { - name = lowest_character_skill_value - value = martial - } - } - } - 50 = { - if = { - limit = { learning <= scope:lowest_character_skill_value } - save_scope_value_as = { - name = lowest_character_skill - value = flag:learning - } - save_scope_value_as = { - name = lowest_character_skill_value - value = learning - } - } - if = { - limit = { martial <= scope:lowest_character_skill_value } - save_scope_value_as = { - name = lowest_character_skill - value = flag:martial - } - save_scope_value_as = { - name = lowest_character_skill_value - value = martial - } - } - if = { - limit = { intrigue <= scope:lowest_character_skill_value } - save_scope_value_as = { - name = lowest_character_skill - value = flag:intrigue - } - save_scope_value_as = { - name = lowest_character_skill_value - value = intrigue - } - } - if = { - limit = { stewardship <= scope:lowest_character_skill_value } - save_scope_value_as = { - name = lowest_character_skill - value = flag:stewardship - } - save_scope_value_as = { - name = lowest_character_skill_value - value = stewardship - } - } - } - 50 = { - if = { - limit = { learning <= scope:lowest_character_skill_value } - save_scope_value_as = { - name = lowest_character_skill - value = flag:learning - } - save_scope_value_as = { - name = lowest_character_skill_value - value = learning - } - } - if = { - limit = { martial <= scope:lowest_character_skill_value } - save_scope_value_as = { - name = lowest_character_skill - value = flag:martial - } - save_scope_value_as = { - name = lowest_character_skill_value - value = martial - } - } - if = { - limit = { intrigue <= scope:lowest_character_skill_value } - save_scope_value_as = { - name = lowest_character_skill - value = flag:intrigue - } - save_scope_value_as = { - name = lowest_character_skill_value - value = intrigue - } - } - if = { - limit = { stewardship <= scope:lowest_character_skill_value } - save_scope_value_as = { - name = lowest_character_skill - value = flag:stewardship - } - save_scope_value_as = { - name = lowest_character_skill_value - value = stewardship - } - } - if = { - limit = { diplomacy <= scope:lowest_character_skill_value } - save_scope_value_as = { - name = lowest_character_skill - value = flag:diplomacy - } - save_scope_value_as = { - name = lowest_character_skill_value - value = diplomacy - } - } - } - } -} - -bp1_yearly.2030 = { - type = character_event - content_source = dlc_006 - title = bp1_yearly.2030.t - desc = bp1_yearly.2030.desc - theme = friendly - override_background = { reference = relaxing_room } - left_portrait = { - character = root - animation = worry - } - right_portrait = { - character = scope:bp1_yearly_2030_mopey_consort - animation = sadness - } - lower_right_portrait = scope:bp1_yearly_2030_target_consort - #Set up the cooldown - cooldown = { years = 5 } - trigger = { - #DLC check - has_bp1_dlc_trigger = yes - #Standard checks - is_available_adult = yes - is_playable_character = yes - any_consort = { - is_available_ai_adult = yes - save_temporary_scope_as = first_consort - } - any_consort = { - bp1_yearly_2030_is_relevant_consort_trigger = { TARGET = scope:first_consort } - } - is_at_war = no - } - weight_multiplier = { - base = 1 - modifier = { - any_consort = { - count >= 3 - } - add = 2 - } - modifier = { - any_consort = { - count = 4 - } - add = 2 - } - } - immediate = { - #play_music_cue = "mx_cue_low_key_positive" - #Find a consort - random_consort = { - limit = { is_available_ai_adult = yes } - save_scope_as = bp1_yearly_2030_mopey_consort - } - #Find a ... lover to be? - if = { - limit = { - OR = { - has_trait = lustful - has_trait = seducer - } - scope:bp1_yearly_2030_mopey_consort = { - NOT = { has_trait = chaste } - OR = { - has_sexuality = bisexual - has_sexuality = homosexual - } - } - any_consort = { - can_set_relation_lover_trigger = { CHARACTER = scope:bp1_yearly_2030_mopey_consort } - is_available_ai_adult = yes - this != scope:bp1_yearly_2030_mopey_consort - } - } - random_consort = { - limit = { - NOT = { has_trait = chaste } - can_set_relation_lover_trigger = { CHARACTER = scope:bp1_yearly_2030_mopey_consort } - bp1_yearly_2030_is_relevant_consort_trigger = { TARGET = scope:bp1_yearly_2030_mopey_consort } - } - save_scope_as = bp1_yearly_2030_target_consort - } - scope:bp1_yearly_2030_mopey_consort = { add_character_flag = bp1_yearly_2030_potential_lover_exists } - } - #Otherwise find another consort who can do relation stuff with this consort - else = { - random_consort = { - limit = { - bp1_yearly_2030_is_relevant_consort_trigger = { TARGET = scope:bp1_yearly_2030_mopey_consort } - } - save_scope_as = bp1_yearly_2030_target_consort - } - } - #Find the lowest skill to improve - scope:bp1_yearly_2030_mopey_consort = { bp1_yearly_2030_get_lowest_skill_effect = yes } - } - #Befriend other consort - option = { - name = bp1_yearly.2030.a - trigger = { exists = scope:bp1_yearly_2030_target_consort } - flavor = { - first_valid = { - triggered_desc = { - trigger = { - OR = { - has_trait = craven - has_trait = paranoid - has_trait = reclusive - } - } - #But what if they end up discussing me... - desc = bp1_yearly.2030.a_tt_paranoia - } - triggered_desc = { - trigger = { has_trait = gregarious } - #I'm sure this will work out nicely. - desc = bp1_yearly.2030.a_tt_gregarious - } - } - } - scope:bp1_yearly_2030_mopey_consort = { - bp1_yearly_2030_relationship_effect = { TARGET = scope:bp1_yearly_2030_target_consort } - } - stress_impact = { - craven = miniscule_stress_impact_gain - reclusive = miniscule_stress_impact_gain - paranoid = minor_stress_impact_gain - gregarious = miniscule_stress_impact_loss - } - ai_chance = { - base = 5 - #Paranoid be paranoid - modifier = { - has_trait = paranoid - add = -50 - } - modifier = { - has_trait = gregarious - add = 20 - } - ai_value_modifier = { - ai_sociability = 1 - ai_compassion = 0.5 - } - } - } - #Befriend with benefits - option = { - name = bp1_yearly.2030.b - trigger = { - scope:bp1_yearly_2030_mopey_consort = { has_character_flag = bp1_yearly_2030_potential_lover_exists } - OR = { - has_trait = lustful - has_trait = seducer - } - } - flavor = bp1_yearly.2030.b_tt - scope:bp1_yearly_2030_mopey_consort = { - random_list = { - #Lover - 1 = { - modifier = { - number_of_personality_traits_in_common = { - target = scope:bp1_yearly_2030_target_consort - value >= 1 - } - factor = 2 - } - modifier = { - number_of_personality_traits_in_common = { - target = scope:bp1_yearly_2030_target_consort - value >= 2 - } - factor = 3 - } - modifier = { - number_of_personality_traits_in_common = { - target = scope:bp1_yearly_2030_target_consort - value >= 3 - } - factor = 4 - } - desc = bp1_yearly.2030.tt_lover - root = { - send_interface_toast = { - title = bp1_yearly.2030.tt_success - left_icon = scope:bp1_yearly_2030_mopey_consort - right_icon = scope:bp1_yearly_2030_target_consort - scope:bp1_yearly_2030_mopey_consort = { - set_relation_lover = { reason = lover_consorts_encouraged target = scope:bp1_yearly_2030_target_consort involved_character = root } - } - stress_impact = { - lustful = miniscule_stress_impact_loss - } - } - } - } - #Damage relation - 1 = { - desc = bp1_yearly.2030.tt_potential_rival - #No can do - modifier = { - scope:bp1_yearly_2030_target_consort = { has_trait = chaste } - factor = 10 - } - root = { - send_interface_toast = { - title = bp1_yearly.2030.tt_failure - left_icon = scope:bp1_yearly_2030_mopey_consort - right_icon = scope:bp1_yearly_2030_target_consort - scope:bp1_yearly_2030_mopey_consort = { - add_opinion = { - target = scope:bp1_yearly_2030_target_consort - modifier = awkward_opinion - opinion = -15 - } - reverse_add_opinion = { - target = scope:bp1_yearly_2030_target_consort - modifier = awkward_opinion - opinion = -15 - } - } - } - } - } - } - } - #This is a player option - ai_chance = { - base = 0 - } - } - #Improve a skill - option = { - name = bp1_yearly.2030.c - scope:bp1_yearly_2030_mopey_consort = { - switch = { - trigger = scope:lowest_character_skill - flag:diplomacy = { - bp1_yearly_2030_improve_lowest_skill_effect = { SKILL = diplomacy } - } - flag:martial = { - bp1_yearly_2030_improve_lowest_skill_effect = { SKILL = martial } - } - flag:stewardship = { - bp1_yearly_2030_improve_lowest_skill_effect = { SKILL = stewardship } - } - flag:intrigue = { - bp1_yearly_2030_improve_lowest_skill_effect = { SKILL = intrigue } - } - flag:learning = { - bp1_yearly_2030_improve_lowest_skill_effect = { SKILL = learning } - } - } - } - stress_impact = { - ambitious = miniscule_stress_impact_loss - diligent = miniscule_stress_impact_loss - lazy = minor_stress_impact_gain - } - ai_chance = { - base = 10 - modifier = { - has_trait = ambitious - add = 20 - } - ai_value_modifier = { - ai_rationality = 1 - } - } - } - #I have more important matters to tend to - option = { - name = bp1_yearly.2030.d - reverse_add_opinion = { - target = scope:bp1_yearly_2030_mopey_consort - modifier = insulted_opinion - opinion = -15 - } - stress_impact = { - gregarious = minor_stress_impact_gain - ambitious = minor_stress_impact_gain - } - ai_chance = { - base = 5 - modifier = { - has_trait = callous - add = 20 - } - ai_value_modifier = { - ai_sociability = -1 - } - } - } - after = { - scope:bp1_yearly_2030_mopey_consort = { - remove_character_flag = bp1_yearly_2030_potential_lover_exists - } - } -} - -################################################## -# #Consort is upset with other consort -# by Filippa Gannholm Kirsten -# #bp1_yearly.2040 -################################################## -bp1_yearly.2040 = { - type = character_event - content_source = dlc_006 - title = bp1_yearly.2040.t - desc = { - desc = bp1_yearly.2040.desc - first_valid = { - triggered_desc = { - trigger = { - scope:bp1_yearly_2040_upset_consort = { has_trait = paranoid } - } - desc = bp1_yearly.2040.desc_paranoia - } - triggered_desc = { - desc = bp1_yearly.2040.desc_default - } - } - desc = bp1_yearly.2040.desc_outro - } - theme = unfriendly - override_background = { reference = relaxing_room } - left_portrait = { - character = root - animation = shock - } - right_portrait = { - character = scope:bp1_yearly_2040_upset_consort - animation = rage - } - lower_center_portrait = { - character = scope:bp1_yearly_2040_target_consort - } - #Set up the cooldown - cooldown = { years = 5 } - trigger = { - #DLC check - has_bp1_dlc_trigger = yes - #Standard checks - is_available_adult = yes - is_playable_character = yes - any_consort = { - is_available_ai_adult = yes - save_temporary_scope_as = first_consort - } - any_consort = { - bp1_yearly_2030_is_relevant_consort_trigger = { TARGET = scope:first_consort } - } - } - weight_multiplier = { - base = 1 - modifier = { - any_consort = { - count >= 3 - } - add = 2 - } - modifier = { - any_consort = { - count = 4 - } - add = 2 - } - modifier = { - any_consort = { - OR = { - has_trait = vengeful - has_trait = deceitful - has_trait = sadistic - has_trait = wrathful - } - has_trait = paranoid - } - add = 2 - } - } - immediate = { - #play_music_cue = "mx_cue_low_key_positive" - #Find a consort - random_consort = { - limit = { - is_available_ai_adult = yes - has_trait = paranoid - } - alternative_limit = { is_available_ai_adult = yes } - save_scope_as = bp1_yearly_2040_upset_consort - } - #Find a target consort - random_consort = { - limit = { - bp1_yearly_2030_is_relevant_consort_trigger = { TARGET = scope:bp1_yearly_2040_upset_consort } - } - save_scope_as = bp1_yearly_2040_target_consort - } - } - #Soothe them - option = { - name = bp1_yearly.2040.a - flavor = bp1_yearly.2040.a_tt - scope:bp1_yearly_2040_upset_consort = { - random_list = { - 3 = { - desc = bp1_yearly.2040.tt_success - add_opinion = { - target = scope:bp1_yearly_2040_target_consort - modifier = friendliness_opinion - opinion = 15 - } - reverse_add_opinion = { - target = scope:bp1_yearly_2040_target_consort - modifier = friendliness_opinion - opinion = 15 - } - } - 4 = { - desc = bp1_yearly.2040.tt_critical_success - root = { - send_interface_toast = { - title = bp1_yearly.2030.tt_success - left_icon = scope:bp1_yearly_2040_upset_consort - right_icon = scope:bp1_yearly_2040_target_consort - scope:bp1_yearly_2040_upset_consort = { - improve_relationship_effect = { - TARGET = scope:bp1_yearly_2040_target_consort - REASON = generic_encouraged_bonding_at_court - } - } - } - } - } - #_Befriend_ you say - 1 = { - desc = bp1_yearly.2040.tt_severe_success - trigger = { - OR = { - has_trait = gregarious - has_trait = compassionate - has_trait = diligent - has_trait = ambitious - has_trait = deceitful - } - can_start_scheme = { - type = befriend - target_character = scope:bp1_yearly_2040_target_consort - } - } - start_scheme = { - type = befriend - target_character = scope:bp1_yearly_2040_target_consort - } - } - } - } - ai_chance = { - base = 100 - } - } - #Egg them on - option = { - name = bp1_yearly.2040.b - flavor = bp1_yearly.2040.b_tt - scope:bp1_yearly_2040_upset_consort = { - random_list = { - 3 = { - desc = bp1_yearly.2040.tt_failure - add_opinion = { - target = scope:bp1_yearly_2040_target_consort - modifier = unfriendly_opinion - opinion = -15 - } - reverse_add_opinion = { - target = scope:bp1_yearly_2040_target_consort - modifier = unfriendly_opinion - opinion = -15 - } - } - 4 = { - desc = bp1_yearly.2040.tt_critical_failure - root = { - send_interface_toast = { - title = bp1_yearly.2030.tt_failure - left_icon = scope:bp1_yearly_2040_upset_consort - right_icon = scope:bp1_yearly_2040_target_consort - scope:bp1_yearly_2040_upset_consort = { - worsen_relationship_effect = { - TARGET = scope:bp1_yearly_2040_target_consort - REASON = rival_spouses_do_not_get_along - } - } - } - } - } - #I have been slighted - 1 = { - desc = bp1_yearly.2040.tt_severe_failure - trigger = { - OR = { - has_trait = vengeful - has_trait = deceitful - has_trait = sadistic - has_trait = wrathful - } - has_trait = paranoid - can_start_scheme = { - type = murder - target_character = scope:bp1_yearly_2040_target_consort - } - } - modifier = { - opinion = { - target = scope:bp1_yearly_2040_target_consort - value <= -10 - } - factor = 1.5 - } - #MURDER VENGEANCE reeee - start_scheme = { - type = murder - target_character = scope:bp1_yearly_2040_target_consort - } - } - } - } - stress_impact = { - honest = minor_stress_impact_gain - } - ai_chance = { - base = 100 - } - } - #Diplomacy - amicable resolution - option = { - name = bp1_yearly.2040.c - flavor = bp1_yearly.2040.c_tt - trigger = { diplomacy >= 10 } - send_interface_toast = { - title = bp1_yearly.2030.tt_success - left_icon = scope:bp1_yearly_2040_upset_consort - right_icon = scope:bp1_yearly_2040_target_consort - scope:bp1_yearly_2040_upset_consort = { - improve_relationship_effect = { - TARGET = scope:bp1_yearly_2040_target_consort - REASON = generic_encouraged_bonding_at_court - } - } - } - stress_impact = { - just = miniscule_stress_impact_loss - cynical = miniscule_stress_impact_gain - shy = minor_stress_impact_gain - } - ai_chance = { - base = 100 - } - } - #I have more important matters to tend to - option = { - name = bp1_yearly.2040.d - flavor = bp1_yearly.2040.d_tt - scope:bp1_yearly_2040_upset_consort = { - random_list = { - 4 = { - desc = bp1_yearly.2040.tt_success - root = { - send_interface_toast = { - title = bp1_yearly.2030.tt_success - left_icon = scope:bp1_yearly_2040_upset_consort - right_icon = scope:bp1_yearly_2040_target_consort - scope:bp1_yearly_2040_upset_consort = { - improve_relationship_effect = { - TARGET = scope:bp1_yearly_2040_target_consort - REASON = generic_encouraged_bonding_at_court - } - } - } - } - } - 4 = { - desc = bp1_yearly.2040.tt_failure - root = { - send_interface_toast = { - title = bp1_yearly.2030.tt_failure - left_icon = scope:bp1_yearly_2040_upset_consort - right_icon = scope:bp1_yearly_2040_target_consort - scope:bp1_yearly_2040_upset_consort = { - worsen_relationship_effect = { - TARGET = scope:bp1_yearly_2040_target_consort - REASON = rival_spouses_do_not_get_along - } - } - } - } - } - #I have been slighted - 1 = { - desc = bp1_yearly.2040.tt_severe_failure - trigger = { - OR = { - has_trait = vengeful - has_trait = deceitful - has_trait = sadistic - has_trait = wrathful - } - has_trait = paranoid - can_start_scheme = { - type = murder - target_character = scope:bp1_yearly_2040_target_consort - } - } - modifier = { - opinion = { - target = scope:bp1_yearly_2040_target_consort - value <= -10 - } - factor = 1.5 - } - #MURDER VENGEANCE reeee - start_scheme = { - type = murder - target_character = scope:bp1_yearly_2040_target_consort - } - } - } - } - reverse_add_opinion = { - target = scope:bp1_yearly_2040_upset_consort - modifier = ignored_concerns - opinion = -15 - } - stress_impact = { - gregarious = minor_stress_impact_gain - } - ai_chance = { - base = 100 - } - } -} - -################################################## -# #Friendly consorts want to start a study circle -# by Filippa Gannholm Kirsten -# #bp1_yearly.2050 -################################################## -scripted_trigger bp1_yearly_2050_is_relevant_consort_trigger = { - is_available_ai_adult = yes - NOT = { this = $TARGET$ } - OR = { - has_relation_potential_friend = $TARGET$ - has_relation_friend = $TARGET$ - has_relation_best_friend = $TARGET$ - opinion = { - target = $TARGET$ - value >= medium_positive_opinion - } - } -} - -scripted_effect bp1_yearly_2050_find_subsequent_highest_skill_effect = { - if = { - limit = { diplomacy > scope:highest_consort_skill_value } - save_scope_value_as = { - name = highest_consort_skill - value = flag:diplomacy - } - save_scope_value_as = { - name = highest_consort_skill_value - value = diplomacy - } - save_scope_as = highest_consort_skill_person - } - if = { - limit = { martial > scope:highest_consort_skill_value } - save_scope_value_as = { - name = highest_consort_skill - value = flag:martial - } - save_scope_value_as = { - name = highest_consort_skill_value - value = martial - } - save_scope_as = highest_consort_skill_person - } - if = { - limit = { stewardship > scope:highest_consort_skill_value } - save_scope_value_as = { - name = highest_consort_skill - value = flag:stewardship - } - save_scope_value_as = { - name = highest_consort_skill_value - value = stewardship - } - save_scope_as = highest_consort_skill_person - } - if = { - limit = { intrigue > scope:highest_consort_skill_value } - save_scope_value_as = { - name = highest_consort_skill - value = flag:intrigue - } - save_scope_value_as = { - name = highest_consort_skill_value - value = intrigue - } - save_scope_as = highest_consort_skill_person - } - if = { - limit = { learning > scope:highest_consort_skill_value } - save_scope_value_as = { - name = highest_consort_skill - value = flag:learning - } - save_scope_value_as = { - name = highest_consort_skill_value - value = learning - } - save_scope_as = highest_consort_skill_person - } -} - -scripted_effect bp1_yearly_2050_find_highest_skill_effect = { - scope:bp1_yearly_2050_first_consort = { - save_scope_value_as = { - name = highest_consort_skill - value = flag:diplomacy - } - save_scope_value_as = { - name = highest_consort_skill_value - value = diplomacy - } - save_scope_as = highest_consort_skill_person - if = { - limit = { martial > scope:highest_consort_skill_value } - save_scope_value_as = { - name = highest_consort_skill - value = flag:martial - } - save_scope_value_as = { - name = highest_consort_skill_value - value = martial - } - save_scope_as = highest_consort_skill_person - } - if = { - limit = { stewardship > scope:highest_consort_skill_value } - save_scope_value_as = { - name = highest_consort_skill - value = flag:stewardship - } - save_scope_value_as = { - name = highest_consort_skill_value - value = stewardship - } - save_scope_as = highest_consort_skill_person - } - if = { - limit = { intrigue > scope:highest_consort_skill_value } - save_scope_value_as = { - name = highest_consort_skill - value = flag:intrigue - } - save_scope_value_as = { - name = highest_consort_skill_value - value = intrigue - } - save_scope_as = highest_consort_skill_person - } - if = { - limit = { learning > scope:highest_consort_skill_value } - save_scope_value_as = { - name = highest_consort_skill - value = flag:learning - } - save_scope_value_as = { - name = highest_consort_skill_value - value = learning - } - save_scope_as = highest_consort_skill_person - } - } - scope:bp1_yearly_2050_second_consort = { - bp1_yearly_2050_find_subsequent_highest_skill_effect = yes - } - if = { - limit = { exists = scope:bp1_yearly_2050_third_consort } - scope:bp1_yearly_2050_third_consort = { - bp1_yearly_2050_find_subsequent_highest_skill_effect = yes - } - } - if = { - limit = { exists = scope:bp1_yearly_2050_fourth_consort } - scope:bp1_yearly_2050_fourth_consort = { - bp1_yearly_2050_find_subsequent_highest_skill_effect = yes - } - } -} - -scripted_effect bp1_yearly_2050_apply_skill_effect = { - scope:bp1_yearly_2050_first_consort = { - add_$SKILL$_skill = 1 - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 20 - } - } - scope:bp1_yearly_2050_second_consort = { - add_$SKILL$_skill = 1 - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 20 - } - } - if = { - limit = { exists = scope:bp1_yearly_2050_third_consort } - scope:bp1_yearly_2050_third_consort = { - add_$SKILL$_skill = 1 - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 20 - } - } - } - if = { - limit = { exists = scope:bp1_yearly_2050_fourth_consort } - scope:bp1_yearly_2050_fourth_consort = { - add_$SKILL$_skill = 1 - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 20 - } - } - } -} - -bp1_yearly.2050 = { - type = character_event - content_source = dlc_006 - title = bp1_yearly.2050.t - desc = { - first_valid = { - triggered_desc = { - trigger = { has_trait = paranoid } - desc = bp1_yearly.2050.desc_intro_paranoid - } - triggered_desc = { - desc = bp1_yearly.2050.desc_intro - } - } - desc = bp1_yearly.2050.desc - first_valid = { - triggered_desc = { - trigger = { - scope:highest_consort_skill = flag:diplomacy - } - desc = bp1_yearly.2050.desc_diplomacy - } - triggered_desc = { - trigger = { - scope:highest_consort_skill = flag:martial - } - desc = bp1_yearly.2050.desc_martial - } - triggered_desc = { - trigger = { - scope:highest_consort_skill = flag:stewardship - } - desc = bp1_yearly.2050.desc_stewardship - } - triggered_desc = { - trigger = { - scope:highest_consort_skill = flag:intrigue - } - desc = bp1_yearly.2050.desc_intrigue - } - triggered_desc = { - trigger = { - scope:highest_consort_skill = flag:learning - } - desc = bp1_yearly.2050.desc_learning - } - } - first_valid = { - triggered_desc = { - trigger = { - exists = scope:bp1_yearly_2050_fourth_consort - } - desc = bp1_yearly.2050.desc_quartet - } - triggered_desc = { - trigger = { - exists = scope:bp1_yearly_2050_third_consort - NOT = { exists = scope:bp1_yearly_2050_fourth_consort } - } - desc = bp1_yearly.2050.desc_trio - } - triggered_desc = { - trigger = { - NOR = { - exists = scope:bp1_yearly_2050_third_consort - exists = scope:bp1_yearly_2050_fourth_consort - } - } - desc = bp1_yearly.2050.desc_duo - } - } - triggered_desc = { - trigger = { has_trait = paranoid } - desc = bp1_yearly.2050.desc_paranoid - } - } - theme = friendly - override_background = { reference = courtyard } - left_portrait = { - character = root - triggered_animation = { - trigger = { has_trait = paranoid } - animation = personality_cynical - } - animation = personality_compassionate - } - right_portrait = { - character = scope:bp1_yearly_2050_first_consort - animation = personality_rational - } - lower_left_portrait = { - trigger = { exists = scope:bp1_yearly_2050_fourth_consort } - character = scope:bp1_yearly_2050_fourth_consort - } - lower_center_portrait = { - trigger = { exists = scope:bp1_yearly_2050_third_consort } - character = scope:bp1_yearly_2050_third_consort - } - lower_right_portrait = { - trigger = { exists = scope:bp1_yearly_2050_second_consort } - character = scope:bp1_yearly_2050_second_consort - } - #Set up the cooldown - cooldown = { years = 10 } - trigger = { - #DLC check - has_bp1_dlc_trigger = yes - #Standard checks - is_available_adult = yes - is_playable_character = yes - any_consort = { - is_available_ai_adult = yes - save_temporary_scope_as = first_consort - root = { - any_consort = { - bp1_yearly_2050_is_relevant_consort_trigger = { TARGET = scope:first_consort } - } - } - } - } - weight_multiplier = { - base = 1 - modifier = { - any_consort = { - count >= 3 - } - add = 2 - } - modifier = { - any_consort = { - count = 4 - } - add = 2 - } - modifier = { - any_consort = { - is_available_ai_adult = yes - save_temporary_scope_as = first_consort - root = { - any_consort = { - bp1_yearly_2050_is_relevant_consort_trigger = { TARGET = scope:first_consort } - } - } - } - add = 2 - } - } - immediate = { - #play_music_cue = "mx_cue_low_key_positive" - #Find a consort - random_consort = { - limit = { - is_available_ai_adult = yes - save_temporary_scope_as = first_consort - root = { - any_consort = { - bp1_yearly_2050_is_relevant_consort_trigger = { TARGET = scope:first_consort } - } - } - } - save_scope_as = bp1_yearly_2050_first_consort - } - #Find our second consort - random_consort = { - limit = { - bp1_yearly_2050_is_relevant_consort_trigger = { TARGET = scope:bp1_yearly_2050_first_consort } - } - save_scope_as = bp1_yearly_2050_second_consort - } - #Find any additional consort - random_consort = { - limit = { - OR = { - bp1_yearly_2050_is_relevant_consort_trigger = { TARGET = scope:bp1_yearly_2050_first_consort } - AND = { - exists = scope:bp1_yearly_2050_second_consort - bp1_yearly_2050_is_relevant_consort_trigger = { TARGET = scope:bp1_yearly_2050_second_consort } - } - } - NOR = { - this = scope:bp1_yearly_2050_first_consort - this = scope:bp1_yearly_2050_second_consort - } - } - save_scope_as = bp1_yearly_2050_third_consort - } - random_consort = { - limit = { - OR = { - bp1_yearly_2050_is_relevant_consort_trigger = { TARGET = scope:bp1_yearly_2050_first_consort } - AND = { - exists = scope:bp1_yearly_2050_second_consort - bp1_yearly_2050_is_relevant_consort_trigger = { TARGET = scope:bp1_yearly_2050_second_consort } - } - AND = { - exists = scope:bp1_yearly_2050_third_consort - bp1_yearly_2050_is_relevant_consort_trigger = { TARGET = scope:bp1_yearly_2050_third_consort } - } - } - NOR = { - this = scope:bp1_yearly_2050_first_consort - this = scope:bp1_yearly_2050_second_consort - this = scope:bp1_yearly_2050_third_consort - } - } - save_scope_as = bp1_yearly_2050_fourth_consort - } - #See who is most knowledgable in the pinpointed skill to lead the teaching - bp1_yearly_2050_find_highest_skill_effect = yes - #If paranoid, this is a traumatic memory - if = { - limit = { - has_trait = paranoid - exists = scope:bp1_yearly_2050_fourth_consort - } - create_character_memory = { - type = ganged_up_on_four_memory - participants = { - consort_1 = scope:bp1_yearly_2050_first_consort - consort_2 = scope:bp1_yearly_2050_second_consort - consort_3 = scope:bp1_yearly_2050_third_consort - consort_4 = scope:bp1_yearly_2050_fourth_consort - } - } - } - #Three consorts - else_if = { - limit = { - has_trait = paranoid - exists = scope:bp1_yearly_2050_third_consort - NOT = { exists = scope:bp1_yearly_2050_fourth_consort } - } - create_character_memory = { - type = ganged_up_on_three_memory - participants = { - consort_1 = scope:bp1_yearly_2050_first_consort - consort_2 = scope:bp1_yearly_2050_second_consort - consort_3 = scope:bp1_yearly_2050_third_consort - } - } - } - } - #Agree to their request - option = { - name = bp1_yearly.2050.a - flavor = bp1_yearly.2050.a_tt - pay_short_term_gold = { - target = scope:highest_consort_skill_person - gold = major_gold_value - } - capital_county = { - add_county_modifier = { - modifier = bp1_yearly_2050_development_modifier - years = 10 - } - } - if = { - limit = { scope:highest_consort_skill = flag:diplomacy } - bp1_yearly_2050_apply_skill_effect = { SKILL = diplomacy } - } - else_if = { - limit = { scope:highest_consort_skill = flag:martial } - bp1_yearly_2050_apply_skill_effect = { SKILL = martial } - } - else_if = { - limit = { scope:highest_consort_skill = flag:stewardship } - bp1_yearly_2050_apply_skill_effect = { SKILL = stewardship } - } - else_if = { - limit = { scope:highest_consort_skill = flag:intrigue } - bp1_yearly_2050_apply_skill_effect = { SKILL = intrigue } - } - else_if = { - limit = { scope:highest_consort_skill = flag:learning } - bp1_yearly_2050_apply_skill_effect = { SKILL = learning } - } - stress_impact = { - greedy = medium_stress_impact_gain - paranoid = minor_stress_impact_gain - generous = miniscule_stress_impact_loss - } - ai_chance = { - base = 100 - } - } - #Compromise? - option = { - name = bp1_yearly.2050.b - flavor = bp1_yearly.2050.b_tt_greedy - trigger = { has_trait = greedy } - pay_short_term_gold = { - target = scope:highest_consort_skill_person - gold = { - value = major_gold_value - multiply = 0.5 - } - } - capital_county = { - add_county_modifier = { - modifier = bp1_yearly_2050_compromise_development_modifier - years = 10 - } - } - stress_impact = { - generous = minor_stress_impact_gain - } - ai_chance = { - base = 100 - } - } - #This is annoying/stressful - imprison them - option = { - name = bp1_yearly.2050.c - flavor = { - first_valid = { - triggered_desc = { - trigger = { has_trait = paranoid } - desc = bp1_yearly.2050.c_tt_paranoid - } - triggered_desc = { - trigger = { - OR = { - has_trait = sadistic - has_trait = wrathful - has_trait = irritable - } - } - desc = bp1_yearly.2050.c_tt_irritable - } - } - } - trigger = { - OR = { - has_trait = sadistic - has_trait = wrathful - has_trait = irritable - has_trait = paranoid - } - } - rightfully_imprison_character_effect = { TARGET = scope:bp1_yearly_2050_first_consort IMPRISONER = root } - rightfully_imprison_character_effect = { TARGET = scope:bp1_yearly_2050_second_consort IMPRISONER = root } - if = { - limit = { exists = scope:bp1_yearly_2050_third_consort } - rightfully_imprison_character_effect = { TARGET = scope:bp1_yearly_2050_third_consort IMPRISONER = root } - } - if = { - limit = { exists = scope:bp1_yearly_2050_fourth_consort } - rightfully_imprison_character_effect = { TARGET = scope:bp1_yearly_2050_fourth_consort IMPRISONER = root } - } - stress_impact = { - paranoid = minor_stress_impact_loss - irritable = minor_stress_impact_loss - just = medium_stress_impact_gain - } - ai_chance = { - base = 100 - } - } - #I don't believe in this - option = { - name = bp1_yearly.2050.d - flavor = bp1_yearly.2050.d_tt - reverse_add_opinion = { - target = scope:bp1_yearly_2050_first_consort - modifier = dismissed_me_opinion - opinion = -15 - } - reverse_add_opinion = { - target = scope:bp1_yearly_2050_second_consort - modifier = dismissed_me_opinion - opinion = -15 - } - if = { - limit = { exists = scope:bp1_yearly_2050_third_consort } - reverse_add_opinion = { - target = scope:bp1_yearly_2050_third_consort - modifier = dismissed_me_opinion - opinion = -15 - } - } - if = { - limit = { exists = scope:bp1_yearly_2050_fourth_consort } - reverse_add_opinion = { - target = scope:bp1_yearly_2050_fourth_consort - modifier = dismissed_me_opinion - opinion = -15 - } - } - stress_impact = { - generous = minor_stress_impact_gain - } - ai_chance = { - base = 100 - } - } -} - -################################################## -# #Friendly consorts want to tutor other consort's child -# by Filippa Gannholm Kirsten -# #bp1_yearly.2060 -################################################## -scripted_trigger bp1_yearly_2060_is_relevant_child_trigger = { - is_available_ai = yes - is_child_of = root - age > 5 - age < 20 -} - -scripted_trigger bp1_yearly_2060_is_relevant_consort_trigger = { - is_available_ai_adult = yes - NOT = { this = $TARGET$ } - OR = { - has_relation_potential_friend = $TARGET$ - has_relation_friend = $TARGET$ - has_relation_best_friend = $TARGET$ - opinion = { - target = $TARGET$ - value >= medium_positive_opinion - } - } - any_child = { - bp1_yearly_2060_is_relevant_child_trigger = yes - } - highest_skill = $SKILL$ -} - -scripted_trigger bp1_yearly_2060_has_matching_consort_with_highest_skill_trigger = { - is_available_ai_adult = yes - save_temporary_scope_as = first_consort - OR = { - AND = { - highest_skill = diplomacy - root = { - any_consort = { - bp1_yearly_2060_is_relevant_consort_trigger = { TARGET = scope:first_consort SKILL = diplomacy } - } - } - } - AND = { - highest_skill = martial - root = { - any_consort = { - bp1_yearly_2060_is_relevant_consort_trigger = { TARGET = scope:first_consort SKILL = martial } - highest_skill = martial - } - } - } - AND = { - highest_skill = stewardship - root = { - any_consort = { - bp1_yearly_2060_is_relevant_consort_trigger = { TARGET = scope:first_consort SKILL = stewardship } - highest_skill = stewardship - } - } - } - AND = { - highest_skill = intrigue - root = { - any_consort = { - bp1_yearly_2060_is_relevant_consort_trigger = { TARGET = scope:first_consort SKILL = intrigue } - highest_skill = intrigue - } - } - } - AND = { - highest_skill = learning - root = { - any_consort = { - bp1_yearly_2060_is_relevant_consort_trigger = { TARGET = scope:first_consort SKILL = learning } - highest_skill = learning - } - } - } - } -} - -scripted_effect bp1_yearly_2060_find_high_skill_tutor_effect = { - scope:bp1_yearly_2060_first_consort = { - save_scope_as = bp1_yearly_2060_high_skill_tutoring_consort - } - if = { - limit = { scope:bp1_yearly_2060_second_consort.$SKILL$ > scope:bp1_yearly_2060_high_skill_tutoring_consort.$SKILL$ } - scope:bp1_yearly_2060_second_consort = { - save_scope_as = bp1_yearly_2060_high_skill_tutoring_consort - } - } -} - -scripted_effect bp1_yearly_2060_find_low_skill_tutor_effect = { - scope:bp1_yearly_2060_first_consort = { - save_scope_as = bp1_yearly_2060_low_skill_tutoring_consort - } - if = { - limit = { scope:bp1_yearly_2060_second_consort.$SKILL$ > scope:bp1_yearly_2060_low_skill_tutoring_consort.$SKILL$ } - scope:bp1_yearly_2060_second_consort = { - save_scope_as = bp1_yearly_2060_low_skill_tutoring_consort - } - } -} - -scripted_effect bp1_yearly_2060_bolstered_duel_effect = { - duel = { - skill = $SKILL$ - value = average_skill_rating - 75 = { - desc = bp1_yearly.2060.tt_success - scope:bp1_yearly_2060_target_child = { - add_$SKILL$_skill = 1 - add_opinion = { - target = scope:bp1_yearly_2060_first_consort - modifier = tutored_me_opinion - opinion = 10 - } - add_opinion = { - target = scope:bp1_yearly_2060_second_consort - modifier = tutored_me_opinion - opinion = 10 - } - } - } - 25 = { - desc = bp1_yearly.2060.tt_critical_success - scope:bp1_yearly_2060_target_child = { - add_$SKILL$_skill = 2 - add_opinion = { - target = scope:bp1_yearly_2060_first_consort - modifier = tutored_me_opinion - opinion = 20 - } - add_opinion = { - target = scope:bp1_yearly_2060_second_consort - modifier = tutored_me_opinion - opinion = 20 - } - } - } - } -} - -scripted_effect bp1_yearly_2060_duel_effect = { - duel = { - skill = $SKILL$ - value = average_skill_rating - 75 = { - desc = bp1_yearly.2060.tt_success - scope:bp1_yearly_2060_target_child = { - add_$SKILL$_skill = 1 - add_opinion = { - target = scope:bp1_yearly_2060_first_consort - modifier = tutored_me_opinion - opinion = 20 - } - add_opinion = { - target = scope:bp1_yearly_2060_second_consort - modifier = tutored_me_opinion - opinion = 20 - } - } - } - 25 = { - desc = bp1_yearly.2060.tt_failure - #Nothing happens - } - } -} - -bp1_yearly.2060 = { - type = character_event - content_source = dlc_006 - title = bp1_yearly.2060.t - desc = { - desc = bp1_yearly.2060.desc_intro - first_valid = { - triggered_desc = { - trigger = { - scope:bp1_yearly_2060_first_consort = { highest_skill = diplomacy } - } - desc = bp1_yearly.2060.desc_diplomacy - } - triggered_desc = { - trigger = { - scope:bp1_yearly_2060_first_consort = { highest_skill = martial } - } - desc = bp1_yearly.2060.desc_martial - } - triggered_desc = { - trigger = { - scope:bp1_yearly_2060_first_consort = { highest_skill = stewardship } - } - desc = bp1_yearly.2060.desc_stewardship - } - triggered_desc = { - trigger = { - scope:bp1_yearly_2060_first_consort = { highest_skill = intrigue } - } - desc = bp1_yearly.2060.desc_intrigue - } - triggered_desc = { - trigger = { - scope:bp1_yearly_2060_first_consort = { highest_skill = learning } - } - desc = bp1_yearly.2060.desc_learning - } - } - desc = bp1_yearly.2060.desc_outro - } - theme = family - override_background = { reference = corridor_day } - left_portrait = { - character = root - triggered_animation = { - trigger = { has_trait = paranoid } - animation = personality_cynical - } - animation = personality_rational - } - right_portrait = { - character = scope:bp1_yearly_2060_first_consort - animation = happiness - } - lower_center_portrait = { - trigger = { exists = scope:bp1_yearly_2060_target_child } - character = scope:bp1_yearly_2060_target_child - } - lower_right_portrait = { - trigger = { exists = scope:bp1_yearly_2060_second_consort } - character = scope:bp1_yearly_2060_second_consort - } - #Set up the cooldown - cooldown = { years = 5 } - trigger = { - #DLC check - has_bp1_dlc_trigger = yes - #Standard checks - is_available_adult = yes - is_playable_character = yes - any_consort = { bp1_yearly_2060_has_matching_consort_with_highest_skill_trigger = yes } - } - weight_multiplier = { - base = 1 - #The more the merrier - modifier = { - any_consort = { - count >= 3 - } - add = 2 - } - modifier = { - any_consort = { - count = 4 - } - add = 2 - } - modifier = { - any_consort = { - has_trait = gregarious - } - add = 2 - } - } - immediate = { - #play_music_cue = "mx_cue_low_key_positive" - #Find a consort - random_consort = { - limit = { bp1_yearly_2060_has_matching_consort_with_highest_skill_trigger = yes } - save_scope_as = bp1_yearly_2060_first_consort - } - #Find our second consort - random_consort = { - limit = { - OR = { - AND = { - scope:bp1_yearly_2060_first_consort = { highest_skill = diplomacy } - bp1_yearly_2060_is_relevant_consort_trigger = { TARGET = scope:bp1_yearly_2060_first_consort SKILL = diplomacy } - } - AND = { - scope:bp1_yearly_2060_first_consort = { highest_skill = martial } - bp1_yearly_2060_is_relevant_consort_trigger = { TARGET = scope:bp1_yearly_2060_first_consort SKILL = martial } - } - AND = { - scope:bp1_yearly_2060_first_consort = { highest_skill = stewardship } - bp1_yearly_2060_is_relevant_consort_trigger = { TARGET = scope:bp1_yearly_2060_first_consort SKILL = stewardship } - } - AND = { - scope:bp1_yearly_2060_first_consort = { highest_skill = intrigue } - bp1_yearly_2060_is_relevant_consort_trigger = { TARGET = scope:bp1_yearly_2060_first_consort SKILL = intrigue } - } - AND = { - scope:bp1_yearly_2060_first_consort = { highest_skill = learning } - bp1_yearly_2060_is_relevant_consort_trigger = { TARGET = scope:bp1_yearly_2060_first_consort SKILL = learning } - } - } - } - save_scope_as = bp1_yearly_2060_second_consort - } - #Find a child - scope:bp1_yearly_2060_second_consort = { - random_child = { - limit = { bp1_yearly_2060_is_relevant_child_trigger = yes } - save_scope_as = bp1_yearly_2060_target_child - } - } - #For localization - scope:bp1_yearly_2060_target_child = { - bp1_yearly_2030_get_lowest_skill_effect = yes - switch = { - trigger = scope:lowest_character_skill - flag:diplomacy = { add_character_flag = bp1_yearly_2060_diplomacy_lowest_skill } - flag:martial = { add_character_flag = bp1_yearly_2060_martial_lowest_skill } - flag:stewardship = { add_character_flag = bp1_yearly_2060_stewardship_lowest_skill } - flag:intrigue = { add_character_flag = bp1_yearly_2060_intrigue_lowest_skill } - flag:learning = { add_character_flag = bp1_yearly_2060_learning_lowest_skill } - } - } - #For determining which options to show, so we don't have Diplomacy on both options for instance - scope:bp1_yearly_2060_first_consort = { - switch = { - trigger = highest_skill - diplomacy = { - save_scope_value_as = { - name = consort_compare_skill - value = flag:diplomacy - } - } - martial = { - save_scope_value_as = { - name = consort_compare_skill - value = flag:martial - } - } - stewardship = { - save_scope_value_as = { - name = consort_compare_skill - value = flag:stewardship - } - } - intrigue = { - save_scope_value_as = { - name = consort_compare_skill - value = flag:intrigue - } - } - learning = { - save_scope_value_as = { - name = consort_compare_skill - value = flag:learning - } - } - } - } - #Find the consort with highest level of the intended skill for the duel - scope:bp1_yearly_2060_first_consort = { - switch = { - trigger = highest_skill - diplomacy = { - bp1_yearly_2060_find_high_skill_tutor_effect = { SKILL = diplomacy } - } - martial = { - bp1_yearly_2060_find_high_skill_tutor_effect = { SKILL = martial } - } - stewardship = { - bp1_yearly_2060_find_high_skill_tutor_effect = { SKILL = stewardship } - } - intrigue = { - bp1_yearly_2060_find_high_skill_tutor_effect = { SKILL = intrigue } - } - learning = { - bp1_yearly_2060_find_high_skill_tutor_effect = { SKILL = learning } - } - } - } - #If the consort skill and the child skill are different, determine which consort has highest skill in the child skill and appoint them - if = { - limit = { - scope:consort_compare_skill != scope:lowest_character_skill - } - switch = { - trigger = scope:lowest_character_skill - flag:diplomacy = { - bp1_yearly_2060_find_low_skill_tutor_effect = { SKILL = diplomacy } - } - flag:martial = { - bp1_yearly_2060_find_low_skill_tutor_effect = { SKILL = martial } - } - flag:stewardship = { - bp1_yearly_2060_find_low_skill_tutor_effect = { SKILL = stewardship } - } - flag:intrigue = { - bp1_yearly_2060_find_low_skill_tutor_effect = { SKILL = intrigue } - } - flag:learning = { - bp1_yearly_2060_find_low_skill_tutor_effect = { SKILL = learning } - } - } - } - } - #Let's go with the consort skill - option = { - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { has_trait = paranoid } - desc = bp1_yearly.2060.a_paranoid - } - triggered_desc = { - desc = bp1_yearly.2060.a - } - } - } - } - #Who knows what else they're indoctrinating... - flavor = { - triggered_desc = { - trigger = { has_trait = paranoid } - desc = bp1_yearly.2060.a_tt_paranoid - } - } - scope:bp1_yearly_2060_high_skill_tutoring_consort = { - switch = { - trigger = highest_skill - diplomacy = { - bp1_yearly_2060_bolstered_duel_effect = { SKILL = diplomacy } - } - martial = { - bp1_yearly_2060_bolstered_duel_effect = { SKILL = martial } - } - stewardship = { - bp1_yearly_2060_bolstered_duel_effect = { SKILL = stewardship } - } - intrigue = { - bp1_yearly_2060_bolstered_duel_effect = { SKILL = intrigue } - } - learning = { - bp1_yearly_2060_bolstered_duel_effect = { SKILL = learning } - } - } - } - stress_impact = { - paranoid = minor_stress_impact_gain - arrogant = miniscule_stress_impact_gain - trusting = miniscule_stress_impact_loss - } - ai_chance = { - base = 10 - #Paranoid be paranoid - modifier = { - has_trait = paranoid - add = -50 - } - modifier = { - has_trait = arrogant - add = -15 - } - #Trusting and liking the intiating consort is beneficial - modifier = { - has_trait = trusting - add = 20 - } - opinion_modifier = { - opinion_target = scope:bp1_yearly_2060_high_skill_tutoring_consort - multiplier = -1 - } - ai_value_modifier = { - ai_rationality = 1 - ai_honor = 0.5 - } - } - } - #Actually, please educate the child in it's lowest skill - option = { - name = bp1_yearly.2060.b - trigger = { - scope:consort_compare_skill != scope:lowest_character_skill - } - scope:bp1_yearly_2060_low_skill_tutoring_consort = { - switch = { - trigger = scope:lowest_character_skill - flag:diplomacy = { - bp1_yearly_2060_duel_effect = { SKILL = diplomacy } - } - flag:martial = { - bp1_yearly_2060_duel_effect = { SKILL = martial } - } - flag:stewardship = { - bp1_yearly_2060_duel_effect = { SKILL = stewardship } - } - flag:intrigue = { - bp1_yearly_2060_duel_effect = { SKILL = intrigue } - } - flag:learning = { - bp1_yearly_2060_duel_effect = { SKILL = learning } - } - } - } - ai_chance = { - base = 5 - #Paranoid be paranoid - modifier = { - has_trait = paranoid - add = -50 - } - modifier = { - has_trait = arrogant - add = -15 - } - #Trusting and liking the intiating consort is beneficial - modifier = { - has_trait = trusting - add = 20 - } - #They prefer the other consort - opinion_modifier = { - opinion_target = scope:bp1_yearly_2060_low_skill_tutoring_consort - multiplier = -1 - } - ai_value_modifier = { - ai_rationality = 1 - ai_honor = 0.5 - } - } - } - #If the consort's highest skill and the child's lowest skill are the same, opt out - option = { - name = bp1_yearly.2060.c - trigger = { scope:consort_compare_skill = scope:lowest_character_skill } - reverse_add_opinion = { - target = scope:bp1_yearly_2060_first_consort - modifier = dismissed_me_opinion - opinion = -15 - } - reverse_add_opinion = { - target = scope:bp1_yearly_2060_second_consort - modifier = dismissed_me_opinion - opinion = -15 - } - stress_impact = { - ambitious = minor_stress_impact_gain - trusting = minor_stress_impact_gain - } - ai_chance = { - base = 5 - #Paranoid be paranoid - modifier = { - has_trait = paranoid - add = 50 - } - modifier = { - has_trait = ambitious - add = -25 - } - modifier = { - has_trait = trusting - add = -20 - } - opinion_modifier = { - opinion_target = scope:bp1_yearly_2060_first_consort - multiplier = 1 - } - } - } - after = { - scope:bp1_yearly_2060_target_child = { - remove_character_flag = bp1_yearly_2060_diplomacy_lowest_skill - remove_character_flag = bp1_yearly_2060_martial_lowest_skill - remove_character_flag = bp1_yearly_2060_stewardship_lowest_skill - remove_character_flag = bp1_yearly_2060_intrigue_lowest_skill - remove_character_flag = bp1_yearly_2060_learning_lowest_skill - } - } -} - -################################################## -# #Childless older spouse ponders your relationship -# by Filippa Gannholm Kirsten -# #bp1_yearly.2070 -################################################## -bp1_yearly.2070 = { - type = character_event - content_source = dlc_006 - title = bp1_yearly.2070.t - desc = bp1_yearly.2070.desc - theme = love - override_background = { reference = wilderness } - left_portrait = { - character = root - animation = love - } - right_portrait = { - character = scope:bp1_yearly_2070_soulmate - animation = sadness - } - trigger = { - #DLC check - has_bp1_dlc_trigger = yes - #Standard checks - is_available_adult = yes - is_playable_character = yes - NOT = { has_character_flag = had_event_bp1_yearly_2070 } - any_consort = { - is_available_ai_adult = yes - has_relation_soulmate = root - is_attracted_to_gender_of = root - OR = { - has_sexuality = homosexual - fertility <= 0.1 - } - age > 40 - opinion = { - target = root - value >= 90 - } - NOT = { - any_child = { exists = this } - } - } - } - immediate = { - #play_music_cue = "mx_cue_touching_moment" - #You only get this once in a lifetime. - add_character_flag = had_event_bp1_yearly_2070 - #Find a consort - random_consort = { - limit = { - is_available_ai_adult = yes - has_relation_soulmate = root - is_attracted_to_gender_of = root - opinion = { - target = root - value >= 90 - } - NOT = { - any_child = { exists = this } - } - OR = { - has_sexuality = homosexual - fertility <= 0.1 - } - age > 40 - } - save_scope_as = bp1_yearly_2070_soulmate - } - create_character_memory = { - type = childless_soulmate_memory - participants = { - childless_soulmate = scope:bp1_yearly_2070_soulmate - } - } - } - #I got to spend all of this time with _you_ - option = { - name = bp1_yearly.2070.a - flavor = bp1_yearly.2070.a_tt - add_character_modifier = { - modifier = bp1_yearly_2070_accepting_modifier - } - stress_impact = { - base = minor_stress_impact_loss - } - ai_chance = { - base = 100 - } - } - #It was simply not HighGods will - option = { - name = bp1_yearly.2070.b - flavor = bp1_yearly.2070.b_tt - trigger = { - NOR = { - has_sexuality = homosexual - scope:bp1_yearly_2070_soulmate = { has_sexuality = homosexual } - } - } - add_character_modifier = { - modifier = bp1_yearly_2070_zealous_modifier - } - stress_impact = { - zealous = medium_stress_impact_loss - } - ai_chance = { - base = 100 - } - } - #You and I both know that is for the best - option = { - name = bp1_yearly.2070.c - flavor = bp1_yearly.2070.c_tt - trigger = { - OR = { - has_trait = cynical - scope:bp1_yearly_2070_soulmate = { has_trait = cynical } - } - } - add_character_modifier = { - modifier = bp1_yearly_2070_cynicism_modifier - } - stress_impact = { - cynical = medium_stress_impact_loss - } - ai_chance = { - base = 100 - } - } -} diff --git a/events/dlc/bp1/bp1_yearly_oltner.txt b/events/dlc/bp1/bp1_yearly_oltner.txt deleted file mode 100644 index a29d55586..000000000 --- a/events/dlc/bp1/bp1_yearly_oltner.txt +++ /dev/null @@ -1,2305 +0,0 @@ -namespace = bp1_yearly - -scripted_trigger appropriate_family_memory = { - has_memory_category = family - has_memory_category = positive - any_memory_participant = { - house ?= root.house - NOT = { - has_relation_rival = root - } - trigger_if = { - limit = { - is_alive = no - exists = killer - } - killer != root - } - } -} - -# Reflect over a family memory -bp1_yearly.4000 = { - type = character_event - content_source = dlc_006 - title = bp1_yearly.4000.t - desc = { - desc = bp1_yearly.4000.desc - first_valid = { - triggered_desc = { - trigger = { - scope:family_memory_participant = { is_alive = yes } - } - desc = bp1_yearly.4000.desc.alive - } - desc = bp1_yearly.4000.desc.dead - } - desc = bp1_yearly.4000.desc_end - } - - theme = family - - override_background = { - trigger = { - is_landed = yes - } - reference = corridor_day - } - override_background = { - trigger = { - is_landed = no - } - reference = bp1_bonfire - } - override_background = { - trigger = { - has_government = nomad_government - } - reference = mpo_campfire_steppe - } - - left_portrait = { - character = root - triggered_animation = { - trigger = { - scope:family_memory_participant = { is_alive = yes } - } - animation = happiness - } - triggered_animation = { - trigger = { - scope:family_memory_participant = { is_alive = no } - } - animation = grief - } - } - - right_portrait = { - character = scope:family_memory_participant - triggered_animation = { - trigger = { - scope:family_memory_participant = { is_alive = yes } - } - animation = happiness - } - triggered_animation = { - trigger = { - scope:family_memory_participant = { is_alive = no } - } - animation = pain - } - } - - cooldown = { years = 5 } - - trigger = { - has_bp1_dlc_trigger = yes - exists = root.house - stress > 0 - NOR = { - # Not a psychopath - has_trait = callous - has_trait = sadistic - } - any_memory = { - appropriate_family_memory = yes - } - } - - immediate = { - random_memory = { - limit = { - appropriate_family_memory = yes - } - save_scope_as = family_memory - random_memory_participant = { - limit = { - house ?= root.house - NOT = { - has_relation_rival = root - } - trigger_if = { - limit = { - is_alive = no - exists = killer - } - killer != root - } - } - save_scope_as = family_memory_participant - } - } - } - - option = { - name = bp1_yearly.4000.family_first - trait = family_first - trigger = { - has_trait = family_first - } - dynasty = { add_dynasty_prestige = minor_dynasty_prestige_gain } - stress_impact = { - base = minor_stress_impact_loss - #honest = minor_stress_impact_gain - #compassionate = minor_stress_impact_gain - } - ai_chance = { - base = 1000 - } - } - - option = { - name = bp1_yearly.4000.a - trigger = { - scope:family_memory_participant = { - is_alive = no - } - } - stress_impact = { - base = minor_stress_impact_gain - } - ai_chance = { - base = 100 - } - } - - option = { - name = bp1_yearly.4000.b - trigger = { - scope:family_memory_participant = { - is_alive = yes - } - } - stress_impact = { - base = miniscule_stress_impact_loss - } - ai_chance = { - base = 100 - } - } - - option = { - name = bp1_yearly.4000.c - trigger = { - scope:family_memory_participant = { - is_alive = no - } - } - duel = { - skill = diplomacy - value = 10 - 50 = { - desc = bp1_yearly.4000.c.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - save_scope_as = success_poem - trigger_event = bp1_yearly.4001 - show_as_tooltip = { - add_stress = minor_stress_impact_loss - every_close_family_member = { - custom = yearly_persian.1101.every_family - limit = { this != root } - add_opinion = { - modifier = pleased_opinion - opinion = 30 - target = root - } - } - } - } - 50 = { - desc = bp1_yearly.4000.c.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - save_scope_as = fail_poem - trigger_event = bp1_yearly.4001 - show_as_tooltip = { - add_stress = medium_stress_impact_gain - } - } - } - stress_impact = { - shy = major_stress_impact_gain - cynical = medium_stress_impact_gain - arrogant = minor_stress_impact_gain - deceitful = minor_stress_impact_gain - lazy = minor_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = shy - has_trait = cynical - } - } - } - } - - option = { - name = bp1_yearly.4000.d - trigger = { - scope:family_memory_participant = { - is_alive = yes - } - } - pay_short_term_gold = { - target = scope:family_memory_participant - gold = minor_gold_value - } - scope:family_memory_participant = { - progress_towards_friend_effect = { - CHARACTER = root - OPINION = 0 - REASON = friend_gift_house - } - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 30 - } - } - - stress_impact = { - base = minor_stress_impact_loss - greedy = major_stress_impact_gain - arrogant = minor_stress_impact_gain - arbitrary = minor_stress_impact_gain - } - ai_chance = { - base = 25 - modifier = { - factor = 0 - gold < major_gold_value - } - modifier = { - factor = 0 - OR = { - has_trait = greedy - has_trait = honest - has_trait = arbitrary - } - } - } - } -} - -# Family poem -bp1_yearly.4001 = { - type = character_event - content_source = dlc_006 - title = bp1_yearly.4000.t - desc = { - desc = bp1_yearly.4001.desc - first_valid = { - triggered_desc = { - trigger = { - exists = scope:success_poem - } - desc = bp1_yearly.4001.desc.success_poem - } - desc = bp1_yearly.4001.desc.fail_poem - } - } - - theme = family - - override_background = { reference = corridor_day } - - left_portrait = { - character = root - triggered_animation = { - trigger = { - exists = scope:success_poem - } - animation = chancellor - } - triggered_animation = { - trigger = { - exists = scope:fail_poem - } - animation = stress - } - } - - right_portrait = { - character = scope:family_memory_participant - triggered_animation = { - trigger = { - scope:family_memory_participant = { is_alive = yes } - } - animation = happiness - } - triggered_animation = { - trigger = { - scope:family_memory_participant = { is_alive = no } - } - animation = pain - } - } - - immediate = { - select_poem_subject_gender_effect = { - SUBJECT = flag:specific - SUBJECT_TARGET = scope:family_memory_participant - } - select_poem_theme_mourning_effect = yes - } - - option = { - name = bp1_yearly.4001.a - trigger = { - exists = scope:success_poem - } - add_stress = minor_stress_impact_loss - every_close_family_member = { - custom = yearly_persian.1101.every_family - limit = { this != root } - add_opinion = { - modifier = pleased_opinion - opinion = 30 - target = root - } - } - if = { - limit = { - NOT = { - has_trait = lifestyle_poet - } - } - random = { - chance = 20 - add_trait = lifestyle_poet - } - } - } - - option = { - name = bp1_yearly.4001.b - trigger = { - exists = scope:fail_poem - } - add_stress = medium_stress_impact_gain - } -} - -scripted_trigger appropriate_mother = { - mother ?= { - appropriate_other_parent_trigger = yes - } -} - -scripted_trigger appropriate_father = { - father ?= { - appropriate_other_parent_trigger = yes - } -} - -scripted_trigger disliked_guardian_trigger = { - NOR = { - this = scope:child_other_parent - has_relation_friend = scope:child_other_parent - has_relation_lover = scope:child_other_parent - reverse_opinion = { - target = scope:child_other_parent - value >= 60 - } - } - OR = { - has_relation_rival = scope:child_other_parent - reverse_opinion = { - target = scope:child_other_parent - value <= -30 - } - has_trait = intellect_bad - learning < 8 - AND = { - has_trait = sadistic - scope:child_other_parent = { - NOT = { - has_trait = sadistic - } - } - } - } -} - -scripted_trigger appropriate_other_parent_trigger = { - this != root - is_spouse_of = root - is_courtier_of = root - is_available_ai_adult = yes - save_temporary_scope_as = child_other_parent - OR = { - any_relation = { - type = friend - OR = { - desired_guardian_trigger = yes - any_courtier = { - desired_guardian_trigger = yes - } - any_councillor = { - desired_guardian_trigger = yes - } - } - } - any_relation = { - type = lover - OR = { - desired_guardian_trigger = yes - any_courtier = { - desired_guardian_trigger = yes - } - any_councillor = { - desired_guardian_trigger = yes - } - } - } - any_close_family_member = { - desired_guardian_trigger = yes - } - root = { - any_courtier = { - desired_guardian_trigger = yes - } - } - root = { - any_councillor = { - desired_guardian_trigger = yes - } - } - } -} - -scripted_trigger desired_guardian_trigger = { - is_physically_able_adult = yes - num_of_relation_ward < 2 - OR = { - is_ruler = yes - exists = liege - } - reverse_opinion = { - target = scope:child_other_parent - value >= 30 - } - NOR = { - this = root - this = scope:child_other_parent - has_trait = sadistic - has_relation_rival = scope:child_other_parent - reverse_opinion = { - target = scope:child_other_parent - value <= -30 - } - has_trait = intellect_bad - learning < 8 - } - OR = { - learning >= 12 - has_trait = intellect_good - has_relation_friend = scope:child_other_parent - has_relation_lover = scope:child_other_parent - } -} - -scripted_trigger appropriate_guardian_child_trigger = { - age <= 12 - is_physically_able = yes - exists = liege - NOT = { - has_character_flag = replaced_guardian - } - OR = { - AND = { - OR = { - root.faith = { has_doctrine = doctrine_gender_male_dominated } - NOR = { - root.faith = { has_doctrine = doctrine_gender_male_dominated } - root.faith = { has_doctrine = doctrine_gender_female_dominated } - } - } - appropriate_mother = yes - any_relation = { type = guardian } - any_relation = { - type = guardian - disliked_guardian_trigger = yes - } - } - AND = { - OR = { - root.faith = { has_doctrine = doctrine_gender_female_dominated } - NOR = { - root.faith = { has_doctrine = doctrine_gender_male_dominated } - root.faith = { has_doctrine = doctrine_gender_female_dominated } - } - } - appropriate_father = yes - any_relation = { type = guardian } - any_relation = { - type = guardian - disliked_guardian_trigger = yes - } - } - } -} - -scripted_effect select_new_guardian_effect = { - every_relation = { - type = friend - if = { - limit = { - desired_guardian_trigger = yes - } - add_to_list = proposed_guardians - } - every_courtier = { - limit = { - desired_guardian_trigger = yes - } - add_to_list = proposed_guardians - } - every_councillor = { - limit = { - desired_guardian_trigger = yes - } - add_to_list = proposed_guardians - } - } - every_relation = { - type = lover - if = { - limit = { - desired_guardian_trigger = yes - } - add_to_list = proposed_guardians - } - every_courtier = { - limit = { - desired_guardian_trigger = yes - } - add_to_list = proposed_guardians - } - every_councillor = { - limit = { - desired_guardian_trigger = yes - } - add_to_list = proposed_guardians - } - } - every_close_family_member = { - limit = { - desired_guardian_trigger = yes - } - add_to_list = proposed_guardians - } - root = { - every_courtier = { - limit = { - desired_guardian_trigger = yes - } - add_to_list = proposed_guardians - } - every_councillor = { - limit = { - desired_guardian_trigger = yes - } - add_to_list = proposed_guardians - } - } - random_in_list = { - list = proposed_guardians - weight = { - base = 1 - modifier = { - add = 5 - OR = { - has_relation_friend = scope:child_other_parent - has_relation_lover = scope:child_other_parent - } - } - modifier = { - add = 5 - this.dynasty = scope:child_other_parent.dynasty - } - modifier = { - add = 2 - has_education_rank_4_trigger = yes - } - modifier = { - add = 1 - has_education_rank_3_trigger = yes - } - } - save_scope_as = proposed_guardian - } -} - -# Spouse demands their child gets a better guardian -bp1_yearly.4010 = { - type = character_event - content_source = dlc_006 - title = bp1_yearly.4010.t - desc = { - desc = bp1_yearly.4010.desc - first_valid = { - triggered_desc = { - trigger = { - scope:current_guardian = { - this = root - } - } - desc = bp1_yearly.4010.desc.root - } - desc = bp1_yearly.4010.desc.other - } - desc = bp1_yearly.4010.desc_end - } - - theme = family - - override_background = { reference = throne_room } - - left_portrait = { - character = scope:parent_that_want_guardian_change - animation = worry - } - - right_portrait = { - character = scope:child_to_change_guardian - animation = personality_irrational - } - - lower_left_portrait = scope:proposed_guardian - lower_right_portrait = scope:current_guardian - - cooldown = { years = 5 } - - trigger = { - trigger_if = { - limit = { - is_ai = yes - } - has_trait = family_first - } - has_bp1_dlc_trigger = yes - any_child = { - appropriate_guardian_child_trigger = yes - } - } - - immediate = { - random_child = { - limit = { - appropriate_guardian_child_trigger = yes - } - save_scope_as = child_to_change_guardian - if = { - limit = { - OR = { - root.faith = { has_doctrine = doctrine_gender_male_dominated } - NOR = { - root.faith = { has_doctrine = doctrine_gender_male_dominated } - root.faith = { has_doctrine = doctrine_gender_female_dominated } - } - } - appropriate_mother = yes - any_relation = { type = guardian } - any_relation = { - type = guardian - disliked_guardian_trigger = yes - } - } - mother = { - save_scope_as = parent_that_want_guardian_change - } - } - else = { - father = { - save_scope_as = parent_that_want_guardian_change - } - } - random_relation = { - type = guardian - save_scope_as = current_guardian - } - scope:parent_that_want_guardian_change = { - save_temporary_scope_as = child_other_parent - select_new_guardian_effect = yes - } - } - - scope:child_to_change_guardian = { - save_scope_as = ward - scope:proposed_guardian = { save_scope_as = guardian } - scope:child_to_change_guardian.liege = { save_scope_as = ward_liege } - scope:proposed_guardian.liege = { save_scope_as = guardian_liege } - } - hidden_effect = { - scope:parent_that_want_guardian_change = { - progress_towards_rival_effect = { - CHARACTER = scope:current_guardian - REASON = rival_guardian_change - OPINION = 0 - } - add_opinion = { - target = scope:current_guardian - modifier = annoyed_opinion - opinion = -30 - } - random = { # Become full-on rivals - chance = 25 - progress_towards_rival_effect = { - CHARACTER = scope:current_guardian - REASON = rival_guardian_change - OPINION = 0 - } - } - } - } - } - - option = { - name = bp1_yearly.4010.c - trait = family_first - trigger = { - has_trait = family_first - } - custom_tooltip = bp1_yearly.4010.c_effect - hidden_effect = { - scope:child_to_change_guardian = { - education_point_acquisition_effect = yes - education_point_acquisition_effect = yes - } - } - scope:parent_that_want_guardian_change = { - add_opinion = { - target = root - modifier = relieved_opinion - opinion = 30 - } - } - ai_chance = { - base = 1000 - } - } - - option = { # Agree to switch guardians - name = bp1_yearly.4010.a - - remove_guardian_effect = { - GUARDIAN = scope:current_guardian - WARD = scope:child_to_change_guardian - RETURN_WARD = no - HIDE_OPINION = yes - } - if = { - limit = { - scope:child_to_change_guardian.liege != root - scope:current_guardian = { - is_ruler = no - } - } - scope:child_to_change_guardian.liege = { - add_opinion = { - modifier = insulted_opinion - target = root - opinion = -30 - } - } - } - scope:current_guardian = { - if = { - limit = { - this != root - } - add_opinion = { - modifier = insult_opinion - target = root - opinion = -30 - } - } - } - - educate_child_event_effect = yes - - hidden_effect = { - send_interface_message = { - type = event_childhood_neutral - title = educate_child_interaction_notification - left_icon = scope:guardian - right_icon = scope:ward - show_as_tooltip = { - educate_child_event_effect = yes - } - } - } - - scope:parent_that_want_guardian_change = { - add_opinion = { - target = root - modifier = relieved_opinion - opinion = 30 - } - } - - scope:child_to_change_guardian = { - random = { - chance = { - value = 0 - add = scope:proposed_guardian.learning - multiply = 4 - } - custom_tooltip = bp1_yearly.4010.a_effect - hidden_effect = { - education_point_acquisition_effect = yes - } - } - } - - hidden_effect = { - scope:proposed_guardian = { - add_character_flag = replaced_guardian - if = { # Chance of ulterior motives - limit = { - can_add_hook = { - type = loyalty_hook - target = scope:child_to_change_guardian - } - } - random = { - chance = { - value = 0 - add = scope:proposed_guardian.intrigue - multiply = 2 - } - add_hook = { - type = loyalty_hook - target = scope:child_to_change_guardian - } - } - } - } - } - - stress_impact = { - arrogant = medium_stress_impact_gain - stubborn = medium_stress_impact_gain - paranoid = medium_stress_impact_gain - } - ai_chance = { - base = 75 - modifier = { - factor = 0 - OR = { - has_trait = arrogant - has_trait = stubborn - has_trait = paranoid - } - } - } - } - - option = { - name = bp1_yearly.4010.b - name = { - trigger = { scope:current_guardian = { this != root } } - text = bp1_yearly.4010.b - } - name = { - trigger = { scope:current_guardian = { this = root } } - text = bp1_yearly.4010.b_alt - } - - scope:parent_that_want_guardian_change = { - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -25 - } - } - stress_impact = { - trusting = massive_stress_impact_gain - compassionate = medium_stress_impact_gain - fickle = medium_stress_impact_gain - } - ai_chance = { - base = 25 - modifier = { - factor = 0 - OR = { - has_trait = trusting - has_trait = compassionate - has_trait = fickle - } - } - } - } -} - -bp1_yearly.4020 = { # Friend commissions a piece of poetry commemorating one of your victories - type = character_event - content_source = dlc_006 - title = bp1_yearly.4020.t - desc = bp1_yearly.4020.desc - - theme = friend_relation - - override_background = { reference = garden } - - left_portrait = { - character = root - animation = happiness - } - - right_portrait = { - character = scope:poetry_friend - animation = chancellor - } - - artifact = { # To display the artifact in the event-window - target = scope:newly_created_artifact - position = lower_center_portrait - } - - lower_right_portrait = scope:war_memory_participant - - cooldown = { years = 25 } - - trigger = { - has_bp1_dlc_trigger = yes - any_relation = { - type = friend - is_available_ai_adult = yes - OR = { - has_trait = lifestyle_poet - diplomacy >= 8 - } - save_temporary_scope_as = friend_check - } - any_memory = { - memory_type = war_won - NOT = { - any_memory_participant = { - this = scope:friend_check - } - } - any_memory_participant = { - this != root - } - } - } - - immediate = { - random_relation = { - type = friend - limit = { - is_available_ai_adult = yes - OR = { - has_trait = lifestyle_poet - diplomacy >= 8 - } - } - weight = { - base = 1 - modifier = { - add = 100 - has_trait = lifestyle_poet - } - modifier = { - add = 10 - is_of_major_interest_to_root_trigger = yes - } - modifier = { - add = 5 - is_of_minor_interest_to_root_trigger = yes - } - modifier = { - add = diplomacy - } - } - if = { - limit = { - NOT = { - has_trait = lifestyle_poet - } - } - random = { - chance = { - value = diplomacy - multiply = 2 - } - add_trait = lifestyle_poet - } - } - save_scope_as = poetry_friend - } - random_memory = { - memory_type = war_won - limit = { - NOT = { - any_memory_participant = { - this = scope:poetry_friend - } - } - any_memory_participant = { - this != root - } - } - save_scope_as = war_memory - random_memory_participant = { - limit = { - NOR = { - this = scope:poetry_friend - this = root - } - } - save_scope_as = war_memory_participant - } - } - scope:poetry_friend = { - select_poem_subject_gender_effect = { - SUBJECT = flag:specific - SUBJECT_TARGET = root - } - select_poem_theme_strife_effect = yes - } - hidden_effect_new_object = { - create_artifact_poetry_effect = { OWNER = root } - scope:newly_created_artifact = { - save_scope_as = poetry_artifact - } - } - } - - option = { - name = bp1_yearly.4020.a - - trigger = { - has_royal_court = yes - } - - scope:poetry_friend = { - if = { - limit = { - can_set_relation_best_friend_trigger = { CHARACTER = root } - } - set_relation_best_friend = { reason = best_friend_poetry copy_reason = friend target = root } - } - add_opinion = { - target = root - modifier = flattered_opinion - opinion = 30 - } - } - - custom_tooltip = bp1_yearly.4020.a_effect - - remove_short_term_gold = minor_gold_value - - hidden_effect_new_object = { - scope:newly_created_artifact = { - add_scaled_artifact_modifier_grandeur_small_effect = yes - - reforge_artifact = { - type = pedestal - } - } - } - - stress_impact = { - greedy = minor_stress_impact_gain - shy = minor_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - gold < major_gold_value - } - modifier = { - factor = 0 - OR = { - has_trait = greedy - has_trait = shy - } - } - } - } - - option = { - name = bp1_yearly.4020.b - - scope:poetry_friend = { - add_opinion = { - target = root - modifier = friendliness_opinion - opinion = 15 - } - } - - custom_tooltip = bp1_yearly.4020.b_effect - - ai_chance = { - base = 100 - } - } - - option = { - name = bp1_yearly.4020.c - - trigger = { - exists = scope:war_memory_participant - scope:war_memory_participant = { - is_alive = yes - } - } - - add_prestige = major_prestige_gain - - scope:war_memory_participant = { - progress_towards_rival_effect = { - CHARACTER = root - REASON = rival_war_memory - OPINION = 0 - } - add_opinion = { - target = root - modifier = annoyed_opinion - opinion = -30 - } - } - - custom_tooltip = bp1_yearly.4020.b_effect - - stress_impact = { - forgiving = massive_stress_impact_gain - compassionate = minor_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = forgiving - has_trait = compassionate - } - } - } - } - - option = { - name = bp1_yearly.4020.d - - destroy_artifact = scope:newly_created_artifact - - add_piety = major_piety_gain - - scope:poetry_friend = { - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -15 - } - } - - stress_impact = { - arrogant = massive_stress_impact_gain - cynical = medium_stress_impact_gain - ambitious = minor_stress_impact_gain - } - ai_chance = { - base = 25 - modifier = { - factor = 0 - OR = { - has_trait = arrogant - has_trait = cynical - has_trait = ambitious - } - } - } - } -} - -scripted_trigger marriage_rival_trigger = { - is_available_ai_adult = yes - is_married = no - is_concubine = no - can_marry_trigger = yes - OR = { - is_male = yes - age <= 40 - } - - OR = { - has_trait = seducer - has_trait = schemer - has_trait = diplomat - has_trait = lustful - has_trait = vengeful - has_trait = ambitious - has_trait = beauty_good - has_trait = physique_good - intrigue >= 10 - diplomacy >= 10 - } - - NOR = { - has_trait = honest - AND = { - exists = dynasty - exists = root.dynasty - dynasty = root.dynasty - } - is_child_of = root - is_grandchild_of = root - is_great_grandchild_of = root - } - - save_temporary_scope_as = rival_check -} - -scripted_trigger appopriate_vassal_trigger = { - primary_title.tier >= tier_county - is_available_ai_adult = yes - OR = { - AND = { - exists = scope:rival_check - is_attracted_to_gender_of = scope:rival_check - } - AND = { - exists = scope:marriage_rival - is_attracted_to_gender_of = scope:marriage_rival - } - } - OR = { - AND = { - exists = scope:rival_check - could_marry_character_trigger = { CHARACTER = scope:rival_check } - } - AND = { - exists = scope:marriage_rival - could_marry_character_trigger = { CHARACTER = scope:marriage_rival } - } - } - - NOR = { - has_trait = content - has_trait = chaste - has_trait = loyal - AND = { - exists = scope:rival_check - this = scope:rival_check - } - AND = { - exists = scope:marriage_rival - this = scope:marriage_rival - } - AND = { - exists = dynasty - exists = root.dynasty - dynasty = root.dynasty - } - has_relation_rival = root - has_relation_friend = root - has_relation_lover = root - is_child_of = root - is_grandchild_of = root - is_great_grandchild_of = root - AND = { - primary_spouse ?= { - OR = { - is_child_of = root - is_grandchild_of = root - is_great_grandchild_of = root - AND = { - exists = dynasty - exists = root.dynasty - dynasty = root.dynasty - } - } - } - } - AND = { - betrothed ?= { - OR = { - is_child_of = root - is_grandchild_of = root - is_great_grandchild_of = root - AND = { - exists = dynasty - exists = root.dynasty - dynasty = root.dynasty - } - } - } - } - } -} - -bp1_yearly.4030 = { # Rival nestles their way into marrying one of your vassals, turns them disloyal - type = character_event - content_source = dlc_006 - title = bp1_yearly.4030.t - desc = { - desc = bp1_yearly.4030.desc - first_valid = { - triggered_desc = { - trigger = { - exists = scope:spurned_partner - } - desc = bp1_yearly.4030.desc_bond_broken - } - desc = bp1_yearly.4030.desc_no_broken_bonds - } - desc = bp1_yearly.4030.desc_end - } - - theme = rival_relation - - override_background = { reference = throne_room } - - left_portrait = { - character = scope:marriage_rival - animation = scheme - } - - right_portrait = { - character = scope:marriage_vassal - animation = flirtation - } - - lower_right_portrait = scope:spurned_partner - - cooldown = { years = 25 } - - trigger = { - has_bp1_dlc_trigger = yes - any_relation = { - type = rival - marriage_rival_trigger = yes - } - any_vassal = { - appopriate_vassal_trigger = yes - } - } - - immediate = { - random_relation = { - type = rival - limit = { - marriage_rival_trigger = yes - } - weight = { - base = 1 - modifier = { - add = 10 - is_of_major_interest_to_root_trigger = yes - } - modifier = { - add = 5 - is_of_minor_interest_to_root_trigger = yes - } - } - save_scope_as = marriage_rival - } - random_vassal = { - limit = { - appopriate_vassal_trigger = yes - } - weight = { - base = 1 - modifier = { - add = 1000 - is_married = no - } - modifier = { - add = 10 - is_of_major_interest_to_root_trigger = yes - } - modifier = { - add = 5 - is_of_minor_interest_to_root_trigger = yes - } - } - save_scope_as = marriage_vassal - } - - scope:marriage_vassal = { - if = { - limit = { - is_married = yes - } - primary_spouse = { - save_scope_as = spurned_partner - hidden_effect = { - add_opinion = { - modifier = divorced_me_opinion - target = scope:marriage_vassal - } - } - } - divorce = primary_spouse - } - else_if = { - limit = { - is_betrothed = yes - } - betrothed = { - save_scope_as = spurned_partner - hidden_effect = { - add_opinion = { - modifier = broke_betrothal_opinion - target = scope:marriage_vassal - } - } - } - break_betrothal = betrothed - } - - if = { - limit = { - is_female = yes - scope:marriage_rival = { - is_lowborn = yes - } - } - marry_matrilineal = scope:marriage_rival - } - else = { - marry = scope:marriage_rival - } - add_trait = disloyal - add_opinion = { - modifier = distrustful - target = root - } - } - } - - option = { - name = bp1_yearly.4030.a - - duel = { - skill = diplomacy - value = scope:marriage_vassal.diplomacy - - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - - desc = bp1_yearly.4030.a.success - - send_interface_toast = { - title = bp1_yearly.4030.a.success - left_icon = scope:marriage_vassal - scope:marriage_vassal = { - remove_opinion = { - target = root - modifier = distrustful - } - remove_trait = disloyal - add_trait_force_tooltip = loyal - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - - desc = bp1_yearly.4030.a.failure - - send_interface_toast = { - title = bp1_yearly.4030.a.failure - left_icon = scope:marriage_vassal - scope:marriage_vassal = { - progress_towards_rival_effect = { - CHARACTER = root - REASON = rival_seduced_vassal - OPINION = 0 - } - } - } - } - } - - stress_impact = { - shy = medium_stress_impact_gain - forgiving = medium_stress_impact_gain - content = minor_stress_impact_gain - humble = minor_stress_impact_gain - trusting = minor_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = greedy - has_trait = forgiving - } - } - } - } - - option = { - name = bp1_yearly.4030.b - - trigger = { - exists = scope:spurned_partner - } - - duel = { - skill = learning - value = scope:marriage_vassal.learning - - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - - desc = bp1_yearly.4030.b.success - - send_interface_toast = { - title = bp1_yearly.4030.b.success - left_icon = scope:marriage_vassal - scope:marriage_vassal = { - remove_opinion = { - target = root - modifier = distrustful - } - remove_trait = disloyal - add_piety_level = -2 - divorce = scope:marriage_rival - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - - desc = bp1_yearly.4030.b.failure - - send_interface_toast = { - title = bp1_yearly.4030.b.failure - left_icon = scope:marriage_vassal - scope:marriage_vassal = { - progress_towards_rival_effect = { - CHARACTER = root - REASON = rival_seduced_vassal - OPINION = 0 - } - } - } - } - } - - stress_impact = { - cynical = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - content = minor_stress_impact_gain - trusting = minor_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = cynical - has_trait = arrogant - } - } - } - } - - option = { - name = bp1_yearly.4030.c - - trigger = { - exists = scope:spurned_partner - } - - scope:spurned_partner = { - scope:marriage_vassal = { save_scope_as = relationship_reason_involved_character } - progress_towards_friend_effect = { - CHARACTER = root - OPINION = 0 - REASON = friend_supported_me_against_spouse - } - clear_saved_scope = relationship_reason_involved_character - if = { - limit = { - can_set_relation_rival_trigger = { CHARACTER = scope:marriage_rival } - } - set_relation_rival = { - target = scope:marriage_rival - reason = rival_abandoned_marriage - } - } - if = { - limit = { - can_set_relation_rival_trigger = { CHARACTER = scope:marriage_vassal } - } - set_relation_rival = { - target = scope:marriage_vassal - reason = rival_abandoned_marriage - } - } - add_opinion = { - opinion = -40 - modifier = hate_opinion - target = scope:marriage_rival - } - add_opinion = { - opinion = -40 - modifier = hate_opinion - target = scope:marriage_vassal - } - } - if = { - limit = { - can_add_hook = { - target = scope:spurned_partner - type = loyalty_hook - } - } - add_hook = { - target = scope:spurned_partner - type = loyalty_hook - } - } - - stress_impact = { - honest = medium_stress_impact_gain - paranoid = medium_stress_impact_gain - shy = minor_stress_impact_gain - impatient = minor_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = honest - has_trait = paranoid - } - } - } - } - - option = { - name = bp1_yearly.4030.d - - stress_impact = { - brave = medium_stress_impact_gain - wrathful = medium_stress_impact_gain - vengeful = medium_stress_impact_gain - diligent = minor_stress_impact_gain - impatient = minor_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = brave - has_trait = wrathful - has_trait = vengeful - } - } - } - } -} - -bp1_yearly.4040 = { # Kindly grandmother won't stop feeding you snacks; suffer the consequences of overeating, or break her heart? - type = character_event - content_source = dlc_006 - title = bp1_yearly.4040.t - desc = { - random_valid = { - triggered_desc = { # Intro desc - trigger = { - scope:kindly_grandmother = { - is_alive = yes - } - exists = var:food_fed_by_grandmother - var:food_fed_by_grandmother <= 1 - } - desc = bp1_yearly.4040.desc.intro.1 - } - triggered_desc = { # Another snack? Nice! - trigger = { - scope:kindly_grandmother = { - is_alive = yes - } - exists = var:food_fed_by_grandmother - var:food_fed_by_grandmother <= 2 - var:food_fed_by_grandmother > 1 - } - desc = bp1_yearly.4040.desc.intro.2 - } - triggered_desc = { # It's getting a bit much - trigger = { - scope:kindly_grandmother = { - is_alive = yes - } - exists = var:food_fed_by_grandmother - var:food_fed_by_grandmother <= 4 - var:food_fed_by_grandmother > 2 - } - desc = bp1_yearly.4040.desc.feeding.1 - } - triggered_desc = { # It's getting a bit much - trigger = { - scope:kindly_grandmother = { - is_alive = yes - } - exists = var:food_fed_by_grandmother - var:food_fed_by_grandmother <= 4 - var:food_fed_by_grandmother > 2 - } - desc = bp1_yearly.4040.desc.feeding.2 - } - triggered_desc = { # It's getting insane - trigger = { - scope:kindly_grandmother = { - is_alive = yes - } - exists = var:food_fed_by_grandmother - var:food_fed_by_grandmother > 4 - } - desc = bp1_yearly.4040.desc.feeding.3 - } - triggered_desc = { # It's getting insane - trigger = { - scope:kindly_grandmother = { - is_alive = yes - } - exists = var:food_fed_by_grandmother - var:food_fed_by_grandmother > 4 - } - desc = bp1_yearly.4040.desc.feeding.4 - } - triggered_desc = { # It's getting insane - trigger = { - scope:kindly_grandmother = { - is_alive = no - } - } - desc = bp1_yearly.4040.desc.dead - } - } - } - - theme = family - - override_background = { reference = bp1_kitchen_western } - - left_portrait = { - character = root - - triggered_animation = { - trigger = { - scope:kindly_grandmother = { - is_alive = yes - } - exists = var:food_fed_by_grandmother - var:food_fed_by_grandmother <= 1 - } - animation = ecstasy - } - - triggered_animation = { - trigger = { - scope:kindly_grandmother = { - is_alive = yes - } - exists = var:food_fed_by_grandmother - var:food_fed_by_grandmother <= 2 - var:food_fed_by_grandmother > 1 - } - animation = happiness - } - - triggered_animation = { - trigger = { - scope:kindly_grandmother = { - is_alive = yes - } - var:food_fed_by_grandmother <= 4 - var:food_fed_by_grandmother > 2 - } - animation = worry - } - - triggered_animation = { - trigger = { - scope:kindly_grandmother = { - is_alive = yes - } - exists = var:food_fed_by_grandmother - var:food_fed_by_grandmother > 4 - } - animation = disbelief - } - - triggered_animation = { - trigger = { - scope:kindly_grandmother = { - is_alive = no - } - } - animation = grief - } - } - - right_portrait = { - character = scope:kindly_grandmother - - triggered_animation = { - trigger = { - scope:kindly_grandmother = { - is_alive = yes - } - } - animation = love - } - - triggered_animation = { - trigger = { - scope:kindly_grandmother = { - is_alive = no - } - } - animation = pain - } - } - - lower_right_portrait = scope:spurned_partner - - trigger = { - has_bp1_dlc_trigger = yes - age >= 6 - OR = { - exists = scope:kindly_grandmother - AND = { - NOT = { - has_character_flag = had_grandmother_event - } - any_close_family_member = { - is_available_ai_adult = yes - OR = { - is_grandparent_of = root - is_great_grandparent_of = root - } - ai_rationality <= 0 - ai_compassion >= 0 - is_ruler = no - is_married = no - is_concubine = no - NOR = { - has_trait = sadistic - has_trait = callous - has_relation_rival = root - } - } - } - } - } - - immediate = { - set_favorite_treat_effect = yes - add_character_flag = had_grandmother_event - if = { - limit = { - NOT = { - exists = scope:kindly_grandmother - } - } - random_close_family_member = { - limit = { - is_available_ai_adult = yes - OR = { - is_grandparent_of = root - is_great_grandparent_of = root - } - ai_rationality <= 0 - ai_compassion >= 0 - is_ruler = no - is_married = no - is_concubine = no - NOR = { - has_trait = sadistic - has_trait = callous - has_relation_rival = root - } - } - save_scope_as = kindly_grandmother - } - } - hidden_effect = { - if = { - limit = { - scope:kindly_grandmother = { - is_alive = yes - is_ruler = no - NOT = { - is_courtier_of = root - } - } - } - add_courtier = scope:kindly_grandmother - } - if = { - limit = { - NOT = { has_variable = food_fed_by_grandmother } - } - set_variable = { - name = food_fed_by_grandmother - value = 1 - } - } - } - } - - option = { - name = bp1_yearly.4040.family_first - - trait = family_first - trigger = { - has_trait = family_first - scope:kindly_grandmother = { - is_alive = yes - } - } - - add_stress = medium_stress_impact_loss - - scope:kindly_grandmother = { - add_opinion = { - target = root - modifier = love_opinion - opinion = 50 - } - } - - ai_chance = { - base = 100 - } - } - - option = { - name = bp1_yearly.4040.dead - - add_stress = miniscule_stress_impact_gain - - trigger = { - scope:kindly_grandmother = { - is_alive = no - } - } - - ai_chance = { - base = 100 - } - } - - option = { - name = bp1_yearly.4040.a - fallback = yes - - trigger = { - exists = var:food_fed_by_grandmother - var:food_fed_by_grandmother <= 1 - } - - hidden_effect = { - change_current_weight = 20 - change_variable = { - name = food_fed_by_grandmother - add = 1 - } - trigger_event = { - id = bp1_yearly.4040 - days = { 50 150 } - } - } - - scope:kindly_grandmother = { - add_opinion = { - target = root - modifier = love_opinion - opinion = 20 - } - } - - stress_impact = { - base = medium_stress_impact_loss - temperate = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = temperate - } - } - } - - option = { - name = bp1_yearly.4040.b - - trigger = { - exists = var:food_fed_by_grandmother - var:food_fed_by_grandmother <= 1 - } - - scope:kindly_grandmother = { - add_stress = minor_stress_impact_gain - if = { - limit = { - has_opinion_modifier = { - target = root - modifier = love_opinion - } - } - remove_opinion = { - target = root - modifier = love_opinion - } - } - } - - stress_impact = { - compassionate = medium_stress_impact_gain - trusting = medium_stress_impact_gain - gregarious = medium_stress_impact_gain - comfort_eater = medium_stress_impact_gain - gluttonous = medium_stress_impact_gain - greedy = medium_stress_impact_gain - } - ai_chance = { - base = 10 - modifier = { - factor = 0 - OR = { - has_trait = compassionate - has_trait = trusting - has_trait = gregarious - has_trait = comfort_eater - has_trait = gluttonous - has_trait = greedy - } - } - } - } - - option = { - name = bp1_yearly.4040.c - - trigger = { - scope:kindly_grandmother = { - is_alive = yes - } - exists = var:food_fed_by_grandmother - var:food_fed_by_grandmother <= 4 - var:food_fed_by_grandmother > 1 - } - - hidden_effect = { - change_current_weight = 20 - change_variable = { - name = food_fed_by_grandmother - add = 1 - } - trigger_event = { - id = bp1_yearly.4040 - days = { 50 150 } - } - } - - scope:kindly_grandmother = { - add_opinion = { - target = root - modifier = love_opinion - opinion = 20 - } - } - - stress_impact = { - base = minor_stress_impact_loss - temperate = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = temperate - } - } - } - - option = { - name = bp1_yearly.4040.d - - trigger = { - scope:kindly_grandmother = { - is_alive = yes - } - exists = var:food_fed_by_grandmother - var:food_fed_by_grandmother <= 4 - var:food_fed_by_grandmother > 1 - } - - scope:kindly_grandmother = { - add_stress = { - value = medium_stress_impact_gain - multiply = root.var:food_fed_by_grandmother - } - if = { - limit = { - has_opinion_modifier = { - target = root - modifier = love_opinion - } - } - remove_opinion = { - target = root - modifier = love_opinion - } - } - } - - stress_impact = { - comfort_eater = medium_stress_impact_gain - gluttonous = medium_stress_impact_gain - compassionate = minor_stress_impact_gain - trusting = minor_stress_impact_gain - gregarious = minor_stress_impact_gain - greedy = minor_stress_impact_gain - } - ai_chance = { - base = 10 - modifier = { - factor = 0 - OR = { - has_trait = comfort_eater - has_trait = gluttonous - } - } - } - } - - option = { - name = bp1_yearly.4040.e - - trigger = { - scope:kindly_grandmother = { - is_alive = yes - } - exists = var:food_fed_by_grandmother - var:food_fed_by_grandmother > 4 - } - - hidden_effect = { - change_current_weight = 20 - change_variable = { - name = food_fed_by_grandmother - add = 1 - } - trigger_event = { - id = bp1_yearly.4040 - days = { 50 150 } - } - } - - scope:kindly_grandmother = { - add_opinion = { - target = root - modifier = love_opinion - opinion = 20 - } - } - - stress_impact = { - base = -1 - temperate = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = temperate - } - } - } - - option = { - name = bp1_yearly.4040.f - - trigger = { - scope:kindly_grandmother = { - is_alive = yes - } - exists = var:food_fed_by_grandmother - var:food_fed_by_grandmother > 4 - } - - scope:kindly_grandmother = { - add_stress = { - value = medium_stress_impact_gain - multiply = root.var:food_fed_by_grandmother - } - if = { - limit = { - has_opinion_modifier = { - target = root - modifier = love_opinion - } - } - remove_opinion = { - target = root - modifier = love_opinion - } - } - add_opinion = { - target = root - modifier = heartbroken_opinion - opinion = -50 - } - } - - stress_impact = { - comfort_eater = medium_stress_impact_gain - gluttonous = medium_stress_impact_gain - } - ai_chance = { - base = 50 - modifier = { - factor = 0 - OR = { - has_trait = comfort_eater - has_trait = gluttonous - } - } - } - } -} diff --git a/events/dlc/bp2/bp2_adult_education_activity_events.txt b/events/dlc/bp2/bp2_adult_education_activity_events.txt index c5667efbd..cf9197cdb 100644 --- a/events/dlc/bp2/bp2_adult_education_activity_events.txt +++ b/events/dlc/bp2/bp2_adult_education_activity_events.txt @@ -91,8 +91,6 @@ bp2_adult_education.0009 = { } immediate = { - #Reward effects - adult_education_completed_log_entry_effect = yes scope:activity = { random_attending_character = { limit = { @@ -195,11 +193,11 @@ bp2_adult_education.0009 = { scope:activity = { every_attending_character = { limit = { - OR = { - has_character_flag = teacher_1 - has_character_flag = teacher_2 - has_character_flag = student_1 - has_character_flag = student_2 + has_variable = { + name = teacher_1 + name = teacher_2 + name = student_1 + name = student_2 } } silent_disappearance_ai_if_created_effect = yes @@ -283,9 +281,9 @@ bp2_adult_education.1000 = { } scope:activity = { any_attending_character = { - OR = { - has_character_flag = student_1 - has_character_flag = student_2 + has_variable = { + name = student_1 + name = student_2 } } } @@ -297,18 +295,18 @@ bp2_adult_education.1000 = { activity_location = { save_scope_as = location } random_attending_character = { limit = { - OR = { - has_character_flag = student_1 - has_character_flag = student_2 + has_variable = { + name = student_1 + name = student_2 } } save_scope_as = student } random_attending_character = { limit = { - OR = { - has_character_flag = teacher_1 - has_character_flag = teacher_2 + has_variable = { + name = teacher_1 + name = teacher_2 } } save_scope_as = teacher @@ -357,7 +355,7 @@ bp2_adult_education.1000 = { } } root = { - stress_impact = { + stress_and_fulfillment_impact = { diligent = minor_stress_impact_loss gregarious = minor_stress_impact_loss } @@ -389,11 +387,11 @@ bp2_adult_education.1000 = { REASON = rival_bested_me_in_debate OPINION = default_rival_opinion } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = medium_stress_impact_gain arrogant = medium_stress_impact_gain diligent = medium_stress_impact_gain - scholar = major_stress_impact_gain + erudite = major_stress_impact_gain } } } @@ -455,7 +453,7 @@ bp2_adult_education.1000 = { } } root = { - stress_impact = { + stress_and_fulfillment_impact = { gregarious = medium_stress_impact_loss } } @@ -486,7 +484,7 @@ bp2_adult_education.1000 = { REASON = rival_bested_me_in_debate OPINION = default_rival_opinion } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = medium_stress_impact_gain arrogant = medium_stress_impact_gain deceitful = medium_stress_impact_gain @@ -516,7 +514,7 @@ bp2_adult_education.1000 = { name = bp2_adult_education.1000.c custom_tooltip = adult_education_tt_positive_tiny scope:activity = { activity_special_type_progression_tiny = yes } - stress_impact = { + stress_and_fulfillment_impact = { gregarious = minor_stress_impact_gain ambitious = medium_stress_impact_gain arrogant = medium_stress_impact_gain @@ -557,9 +555,9 @@ bp2_adult_education.1010 = { num_of_known_languages <= language_soft_cap scope:activity = { any_attending_character = { - OR = { - has_character_flag = teacher_1 - has_character_flag = teacher_2 + has_variable = { + name = teacher_1 + name = teacher_2 } } } @@ -575,9 +573,9 @@ bp2_adult_education.1010 = { activity_location = { save_scope_as = location } random_attending_character = { limit = { - OR = { - has_character_flag = teacher_1 - has_character_flag = teacher_2 + has_variable = { + name = teacher_1 + name = teacher_2 } } save_scope_as = teacher @@ -605,7 +603,7 @@ bp2_adult_education.1010 = { custom_tooltip = adult_education_tt_positive_major activity_special_type_progression_major = yes } - stress_impact = { + stress_and_fulfillment_impact = { base = major_stress_impact_gain diligent = minor_stress_impact_loss lazy = minor_stress_impact_gain @@ -690,7 +688,7 @@ bp2_adult_education.1010 = { add_diplomacy_skill = 1 } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain diligent = medium_stress_impact_gain lifestyle_poet = major_stress_impact_gain @@ -811,7 +809,7 @@ bp2_adult_education.1010 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { craven = major_stress_impact_gain shy = major_stress_impact_gain gregarious = minor_stress_impact_loss @@ -837,7 +835,7 @@ bp2_adult_education.1010 = { name = bp2_adult_education.1010.c custom_tooltip = adult_education_tt_positive_tiny scope:activity = { activity_special_type_progression_tiny = yes } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss diligent = medium_stress_impact_gain ambitious = medium_stress_impact_gain @@ -884,6 +882,12 @@ scripted_effect bp2_learn_lithurgical_language_effect = { } learn_language = language_greek } + else_if = { + limit = { + scope:activity.activity_location.county.faith = faith:armenian_apostolic + } + learn_language = language_armenian + } } bp2_adult_education.1011 = { @@ -926,6 +930,7 @@ bp2_adult_education.1011 = { limit = { OR = { scope:activity.activity_location.county.faith.religion = religion:judaism_religion + scope:activity.activity_location.county.faith = faith:nestorian } } NOT = { knows_language = language_aramaic } @@ -942,6 +947,12 @@ bp2_adult_education.1011 = { } NOT = { knows_language = language_greek } } + trigger_else_if = { + limit = { + scope:activity.activity_location.county.faith = faith:armenian_apostolic + } + NOT = { knows_language = language_armenian } + } trigger_else = { always = no } @@ -957,9 +968,9 @@ bp2_adult_education.1011 = { activity_location = { save_scope_as = location } random_attending_character = { limit = { - OR = { - has_character_flag = teacher_1 - has_character_flag = teacher_2 + has_variable = { + name = teacher_1 + name = teacher_2 } } save_scope_as = teacher @@ -987,7 +998,7 @@ bp2_adult_education.1011 = { activity_special_type_progression_major = yes } } - stress_impact = { + stress_and_fulfillment_impact = { base = major_stress_impact_gain diligent = medium_stress_impact_loss stubborn = minor_stress_impact_loss @@ -1057,7 +1068,7 @@ bp2_adult_education.1011 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { shy = minor_stress_impact_gain } } @@ -1076,7 +1087,7 @@ bp2_adult_education.1011 = { modifier = foolish_endeavor_modifier years = 5 } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_gain } } @@ -1134,7 +1145,7 @@ bp2_adult_education.1011 = { activity_special_type_progression_medium = yes } } - stress_impact = { + stress_and_fulfillment_impact = { shy = medium_stress_impact_gain lazy = medium_stress_impact_gain fickle = medium_stress_impact_gain @@ -1160,7 +1171,7 @@ bp2_adult_education.1011 = { modifier = disappointed_opinion } } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_gain diligent = medium_stress_impact_gain } @@ -1189,7 +1200,7 @@ bp2_adult_education.1011 = { name = bp2_adult_education.1010.c custom_tooltip = adult_education_tt_positive_tiny scope:activity = { activity_special_type_progression_tiny = yes } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss diligent = medium_stress_impact_gain ambitious = medium_stress_impact_gain @@ -1232,9 +1243,9 @@ bp2_adult_education.1012 = { num_of_known_languages <= language_soft_cap scope:activity = { any_attending_character = { - OR = { - has_character_flag = teacher_1 - has_character_flag = teacher_2 + has_variable = { + name = teacher_1 + name = teacher_2 } save_temporary_scope_as = teacher_check } @@ -1247,9 +1258,9 @@ bp2_adult_education.1012 = { modifier = { scope:activity = { any_attending_character = { - OR = { - has_character_flag = teacher_1 - has_character_flag = teacher_2 + has_variable = { + name = teacher_1 + name = teacher_2 } culture != scope:activity.activity_location.county.culture } @@ -1264,17 +1275,17 @@ bp2_adult_education.1012 = { activity_location = { save_scope_as = location } random_attending_character = { limit = { - OR = { - has_character_flag = teacher_1 - has_character_flag = teacher_2 + has_variable = { + name = teacher_1 + name = teacher_2 } culture != scope:activity.activity_location.county.culture root = { NOT = { knows_language_of_culture = prev.culture } } } alternative_limit = { - OR = { - has_character_flag = teacher_1 - has_character_flag = teacher_2 + has_variable = { + name = teacher_1 + name = teacher_2 } root = { NOT = { knows_language_of_culture = prev.culture } } } @@ -1329,7 +1340,7 @@ bp2_adult_education.1012 = { OPINION = default_friend_opinion } } - stress_impact = { + stress_and_fulfillment_impact = { shy = medium_stress_impact_gain lazy = medium_stress_impact_gain fickle = medium_stress_impact_gain @@ -1355,7 +1366,7 @@ bp2_adult_education.1012 = { modifier = disappointed_opinion } } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_gain diligent = medium_stress_impact_gain gregarious = medium_stress_impact_gain @@ -1408,7 +1419,7 @@ bp2_adult_education.1012 = { custom_tooltip = adult_education_tt_positive_medium activity_special_type_progression_medium = yes } - stress_impact = { + stress_and_fulfillment_impact = { shy = medium_stress_impact_gain lazy = medium_stress_impact_gain fickle = medium_stress_impact_gain @@ -1434,7 +1445,7 @@ bp2_adult_education.1012 = { modifier = disappointed_opinion } } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_gain diligent = medium_stress_impact_gain gregarious = medium_stress_impact_gain @@ -1454,7 +1465,7 @@ bp2_adult_education.1012 = { name = bp2_adult_education.1010.c custom_tooltip = adult_education_tt_positive_tiny scope:activity = { activity_special_type_progression_tiny = yes } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss diligent = medium_stress_impact_gain ambitious = medium_stress_impact_gain @@ -1524,9 +1535,9 @@ bp2_adult_education.1020 = { } } } - scope:location.county.faith = { + scope:location.county.rite = { NOT = { - has_doctrine = doctrine_theocracy_lay_clergy + rite_has_doctrine = doctrine_theocracy_lay_clergy } } } @@ -1543,9 +1554,9 @@ bp2_adult_education.1020 = { } } } - scope:location.county.faith = { + scope:location.county.rite = { NOT = { - has_doctrine = doctrine_theocracy_lay_clergy + rite_has_doctrine = doctrine_theocracy_lay_clergy } } } @@ -1598,15 +1609,15 @@ bp2_adult_education.1020 = { scope:activity.activity_location = { geographical_region = world_europe } scope:activity = { any_attending_character = { - OR = { - has_character_flag = student_1 - has_character_flag = student_2 + has_variable = { + name = student_1 + name = student_2 } } any_attending_character = { - OR = { - has_character_flag = teacher_1 - has_character_flag = teacher_2 + has_variable = { + name = teacher_1 + name = teacher_2 } } } @@ -1621,9 +1632,9 @@ bp2_adult_education.1020 = { activity_location = { save_scope_as = location } random_attending_character = { limit = { - OR = { - has_character_flag = student_1 - has_character_flag = student_2 + has_variable = { + name = student_1 + name = student_2 } } save_scope_as = student @@ -1639,9 +1650,9 @@ bp2_adult_education.1020 = { } random_attending_character = { limit = { - OR = { - has_character_flag = teacher_1 - has_character_flag = teacher_2 + has_variable = { + name = teacher_1 + name = teacher_2 } } save_scope_as = teacher @@ -1667,7 +1678,7 @@ bp2_adult_education.1020 = { OPINION = default_friend_opinion } } - stress_impact = { + stress_and_fulfillment_impact = { diligent = minor_stress_impact_loss shy = minor_stress_impact_loss cynical = minor_stress_impact_gain @@ -1722,7 +1733,7 @@ bp2_adult_education.1020 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain shy = medium_stress_impact_gain zealous = medium_stress_impact_gain @@ -1785,7 +1796,7 @@ bp2_adult_education.1020 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss diligent = medium_stress_impact_gain } @@ -1799,7 +1810,7 @@ bp2_adult_education.1020 = { name = bp2_adult_education.1020.d custom_tooltip = adult_education_tt_positive_medium scope:activity = { activity_special_type_progression_medium = yes } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain } ai_chance = { @@ -1853,9 +1864,9 @@ bp2_adult_education.1030 = { trigger = { scope:activity = { any_attending_character = { - OR = { - has_character_flag = student_1 - has_character_flag = student_2 + has_variable = { + name = student_1 + name = student_2 } } } @@ -1870,9 +1881,9 @@ bp2_adult_education.1030 = { activity_location = { save_scope_as = location } random_attending_character = { limit = { - OR = { - has_character_flag = student_1 - has_character_flag = student_2 + has_variable = { + name = student_1 + name = student_2 } } save_scope_as = student @@ -1919,7 +1930,7 @@ bp2_adult_education.1030 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { diligent = minor_stress_impact_gain gregarious = minor_stress_impact_loss shy = minor_stress_impact_loss @@ -1940,7 +1951,7 @@ bp2_adult_education.1030 = { years = 10 } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain diligent = medium_stress_impact_gain gregarious = medium_stress_impact_gain @@ -1985,7 +1996,7 @@ bp2_adult_education.1030 = { scope:activity = { activity_special_type_progression_tiny = yes } } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss } ai_chance = { @@ -2002,7 +2013,7 @@ bp2_adult_education.1030 = { } custom_tooltip = adult_education_tt_positive_medium scope:activity = { activity_special_type_progression_medium = yes } - stress_impact = { + stress_and_fulfillment_impact = { gregarious = medium_stress_impact_gain lifestyle_reveler = medium_stress_impact_gain } @@ -2010,7 +2021,7 @@ bp2_adult_education.1030 = { else = { custom_tooltip = adult_education_tt_positive_tiny scope:activity = { activity_special_type_progression_tiny = yes } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_gain diligent = minor_stress_impact_loss } @@ -2168,7 +2179,7 @@ bp2_adult_education.1040 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { honest = minor_stress_impact_loss gregarious = minor_stress_impact_gain craven = medium_stress_impact_gain @@ -2216,7 +2227,7 @@ bp2_adult_education.1040 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { honest = minor_stress_impact_loss gregarious = minor_stress_impact_gain craven = medium_stress_impact_gain @@ -2242,7 +2253,7 @@ bp2_adult_education.1040 = { min = -49 } modifier = { - has_trait = scholar + has_trait = erudite add = 20 } modifier = { @@ -2293,8 +2304,8 @@ bp2_adult_education.1040 = { } } } - stress_impact = { - scholar = minor_stress_impact_loss + stress_and_fulfillment_impact = { + erudite = minor_stress_impact_loss deceitful = minor_stress_impact_loss diligent = minor_stress_impact_loss } @@ -2330,7 +2341,7 @@ bp2_adult_education.1040 = { OPINION = default_rival_opinion } } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_gain } } @@ -2399,7 +2410,7 @@ bp2_adult_education.1040 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss gregarious = medium_stress_impact_loss shy = minor_stress_impact_gain @@ -2440,7 +2451,7 @@ bp2_adult_education.1040 = { OPINION = default_rival_opinion } } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_gain gregarious = medium_stress_impact_gain shy = medium_stress_impact_gain @@ -2582,7 +2593,7 @@ bp2_adult_education.1050 = { desc = cultural_acceptance_gain_hold_court_event_outcome } } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = medium_stress_impact_gain impatient = medium_stress_impact_gain zealous = medium_stress_impact_gain @@ -2636,7 +2647,7 @@ bp2_adult_education.1050 = { OPINION = default_friend_opinion } } - stress_impact = { + stress_and_fulfillment_impact = { diligent = medium_stress_impact_gain shy = medium_stress_impact_gain gregarious = minor_stress_impact_loss @@ -2663,7 +2674,7 @@ bp2_adult_education.1050 = { name = bp2_adult_education.1050.c custom_tooltip = adult_education_tt_positive_medium scope:activity = { activity_special_type_progression_medium = yes } - stress_impact = { + stress_and_fulfillment_impact = { shy = minor_stress_impact_loss diligent = minor_stress_impact_loss humble = medium_stress_impact_gain @@ -2710,7 +2721,7 @@ bp2_adult_education.1060 = { add = 2 } modifier = { - has_trait = scholar + has_trait = erudite add = 1 } } @@ -2788,7 +2799,7 @@ bp2_adult_education.1060 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss } } @@ -2805,7 +2816,7 @@ bp2_adult_education.1060 = { custom_tooltip = adult_education_tt_positive_major scope:activity = { activity_special_type_progression_major = yes } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss } } @@ -2822,7 +2833,7 @@ bp2_adult_education.1060 = { custom_tooltip = adult_education_tt_positive_tiny scope:activity = { activity_special_type_progression_tiny = yes } } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_gain } } @@ -2842,10 +2853,10 @@ bp2_adult_education.1060 = { bp2_goliards_potential_shenanigans_effect = { TITLE_VALUE = bp2_adult_education.1060.b.tt } custom_tooltip = adult_education_tt_positive_tiny scope:activity = { activity_special_type_progression_tiny = yes } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss diligent = minor_stress_impact_gain - scholar = major_stress_impact_gain + erudite = major_stress_impact_gain theologian = major_stress_impact_gain } ai_chance = { @@ -2856,7 +2867,7 @@ bp2_adult_education.1060 = { # Option C: opt-out option = { name = bp2_adult_education.1060.c - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss } ai_chance = { @@ -2912,9 +2923,9 @@ bp2_adult_education.1070 = { has_character_flag = student_2 } any_attending_character = { - OR = { - has_character_flag = teacher_1 - has_character_flag = teacher_2 + has_variable = { + name = teacher_1 + name = teacher_2 } } } @@ -2929,18 +2940,18 @@ bp2_adult_education.1070 = { activity_location = { save_scope_as = location } random_attending_character = { limit = { - OR = { - has_character_flag = student_1 - has_character_flag = student_2 + has_variable = { + name = student_1 + name = student_2 } } save_scope_as = student } random_attending_character = { limit = { - OR = { - has_character_flag = student_1 - has_character_flag = student_2 + has_variable = { + name = student_1 + name = student_2 } this != scope:student } @@ -2948,9 +2959,9 @@ bp2_adult_education.1070 = { } random_attending_character = { limit = { - OR = { - has_character_flag = teacher_1 - has_character_flag = teacher_2 + has_variable = { + name = teacher_1 + name = teacher_2 } } save_scope_as = teacher @@ -2995,7 +3006,7 @@ bp2_adult_education.1070 = { modifier = proud_opinion opinion = 20 } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss arrogant = minor_stress_impact_loss shy = minor_stress_impact_gain @@ -3029,7 +3040,7 @@ bp2_adult_education.1070 = { #Effect root = { - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_gain shy = medium_stress_impact_gain arrogant = medium_stress_impact_gain @@ -3084,7 +3095,7 @@ bp2_adult_education.1070 = { modifier = proud_opinion opinion = 20 } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss arrogant = minor_stress_impact_loss shy = minor_stress_impact_gain @@ -3120,7 +3131,7 @@ bp2_adult_education.1070 = { #Effect root = { bp2_lifestyle_xp_gain_per_type_effect = { VALUE = minor } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_gain shy = medium_stress_impact_gain arrogant = medium_stress_impact_gain @@ -3150,7 +3161,7 @@ bp2_adult_education.1070 = { OPINION = default_rival_opinion } } - stress_impact = { + stress_and_fulfillment_impact = { shy = major_stress_impact_loss reclusive = major_stress_impact_loss } @@ -3191,9 +3202,9 @@ bp2_adult_education.1080 = { trigger = { scope:activity = { any_attending_character = { - OR = { - has_character_flag = teacher_1 - has_character_flag = teacher_2 + has_variable = { + name = teacher_1 + name = teacher_2 } OR = { is_infidel_trigger = { WHO = this TARGET = root } @@ -3217,9 +3228,9 @@ bp2_adult_education.1080 = { activity_location = { save_scope_as = location } random_attending_character = { limit = { - OR = { - has_character_flag = teacher_1 - has_character_flag = teacher_2 + has_variable = { + name = teacher_1 + name = teacher_2 } OR = { is_infidel_trigger = { WHO = this TARGET = root } @@ -3241,7 +3252,7 @@ bp2_adult_education.1080 = { bp2_lifestyle_xp_gain_per_type_effect = { VALUE = medium } custom_tooltip = adult_education_tt_positive_medium scope:activity = { activity_special_type_progression_medium = yes } - stress_impact = { + stress_and_fulfillment_impact = { zealous = major_stress_impact_gain theologian = major_stress_impact_gain } @@ -3258,7 +3269,7 @@ bp2_adult_education.1080 = { } bp2_lifestyle_xp_gain_per_type_effect = { VALUE = medium } bp2_goliards_potential_shenanigans_effect = { TITLE_VALUE = bp2_adult_education.1080.b.tt } - stress_impact = { + stress_and_fulfillment_impact = { diligent = medium_stress_impact_gain } ai_chance = { @@ -3282,7 +3293,7 @@ bp2_adult_education.1080 = { } add_piety = major_piety_gain add_prestige = medium_prestige_gain - stress_impact = { + stress_and_fulfillment_impact = { cynical = major_stress_impact_gain gregarious = major_stress_impact_gain compassionate = major_stress_impact_gain @@ -3331,7 +3342,7 @@ bp2_adult_education.1080 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { zealous = massive_stress_impact_gain } ai_chance = { @@ -3369,7 +3380,7 @@ bp2_adult_education.1080 = { OPINION = default_friend_opinion } } - stress_impact = { + stress_and_fulfillment_impact = { zealous = major_stress_impact_gain } ai_chance = { @@ -3404,9 +3415,9 @@ bp2_adult_education.1090 = { trigger = { scope:activity = { any_attending_character = { - OR = { - has_character_flag = teacher_1 - has_character_flag = teacher_2 + has_variable = { + name = teacher_1 + name = teacher_2 } } } @@ -3417,9 +3428,9 @@ bp2_adult_education.1090 = { modifier = { scope:activity = { any_attending_character = { - OR = { - has_character_flag = teacher_1 - has_character_flag = teacher_2 + has_variable = { + name = teacher_1 + name = teacher_2 } has_trait = education_martial } @@ -3429,9 +3440,9 @@ bp2_adult_education.1090 = { modifier = { scope:activity = { any_attending_character = { - OR = { - has_character_flag = teacher_1 - has_character_flag = teacher_2 + has_variable = { + name = teacher_1 + name = teacher_2 } has_trait = lifestyle_hunter } @@ -3445,9 +3456,9 @@ bp2_adult_education.1090 = { activity_location = { save_scope_as = location } random_attending_character = { limit = { - OR = { - has_character_flag = teacher_1 - has_character_flag = teacher_2 + has_variable = { + name = teacher_1 + name = teacher_2 } OR = { has_trait = education_martial @@ -3455,9 +3466,9 @@ bp2_adult_education.1090 = { } } alternative_limit = { - OR = { - has_character_flag = teacher_1 - has_character_flag = teacher_2 + has_variable = { + name = teacher_1 + name = teacher_2 } } save_scope_as = teacher @@ -3474,7 +3485,7 @@ bp2_adult_education.1090 = { add_prestige = medium_prestige_loss custom_tooltip = adult_education_tt_positive_major scope:activity = { activity_special_type_progression_major = yes } - stress_impact = { + stress_and_fulfillment_impact = { humble = minor_stress_impact_gain compassionate = medium_stress_impact_gain zealous = medium_stress_impact_gain @@ -3485,7 +3496,7 @@ bp2_adult_education.1090 = { limit = { OR = { culture = { has_cultural_tradition = tradition_vegetarianism } - faith = { has_doctrine = tenet_sanctity_of_nature } + rite = { rite_has_tenet = tenet_sanctity_of_nature } } } custom_tooltip = bp2_adult_education.1090.a.tt @@ -3498,7 +3509,7 @@ bp2_adult_education.1090 = { add = 100 } modifier = { - has_trait = scholar + has_trait = erudite add = 100 } modifier = { @@ -3546,7 +3557,7 @@ bp2_adult_education.1090 = { } } - stress_impact = { + stress_and_fulfillment_impact = { forgiving = minor_stress_impact_gain compassionate = medium_stress_impact_gain diligent = major_stress_impact_gain @@ -3574,7 +3585,7 @@ bp2_adult_education.1090 = { name = bp2_adult_education.1090.c custom_tooltip = adult_education_tt_positive_medium scope:activity = { activity_special_type_progression_medium = yes } - stress_impact = { + stress_and_fulfillment_impact = { brave = minor_stress_impact_gain diligent = minor_stress_impact_gain gregarious = minor_stress_impact_gain diff --git a/events/dlc/bp2/bp2_character_interaction_events.txt b/events/dlc/bp2/bp2_character_interaction_events.txt deleted file mode 100644 index 4bf676cc3..000000000 --- a/events/dlc/bp2/bp2_character_interaction_events.txt +++ /dev/null @@ -1,514 +0,0 @@ -namespace = bp2_character_interaction - -# Influence Ward's Personality - Success Event -bp2_character_interaction.1001 = { - type = character_event - content_source = dlc_009 - title = bp2_character_interaction.1001.t - desc = { - desc = bp2_character_interaction.1001.desc_intro - first_valid = { - triggered_desc = { - trigger = { scope:target_trait = trait:lustful } - desc = bp2_character_interaction.1001.desc_lustful - } - triggered_desc = { - trigger = { scope:target_trait = trait:chaste } - desc = bp2_character_interaction.1001.desc_chaste - } - triggered_desc = { - trigger = { scope:target_trait = trait:gluttonous } - desc = bp2_character_interaction.1001.desc_gluttonous - } - triggered_desc = { - trigger = { scope:target_trait = trait:temperate } - desc = bp2_character_interaction.1001.desc_temperate - } - triggered_desc = { - trigger = { scope:target_trait = trait:greedy } - desc = bp2_character_interaction.1001.desc_greedy - } - triggered_desc = { - trigger = { scope:target_trait = trait:generous } - desc = bp2_character_interaction.1001.desc_generous - } - triggered_desc = { - trigger = { scope:target_trait = trait:lazy } - desc = bp2_character_interaction.1001.desc_lazy - } - triggered_desc = { - trigger = { scope:target_trait = trait:diligent } - desc = bp2_character_interaction.1001.desc_diligent - } - triggered_desc = { - trigger = { scope:target_trait = trait:wrathful } - desc = bp2_character_interaction.1001.desc_wrathful - } - triggered_desc = { - trigger = { scope:target_trait = trait:calm } - desc = bp2_character_interaction.1001.desc_calm - } - triggered_desc = { - trigger = { scope:target_trait = trait:patient } - desc = bp2_character_interaction.1001.desc_patient - } - triggered_desc = { - trigger = { scope:target_trait = trait:impatient } - desc = bp2_character_interaction.1001.desc_impatient - } - triggered_desc = { - trigger = { scope:target_trait = trait:arrogant} - desc = bp2_character_interaction.1001.desc_arrogant - } - triggered_desc = { - trigger = { scope:target_trait = trait:humble } - desc = bp2_character_interaction.1001.desc_humble - } - triggered_desc = { - trigger = { scope:target_trait = trait:deceitful } - desc = bp2_character_interaction.1001.desc_deceitful - } - triggered_desc = { - trigger = { scope:target_trait = trait:honest } - desc = bp2_character_interaction.1001.desc_honest - } - triggered_desc = { - trigger = { scope:target_trait = trait:craven } - desc = bp2_character_interaction.1001.desc_craven - } - triggered_desc = { - trigger = { - scope:target_trait = trait:brave - scope:recipient = { is_landed = yes } - } - desc = bp2_character_interaction.1001.desc_brave_self - } - triggered_desc = { - trigger = { - scope:target_trait = trait:brave - scope:recipient = { exists = liege } - } - desc = bp2_character_interaction.1001.desc_brave_liege - } - triggered_desc = { - trigger = { - scope:target_trait = trait:brave - } - desc = bp2_character_interaction.1001.desc_brave_root - } - triggered_desc = { - trigger = { scope:target_trait = trait:shy } - desc = bp2_character_interaction.1001.desc_shy - } - triggered_desc = { - trigger = { scope:target_trait = trait:gregarious } - desc = bp2_character_interaction.1001.desc_gregarious - } - triggered_desc = { - trigger = { scope:target_trait = trait:ambitious } - desc = bp2_character_interaction.1001.desc_ambitious - } - triggered_desc = { - trigger = { scope:target_trait = trait:content } - desc = bp2_character_interaction.1001.desc_content - } - triggered_desc = { - trigger = { scope:target_trait = trait:arbitrary } - desc = bp2_character_interaction.1001.desc_arbitrary - } - triggered_desc = { - trigger = { scope:target_trait = trait:just } - desc = bp2_character_interaction.1001.desc_just - } - triggered_desc = { - trigger = { scope:target_trait = trait:cynical } - desc = bp2_character_interaction.1001.desc_cynical - } - triggered_desc = { - trigger = { scope:target_trait = trait:zealous } - desc = bp2_character_interaction.1001.desc_zealous - } - triggered_desc = { - trigger = { scope:target_trait = trait:paranoid } - desc = bp2_character_interaction.1001.desc_paranoid - } - triggered_desc = { - trigger = { scope:target_trait = trait:trusting } - desc = bp2_character_interaction.1001.desc_trusting - } - triggered_desc = { - trigger = { scope:target_trait = trait:compassionate } - desc = bp2_character_interaction.1001.desc_compassionate - } - triggered_desc = { - trigger = { scope:target_trait = trait:callous } - desc = bp2_character_interaction.1001.desc_callous - } - triggered_desc = { - trigger = { scope:target_trait = trait:sadistic } - desc = bp2_character_interaction.1001.desc_sadistic - } - triggered_desc = { - trigger = { scope:target_trait = trait:stubborn } - desc = bp2_character_interaction.1001.desc_stubborn - } - triggered_desc = { - trigger = { scope:target_trait = trait:fickle } - desc = bp2_character_interaction.1001.desc_fickle - } - triggered_desc = { - trigger = { scope:target_trait = trait:eccentric } - desc = bp2_character_interaction.1001.desc_eccentric - } - triggered_desc = { - trigger = { scope:target_trait = trait:vengeful } - desc = bp2_character_interaction.1001.desc_vengeful - } - triggered_desc = { - trigger = { scope:target_trait = trait:forgiving } - desc = bp2_character_interaction.1001.desc_forgiving - } - } - } - theme = family - override_background = { - trigger = { - scope:recipient = { - age < 12 - } - } - reference = bp2_nursery - } - override_background = { - trigger = { - scope:recipient = { - age >= 12 - } - } - reference = garden - } - - left_portrait = { - character = root - animation = happiness - } - right_portrait = { - character = scope:recipient - triggered_animation = { - trigger = { - OR = { - scope:target_trait = trait:greedy - scope:target_trait = trait:generous - } - } - animation = hunting_shortbow_rest_arrow_default - } - animation = admiration - } - - trigger = { - exists = scope:target_trait - } - - immediate = { - scope:recipient = { - set_favorite_toy_effect = yes - } - } - - option = { - name = bp2_character_interaction.1001.a - flavor = bp2_character_interaction.1001.a.flavor - add_opinion = { - target = scope:recipient - modifier = pleased_opinion - opinion = 20 - } - scope:recipient = { - add_trait = scope:target_trait - add_opinion = { - target = root - modifier = admiration_opinion - opinion = 20 - } - } - if = { - limit = { - scope:recipient = { - any_parent = { - this != root - is_ai = no - } - } - } - scope:recipient = { - every_parent = { - limit = { - this != root - is_ai = no - } - send_interface_message = { - type = event_childhood_good_text - title = guardian_influenced_personality - desc = guardian_influenced_personality_desc - left_icon = scope:recipient - right_icon = scope:actor - } - } - } - } - stress_impact = { - base = minor_stress_impact_gain - } - } -} - -# Influence Ward's Personality - Basic Failure Event -bp2_character_interaction.1002 = { - type = character_event - content_source = dlc_009 - title = bp2_character_interaction.1002.t - desc = { - desc = bp2_character_interaction.1002.desc_intro - first_valid = { - triggered_desc = { - trigger = { scope:target_trait = trait:lustful } - desc = bp2_character_interaction.1002.desc_lustful - } - triggered_desc = { - trigger = { scope:target_trait = trait:chaste } - desc = bp2_character_interaction.1002.desc_chaste - } - triggered_desc = { - trigger = { scope:target_trait = trait:gluttonous } - desc = bp2_character_interaction.1002.desc_gluttonous - } - triggered_desc = { - trigger = { scope:target_trait = trait:temperate } - desc = bp2_character_interaction.1002.desc_temperate - } - triggered_desc = { - trigger = { scope:target_trait = trait:greedy } - desc = bp2_character_interaction.1002.desc_greedy - } - triggered_desc = { - trigger = { scope:target_trait = trait:generous } - desc = bp2_character_interaction.1002.desc_generous - } - triggered_desc = { - trigger = { scope:target_trait = trait:lazy } - desc = bp2_character_interaction.1002.desc_lazy - } - triggered_desc = { - trigger = { scope:target_trait = trait:diligent } - desc = bp2_character_interaction.1002.desc_diligent - } - triggered_desc = { - trigger = { scope:target_trait = trait:wrathful } - desc = bp2_character_interaction.1002.desc_wrathful - } - triggered_desc = { - trigger = { scope:target_trait = trait:calm } - desc = bp2_character_interaction.1002.desc_calm - } - triggered_desc = { - trigger = { scope:target_trait = trait:patient } - desc = bp2_character_interaction.1002.desc_patient - } - triggered_desc = { - trigger = { scope:target_trait = trait:impatient } - desc = bp2_character_interaction.1002.desc_impatient - } - triggered_desc = { - trigger = { scope:target_trait = trait:arrogant} - desc = bp2_character_interaction.1002.desc_arrogant - } - triggered_desc = { - trigger = { scope:target_trait = trait:humble } - desc = bp2_character_interaction.1002.desc_humble - } - triggered_desc = { - trigger = { scope:target_trait = trait:deceitful } - desc = bp2_character_interaction.1002.desc_deceitful - } - triggered_desc = { - trigger = { scope:target_trait = trait:honest } - desc = bp2_character_interaction.1002.desc_honest - } - triggered_desc = { - trigger = { scope:target_trait = trait:craven } - desc = bp2_character_interaction.1002.desc_craven - } - triggered_desc = { - trigger = { scope:target_trait = trait:brave } - desc = bp2_character_interaction.1002.desc_brave - } - triggered_desc = { - trigger = { scope:target_trait = trait:shy } - desc = bp2_character_interaction.1002.desc_shy - } - triggered_desc = { - trigger = { scope:target_trait = trait:gregarious } - desc = bp2_character_interaction.1002.desc_gregarious - } - triggered_desc = { - trigger = { scope:target_trait = trait:ambitious } - desc = bp2_character_interaction.1002.desc_ambitious - } - triggered_desc = { - trigger = { scope:target_trait = trait:content } - desc = bp2_character_interaction.1002.desc_content - } - triggered_desc = { - trigger = { scope:target_trait = trait:arbitrary } - desc = bp2_character_interaction.1002.desc_arbitrary - } - triggered_desc = { - trigger = { scope:target_trait = trait:just } - desc = bp2_character_interaction.1002.desc_just - } - triggered_desc = { - trigger = { scope:target_trait = trait:cynical } - desc = bp2_character_interaction.1002.desc_cynical - } - triggered_desc = { - trigger = { scope:target_trait = trait:zealous } - desc = bp2_character_interaction.1002.desc_zealous - } - triggered_desc = { - trigger = { scope:target_trait = trait:paranoid } - desc = bp2_character_interaction.1002.desc_paranoid - } - triggered_desc = { - trigger = { scope:target_trait = trait:trusting } - desc = bp2_character_interaction.1002.desc_trusting - } - triggered_desc = { - trigger = { scope:target_trait = trait:compassionate } - desc = bp2_character_interaction.1002.desc_compassionate - } - triggered_desc = { - trigger = { scope:target_trait = trait:callous } - desc = bp2_character_interaction.1002.desc_callous - } - triggered_desc = { - trigger = { scope:target_trait = trait:sadistic } - desc = bp2_character_interaction.1002.desc_sadistic - } - triggered_desc = { - trigger = { scope:target_trait = trait:stubborn } - desc = bp2_character_interaction.1002.desc_stubborn - } - triggered_desc = { - trigger = { scope:target_trait = trait:fickle } - desc = bp2_character_interaction.1002.desc_fickle - } - triggered_desc = { - trigger = { scope:target_trait = trait:eccentric } - desc = bp2_character_interaction.1002.desc_eccentric - } - triggered_desc = { - trigger = { scope:target_trait = trait:vengeful } - desc = bp2_character_interaction.1002.desc_vengeful - } - triggered_desc = { - trigger = { scope:target_trait = trait:forgiving } - desc = bp2_character_interaction.1002.desc_forgiving - } - } - } - theme = family - override_background = { - trigger = { - scope:recipient = { - age < 12 - } - } - reference = bp2_nursery - } - override_background = { - trigger = { - scope:recipient = { - age >= 12 - } - } - reference = garden - } - - left_portrait = { - character = root - animation = stress - } - right_portrait = { - character = scope:recipient - triggered_animation = { - trigger = { - OR = { - scope:target_trait = trait:greedy - scope:target_trait = trait:generous - } - } - animation = hunting_shortbow_rest_arrow_default - } - triggered_animation = { - trigger = { scope:target_trait = trait:paranoid } - animation = disapproval - } - triggered_animation = { - trigger = { scope:recipient = { age >= 12 } } - animation = shame - } - animation = clutching_toy - } - - immediate = { - scope:recipient = { - set_favorite_toy_effect = yes - } - } - - option = { - name = bp2_character_interaction.1002.a - flavor = bp2_character_interaction.1002.a.flavor - scope:recipient = { - add_opinion = { - target = root - modifier = confused_opinion - opinion = -20 - } - } - add_opinion = { - target = scope:recipient - modifier = disappointed_opinion - opinion = -20 - } - if = { - limit = { - scope:recipient = { - any_parent = { - this != root - is_ai = no - } - } - } - scope:recipient = { - every_parent = { - limit = { - this != root - is_ai = no - } - send_interface_message = { - type = event_childhood_bad_text - title = guardian_influenced_personality_fail - desc = guardian_influenced_personality_fail_desc - left_icon = scope:recipient - right_icon = scope:actor - } - } - } - } - stress_impact = { - base = medium_stress_impact_gain - } - } -} diff --git a/events/dlc/bp2/bp2_child_of_destiny_events.txt b/events/dlc/bp2/bp2_child_of_destiny_events.txt deleted file mode 100644 index 62fc25674..000000000 --- a/events/dlc/bp2/bp2_child_of_destiny_events.txt +++ /dev/null @@ -1,1891 +0,0 @@ -namespace = destiny_child - -################################################## -# The Child of Destiny -# by Nick Meredith -################################################## - -#Lead-in event -destiny_child.0001 = { - type = character_event - content_source = dlc_009 - title = destiny_child.0001.t - desc = destiny_child.0001.desc - theme = family - override_background = { reference = corridor_day } - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:destiny_child - animation = personality_honorable - } - cooldown = { years = 100 } #Ensure we don't have too many children of destiny! - trigger = { - has_bp2_dlc_trigger = yes - - #Age check - is_available_adult = yes - - #You are either a parent or guardian of a wondrous child - OR = { - any_warden_hostage = { - age < 14 - age > 9 - NOR = { #Allowed to be physically weak, but not an idiot - has_trait = intellect_bad - has_trait = dull - } - } - any_child = { - age < 14 - age > 9 - NOR = { #Allowed to be physically weak, but not an idiot - has_trait = intellect_bad - has_trait = dull - } - save_temporary_scope_as = child_destiny - } - } - } - - immediate = { - if = { - limit = { - any_warden_hostage = { - age < 14 - age > 9 - NOR = { - has_trait = intellect_bad - has_trait = dull - } - } - } - random_warden_hostage = { - limit = { - age < 14 - age > 9 - NOR = { - has_trait = intellect_bad - has_trait = dull - } - } - save_scope_as = destiny_child - } - } - else = { - random_child = { - limit = { - age < 14 - age > 9 - NOR = { - has_trait = intellect_bad - has_trait = dull - } - } - save_scope_as = destiny_child - } - } - } - - #Yes, I think they are! - option = { - name = destiny_child.0001.a - - flavor = destiny_child.0001.a.tt - - scope:destiny_child = { - add_character_modifier = { - modifier = bp2_destined_modifier - } - set_variable = { - name = destiny_child - value = scope:destiny_child - } - } - - create_story = { - type = story_destiny_child - save_scope_as = story - } - - random_owned_story = { - type = story_destiny_child - set_variable = { - name = destiny_child - value = scope:destiny_child - } - } - - stress_impact = { - paranoid = minor_stress_impact_gain - content = minor_stress_impact_gain - lazy = minor_stress_impact_gain - arrogant = minor_stress_impact_gain - impatient = minor_stress_impact_gain - patient = miniscule_stress_impact_loss - ambitious = miniscule_stress_impact_loss - diligent = miniscule_stress_impact_loss - humble = miniscule_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 1 - ai_sociability = 0.5 - } - } - } - - #What nonsense. - option = { - name = destiny_child.0001.b - - scope:destiny_child = { - add_character_modifier = { - modifier = bp2_stifled_potential_modifier - years = 10 - } - } - - stress_impact = { - paranoid = minor_stress_impact_loss - content = miniscule_stress_impact_loss - lazy = miniscule_stress_impact_loss - arrogant = miniscule_stress_impact_loss - impatient = miniscule_stress_impact_loss - patient = minor_stress_impact_gain - ambitious = minor_stress_impact_gain - diligent = minor_stress_impact_gain - humble = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = -1 - ai_sociability = -0.5 - } - } - } -} - -#Child is developing physically -destiny_child.1000 = { - type = character_event - content_source = dlc_009 - title = destiny_child.1000.t - desc = destiny_child.1000.desc - theme = physical_health - override_background = { reference = courtyard } - left_portrait = { - character = root - animation = admiration - } - right_portrait = { - character = scope:destiny_child - animation = marshal_wooden_sword - } - cooldown = { years = 10 } - trigger = { - has_bp2_dlc_trigger = yes - - #Age check - is_available_adult = yes - - #Just to make sure it doesn't seem strange - scope:destiny_child = { - NOR = { - has_trait = weak - has_trait = physique_bad - } - } - } - - #Yes, continue as you're doing! - option = { - name = destiny_child.1000.a - - scope:destiny_child = { - add_trait = strong - add_prowess_skill = 2 - } - - stress_impact = { - diligent = miniscule_stress_impact_loss - ambitious = miniscule_stress_impact_loss - strong = minor_stress_impact_loss - lazy = minor_stress_impact_gain - content = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 1 - ai_sociability = 0.5 - } - } - } - - #Remember to be sensible - option = { - name = destiny_child.1000.b - - scope:destiny_child = { - add_trait = athletic - add_martial_skill = 2 - } - - stress_impact = { - diligent = minor_stress_impact_gain - ambitious = minor_stress_impact_gain - athletic = minor_stress_impact_loss - lazy = miniscule_stress_impact_loss - content = miniscule_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = -1 - ai_sociability = -0.5 - } - } - } -} - -#Child is debating religious scholars -destiny_child.1005 = { - type = character_event - content_source = dlc_009 - title = destiny_child.1005.t - desc = destiny_child.1005.desc - theme = learning - override_background = { reference = garden } - left_portrait = { - character = root - animation = personality_zealous - } - right_portrait = { - character = scope:destiny_child - animation = go_to_your_room - } - lower_right_portrait = { - character = scope:realm_priest - } - cooldown = { years = 10 } - trigger = { - has_bp2_dlc_trigger = yes - - #Age check - is_available_adult = yes - - OR = { - cp:councillor_court_chaplain ?= { - is_available_ai_adult = yes - location = root.location - } - any_court_position_holder = { - type = camp_priest_camp_officer - is_available_ai_adult = yes - location = root.location - } - } - } - - immediate = { - - cp:councillor_court_chaplain ?= { - save_scope_as = realm_priest - } - if = { - limit = { - NOT = { exists = scope:realm_priest } - } - random_court_position_holder = { - type = camp_priest_camp_officer - save_scope_as = realm_priest - } - } - } - - #Really push yourself! - option = { - name = destiny_child.1005.a - - if = { - limit = { - scope:destiny_child = { - NOT = { - has_trait = shrewd - } - } - } - scope:destiny_child = { - random = { - chance = 75 - add_trait = shrewd - } - } - } - else = { - scope:destiny_child = { - random = { - chance = 75 - add_learning_skill = 4 - } - } - } - - stress_impact = { - diligent = miniscule_stress_impact_loss - ambitious = miniscule_stress_impact_loss - zealous = minor_stress_impact_loss - lazy = minor_stress_impact_gain - content = minor_stress_impact_gain - cynical = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_zeal = 1 - ai_sociability = 0.5 - } - } - } - - #You should be a warrior first! - option = { - name = destiny_child.1005.b - - scope:destiny_child = { - add_learning_skill = -1 - add_martial_skill = { 1 2 } - add_prowess_skill = { 1 2 } - } - - reverse_add_opinion = { - target = scope:realm_priest - modifier = disappointed_opinion - opinion = -30 - } - - stress_impact = { - brave = miniscule_stress_impact_loss - cynical = minor_stress_impact_loss - wrathful = miniscule_stress_impact_loss - craven = minor_stress_impact_gain - zealous = medium_stress_impact_gain - calm = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_zeal = -1 - ai_sociability = -0.5 - } - } - } - - #Keep it up - option = { - name = destiny_child.1005.c - - scope:destiny_child = { - add_learning_skill = 2 - add_stress = minor_stress_loss - } - - stress_impact = { - diligent = miniscule_stress_impact_gain - ambitious = miniscule_stress_impact_gain - zealous = medium_stress_impact_gain - lazy = miniscule_stress_impact_loss - content = miniscule_stress_impact_loss - cynical = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 0.5 - ai_sociability = 1 - } - } - } -} - -#They offer advice on military strategy -destiny_child.1010 = { - type = character_event - content_source = dlc_009 - title = destiny_child.1010.t - desc = destiny_child.1010.desc - theme = martial - override_background = { - reference = study - } - left_portrait = { - character = root - animation = throne_room_one_handed_passive_2 - } - right_portrait = { - character = scope:destiny_child - animation = thinking - } - lower_right_portrait = { - character = scope:marshal - } - cooldown = { years = 10 } - trigger = { - has_bp2_dlc_trigger = yes - - #Age check - is_available_adult = yes - - OR = { - root.cp:councillor_marshal ?= { - location = root.location - is_available_ai_adult = yes - } - any_court_position_holder = { - type = second_camp_officer - is_available_ai_adult = yes - } - } - } - - immediate = { - if = { - limit = { - exists = root.cp:councillor_marshal - } - cp:councillor_marshal = { - save_scope_as = marshal - } - } - else = { - random_court_position_holder = { - type = second_camp_officer - save_scope_as = marshal - } - } - } - - #Well done! But there is another way... - option = { - name = destiny_child.1010.a - - trigger = { - OR = { - martial > 15 - has_trait = education_martial_4 - has_trait = education_martial_5 - } - } - - flavor = destiny_child.1010.a.tt - - scope:destiny_child = { - add_martial_skill = { 3 5 } - } - - stress_impact = { - base = miniscule_stress_impact_loss - brave = miniscule_stress_impact_loss - diligent = miniscule_stress_impact_loss - fickle = miniscule_stress_impact_loss - craven = minor_stress_impact_gain - lazy = minor_stress_impact_gain - stubborn = minor_stress_impact_gain - strategist = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 1 - ai_energy = 1 - } - } - } - - #My goodness, they're right! - option = { - name = destiny_child.1010.b - - trigger = { - NOR = { - martial > 15 - has_trait = education_martial_4 - } - } - - scope:destiny_child = { - add_martial_skill = { 2 4 } - } - - stress_impact = { - brave = miniscule_stress_impact_loss - diligent = miniscule_stress_impact_loss - fickle = miniscule_stress_impact_loss - craven = minor_stress_impact_gain - lazy = minor_stress_impact_gain - stubborn = minor_stress_impact_gain - strategist = minor_stress_impact_loss - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = 0.5 - ai_honor = 1 - } - } - } - - #Go over it with me again? - option = { - name = destiny_child.1010.c - - scope:destiny_child = { - add_martial_skill = { 1 2 } - } - - add_character_modifier = { - modifier = bp2_destiny_tutor_modifier - years = 20 - } - - add_martial_lifestyle_xp = minor_lifestyle_experience - - stress_impact = { - paranoid = minor_stress_impact_loss - content = miniscule_stress_impact_loss - lazy = miniscule_stress_impact_loss - arrogant = miniscule_stress_impact_loss - impatient = miniscule_stress_impact_loss - patient = minor_stress_impact_gain - ambitious = minor_stress_impact_gain - diligent = minor_stress_impact_gain - humble = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = -1 - ai_sociability = 1 - } - } - } -} - -#You find the child practicing the blade with a knight -destiny_child.1015 = { - type = character_event - content_source = dlc_009 - title = destiny_child.1015.t - desc = destiny_child.1015.desc - theme = martial - override_background = { reference = courtyard } - left_portrait = { - character = root - animation = scheme - } - right_portrait = { - character = scope:destiny_child - animation = sword_coup_degrace - } - lower_right_portrait = { - character = scope:knight - } - cooldown = { years = 10 } - trigger = { - has_bp2_dlc_trigger = yes - - #Age check - is_available_adult = yes - - any_knight = { - location = root.location - is_available_ai_adult = yes - } - } - - immediate = { - random_knight = { - limit = { - location = root.location - is_available_ai_adult = yes - } - save_scope_as = knight - } - } - - #Push yourself. You must achieve greatness! - option = { - name = destiny_child.1015.a - - scope:destiny_child = { - duel = { - skill = prowess - target = scope:knight - - 50 = { #They push themselves to new heights - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - - desc = destiny_child.1015.a.success - send_interface_toast = { - title = destiny_child.1015.a.success - left_icon = root - right_icon = scope:destiny_child - - scope:destiny_child = { - add_prowess_skill = { 2 4 } - } - } - } - - 40 = { #They exert themselves too hard and injure themselves - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = destiny_child.1015.a.failure - send_interface_toast = { - title = destiny_child.1015.a.failure - left_icon = root - right_icon = scope:destiny_child - - scope:destiny_child = { - increase_wounds_effect = { REASON = accident } - } - } - } - - 10 = { #They are woefully short of standards and gain something potentially nasty - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = destiny_child.1015.a.critfailure - send_interface_toast = { - title = destiny_child.1015.a.critfailure - left_icon = root - right_icon = scope:destiny_child - - scope:destiny_child = { - random_list = { - 1 = { - add_trait = scarred - } - 1 = { - add_trait = disfigured - } - 1 = { - apply_maimed_trait_and_modifier_effect = yes - } - } - progress_towards_rival_effect = { - REASON = rival_pushed_too_far - CHARACTER = root - OPINION = default_rival_opinion - } - } - } - } - } - } - - stress_impact = { - humble = miniscule_stress_impact_loss - content = miniscule_stress_impact_loss - lazy = miniscule_stress_impact_loss - diligent = minor_stress_impact_gain - ambitious = minor_stress_impact_gain - arrogant = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 0.5 - ai_energy = -0.5 - } - } - } - - #Here, let me teach you - option = { - name = destiny_child.1015.b - - duel = { - skill = prowess - value = high_skill_rating - - 50 = { #You teach them even better than the knight would - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - - desc = destiny_child.1015.b.success - send_interface_toast = { - title = destiny_child.1015.b.success - left_icon = root - right_icon = scope:destiny_child - - add_stress = minor_stress_loss - - scope:destiny_child = { - add_prowess_skill = { 3 5 } - } - } - } - - 50 = { #Your skills already pale next to the chosen one's - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = destiny_child.1015.b.failure - send_interface_toast = { - title = destiny_child.1015.b.failure - left_icon = root - right_icon = scope:destiny_child - - add_stress = minor_stress_gain - - scope:destiny_child = { - add_prowess_skill = -1 - } - } - } - } - - stress_impact = { - humble = minor_stress_impact_gain - content = minor_stress_impact_gain - lazy = minor_stress_impact_gain - diligent = miniscule_stress_impact_loss - ambitious = miniscule_stress_impact_loss - arrogant = miniscule_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 1 - ai_energy = 1 - } - } - } - - #Keep at it, you two, and a penny for [knight's] troubles! - option = { - name = destiny_child.1015.c - - scope:destiny_child = { - add_prowess_skill = { 1 2 } - } - - pay_short_term_gold = { - target = scope:knight - gold = 15 - } - - reverse_add_opinion = { - target = scope:knight - modifier = grateful_opinion - opinion = 15 - } - - stress_impact = { - humble = miniscule_stress_impact_loss - gregarious = miniscule_stress_impact_loss - generous = miniscule_stress_impact_loss - arrogant = minor_stress_impact_gain - shy = minor_stress_impact_gain - greedy = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = -1 - ai_greed = -1 - } - } - } -} - -#They learn from a midwife or physician -destiny_child.1020 = { - type = character_event - content_source = dlc_009 - title = destiny_child.1020.t - desc = destiny_child.1020.desc - theme = physical_health - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:destiny_child - animation = throne_room_conversation_1 - } - lower_right_portrait = { - character = scope:herbalist - } - lower_left_portrait = { - character = scope:physician - } - cooldown = { years = 10 } - trigger = { - has_bp2_dlc_trigger = yes - - #Age check - is_available_adult = yes - - #You have a court physician - court_position:court_physician_court_position ?= { - location = root.location - } - - #Ensure landed - is_landed = yes - } - - immediate = { - court_position:court_physician_court_position = { save_scope_as = physician } - if = { - limit = { - any_courtier_or_guest = { - location = root.location - is_available_ai_adult = yes - has_trait = lifestyle_herbalist - scope:physician != this - } - } - random_courtier_or_guest = { - limit = { - location = root.location - is_available_ai_adult = yes - has_trait = lifestyle_herbalist - scope:physician != this - } - save_scope_as = herbalist - } - } - else = { - create_character = { - template = servant_character - dynasty = none - location = root.capital_province - gender_female_chance = 50 - save_scope_as = herbalist - after_creation = { - add_character_flag = created - } - } - scope:herbalist = { - add_trait = lifestyle_herbalist - } - } - - } - - #Your time with the physician could be time well spent - option = { - name = destiny_child.1020.a - - scope:destiny_child = { - add_trait = lifestyle_physician - add_learning_skill = 2 - } - - stress_impact = { - trusting = minor_stress_impact_gain - paranoid = miniscule_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 0.5 - } - } - } - - #Herbalism is an interesting area of research! - option = { - name = destiny_child.1020.b - - scope:destiny_child = { - add_trait = lifestyle_herbalist - add_learning_skill = 2 - } - - stress_impact = { - trusting = miniscule_stress_impact_loss - paranoid = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 0.5 - } - } - } - - #Just... don't let it take too much time away from your studies - option = { - name = destiny_child.1020.c - - scope:destiny_child = { - random = { - chance = 25 - add_trait = lifestyle_herbalist - } - random = { - chance = 25 - add_trait = lifestyle_physician - } - random_list = { - 1 = { - add_diplomacy_skill = { 1 2 } - } - 1 = { - add_martial_skill = { 1 2 } - } - 1 = { - add_stewardship_skill = { 1 2 } - } - 1 = { - add_intrigue_skill = { 1 2 } - } - } - } - - stress_impact = { - diligent = miniscule_stress_impact_loss - lazy = minor_stress_impact_gain - impatient = miniscule_stress_impact_loss - patient = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 1 - ai_honor = 0.5 - } - } - } - after = { - scope:herbalist = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -#A great knight has heard of your child's ability and wants to meet them -destiny_child.1025 = { - type = character_event - content_source = dlc_009 - title = destiny_child.1025.t - desc = destiny_child.1025.desc - theme = martial - override_background = { reference = courtyard } - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:famous_knight - animation = jockey_idle - camera = camera_event_horse_right - } - lower_center_portrait = { - character = scope:destiny_child - } - cooldown = { years = 10 } - trigger = { - has_bp2_dlc_trigger = yes - - #Age check - is_available_adult = yes - } - - immediate = { - create_character = { - template = new_commander_character - dynasty = none - culture = root.culture - faith = root.faith - location = root.location - gender_female_chance = root_soldier_female_chance - save_scope_as = famous_knight - } - hidden_effect = { - scope:famous_knight = { - add_trait = tourney_participant - random_list = { - 1 = { - add_trait_xp = { - trait = tourney_participant - track = horse - value = { - integer_range = { - min = 50 - max = 75 - } - } - } - } - 1 = { - add_trait_xp = { - trait = tourney_participant - track = bow - value = { - integer_range = { - min = 50 - max = 75 - } - } - } - } - 1 = { - add_trait_xp = { - trait = tourney_participant - track = foot - value = { - integer_range = { - min = 50 - max = 75 - } - } - } - } - } - } - } - } - - #STAY AWAY! - option = { - name = destiny_child.1025.a - - trigger = { - has_trait = paranoid - } - - scope:destiny_child = { - add_character_modifier = { - modifier = watchful_modifier - days = watchful_modifier_duration - } - } - - reverse_add_opinion = { - target = scope:destiny_child - modifier = disappointed_opinion - opinion = -15 - } - - reverse_add_opinion = { - target = scope:famous_knight - modifier = annoyed_opinion - opinion = -25 - } - - stress_impact = { - base = major_stress_impact_loss #Throw Paranoid a bit of a bone - content = miniscule_stress_impact_loss - lazy = miniscule_stress_impact_loss - arrogant = miniscule_stress_impact_loss - ambitious = minor_stress_impact_gain - diligent = minor_stress_impact_gain - humble = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = -1 - ai_sociability = -1 - } - } - } - - #Train them? A wonderful idea! - option = { - name = destiny_child.1025.b - - scope:destiny_child = { - add_trait = tourney_participant - } - - if = { - limit = { - scope:famous_knight = { - has_trait_xp = { - trait = tourney_participant - track = horse - value >= 70 - } - } - } - scope:destiny_child = { - add_trait_xp = { - trait = tourney_participant - track = horse - value = { - integer_range = { - min = 25 - max = 75 - } - } - } - } - } - else_if = { - limit = { - scope:famous_knight = { - has_trait_xp = { - trait = tourney_participant - track = bow - value >= 70 - } - } - } - scope:destiny_child = { - add_trait_xp = { - trait = tourney_participant - track = bow - value = { - integer_range = { - min = 25 - max = 75 - } - } - } - } - } - else = { - scope:destiny_child = { - add_trait_xp = { - trait = tourney_participant - track = foot - value = { - integer_range = { - min = 25 - max = 75 - } - } - } - } - } - - stress_impact = { - ambitious = miniscule_stress_impact_loss - content = minor_stress_impact_gain - diligent = miniscule_stress_impact_loss - lazy = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 1 - ai_sociability = 0.5 - } - } - } - - #Perhaps the knight can stay? - option = { - name = destiny_child.1025.c - - add_courtier = scope:famous_knight - - scope:destiny_child = { - add_prowess_skill = 1 - } - - stress_impact = { - generous = miniscule_stress_impact_loss - greedy = minor_stress_impact_gain - gregarious = miniscule_stress_impact_loss - shy = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -0.5 - ai_sociability = 1 - } - } - } - after = { - scope:famous_knight = { - silent_disappearance_ai_effect = yes - } - } -} - -#You designate the child as your primary heir -destiny_child.1030 = { - type = character_event - content_source = dlc_009 - title = destiny_child.1030.t - desc = destiny_child.1030.desc - theme = family - left_portrait = { - character = root - animation = stress - } - right_portrait = { - character = scope:destiny_child - animation = personality_honorable - } - lower_center_portrait = { - character = scope:current_heir - } - cooldown = { years = 10 } - trigger = { - has_bp2_dlc_trigger = yes - - #Age check - is_available_adult = yes - - #Ensure you are actually their liege and they aren't your primary heir - any_heir = { - has_variable = destiny_child - NOT = { - is_primary_heir_of = root - } - } - - any_heir = { - is_primary_heir_of = root - NOT = { - has_variable = destiny_child - } - } - - #Ensure you can't already just switch 'em - NOT = { - has_realm_law = crown_authority_3 - } - } - - immediate = { - random_heir = { - limit = { - is_primary_heir_of = root - this != scope:destiny_child - } - save_scope_as = current_heir - } - } - - #Try to work them into position - option = { - name = destiny_child.1030.a - - trigger = { - OR = { - intrigue > 15 - has_trait = schemer - } - } - - duel = { - skill = intrigue - value = decent_skill_rating - - 50 = { #You subtly shift them into position - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - - desc = destiny_child.1030.a.success - - send_interface_toast = { - title = designate_heir_interaction_notification - left_icon = root - right_icon = scope:destiny_child - - set_designated_heir = scope:destiny_child - } - } - - 50 = { #You fail to do it quietly - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = destiny_child.1030.a.failure - send_interface_toast = { - title = designate_heir_interaction_notification - left_icon = root - right_icon = scope:destiny_child - - set_designated_heir = scope:destiny_child - - add_tyranny = medium_tyranny_gain - - add_prestige = medium_prestige_loss - - every_vassal = { - vassal_stance = courtly - custom = every_courtly_vassal - add_opinion = { - modifier = angry_opinion - opinion = -40 - target = root - } - } - } - } - } - - stress_impact = { - ambitious = miniscule_stress_impact_loss - content = medium_stress_impact_gain - deceitful = miniscule_stress_impact_loss - honest = minor_stress_impact_gain - patient = minor_stress_impact_loss - impatient = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 1 - ai_energy = 0.5 - } - } - } - - #Designate them your heir - option = { - name = destiny_child.1030.b - - set_designated_heir = scope:destiny_child - - add_tyranny = medium_tyranny_gain - - add_prestige = major_prestige_loss - - every_vassal = { - limit = { - NOT = { - has_vassal_stance = courtly - } - } - custom = all_vassals - add_opinion = { - modifier = suspicion_opinion - opinion = -40 - target = root - } - } - - every_vassal = { - vassal_stance = courtly - custom = every_courtly_vassal - add_opinion = { - modifier = angry_opinion - opinion = -60 - target = root - } - } - - reverse_add_opinion = { - target = scope:destiny_child - modifier = grateful_opinion - opinion = 35 - } - - stress_impact = { - ambitious = miniscule_stress_impact_loss - content = minor_stress_impact_gain - patient = minor_stress_impact_gain - impatient = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 1 - ai_sociability = 0.5 - } - } - } - - #Leave it as it is - option = { - name = destiny_child.1030.c - - flavor = destiny_child.1030.c.tt - - if = { - limit = { - scope:current_heir = { - is_ai = yes - } - } - scope:current_heir = { - add_stewardship_skill = { 1 2 } - } - } - scope:destiny_child = { - add_intrigue_skill = { 2 3 } - } - - stress_impact = { - ambitious = miniscule_stress_impact_loss - content = minor_stress_impact_gain - patient = miniscule_stress_impact_loss - impatient = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = -1 - ai_compassion = 0.5 - } - } - } -} - -#The destiny child is being fawned over by their peers -destiny_child.1035 = { - type = character_event - content_source = dlc_009 - title = destiny_child.1035.t - desc = { - desc = destiny_child.1035.desc - triggered_desc = { - trigger = { - scope:destiny_child = { - NOR = { - is_attracted_to_gender_of = scope:flirter_1 - is_attracted_to_gender_of = scope:flirter_2 - } - } - } - desc = destiny_child.1035.notinterested - } - triggered_desc = { - trigger = { - scope:destiny_child = { - OR = { - is_attracted_to_gender_of = scope:flirter_1 - is_attracted_to_gender_of = scope:flirter_2 - } - } - } - desc = destiny_child.1035.interested - } - } - theme = love - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:destiny_child - animation = flirtation - } - lower_center_portrait = { - character = scope:flirter_1 - } - lower_right_portrait = { - character = scope:flirter_2 - } - cooldown = { years = 10 } - trigger = { - has_bp2_dlc_trigger = yes - - #Standard checks check - is_available_adult = yes - location = capital_province #To ensure the pool triggers work - - #Make sure destiny child is old enough for this not to be weird - scope:destiny_child = { - age > 12 - } - - #Ensure landed - is_landed = yes - } - - immediate = { - - create_character = { - template = servant_character - age = { 12 15 } - dynasty = none - location = root.location - gender_female_chance = scope:destiny_child.marriage_gender_adjusted_female_chance - save_scope_as = flirter_1 - } - - create_character = { - template = servant_character - age = { 12 15 } - dynasty = none - location = root.location - gender_female_chance = scope:destiny_child.marriage_gender_adjusted_female_chance - save_scope_as = flirter_2 - } - - hidden_effect = { #Tooltip doesn't like this for some reason - scope:flirter_1 = { - set_relation_crush = scope:destiny_child - } - scope:flirter_2 = { - set_relation_crush = scope:destiny_child - } - } - } - - #Destiny child seems taken with the first one! - option = { - name = destiny_child.1035.a - - trigger = { - scope:destiny_child = { - is_attracted_to_gender_of = scope:flirter_1 - } - } - - if = { - limit = { - scope:destiny_child = { - AND = { - number_of_personality_traits < childhood_personality_trait_gain_limit - NOR = { - has_trait = lustful - has_trait = chaste - } - } - } - } - random = { - chance = 50 - scope:destiny_child = { - add_trait = lustful - } - } - } - - add_courtier = scope:flirter_1 - - scope:destiny_child = { - set_relation_crush = scope:flirter_1 - } - - reverse_add_opinion = { - target = scope:flirter_1 - modifier = grateful_opinion - opinion = 35 - } - - stress_impact = { - lustful = miniscule_stress_impact_loss - chaste = minor_stress_impact_gain - compassionate = miniscule_stress_impact_loss - callous = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 0.5 - ai_sociability = 1 - } - } - } - - #Destiny child seems taken with the second one! - option = { - name = destiny_child.1035.b - - trigger = { - scope:destiny_child = { - is_attracted_to_gender_of = scope:flirter_2 - } - } - - if = { - limit = { - scope:destiny_child = { - AND = { - number_of_personality_traits < childhood_personality_trait_gain_limit - NOR = { - has_trait = lustful - has_trait = chaste - } - } - } - } - random = { - chance = 50 - scope:destiny_child = { - add_trait = lustful - } - } - } - - add_courtier = scope:flirter_2 - - scope:destiny_child = { - set_relation_crush = scope:flirter_2 - } - - reverse_add_opinion = { - target = scope:flirter_2 - modifier = grateful_opinion - opinion = 35 - } - - stress_impact = { - lustful = miniscule_stress_impact_loss - chaste = minor_stress_impact_gain - compassionate = miniscule_stress_impact_loss - callous = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 0.5 - ai_sociability = 1 - } - } - } - - #It's good that you don't let it get to you - option = { - name = destiny_child.1035.c - - trigger = { - scope:destiny_child = { - NOR = { - is_attracted_to_gender_of = scope:flirter_1 - is_attracted_to_gender_of = scope:flirter_2 - } - } - } - - if = { - limit = { - scope:destiny_child = { - AND = { - number_of_personality_traits < childhood_personality_trait_gain_limit - NOR = { - has_trait = diligent - has_trait = lazy - } - } - } - } - random = { - chance = 75 - scope:destiny_child = { - add_trait = diligent - } - } - } - - reverse_add_opinion = { - target = scope:destiny_child - modifier = confusedly_appreciative_opinion - opinion = 20 - } - - stress_impact = { - base = miniscule_stress_impact_loss - lustful = minor_stress_impact_gain - chaste = miniscule_stress_impact_loss - callous = miniscule_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 0.5 - ai_compassion = 1 - } - } - } - - #Kid, you gotta concentrate! - option = { - name = destiny_child.1035.d - - flavor = destiny_child.1035.d.tt - - if = { - limit = { - scope:destiny_child = { - AND = { - number_of_personality_traits < childhood_personality_trait_gain_limit - NOR = { - has_trait = lustful - has_trait = chaste - } - } - } - } - random = { - chance = 50 - scope:destiny_child = { - add_trait = chaste - } - } - } - - random = { - chance = 25 - scope:destiny_child = { - add_diplomacy_skill = 1 - } - } - - random = { - chance = 25 - scope:destiny_child = { - add_stewardship_skill = 1 - } - } - - random = { - chance = 25 - scope:destiny_child = { - add_learning_skill = 1 - } - } - - reverse_add_opinion = { - target = scope:destiny_child - modifier = disappointed_opinion - opinion = -15 - } - - stress_impact = { - lustful = medium_stress_impact_gain - chaste = minor_stress_impact_loss - compassionate = minor_stress_impact_gain - callous = miniscule_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = 1 - ai_sociability = -1 - } - } - } - after = { - scope:flirter_1 = { - silent_disappearance_ai_effect = yes - } - scope:flirter_2 = { - silent_disappearance_ai_effect = yes - } - } -} - -#Destiny child becomes an adult -destiny_child.9999 = { - type = character_event - content_source = dlc_009 - title = destiny_child.9999.t - desc = destiny_child.9999.desc - theme = family - left_portrait = { - character = root - animation = admiration - } - right_portrait = { - character = scope:destiny_child - animation = personality_honorable - } - override_background = { reference = council_chamber } - trigger = { - has_bp2_dlc_trigger = yes - } - - immediate = { - if = { - limit = { - scope:destiny_child = { - has_character_modifier = bp2_destined_modifier - } - } - scope:destiny_child = { - remove_character_modifier = bp2_destined_modifier - } - } - random_owned_story = { - type = story_destiny_child - end_story = yes - } - } - - #End story cycle - option = { - name = destiny_child.9999.a - - scope:destiny_child = { - add_character_modifier = bp2_tool_of_fate_modifier - } - - scope:destiny_child = { - add_diplomacy_skill = { 2 4 } - add_martial_skill = { 2 4 } - add_stewardship_skill = { 2 4 } - add_intrigue_skill = { 2 4 } - add_learning_skill = { 2 4 } - } - - scope:destiny_child = { remove_variable = destiny_child } - - stress_impact = { - base = medium_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 1 - } - } - } -} diff --git a/events/dlc/bp2/bp2_decision_events.txt b/events/dlc/bp2/bp2_decision_events.txt deleted file mode 100644 index d60c98db1..000000000 --- a/events/dlc/bp2/bp2_decision_events.txt +++ /dev/null @@ -1,831 +0,0 @@ -namespace = bp2_decision - -################################################## -# -# FIND WET NURSE -# 0001 Find a character to be a wet nurse -# -################################################## - -bp2_decision.0001 = { #find wet nurse candidates - type = character_event - content_source = dlc_009 - title = bp2_decision.0001.t - desc = { - first_valid = { - triggered_desc = { - trigger = { exists = root.primary_spouse } - desc = bp2_decision.0001.desc - } - desc = bp2_decision.0001.desc_widower - } - } - theme = family - override_background = { - reference = bp2_nursery - } - left_portrait = { - character = scope:wet_nurse_candidate_1 - } - right_portrait = { - character = scope:wet_nurse_candidate_2 - } - - immediate = { - if = { - limit = { - any_spouse = { } - } - random_spouse = { - save_scope_as = spouse - } - } - hidden_effect = { - if = { - limit = { - exists = capital_province - any_pool_character = { - province = root.capital_province - can_be_employed_as = wet_nurse_court_position - } - } - random_pool_character = { - province = root.capital_province - limit = { can_be_employed_as = wet_nurse_court_position} - save_scope_as = wet_nurse_candidate_1 - } - if = { - limit = { - exists = capital_province - any_pool_character = { - province = root.capital_province - can_be_employed_as = wet_nurse_court_position - this != scope:wet_nurse_candidate_1 - } - } - save_scope_as = wet_nurse_candidate_2 - } - else = { - create_character = { #create poor candidate without a child - template = generic_peasant_character - gender = female - age = { 18 25 } - culture = root.culture - faith = root.faith - location = root.location - save_scope_as = wet_nurse_candidate_2 - } - } - } - else = { - create_character = { #create a good candidate with a child - template = bp2_wet_nurse_template - location = root.location - save_scope_as = wet_nurse_candidate_1 - } - create_character = { - template = peasant_child_character - age = { 0 5 } - culture = root.culture - faith = root.faith - location = root.location - save_scope_as = wet_nurse_candidate_1_child - } - scope:wet_nurse_candidate_1_child = { - set_mother = scope:wet_nurse_candidate_1 - } - create_character = { #create poor candidate without a child - template = generic_peasant_character - gender = female - age = { 18 25 } - culture = root.culture - faith = root.faith - location = root.location - save_scope_as = wet_nurse_candidate_2 - } - } - } - } - - # Expensive wet nurse with great health and a chance for good trait - option = { - name = bp2_decision.0001.a - custom_tooltip = bp2_decision.0001.a.aptitude - pay_treasury_or_gold = { - target = scope:wet_nurse_candidate_1 - value = tiny_treasury_or_gold_value - } - hidden_effect = { - add_courtier = scope:wet_nurse_candidate_1 - add_courtier = scope:wet_nurse_candidate_1_child - } - if = { #reappoint the former wet nurse, fire current one if exists - limit = { - employs_court_position = wet_nurse_court_position - } - every_court_position_holder = { - type = wet_nurse_court_position - save_temporary_scope_as = current_wet_nurse - } - replace_court_position = { - recipient = scope:wet_nurse_candidate_1 - holder = scope:current_wet_nurse - court_position = wet_nurse_court_position - } - } - else = { - appoint_court_position = { - recipient = scope:wet_nurse_candidate_1 - court_position = wet_nurse_court_position - } - } - stress_impact = { - greedy = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - has_trait = greedy - add = -100 - } - modifier = { - short_term_gold < minor_gold_value - factor = 0 - } - } - } - - # Cheaper wet nurse; all random traits - option = { - name = bp2_decision.0001.b - custom_tooltip = bp2_decision.0001.b.aptitude - pay_treasury_or_gold = { - target = scope:wet_nurse_candidate_2 - value = { - add = tiny_treasury_or_gold_value - divide = 3 - } - } - hidden_effect = { - add_courtier = scope:wet_nurse_candidate_2 - } - if = { #reappoint the former wet nurse, fire current one if exists - limit = { - employs_court_position = wet_nurse_court_position - } - every_court_position_holder = { - type = wet_nurse_court_position - save_temporary_scope_as = current_wet_nurse - } - replace_court_position = { - recipient = scope:wet_nurse_candidate_2 - holder = scope:current_wet_nurse - court_position = wet_nurse_court_position - } - } - else = { - appoint_court_position = { - recipient = scope:wet_nurse_candidate_2 - court_position = wet_nurse_court_position - } - } - stress_impact = { - greedy = medium_stress_impact_gain - } - ai_chance = { - base = 50 - modifier = { - short_term_gold < tiny_gold_value_check - factor = 0 - } - } - } - - # On seconds thoughts, I won't hire a wet nurse at all... - option = { - name = bp2_decision.0001.c - ai_chance = { - base = 0 - modifier = { - short_term_gold < tiny_gold_value_check - add = 10 - } - } - } - - after = { - if = { - limit = { scope:wet_nurse_candidate_1 = { has_court_position = wet_nurse_court_position } } - scope:wet_nurse_candidate_2 = { - silent_disappearance_effect = yes - } - } - else_if = { - limit = { scope:wet_nurse_candidate_2 = { has_court_position = wet_nurse_court_position } } - scope:wet_nurse_candidate_1 = { - silent_disappearance_effect = yes - } - scope:wet_nurse_candidate_1_child = { - silent_disappearance_effect = yes - } - } - else = { - scope:wet_nurse_candidate_1 = { - silent_disappearance_effect = yes - } - scope:wet_nurse_candidate_2 = { - silent_disappearance_effect = yes - } - scope:wet_nurse_candidate_1_child = { - silent_disappearance_effect = yes - } - } - } -} - -bp2_decision.0002 = { #rites of passage - type = character_event - content_source = dlc_009 - title = bp2_decision.0002.t - desc = { - first_valid = { - triggered_desc = { - trigger = { scope:teentribal != root } - desc = bp2_decision.0002.desc - } - desc = bp2_decision.0002.desc_root - } - triggered_desc = { - trigger = { - scope:teentribal = { - is_target_in_variable_list = { - name = possible_rites - target = flag:duel - } - } - } - desc = bp2_decision.0002.desc_duel - } - triggered_desc = { - trigger = { - scope:teentribal = { - is_target_in_variable_list = { - name = possible_rites - target = flag:scarification - } - } - } - desc = bp2_decision.0002.desc_scarification - } - triggered_desc = { - trigger = { - scope:teentribal = { - is_target_in_variable_list = { - name = possible_rites - target = flag:seclusion - } - } - } - desc = bp2_decision.0002.desc_seclusion - } - triggered_desc = { - trigger = { - scope:teentribal = { - is_target_in_variable_list = { - name = possible_rites - target = flag:hair_shaving - } - } - } - desc = bp2_decision.0002.desc_hair_shaving - } - triggered_desc = { - trigger = { - scope:teentribal = { - is_target_in_variable_list = { - name = possible_rites - target = flag:cleansing - } - } - } - desc = bp2_decision.0002.desc_cleansing - } - first_valid = { - triggered_desc = { - trigger = { scope:teentribal != root } - desc = bp2_decision.0002.desc_end - } - desc = bp2_decision.0002.desc_end_root - } - } - theme = family - override_background = { - reference = holy_site_generic_scope - } - - left_portrait = { - character = root - animation = war_defender - } - right_portrait = { - trigger = { scope:teentribal != root } - character = scope:teentribal - animation = throne_room_bow_1 - } - lower_right_portrait = { - trigger = { exists = scope:priest } - character = scope:priest - } - - immediate = { - capital_province = { - save_scope_as = holy_site_scope - } - location = { - save_scope_as = rite_location - } - if = { - limit = { - is_landed = yes - character_can_rites_of_passage_trigger = yes - } - save_scope_as = teentribal - } - else_if = { - limit = { - any_child = { - character_can_rites_of_passage_trigger = yes - } - } - save_scope_as = liege - random_child = { - limit = { - character_can_rites_of_passage_trigger = yes - } - weight = { - base = 1 - modifier = { - has_character_flag = unproven_adult_flag - add = 100 - } - modifier = { - is_primary_heir_of = scope:liege - add = 100 - } - modifier = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - add = 10 - } - } - save_scope_as = teentribal - } - } - else_if = { - limit = { - any_courtier = { - is_hostage_of = root - character_can_rites_of_passage_trigger = yes - } - } - save_scope_as = liege - random_courtier = { - limit = { - is_hostage_of = root - character_can_rites_of_passage_trigger = yes - } - weight = { - base = 1 - modifier = { - has_character_flag = unproven_adult_flag - add = 100 - } - modifier = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - add = 10 - } - } - save_scope_as = teentribal - } - } - if = { #grab a court chaplain if you have one - limit = { - cp:councillor_court_chaplain ?= { - is_available_ai_adult = yes - } - } - cp:councillor_court_chaplain = { - save_scope_as = priest - } - } - if = { #duel rite for warrior cultures - limit = { - culture = { - OR = { - has_cultural_pillar = ethos_bellicose - has_cultural_pillar = ethos_stoic - } - } - } - scope:teentribal = { - add_to_variable_list = { - name = possible_rites - target = flag:duel - } - } - } - if = { #scarification rite for warrior cultures - limit = { - culture = { - OR = { - has_cultural_pillar = ethos_bellicose - has_cultural_pillar = ethos_stoic - has_cultural_pillar = ethos_communal - } - } - } - scope:teentribal = { - add_to_variable_list = { - name = possible_rites - target = flag:scarification - } - } - } - if = { #seclusion rite for non-communal cultures - limit = { - culture = { - NOT = { - has_cultural_pillar = ethos_communal - } - } - } - scope:teentribal = { - add_to_variable_list = { - name = possible_rites - target = flag:seclusion - } - } - } - if = { #hair shaving rite non-warrior cultures - limit = { - culture = { - OR = { - has_cultural_pillar = ethos_spiritual - has_cultural_pillar = ethos_communal - has_cultural_pillar = ethos_egalitarian - has_cultural_pillar = ethos_bureaucratic - } - } - } - scope:teentribal = { - add_to_variable_list = { - name = possible_rites - target = flag:hair_shaving - } - } - } - if = { #cleansing for non-warrior cultures - limit = { - culture = { - NOT = { - has_cultural_pillar = ethos_bellicose - has_cultural_pillar = ethos_stoic - } - } - } - scope:teentribal = { - add_to_variable_list = { - name = possible_rites - target = flag:cleansing - } - if = { - limit = { - scope:rite_location = { - OR = { - is_riverside_province = yes - is_coastal = yes - } - } - } - set_variable = { - name = cleansing_type - value = flag:water_cleanse - } - } - else = { - set_variable = { - name = cleansing_type - value = flag:fire_cleanse - } - } - } - } - } - - option = { #combat duel - name = bp2_decision.0002.a - flavor = bp2_decision.0002.a.flavor - custom_tooltip = bp2_decision.0002.a.tt - trigger = { - scope:teentribal = { - is_target_in_variable_list = { - name = possible_rites - target = flag:duel - } - } - } - show_as_tooltip = { - random_list = { - 1 = { - desc = bp2_decision.0002.a.win - show_chance = no - scope:teentribal = { - add_character_modifier = { - modifier = proven_adult_modifier - years = 10 - } - custom_tooltip = bp2_decision.0002.effect_tt - } - } - 1= { - desc = bp2_decision.0002.a.lose - show_chance = no - scope:teentribal = { - add_character_modifier = { - modifier = insecure_adult_modifier - years = 10 - } - custom_tooltip = bp2_decision.0002.effect_tt - } - } - } - } - scope:teentribal = { #set variable to determine which rite was completed when creating a memory - set_variable = { - name = chosen_rite_memory - value = flag:dueling_rite_memory - } - } - trigger_event = bp2_yearly.7021 - ai_chance = { - base = 1 - } - } - - option = { #scarification - name = bp2_decision.0002.b - flavor = bp2_decision.0002.b.tt - trigger = { - scope:teentribal = { - is_target_in_variable_list = { - name = possible_rites - target = flag:scarification - } - } - } - show_as_tooltip = { - random_list = { - 1 = { - desc = bp2_decision.0002.b_scarred - show_chance = no - scope:teentribal = { - add_character_modifier = { - modifier = proven_adult_modifier - years = 10 - } - custom_tooltip = bp2_decision.0002.effect_tt - custom_tooltip = bp2_decision.0002.b_scarred.tt - } - } - 1= { - desc = bp2_decision.0002.b_modifier - show_chance = no - scope:teentribal = { - add_character_modifier = { - modifier = insecure_adult_modifier - years = 10 - } - custom_tooltip = bp2_decision.0002.effect_tt - } - } - } - } - scope:teentribal = { #set variable to determine which rite was completed when creating a memory - set_variable = { - name = chosen_rite_memory - value = flag:scarification_rite_memory - } - } - trigger_event = bp2_yearly.7023 - ai_chance = { - base = 1 - } - } - - option = { #seclusion - name = bp2_decision.0002.c - flavor = bp2_decision.0002.c.tt - trigger = { - scope:teentribal = { - is_target_in_variable_list = { - name = possible_rites - target = flag:seclusion - } - } - } - show_as_tooltip = { - custom_tooltip = bp2_decision.0002.c.destination - random_list = { - 1 = { - desc = bp2_decision.0002.c_win - show_chance = no - scope:teentribal = { - add_character_modifier = { - modifier = proven_adult_modifier - years = 10 - } - custom_tooltip = bp2_decision.0002.c_trait - } - } - 1= { - desc = bp2_decision.0002.c_lose - show_chance = no - scope:teentribal = { - add_character_modifier = { - modifier = insecure_adult_modifier - years = 10 - } - add_trait_xp = { - trait = lifestyle_traveler - track = danger - value = 25 - } - increase_wounds_no_death_effect = { REASON = wild_animal } - } - } - } - } - scope:teentribal = { #set variable to determine which rite was completed when creating a memory - set_variable = { - name = chosen_rite_memory - value = flag:seclusion_rite_memory - } - } - trigger_event = bp2_yearly.7024 - ai_chance = { - base = 1 - } - } - - option = { #hair shave - trigger = { - scope:teentribal = { - is_target_in_variable_list = { - name = possible_rites - target = flag:hair_shaving - } - } - } - name = bp2_decision.0002.d - flavor = bp2_decision.0002.d.tt - show_as_tooltip = { - random_list = { - 1 = { - show_chance = no - desc = bp2_decision.0002.d_bald - scope:teentribal = { - add_character_modifier = { - modifier = proven_adult_modifier - years = 10 - } - add_character_modifier = { - modifier = shaven_bald_modifier - years = 3 - } - custom_tooltip = bp2_decision.0002.effect_tt - add_piety = medium_piety_gain - } - } - 1 = { - show_chance = no - desc = bp2_decision.0002.d_shave - scope:teentribal = { - add_character_modifier = { - modifier = insecure_adult_modifier - years = 10 - } - custom_tooltip = bp2_decision.0002.effect_tt - custom_tooltip = bp2_decision.0002.d_artifact - } - } - } - } - scope:teentribal = { #set variable to determine which rite was completed when creating a memory - set_variable = { - name = chosen_rite_memory - value = flag:shaving_hair_rite_memory - } - } - trigger_event = bp2_yearly.7026 - ai_chance = { - base = 1 - } - } - - option = { #fire/water cleansing - trigger = { - scope:teentribal = { - is_target_in_variable_list = { - name = possible_rites - target = flag:cleansing - } - } - } - name = bp2_decision.0002.e - flavor = bp2_decision.0002.e.tt - show_as_tooltip = { - random_list = { - 1 = { - show_chance = no - desc = bp2_decision.0002.e.full - scope:teentribal = { - add_character_modifier = { - modifier = proven_adult_modifier - years = 10 - } - if = { - limit = { - num_sinful_traits > 0 - } - custom_tooltip = bp2_decision.0002.e_flip - } - custom_tooltip = bp2_decision.0002.effect_tt - add_piety = medium_piety_gain - if = { - limit = { - scope:teentribal.var:cleansing_type = flag:water_cleanse - } - add_stress = minor_stress_gain - } - else = { - add_character_modifier = { - modifier = scorched_soles_modifier - years = 5 - } - } - } - } - 1 = { - show_chance = no - desc = bp2_decision.0002.e.partially - scope:teentribal = { - add_character_modifier = { - modifier = insecure_adult_modifier - years = 10 - } - custom_tooltip = bp2_decision.0002.effect_tt - } - } - } - } - if = { - limit = { - scope:teentribal.var:cleansing_type = flag:water_cleanse - } - scope:teentribal = { #set variable to determine which rite was completed when creating a memory - set_variable = { - name = chosen_rite_memory - value = flag:water_cleanse_rite_memory - } - } - trigger_event = bp2_yearly.7027 - } - else_if = { - limit = { - scope:teentribal.var:cleansing_type = flag:fire_cleanse - } - scope:teentribal = { #set variable to determine which rite was completed when creating a memory - set_variable = { - name = chosen_rite_memory - value = flag:fire_cleanse_rite_memory - } - } - trigger_event = bp2_yearly.7028 - } - ai_chance = { - base = 1 - } - } - - option = { # opt out - trigger the decision cooldown, don't get your money back. Think of it as a non-refundable deposit. - name = bp2_decision.0002.f - flavor = bp2_decision.0002.tt - scope:teentribal ?= { - remove_variable ?= cleansing_type - remove_variable ?= chosen_rite_memory - clear_variable_list ?= possible_rites - } - ai_chance = { #there is no reason for the AI to back out at this point - base = 0 - } - } -} diff --git a/events/dlc/bp2/bp2_hostage_system.txt b/events/dlc/bp2/bp2_hostage_system.txt deleted file mode 100644 index 5491a0ac9..000000000 --- a/events/dlc/bp2/bp2_hostage_system.txt +++ /dev/null @@ -1,2266 +0,0 @@ -namespace = bp2_hostage_system - -### -### WAR EXECUTION/SPARING -### - -scripted_effect bp2_new_war_joiner_save_hostages_effect = { - # Tidy up previous scopes - every_in_list = { - list = hostages - remove_from_list = hostages - } - clear_saved_scope = hostage - every_in_list = { - list = my_hostages - remove_from_list = my_hostages - } - clear_saved_scope = my_hostage - # Save our hostages from participants, who we have not previously spared - every_warden_hostage = { - limit = { - home_court ?= { is_at_war_with = root } - NOT = { - has_opinion_modifier = { - target = root - modifier = spared_me_opinion - } - } - save_temporary_scope_as = hostage_temp - scope:war = { is_participant = scope:hostage_temp.home_court } - } - add_to_list = hostages - } - random_in_list = { - list = hostages - weight = { - base = 1 - is_of_major_interest_to_weight_up_modifier = { CHARACTER = home_court } - is_of_minor_interest_to_weight_up_modifier = { CHARACTER = home_court } - } - save_scope_as = hostage - home_court = { save_scope_as = hostage_home_court } - } - # Save hostages of participants that we have, who have not been spared previously - if = { - limit = { - any_home_court_hostage = { - warden ?= { is_at_war_with = root } - save_temporary_scope_as = hostage_temp - NOT = { - has_opinion_modifier = { - target = scope:hostage_temp.warden - modifier = spared_me_opinion - } - } - scope:war = { is_participant = scope:hostage_temp.warden } - } - } - every_home_court_hostage = { - limit = { - warden ?= { is_at_war_with = root } - save_temporary_scope_as = hostage_temp - NOT = { - has_opinion_modifier = { - target = scope:hostage_temp.warden - modifier = spared_me_opinion - } - } - scope:war = { is_participant = scope:hostage_temp.warden } - } - add_to_list = my_hostages - } - random_in_list = { - list = my_hostages - weight = { - base = 1 - is_of_major_interest_to_weight_up_modifier = { CHARACTER = root } - is_of_minor_interest_to_weight_up_modifier = { CHARACTER = root } - } - save_scope_as = my_hostage - } - } -} - -scripted_effect bp2_execute_hostages_option_effect = { - save_scope_as = hostage_warden - every_in_list = { - list = hostages - save_scope_as = hostage - home_court = { save_scope_as = hostage_home_court } - show_as_tooltip = { bp2_execute_hostage_effect = yes } - scope:hostage_home_court = { - trigger_event = { id = bp2_hostage_system.0140 days = 1 } - } - } -} - -scripted_effect bp2_spared_hostage_option_effect = { - save_scope_as = hostage_sparer - every_in_list = { - list = hostages - add_opinion = { - target = scope:hostage_sparer - modifier = spared_me_opinion - opinion = 40 - } - } - scope:hostage_home_court = { - if = { - limit = { is_ai = yes} - if = { - limit = { - NOT = { - any_in_list = { - list = hostages - has_character_flag = byz_claimant_flag - } - } - } - add_opinion = { - target = scope:hostage_sparer - modifier = spared_hostage_opinion - opinion = 20 - } - } - } - trigger_event = { id = bp2_hostage_system.0141 days = 1 } - } - hidden_effect = { - scope:hostage_home_court = { - send_interface_toast = { - title = hostage_spared_toast - left_icon = scope:hostage - right_icon = scope:hostage_sparer - show_as_tooltip = { - scope:hostage = { - add_opinion = { - target = scope:hostage_sparer - modifier = spared_me_opinion - opinion = 40 - } - } - } - } - } - scope:hostage_sparer = { - send_interface_toast = { - title = hostage_spared_toast - left_icon = scope:hostage - right_icon = scope:hostage_home_court - show_as_tooltip = { - scope:hostage = { - add_opinion = { - target = scope:hostage_sparer - modifier = spared_me_opinion - opinion = 40 - } - } - } - } - } - } -} - -# Declare war and have hostage to execute -bp2_hostage_system.0100 = { - type = character_event - title = bp2_hostage_system.0100.t - desc = { - desc = bp2_hostage_system.0100.intro - first_valid = { - triggered_desc = { - trigger = { exists = scope:victim } - desc = bp2_hostage_system.0100.executed_hostage - } - triggered_desc = { - trigger = { exists = scope:hostage_sparer } - desc = bp2_hostage_system.0100.spared_hostage - } - desc = bp2_hostage_system.0100.desc - } - triggered_desc = { - trigger = { - scope:my_hostage ?= { - is_alive = yes - home_court = root - } - NOT = { exists = scope:hostage_sparer } - } - desc = bp2_hostage_system.0100.my_hostage - } - } - theme = hostage - override_background = { reference = relaxing_room } - left_portrait = { - character = root - animation = war_over_win - } - right_portrait = { - character = scope:hostage - animation = beg - } - lower_left_portrait = scope:my_hostage - lower_right_portrait = scope:hostage_home_court - - immediate = { - # Tidy up previous scopes - every_in_list = { - list = hostages - remove_from_list = hostages - } - clear_saved_scope = hostage - every_in_list = { - list = my_hostages - remove_from_list = my_hostages - } - clear_saved_scope = my_hostage - # Save our hostages from participants, who we have not previously spared - every_warden_hostage = { - limit = { - home_court ?= scope:defender - NOT = { - has_opinion_modifier = { - target = root - modifier = spared_me_opinion - } - } - scope:war = { is_participant = scope:defender } - } - add_to_list = hostages - } - random_in_list = { - list = hostages - weight = { - base = 1 - is_of_major_interest_to_weight_up_modifier = { CHARACTER = home_court } - is_of_minor_interest_to_weight_up_modifier = { CHARACTER = home_court } - } - save_scope_as = hostage - } - scope:defender = { save_scope_as = hostage_home_court } - # Save hostages of participants that we have, who have not been spared previously - if = { - limit = { - any_home_court_hostage = { - warden ?= scope:defender - save_temporary_scope_as = hostage_temp - NOT = { - has_opinion_modifier = { - target = scope:defender - modifier = spared_me_opinion - } - } - scope:war = { is_participant = scope:defender } - } - } - every_home_court_hostage = { - limit = { - warden ?= scope:defender - save_temporary_scope_as = hostage_temp - NOT = { - has_opinion_modifier = { - target = scope:defender - modifier = spared_me_opinion - } - } - scope:war = { is_participant = scope:defender } - } - add_to_list = my_hostages - } - random_in_list = { - list = my_hostages - weight = { - base = 1 - is_of_major_interest_to_weight_up_modifier = { CHARACTER = root } - is_of_minor_interest_to_weight_up_modifier = { CHARACTER = root } - } - save_scope_as = my_hostage - } - } - } - - option = { - trigger = { - NOT = { - any_in_list = { - list = hostages - has_character_flag = byz_claimant_flag - } - } - } - name = bp2_hostage_system.0100.a - bp2_execute_hostages_option_effect = yes - ai_chance = { - base = 100 - modifier = { - exists = scope:victim - add = 50 - } - ai_value_modifier = { - ai_compassion = -0.25 - ai_vengefulness = 0.25 - } - } - } - - option = { - name = bp2_hostage_system.0100.b - bp2_spared_hostage_option_effect = yes - ai_chance = { - base = 0 - opinion_modifier = { - opinion_target = scope:hostage - multiplier = 1 - } - opinion_modifier = { - opinion_target = scope:hostage_home_court - multiplier = 0.5 - } - modifier = { - exists = scope:hostage_sparer - add = 50 - } - ai_value_modifier = { - ai_compassion = 0.25 - ai_vengefulness = -0.25 - } - } - } -} - -# Attacked and have hostage to execute -bp2_hostage_system.0110 = { - type = character_event - title = bp2_hostage_system.0110.t - desc = { - desc = bp2_hostage_system.0110.desc - triggered_desc = { - trigger = { - scope:my_hostage ?= { - is_alive = yes - home_court = root - } - NOT = { exists = scope:hostage_sparer } - } - desc = bp2_hostage_system.0100.my_hostage - } - } - theme = hostage - override_background = { reference = relaxing_room } - left_portrait = { - character = root - animation = worry - } - right_portrait = { - character = scope:hostage - animation = beg - } - lower_left_portrait = scope:my_hostage - lower_right_portrait = scope:attacker - - immediate = { - # Tidy up previous scopes - every_in_list = { - list = hostages - remove_from_list = hostages - } - clear_saved_scope = hostage - every_in_list = { - list = my_hostages - remove_from_list = my_hostages - } - clear_saved_scope = my_hostage - # Save our hostages from participants, who we have not previously spared - every_warden_hostage = { - limit = { - home_court ?= scope:attacker - NOT = { - has_opinion_modifier = { - target = root - modifier = spared_me_opinion - } - } - scope:war = { is_participant = scope:attacker } - } - add_to_list = hostages - } - random_in_list = { - list = hostages - weight = { - base = 1 - is_of_major_interest_to_weight_up_modifier = { CHARACTER = home_court } - is_of_minor_interest_to_weight_up_modifier = { CHARACTER = home_court } - } - save_scope_as = hostage - } - scope:attacker = { save_scope_as = hostage_home_court } - # Save hostages of participants that we have, who have not been spared previously - if = { - limit = { - any_home_court_hostage = { - warden ?= scope:attacker - save_temporary_scope_as = hostage_temp - NOT = { - has_opinion_modifier = { - target = scope:attacker - modifier = spared_me_opinion - } - } - scope:war = { is_participant = scope:attacker } - } - } - every_home_court_hostage = { - limit = { - warden ?= scope:attacker - save_temporary_scope_as = hostage_temp - NOT = { - has_opinion_modifier = { - target = scope:attacker - modifier = spared_me_opinion - } - } - scope:war = { is_participant = scope:attacker } - } - add_to_list = my_hostages - } - random_in_list = { - list = my_hostages - weight = { - base = 1 - is_of_major_interest_to_weight_up_modifier = { CHARACTER = root } - is_of_minor_interest_to_weight_up_modifier = { CHARACTER = root } - } - save_scope_as = my_hostage - } - } - } - - option = { - trigger = { - NOT = { - any_in_list = { - list = hostages - has_character_flag = byz_claimant_flag - } - } - } - name = bp2_hostage_system.0110.a - bp2_execute_hostages_option_effect = yes - ai_chance = { - base = 100 - modifier = { - exists = scope:victim - add = 50 - } - ai_value_modifier = { - ai_compassion = -0.25 - ai_vengefulness = 0.25 - } - } - } - - option = { - name = bp2_hostage_system.0110.b - bp2_spared_hostage_option_effect = yes - ai_chance = { - base = 0 - opinion_modifier = { - opinion_target = scope:hostage - multiplier = 1 - } - opinion_modifier = { - opinion_target = scope:hostage_home_court - multiplier = 0.5 - } - modifier = { - exists = scope:hostage_sparer - add = 50 - } - ai_value_modifier = { - ai_compassion = 0.25 - ai_vengefulness = -0.25 - } - } - } -} - -# Joined war and have hostage to execute -bp2_hostage_system.0120 = { - type = character_event - title = bp2_hostage_system.0120.t - desc = { - desc = bp2_hostage_system.0120.intro - first_valid = { - triggered_desc = { - trigger = { exists = scope:victim } - desc = bp2_hostage_system.0100.executed_hostage - } - triggered_desc = { - trigger = { exists = scope:hostage_sparer } - desc = bp2_hostage_system.0100.spared_hostage - } - desc = bp2_hostage_system.0120.desc - } - triggered_desc = { - trigger = { - scope:my_hostage ?= { - is_alive = yes - home_court = root - } - NOT = { exists = scope:hostage_sparer } - } - desc = bp2_hostage_system.0100.my_hostage - } - } - theme = hostage - override_background = { reference = relaxing_room } - left_portrait = { - character = root - animation = worry - } - right_portrait = { - character = scope:hostage - animation = beg - } - lower_left_portrait = scope:my_hostage - lower_center_portrait = scope:war_joiner_ally - lower_right_portrait = scope:hostage_home_court - - trigger = { - any_warden_hostage = { - home_court ?= { is_at_war_with = root } - save_temporary_scope_as = hostage_temp - } - scope:war = { is_participant = scope:hostage_temp.home_court } - } - - immediate = { - save_scope_as = new_participant - bp2_new_war_joiner_save_hostages_effect = yes - } - - option = { - trigger = { - NOT = { - any_in_list = { - list = hostages - has_character_flag = byz_claimant_flag - } - } - } - name = bp2_hostage_system.0120.a - bp2_execute_hostages_option_effect = yes - ai_chance = { - base = 100 - modifier = { - exists = scope:victim - add = 50 - } - ai_value_modifier = { - ai_compassion = -0.25 - ai_vengefulness = 0.25 - } - } - } - - option = { - name = bp2_hostage_system.0120.b - bp2_spared_hostage_option_effect = yes - ai_chance = { - base = 0 - opinion_modifier = { - opinion_target = scope:hostage - multiplier = 1 - } - opinion_modifier = { - opinion_target = scope:hostage_home_court - multiplier = 0.5 - } - modifier = { - exists = scope:hostage_sparer - add = 50 - } - ai_value_modifier = { - ai_compassion = 0.25 - ai_vengefulness = -0.25 - } - } - } -} - -# Existing war participant and have hostage to execute from new war joiner -bp2_hostage_system.0130 = { - type = character_event - title = bp2_hostage_system.0130.t - desc = { - desc = bp2_hostage_system.0130.desc - triggered_desc = { - trigger = { - scope:my_hostage ?= { - is_alive = yes - home_court = root - } - NOT = { exists = scope:hostage_sparer } - } - desc = bp2_hostage_system.0100.my_hostage - } - } - theme = hostage - override_background = { reference = relaxing_room } - left_portrait = { - character = root - animation = war_over_win - } - right_portrait = { - character = scope:hostage - animation = beg - } - lower_left_portrait = scope:my_hostage - lower_center_portrait = scope:war_joiner_ally - lower_right_portrait = scope:hostage_home_court - cooldown = { days = 1 } - - trigger = { - any_warden_hostage = { home_court ?= scope:war_joiner } - } - - immediate = { - save_scope_as = existing_participant - bp2_new_war_joiner_save_hostages_effect = yes - } - - option = { - name = bp2_hostage_system.0130.a - bp2_execute_hostages_option_effect = yes - ai_chance = { - base = 100 - modifier = { - exists = scope:victim - add = 50 - } - ai_value_modifier = { - ai_compassion = -0.25 - ai_vengefulness = 0.25 - } - } - } - - option = { - name = bp2_hostage_system.0130.b - bp2_spared_hostage_option_effect = yes - ai_chance = { - base = 0 - opinion_modifier = { - opinion_target = scope:hostage - multiplier = 1 - } - opinion_modifier = { - opinion_target = scope:hostage_home_court - multiplier = 0.5 - } - modifier = { - exists = scope:hostage_sparer - add = 50 - } - ai_value_modifier = { - ai_compassion = 0.25 - ai_vengefulness = -0.25 - } - } - } -} - -# Inform home court of hostage execution -bp2_hostage_system.0140 = { - type = letter_event - opening = { desc = bp2_hostage_system.0140.opening } - desc = { - first_valid = { - triggered_desc = { - trigger = { scope:executioner = scope:war.primary_attacker } - desc = bp2_hostage_system.0140.attacker - } - triggered_desc = { - trigger = { scope:executioner = scope:war.primary_defender } - desc = bp2_hostage_system.0140.defender - } - triggered_desc = { - trigger = { - scope:executioner = { is_attacker_in_war = scope:war } - } - desc = bp2_hostage_system.0140.attacker_ally - } - triggered_desc = { - trigger = { - scope:executioner = { is_defender_in_war = scope:war } - } - desc = bp2_hostage_system.0140.defender_ally - } - } - } - sender = { - character = scope:executioner - animation = dismissal - } - cooldown = { days = 1 } - - immediate = { - every_in_list = { - list = hostages - limit = { home_court = root } - save_scope_as = hostage - home_court = { save_scope_as = home_court } - bp2_execute_hostage_effect = yes - } - } - - option = { - name = { - text = bp2_hostage_system.0140.a.attacker - trigger = { scope:executioner = scope:war.primary_attacker } - } - name = { - text = bp2_hostage_system.0140.a.defender - trigger = { scope:executioner = scope:war.primary_defender } - } - name = { - text = bp2_hostage_system.0140.a.attacker_ally - trigger = { - scope:executioner = { is_attacker_in_war = scope:war } - } - } - name = { - text = bp2_hostage_system.0140.a.defender_ally - trigger = { - scope:executioner = { is_defender_in_war = scope:war } - } - } - } - - after = { - clear_saved_scope = my_hostage - clear_saved_scope = hostage - if = { - limit = { - is_attacker_in_war = scope:war - any_warden_hostage = { - home_court ?= scope:executioner - } - } - if = { - limit = { this = scope:war.primary_attacker } - trigger_event = { id = bp2_hostage_system.0100 days = 3 } - } - else = { - trigger_event = { id = bp2_hostage_system.0120 days = 3 } - } - } - } -} - -# Inform home court of hostage sparing -bp2_hostage_system.0141 = { - type = letter_event - opening = { desc = bp2_hostage_system.0141.opening } - desc = { - desc = bp2_hostage_system.0141.intro - first_valid = { - triggered_desc = { - trigger = { scope:hostage_sparer = scope:war.primary_attacker } - desc = bp2_hostage_system.0141.attacker - } - triggered_desc = { - trigger = { scope:hostage_sparer = scope:war.primary_defender } - desc = bp2_hostage_system.0141.defender - } - triggered_desc = { - trigger = { - scope:hostage_sparer = { is_attacker_in_war = scope:war } - } - desc = bp2_hostage_system.0141.attacker_ally - } - triggered_desc = { - trigger = { - scope:hostage_sparer = { is_defender_in_war = scope:war } - } - desc = bp2_hostage_system.0141.defender_ally - } - } - triggered_desc = { - trigger = { - exists = scope:my_hostage - NOT = { - scope:my_hostage = { - has_opinion_modifier = { - target = root - modifier = spared_me_opinion - } - } - } - } - desc = bp2_hostage_system.0141.request - } - } - sender = { - character = scope:hostage_sparer - animation = dismissal - } - cooldown = { days = 1 } - - immediate = { - show_as_tooltip = { - every_in_list = { - list = hostages - add_opinion = { - target = scope:hostage_sparer - modifier = spared_me_opinion - opinion = 40 - } - } - } - } - - option = { - name = { - text = bp2_hostage_system.0141.a.attacker - trigger = { scope:hostage_sparer = scope:war.primary_attacker } - } - name = { - text = bp2_hostage_system.0141.a.defender - trigger = { scope:hostage_sparer = scope:war.primary_defender } - } - name = { - text = bp2_hostage_system.0141.a.attacker_ally - trigger = { - scope:hostage_sparer = { is_attacker_in_war = scope:war } - } - } - name = { - text = bp2_hostage_system.0141.a.defender_ally - trigger = { - scope:hostage_sparer = { is_defender_in_war = scope:war } - } - } - } - - after = { - clear_saved_scope = my_hostage - clear_saved_scope = hostage - if = { - limit = { - is_attacker_in_war = scope:war - any_warden_hostage = { - home_court ?= scope:hostage_sparer - } - } - if = { - limit = { this = scope:war.primary_attacker } - trigger_event = { id = bp2_hostage_system.0100 days = 3 } - } - else = { - trigger_event = { id = bp2_hostage_system.0120 days = 3 } - } - } - } -} - -### -### COMING OF AGE -### - -# Hostage comes of age -bp2_hostage_system.0200 = { - type = character_event - title = bp2_hostage_system.0200.t - desc = { - desc = bp2_hostage_system.0200.desc - first_valid = { - triggered_desc = { - trigger = { - scope:my_hostage ?= { - is_alive = yes - home_court = root - } - } - desc = bp2_hostage_system.0200.my_hostage - } - desc = bp2_hostage_system.0200.closing - } - } - theme = hostage - override_background = { reference = relaxing_room } - left_portrait = { - character = root - animation = worry - } - right_portrait = { - character = scope:hostage - animation = war_over_win - } - lower_left_portrait = scope:my_hostage - lower_right_portrait = scope:hostage_home_court - - trigger = { - scope:hostage = { is_hostage_of = root } - NOT = { - any_home_court_hostage = { - is_travelling = yes - OR = { - exists = var:short_hostage_duration - exists = var:long_hostage_duration - exists = var:hostage_duration - } - } - } - } - - immediate = { - save_scope_as = hostage_warden - scope:hostage.home_court = { - save_scope_as = hostage_home_court - if = { - limit = { - any_warden_hostage = { home_court ?= root } - } - every_warden_hostage = { - limit = { home_court ?= root } - add_to_list = my_hostages - } - random_in_list = { - list = my_hostages - weight = { - base = 1 - is_of_major_interest_to_weight_up_modifier = { CHARACTER = root } - is_of_minor_interest_to_weight_up_modifier = { CHARACTER = root } - } - save_scope_as = my_hostage - } - } - } - if = { - limit = { - scope:hostage = { - NOT = { has_relation_rival = root } - } - } - if = { - limit = { - can_set_relation_friend_trigger = { CHARACTER = scope:hostage } - reverse_opinion = { - target = scope:hostage - value >= 25 - } - } - progress_towards_friend_effect = { - REASON = friend_well_treated_hostage - CHARACTER = scope:hostage - OPINION = default_friend_opinion - } - } - scope:hostage = { - save_opinion_value_as = { - name = warden_opinion - target = warden - } - } - random_list = { - 0 = { - modifier = { add = var:hook_chance } - add_hook = { - type = hostage_loyalty - target = scope:hostage - } - } - 100 = { - modifier = { - add = { - value = 0 - subtract = var:hook_chance - } - } - custom_tooltip = bp2_hostage_hook_failed_tt - } - } - } - } - - option = { # Send home - name = bp2_hostage_system.0200.a - trigger = { - NAND = { - is_ai = yes - scope:hostage_warden.house ?= scope:hostage.house - scope:hostage.house != scope:hostage_home_court.house - } - } - show_as_tooltip = { - bp2_return_hostage_effect = { HOSTAGE = scope:hostage } - } - if = { - limit = { - exists = scope:my_hostage - scope:hostage_home_court = { is_ai = yes } - scope:my_hostage = { is_adult = yes } - } - custom_tooltip = hostage_more_likely_to_return_tt - } - scope:hostage_home_court = { - trigger_event = { id = bp2_hostage_system.0201 days = 1 } - } - ai_chance = { - base = 25 - bp2_hostage_return_personality_modifier = { - WARDEN = root - HOME_COURT = scope:hostage_home_court - } - modifier = { - scope:hostage = { - has_character_flag = byz_claimant_flag - } - factor = 0 - } - min = 0 - } - } - - option = { # Keep - name = { - text = bp2_hostage_system.0200.b - trigger = { - NOT = { exists = scope:my_hostage } - } - } - name = { - text = bp2_hostage_system.0200.b.my_hostage - trigger = { - scope:my_hostage ?= { is_adult = no } - } - } - custom_tooltip = { - text = halved_hostage_prestige_tt - add_character_flag = { - flag = halved_hostage_prestige_income - years = hostage_adulthood_retained_halved_prestige_duration_value - } - } - scope:hostage_home_court = { - show_as_tooltip = { - add_opinion = { - modifier = angry_opinion - opinion = -15 - target = root - } - } - trigger_event = { id = bp2_hostage_system.0202 days = 1 } - } - ai_chance = { - base = 10 - modifier = { - scope:hostage_warden.house ?= scope:hostage.house - scope:hostage.house != scope:hostage_home_court.house - add = 1000 - } - } - } - - after = { - remove_variable = hook_chance - } -} - -# Hostage comes of age and returned -bp2_hostage_system.0201 = { - type = character_event - title = bp2_hostage_system.0200.t - desc = { - desc = bp2_hostage_system.0201.desc - first_valid = { - triggered_desc = { - trigger = { - scope:my_hostage ?= { - is_alive = yes - is_adult = yes - home_court = scope:hostage_warden - } - } - desc = bp2_hostage_system.0201.my_hostage_adult - } - triggered_desc = { - trigger = { - scope:my_hostage ?= { - is_alive = yes - home_court = scope:hostage_warden - } - } - desc = bp2_hostage_system.0201.my_hostage - } - } - } - theme = hostage - override_background = { reference = courtyard } - left_portrait = { - character = root - animation = happiness - } - right_portrait = { - character = scope:hostage - animation = admiration - } - lower_left_portrait = scope:my_hostage - lower_right_portrait = scope:hostage_warden - - immediate = { - bp2_return_hostage_effect = { HOSTAGE = scope:hostage } - } - - option = { # Ok - name = bp2_hostage_system.0201.a - trigger = { - NOT = { exists = scope:my_hostage } - } - } - - option = { # Return hostage aswell - name = bp2_hostage_system.0201.b - trigger = { exists = scope:my_hostage } - show_as_tooltip = { - bp2_return_hostage_effect = { HOSTAGE = scope:my_hostage } - } - scope:hostage_warden = { - trigger_event = { id = bp2_hostage_system.0203 days = 1 } - } - ai_chance = { - base = 25 - bp2_hostage_return_personality_modifier = { - WARDEN = root - HOME_COURT = scope:hostage_warden - } - min = 0 - } - } - - option = { # Keep hostage - name = { - text = bp2_hostage_system.0201.c.adult - trigger = { - scope:my_hostage = { is_adult = yes } - } - } - name = { - text = bp2_hostage_system.0201.c - trigger = { - scope:my_hostage = { is_adult = no } - } - } - trigger = { exists = scope:my_hostage } - scope:hostage_warden = { - custom_tooltip = { - text = halved_hostage_prestige_tt - add_character_flag = { - flag = halved_hostage_prestige_income - years = hostage_adulthood_retained_halved_prestige_duration_value - } - } - show_as_tooltip = { - add_opinion = { - modifier = angry_opinion - opinion = -15 - target = root - } - } - trigger_event = { id = bp2_hostage_system.0204 days = 1 } - } - ai_chance = { - base = 10 - modifier = { - scope:my_hostage = { is_adult = no } - add = 40 - } - } - } -} - -# Hostage comes of age and retained -bp2_hostage_system.0202 = { - type = character_event - title = bp2_hostage_system.0202.t - desc = bp2_hostage_system.0202.desc - theme = hostage - override_background = { reference = relaxing_room } - left_portrait = { - character = root - animation = worry - } - right_portrait = { - character = scope:hostage - animation = happiness - } - lower_left_portrait = scope:my_hostage - lower_right_portrait = scope:hostage_warden - - immediate = { - scope:hostage_warden = { custom_tooltip = halved_hostage_prestige_tt } - if = { - limit = { is_ai = yes } - add_opinion = { - modifier = angry_opinion - opinion = -15 - target = scope:hostage_warden - } - } - } - - option = { - name = bp2_hostage_system.0202.a - } -} - -# Hostage returned in return -bp2_hostage_system.0203 = { - type = character_event - title = bp2_hostage_system.0203.t - desc = { - desc = bp2_hostage_system.0203.desc - desc = bp2_hostage_system.0203.closing - } - theme = hostage - override_background = { reference = courtyard } - left_portrait = { - character = root - animation = happiness - } - right_portrait = { - character = scope:my_hostage - animation = admiration - } - lower_right_portrait = scope:hostage - lower_left_portrait = scope:hostage_home_court - - immediate = { - bp2_return_hostage_effect = { HOSTAGE = scope:my_hostage } - } - - option = { - name = bp2_hostage_system.0201.a - } -} - -# Hostage retained in return -bp2_hostage_system.0204 = { - type = character_event - title = bp2_hostage_system.0202.t - desc = { - desc = bp2_hostage_system.0203.desc - desc = bp2_hostage_system.0204.closing - } - theme = hostage - override_background = { reference = relaxing_room } - left_portrait = { - character = root - animation = worry - } - right_portrait = { - character = scope:hostage - animation = happiness - } - lower_left_portrait = scope:my_hostage - lower_right_portrait = scope:hostage_home_court - - immediate = { - scope:hostage_home_court = { custom_tooltip = halved_hostage_prestige_tt } - if = { - limit = { is_ai = yes } - add_opinion = { - modifier = angry_opinion - opinion = -15 - target = scope:hostage_home_court - } - } - } - - option = { - name = bp2_hostage_system.0202.a - } -} - -### -### DEATH -### - -# Hostage has died - warden -bp2_hostage_system.0300 = { - type = character_event - title = bp2_hostage_system.0300.t - desc = { - desc = bp2_hostage_system.0300.intro - first_valid = { - triggered_desc = { - trigger = { scope:hostage.killer ?= root } - desc = bp2_hostage_system.0300.killer - } - triggered_desc = { - trigger = { - scope:hostage = { had_gruesome_death_trigger = yes} - } - desc = bp2_hostage_system.0300.violent - } - desc = bp2_hostage_system.0300.fallback - } - desc = bp2_hostage_system.0300.desc - triggered_desc = { - trigger = { - any_home_court_hostage = { warden ?= scope:hostage_home_court } - } - desc = bp2_hostage_system.0300.my_hostage - } - } - theme = hostage - override_background = { reference = relaxing_room } - left_portrait = { - character = root - animation = worry - } - right_portrait = { - character = scope:hostage - animation = pain - } - lower_center_portrait = scope:my_hostage - lower_right_portrait = scope:hostage_home_court - - trigger = { - scope:hostage = { - NAND = { - killer = root - death_reason = death_hostage_execution - } - } - } - - immediate = { - play_music_cue = mx_cue_death - show_as_tooltip = { - scope:hostage = { # Reason not shown in tooltip - death = { death_reason = death_fight } - } - } - if = { - limit = { - scope:hostage_home_court = { is_ai = yes } - } - if = { # You killed a *HOSTAGE*! - limit = { - scope:hostage.killer ?= root - NOT = { - any_secret = { - type = secret_murder - secret_target = scope:hostage - } - } - } - reverse_add_opinion = { - target = scope:hostage_home_court - modifier = killed_hostage_opinion - } - } - else = { # Hostage died on your watch - reverse_add_opinion = { - target = scope:hostage_home_court - modifier = hostage_died_opinion - } - } - } - if = { - limit = { - any_home_court_hostage = { warden ?= scope:hostage_home_court } - } - random_home_court_hostage = { - limit = { warden ?= scope:hostage_home_court } - save_scope_as = my_hostage - } - } - } - - option = { - name = bp2_hostage_system.0300.a - } - - after = { - custom_tooltip = hostage_death_reluctance_tt - scope:hostage_home_court = { - trigger_event = { id = bp2_hostage_system.0301 days = 1 } - } - } -} - -# Hostage has died - home court -bp2_hostage_system.0301 = { - type = letter_event - opening = { desc = bp2_hostage_system.0301.opening } - desc = { - desc = bp2_hostage_system.0301.intro - first_valid = { - triggered_desc = { - trigger = { - scope:hostage.killer ?= scope:hostage_warden - NOT = { - scope:hostage_warden = { - any_secret = { - type = secret_murder - secret_target = scope:hostage - } - } - } - } - desc = bp2_hostage_system.0301.killer - } - triggered_desc = { - trigger = { - scope:hostage = { had_gruesome_death_trigger = yes } - } - desc = bp2_hostage_system.0301.violent - } - desc = bp2_hostage_system.0301.fallback - } - desc = bp2_hostage_system.0301.desc - triggered_desc = { - trigger = { exists = scope:my_hostage } - desc = bp2_hostage_system.0301.my_hostage - } - } - sender = { - character = scope:hostage_warden - animation = dismissal - } - cooldown = { days = 1 } - - immediate = { - show_as_tooltip = { - scope:hostage = { # Reason not shown in tooltip - death = { death_reason = death_fight } - } - } - } - - option = { - name = { - text = bp2_hostage_system.0301.a.killer - trigger = { - scope:hostage.killer ?= scope:hostage_warden - NOT = { - scope:hostage_warden = { - any_secret = { - type = secret_murder - secret_target = scope:hostage - } - } - } - } - } - name = { - text = bp2_hostage_system.0301.a.violent - trigger = { - scope:hostage = { had_gruesome_death_trigger = yes } - } - } - name = { - text = bp2_hostage_system.0301.a - trigger = { - NOR = { - scope:hostage = { had_gruesome_death_trigger = yes } - scope:hostage.killer ?= scope:hostage_warden - } - } - } - } -} - -### -### INVALIDATION -### - -scripted_trigger hostage_adopted_invalidation_trigger = { - scope:hostage.house = scope:warden.house - scope:hostage.house != scope:home_court.house -} - -# Hostage no longer valid - warden -bp2_hostage_system.0400 = { - type = character_event - title = bp2_hostage_system.0400.t - desc = { - # HOSTAGE INVALID - first_valid = { - triggered_desc = { # Hostage inherited land - trigger = { - scope:reason ?= flag:ruler - scope:hostage = { is_landed = yes } - } - desc = bp2_hostage_system.0400.landed_hostage - } - triggered_desc = { # Hostage inherited domicile - trigger = { scope:reason ?= flag:ruler } - desc = bp2_hostage_system.0400.ruler_hostage - } - triggered_desc = { # Hostage imprisoned by me - trigger = { - scope:reason ?= flag:imprisoner - root = scope:imprisoner - } - desc = bp2_hostage_system.0400.imprisoned_hostage_self - } - triggered_desc = { # Hostage imprisoned - trigger = { scope:reason ?= flag:imprisoner } - desc = bp2_hostage_system.0400.imprisoned_hostage - } - triggered_desc = { # Hostage escaped imprisonment - trigger = { exists = scope:imprison_failure } - desc = bp2_hostage_system.0400.imprisoned_hostage_fail - } - triggered_desc = { # Adopted - trigger = { hostage_adopted_invalidation_trigger = yes } - desc = bp2_hostage_system.0400.adopted - } - triggered_desc = { # Home court no longer considers hostage important - trigger = { scope:reason ?= flag:invalid } - desc = bp2_hostage_system.0400.unrelated_hostage - } - # HOME COURT INVALID - triggered_desc = { - trigger = { scope:reason ?= flag:home_court } - desc = { - first_valid = { - triggered_desc = { # Home court lost lands - trigger = { - scope:home_court = { is_alive = yes } - exists = scope:lost_title - } - desc = bp2_hostage_system.0400.unlanded_home_court_title - } - triggered_desc = { # Home court lost lands - trigger = { - scope:home_court = { is_alive = yes } - } - desc = bp2_hostage_system.0400.unlanded_home_court - } - desc = bp2_hostage_system.0400.dead_home_court - } - } - } - # WARDEN INVALID - triggered_desc = { - trigger = { scope:reason ?= flag:warden } - desc = { - first_valid = { - triggered_desc = { # Home court lost lands - trigger = { - scope:warden = { is_alive = yes } - exists = scope:lost_title - } - desc = bp2_hostage_system.0400.unlanded_warden_title - } - desc = bp2_hostage_system.0400.unlanded_warden - } - } - } - } - # RETURN FLAVOR - first_valid = { - triggered_desc = { # Hostage imprisoned by me - trigger = { - OR = { - exists = scope:imprison_failure - AND = { - scope:reason ?= flag:imprisoner - root = scope:imprisoner - } - } - } - desc = bp2_hostage_system.0400.imprisoned_self - } - triggered_desc = { # Hostage imprisoned - trigger = { scope:reason ?= flag:imprisoner } - desc = bp2_hostage_system.0400.imprisoned - } - triggered_desc = { # Hostage inherited - trigger = { scope:reason ?= flag:ruler } - desc = bp2_hostage_system.0400.ruler - } - triggered_desc = { # No heirs of warden to take over - trigger = { hostage_adopted_invalidation_trigger = yes } - desc = bp2_hostage_system.0400.adopted_stay - } - triggered_desc = { # Hostage family exists - trigger = { - scope:home_court = { is_alive = yes } - } - desc = bp2_hostage_system.0400.family - } - desc = bp2_hostage_system.0400.no_family - } - triggered_desc = { - trigger = { exists = scope:my_hostage } - desc = bp2_hostage_system.0400.my_hostage - } - } - theme = hostage - override_background = { reference = relaxing_room } - left_portrait = { - character = root - animation = worry - triggered_animation = { - trigger = { - scope:hostage.house = scope:warden.house - scope:hostage.house != scope:home_court.house - } - animation = admiration - } - } - right_portrait = { - character = scope:hostage - triggered_animation = { - trigger = { scope:reason ?= flag:imprisoner } - animation = prisonhouse - } - triggered_animation = { - trigger = { scope:reason ?= flag:ruler } - animation = war_over_win - } - animation = happiness - } - lower_right_portrait = scope:home_court - lower_center_portrait = scope:imprisoner - lower_left_portrait = scope:my_hostage - - immediate = { - scope:home_court = { - random_in_list = { - variable = invalidated_warden_hostages - limit = { var:recently_invalidated_hostage ?= root } - save_scope_as = my_hostage - } - } - show_as_tooltip = { - scope:hostage = { # Reason not shown in tooltip - return_hostage = yes - } - scope:my_hostage ?= { - return_hostage = yes - } - } - if = { - limit = { scope:reason ?= flag:ruler } - scope:hostage.primary_title.previous_holder = { save_scope_as = previous_holder } - } - if = { - limit = { - any_home_court_hostage = { warden ?= scope:home_court } - } - random_home_court_hostage = { - limit = { warden ?= scope:home_court } - save_scope_as = my_hostage - } - } - if = { - limit = { - hostage_adopted_invalidation_trigger = yes - } - hidden_effect = { - scope:hostage = { # Reason not shown in tooltip - return_hostage = yes - } - } - scope:warden = { add_courtier = scope:hostage } - } - } - - option = { # Go - name = bp2_hostage_system.0400.a - trigger = { hostage_adopted_invalidation_trigger = no } - } - - option = { # Stay - name = bp2_hostage_system.0400.b - trigger = { hostage_adopted_invalidation_trigger = yes } - } - - after = { - scope:home_court = { trigger_event = bp2_hostage_system.0401 } - } -} - -# Hostage no longer valid - home court -bp2_hostage_system.0401 = { - type = character_event - title = bp2_hostage_system.0400.t - desc = { - # HOSTAGE INVALID - first_valid = { - triggered_desc = { # Hostage inherited - trigger = { - scope:reason = flag:ruler - scope:hostage = { is_landed = yes } - } - desc = bp2_hostage_system.0401.landed_hostage - } - triggered_desc = { # Hostage inherited - trigger = { scope:reason = flag:ruler } - desc = bp2_hostage_system.0401.landed_hostage - } - triggered_desc = { # Hostage imprisoned by warden - trigger = { - scope:reason = flag:imprisoner - scope:warden = scope:imprisoner - } - desc = bp2_hostage_system.0401.imprisoned_hostage_self - } - triggered_desc = { # Hostage imprisoned - trigger = { scope:reason = flag:imprisoner } - desc = bp2_hostage_system.0401.imprisoned_hostage - } - triggered_desc = { # Hostage escaped imprisonment by warden - trigger = { exists = scope:imprison_failure } - desc = bp2_hostage_system.0401.imprisoned_hostage_fail - } - triggered_desc = { # Adopted - trigger = { hostage_adopted_invalidation_trigger = yes } - desc = bp2_hostage_system.0401.adopted - } - triggered_desc = { # Home court no longer considers hostage important - trigger = { scope:reason = flag:invalid } - desc = bp2_hostage_system.0401.unrelated_hostage - } - # HOME COURT INVALID - triggered_desc = { - trigger = { scope:reason ?= flag:home_court } - desc = { - first_valid = { - triggered_desc = { # Home court lost lands - trigger = { - scope:home_court = { is_alive = yes } - exists = scope:lost_title - } - desc = bp2_hostage_system.0401.unlanded_home_court_title - } - desc = bp2_hostage_system.0401.unlanded_home_court - } - } - } - # WARDEN INVALID - triggered_desc = { - trigger = { scope:reason ?= flag:warden } - desc = { - first_valid = { - triggered_desc = { # Home court lost lands - trigger = { - scope:warden = { is_alive = yes } - exists = scope:lost_title - } - desc = bp2_hostage_system.0401.unlanded_warden_title - } - desc = bp2_hostage_system.0401.unlanded_warden - } - } - } - } - # RETURN FLAVOR - first_valid = { - triggered_desc = { # Hostage imprisoned - trigger = { scope:reason = flag:imprisoner } - desc = bp2_hostage_system.0401.imprisoned - } - triggered_desc = { # Hostage imprisoned - trigger = { exists = scope:imprison_failure } - desc = bp2_hostage_system.0401.imprisoned_fail - } - triggered_desc = { # Hostage inherited - trigger = { scope:reason = flag:ruler } - desc = bp2_hostage_system.0400.ruler - } - triggered_desc = { # No heirs of warden to take over - trigger = { hostage_adopted_invalidation_trigger = yes } - desc = bp2_hostage_system.0401.adopted_stay - } - triggered_desc = { # Hostage family exists - trigger = { - scope:home_court = { is_alive = yes } - } - desc = bp2_hostage_system.0400.family - } - desc = bp2_hostage_system.0400.no_family - } - } - theme = hostage - override_background = { reference = relaxing_room } - left_portrait = { - character = scope:warden - animation = worry - triggered_animation = { - trigger = { - scope:hostage.house = scope:warden.house - scope:hostage.house != scope:home_court.house - } - animation = admiration - } - } - right_portrait = { - character = scope:hostage - triggered_animation = { - trigger = { scope:reason = flag:imprisoner } - animation = prisonhouse - } - triggered_animation = { - trigger = { scope:reason = flag:ruler } - animation = war_over_win - } - animation = happiness - } - lower_center_portrait = scope:imprisoner - lower_left_portrait = scope:my_hostage - - trigger = { - NOT = { exists = scope:my_hostage } - } - - immediate = { - show_as_tooltip = { - scope:hostage = { # Reason not shown in tooltip - return_hostage = yes - } - } - scope:home_court = { save_scope_as = bg_override_char } - if = { - limit = { - any_home_court_hostage = { warden ?= scope:home_court } - } - random_home_court_hostage = { - limit = { warden ?= scope:home_court } - save_scope_as = my_hostage - } - } - if = { - limit = { - hostage_adopted_invalidation_trigger = yes - } - show_as_tooltip = { - scope:warden = { add_courtier = scope:hostage } - } - } - } - - option = { # Go - name = bp2_hostage_system.0401.a - trigger = { hostage_adopted_invalidation_trigger = no } - } - - option = { # Stay - name = bp2_hostage_system.0401.b - trigger = { hostage_adopted_invalidation_trigger = yes } - } -} - -# Hostage no longer valid - hostage -bp2_hostage_system.0402 = { - type = character_event - title = bp2_hostage_system.0400.t - orphan = yes - desc = { - # HOSTAGE INVALID - desc = bp2_hostage_system.0402.inherited - # RETURN FLAVOR - first_valid = { - triggered_desc = { # Hostage family exists - trigger = { - scope:home_court = { is_alive = no } - } - desc = bp2_hostage_system.0402.dead - } - } - } - theme = hostage - override_background = { reference = relaxing_room } - left_portrait = { - character = scope:hostage - animation = worry - } - right_portrait = { - character = scope:warden - animation = dismissal - } - lower_center_portrait = scope:home_court - - immediate = { - show_as_tooltip = { - scope:hostage = { # Reason not shown in tooltip - return_hostage = yes - } - } - if = { - limit = { - any_home_court_hostage = { warden ?= scope:home_court } - } - random_home_court_hostage = { - limit = { warden ?= scope:home_court } - save_scope_as = my_hostage - } - } - } - - option = { - name = bp2_hostage_system.0401.a - } -} - -# Hostage home court changes - warden -bp2_hostage_system.0410 = { - type = character_event - title = bp2_hostage_system.0410.t - desc = bp2_hostage_system.0410.desc - theme = hostage - override_background = { reference = relaxing_room } - left_portrait = { - character = root - animation = worry - } - right_portrait = { - character = scope:hostage - animation = pain - } - lower_right_portrait = scope:home_court - lower_left_portrait = scope:my_hostage - - trigger = { - is_landed_or_landless_administrative = yes - } - - immediate = { - if = { - limit = { - any_home_court_hostage = { warden ?= scope:home_court } - } - random_home_court_hostage = { - limit = { warden ?= scope:home_court } - save_scope_as = my_hostage - } - } - } - - option = { - name = bp2_hostage_system.0410.a - trigger = { exists = scope:my_hostage } - save_scope_as = both_returned - scope:home_court = { - trigger_event = { id = bp2_hostage_system.0411 days = 1 } - } - show_as_tooltip = { - scope:my_hostage = { return_hostage = yes } - scope:hostage = { return_hostage = yes } - } - } - - option = { - name = bp2_hostage_system.0410.b - trigger = { exists = scope:my_hostage } - save_scope_as = my_hostage_returned - scope:home_court = { - trigger_event = { id = bp2_hostage_system.0411 days = 1 } - } - show_as_tooltip = { - scope:my_hostage = { return_hostage = yes } - } - } - - option = { - name = bp2_hostage_system.0410.c - save_scope_as = hostage_returned - scope:home_court = { - trigger_event = { id = bp2_hostage_system.0411 days = 1 } - } - show_as_tooltip = { - scope:hostage = { return_hostage = yes } - } - } - - option = { - name = bp2_hostage_system.0410.d - } -} - -# Hostage home court changes - home court -bp2_hostage_system.0411 = { - type = letter_event - opening = { desc = bp2_hostage_system.0411.opening } - desc = { - desc = bp2_hostage_system.0411.intro - first_valid = { - triggered_desc = { - trigger = { exists = scope:my_hostage_returned } - desc = bp2_hostage_system.0411.my_hostage - } - triggered_desc = { - trigger = { exists = scope:both_returned } - desc = bp2_hostage_system.0411.both - } - desc = bp2_hostage_system.0411.hostage - } - } - sender = scope:warden - - immediate = { - if = { - limit = { exists = scope:my_hostage_returned } - bp2_return_hostage_effect = { HOSTAGE = scope:my_hostage } - } - else_if = { - limit = { exists = scope:both_returned } - bp2_return_hostage_effect = { HOSTAGE = scope:my_hostage } - bp2_return_hostage_effect = { HOSTAGE = scope:hostage } - } - else = { - bp2_return_hostage_effect = { HOSTAGE = scope:hostage } - } - } - - option = { - name = bp2_hostage_system.0411.a - } -} - -### -### TRAVEL -### - -# Hostage arrives at warden's court - warden -bp2_hostage_system.0500 = { - type = character_event - title = bp2_hostage_system.0500.t - desc = { - desc = bp2_hostage_system.0500.desc - triggered_desc = { - trigger = { scope:hostage.age >= 6 } - desc = bp2_hostage_system.0500.anxious - } - first_valid = { - triggered_desc = { - trigger = { - location = root.capital_province - scope:hostage.age >= 6 - } - desc = bp2_hostage_system.0500.home - } - desc = bp2_hostage_system.0500.away - } - } - theme = hostage - override_background = { reference = courtyard } - left_portrait = { - character = root - animation = war_over_tie - trigger = { location = root.capital_province } - } - right_portrait = { - character = scope:hostage - } - lower_right_portrait = scope:hostage_home_court - lower_left_portrait = scope:my_hostage - - immediate = { - if = { - limit = { - any_home_court_hostage = { warden ?= scope:hostage_home_court } - } - random_home_court_hostage = { - limit = { warden ?= scope:hostage_home_court } - save_scope_as = my_hostage - } - } - show_as_tooltip = { - scope:hostage_warden = { take_hostage = scope:hostage } - } - scope:hostage_home_court = { - if = { # Hostage's letter - limit = { scope:hostage.age >= 10 } - trigger_event = { id = bp2_hostage_system.0501 } - } - else = { # Warden's letter - trigger_event = { id = bp2_hostage_system.0502 } - } - } - } - - option = { - name = { - trigger = { - location = root.capital_province - scope:hostage.age >= 6 - } - text = bp2_hostage_system.0500.a.home - } - name = { - trigger = { - OR = { - location != root.capital_province - scope:hostage.age < 6 - } - } - text = bp2_hostage_system.0500.a - } - } -} - -# Hostage arrives at warden's court - home_court -bp2_hostage_system.0501 = { - type = letter_event - opening = bp2_hostage_system.0501.opening - desc = { - desc = bp2_hostage_system.0501.desc - first_valid = { - triggered_desc = { - trigger = { exists = scope:alone } - desc = bp2_hostage_system.0501.child_alone - } - triggered_desc = { - trigger = { - scope:hostage = { is_adult = no } - } - desc = bp2_hostage_system.0501.child - } - desc = bp2_hostage_system.0501.adult - } - } - sender = scope:hostage - - immediate = { - scope:hostage_warden = { take_hostage = scope:hostage } - if = { - limit = { - scope:hostage = { is_adult = no } - scope:hostage_warden = { - any_courtier_or_guest = { - count = 0 - this != scope:hostage - is_adult = no - } - } - } - save_scope_as = alone - } - } - - option = { - name = { - trigger = { exists = scope:alone } - text = bp2_hostage_system.0501.a.child_alone - } - name = { - trigger = { - scope:hostage = { is_adult = no } - } - text = bp2_hostage_system.0501.a.child - } - name = { - trigger = { - scope:hostage = { is_adult = yes } - } - text = bp2_hostage_system.0501.a - } - } -} - -# Hostage arrives at warden's court - home_court -bp2_hostage_system.0502 = { - type = letter_event - opening = bp2_hostage_system.0502.opening - desc = bp2_hostage_system.0502.desc - sender = scope:hostage_warden - - immediate = { - scope:hostage_warden = { take_hostage = scope:hostage } - } - - option = { - name = bp2_hostage_system.0502.a - } -} - -# Hostage arrives home - home court -bp2_hostage_system.0510 = { - type = character_event - title = bp2_hostage_system.0203.t - desc = { - desc = bp2_hostage_system.0510.intro - first_valid = { - triggered_desc = { - trigger = { exists = scope:hostage.var:short_hostage_duration } - desc = bp2_hostage_system.0510.duration_short - } - triggered_desc = { - trigger = { exists = scope:hostage.var:long_hostage_duration } - desc = bp2_hostage_system.0510.duration_long - } - desc = bp2_hostage_system.0510.duration - } - first_valid = { - triggered_desc = { - trigger = { - location = root.capital_province - scope:hostage.age >= 3 - } - desc = bp2_hostage_system.0510.home - } - desc = bp2_hostage_system.0510.away - } - } - theme = hostage - override_background = { reference = courtyard } - left_portrait = { - character = root - animation = admiration - trigger = { location = root.capital_province } - } - right_portrait = { - character = scope:hostage - animation = war_over_win - } - lower_right_portrait = scope:hostage_warden - lower_left_portrait = scope:my_hostage - - trigger = { - OR = { - exists = scope:hostage_warden - exists = scope:warden - } - } - - immediate = { - if = { - limit = { - exists = scope:warden - } - scope:warden = { save_scope_as = hostage_warden } - } - if = { - limit = { - any_warden_hostage = { home_court ?= scope:hostage_warden } - } - random_warden_hostage = { - limit = { home_court ?= scope:hostage_warden } - save_scope_as = my_hostage - } - } - show_as_tooltip = { bp2_return_hostage_effect = { HOSTAGE = scope:hostage } } - } - - option = { - name = bp2_hostage_system.0201.a - } - - after = { - scope:hostage = { - remove_variable = short_hostage_duration - remove_variable = long_hostage_duration - remove_variable = hostage_duration - } - } -} - diff --git a/events/dlc/bp2/bp2_yearly_1_events.txt b/events/dlc/bp2/bp2_yearly_1_events.txt deleted file mode 100644 index 22fd1694d..000000000 --- a/events/dlc/bp2/bp2_yearly_1_events.txt +++ /dev/null @@ -1,6953 +0,0 @@ -namespace = bp2_yearly -#### -# bp2_yearly.1000 - Parent/Guardian: Your child/ward walks in on you performing your stress trait -# bp2_yearly.1001 - Follow-up; the child is mimicking your stress behavior -# bp2_yearly.1005 - Child: You notice your parent/guardian performing a stress trait -# -# bp2_yearly.1010 - Parent/Guardian: Your child gives you a hug -# bp2_yearly.1015 - Parent/Guardian: Your child/ward found a pouch of gold while exploring -# bp2_yearly.1020 - Parent/Guardian: Your child/ward has found a secret in court -# -# bp2_yearly.1030 - Parent: Your child does not have the same educational trait as you. Change? -# bp2_yearly.1035 - Parent/Guardian: Your child/ward has a rock collection -# bp2_yearly.1040 - Parent/Guardian: Your child/ward has a text about martial arts -# bp2_yearly.1045 - Parent/Guardian: There is a brawl among some children -# -################# -## Event Chain ## -## The Builder ## -## 1050 - 1072 ## -################# -# bp2_yearly.1050 - The tide/sandstorm is ruining your sandcastle! -# bp2_yearly.1051 - Follow-up: Curse you, tide! -# bp2_yearly.1055 - You are challenged to a den-building competition -# bp2_yearly.1056 - Follow-up: Things went down in the woods -# bp2_yearly.1060 - Appreciate the architecture of your capital -# bp2_yearly.1061 - Follow-up: You spend the day with WhatsTheirFace -# bp2_yearly.1065 - Your input is desired on the next building target -# bp2_yearly.1070 - All of our efforts have culminated into _this_ -# bp2_yearly.1071 - Follow-up: Get the sweet sweet loo... I mean, sweet sweet effects! -# bp2_yearly.1072 - Clean up: You dun messed up, son - - -scripted_trigger bp2_yearly_1000_is_appropriate_child = { - age > 4 - age < 16 - is_available = yes - is_ai = yes - location = root.location - NOT = { has_variable = witnessed_trait } - OR = { - AND = { - root = { has_trait = drunkard } - NOT = { has_trait = drunkard } - } - AND = { - root = { has_trait = reclusive } - NOT = { has_trait = reclusive } - } - AND = { - root = { has_trait = irritable } - NOT = { has_trait = irritable } - } - AND = { - root = { has_trait = flagellant } - NOT = { has_trait = flagellant } - } - AND = { - root = { has_trait = profligate } - NOT = { has_trait = profligate } - } - AND = { - root = { has_trait = improvident } - NOT = { has_trait = improvident } - } - AND = { - root = { has_trait = comfort_eater } - NOT = { has_trait = comfort_eater } - } - AND = { - root = { has_trait = inappetetic } - NOT = { has_trait = inappetetic } - } - AND = { - root = { has_trait = journaller } - NOT = { has_trait = journaller } - } - AND = { - root = { has_trait = hashishiyah } - NOT = { has_trait = hashishiyah } - any_courtier_or_guest = { - is_available_adult = yes - has_any_bad_relationship_with_root_trigger = no - } - } - AND = { - NOT = { has_trait = confider } - root = { - has_trait = confider - any_relation = { - type = friend - is_available = yes - location = root.location - } - } - } - AND = { - root = { - has_trait = athletic - NOT = { has_trait = one_legged } - } - NOT = { - has_trait = athletic - has_trait = one_legged - } - } - } -} - -scripted_effect bp2_yearly_1000_award_trait_effect = { - if = { - limit = { exists = scope:triggered_trait } - this = { - switch = { - trigger = scope:triggered_trait - flag:drunkard = { add_trait = drunkard } - flag:hashishiyah = { add_trait = hashishiyah } - flag:reclusive = { add_trait = reclusive } - flag:irritable = { add_trait = irritable } - flag:flagellant = { add_trait = flagellant } - flag:profligate = { add_trait = profligate } - flag:improvident = { add_trait = improvident } - flag:contrite = { add_trait = contrite } - flag:comfort_eater = { add_trait = comfort_eater } - flag:inappetetic = { add_trait = inappetetic } - flag:journaller = { add_trait = journaller } - flag:confider = { add_trait = confider } - flag:athletic = { add_trait = athletic } - } - } - } - else_if = { - limit = { exists = var:witnessed_trait } - this = { - switch = { - trigger = var:witnessed_trait - flag:drunkard = { add_trait = drunkard } - flag:hashishiyah = { add_trait = hashishiyah } - flag:reclusive = { add_trait = reclusive } - flag:irritable = { add_trait = irritable } - flag:flagellant = { add_trait = flagellant } - flag:profligate = { add_trait = profligate } - flag:improvident = { add_trait = improvident } - flag:contrite = { add_trait = contrite } - flag:comfort_eater = { add_trait = comfort_eater } - flag:inappetetic = { add_trait = inappetetic } - flag:journaller = { add_trait = journaller } - flag:confider = { add_trait = confider } - flag:athletic = { add_trait = athletic } - } - } - } -} - -#Parent/Guardian: Your child/ward walks in on you performing your stress trait -bp2_yearly.1000 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.1000.t - desc = { - #Hoppsan - first_valid = { - triggered_desc = { - trigger = { scope:triggered_trait = flag:drunkard } - desc = bp2_yearly.1000.desc_drunkard - } - triggered_desc = { - trigger = { scope:triggered_trait = flag:hashishiyah } - desc = bp2_yearly.1000.desc_hashishiyah - } - triggered_desc = { - trigger = { scope:triggered_trait = flag:reclusive } - desc = bp2_yearly.1000.desc_reclusive - } - triggered_desc = { - trigger = { scope:triggered_trait = flag:irritable } - desc = bp2_yearly.1000.desc_irritable - } - triggered_desc = { - trigger = { scope:triggered_trait = flag:flagellant } - desc = bp2_yearly.1000.desc_flagellant - } - triggered_desc = { - trigger = { scope:triggered_trait = flag:profligate } - desc = bp2_yearly.1000.desc_profligate - } - triggered_desc = { - trigger = { scope:triggered_trait = flag:improvident } - desc = bp2_yearly.1000.desc_improvident - } - triggered_desc = { - trigger = { scope:triggered_trait = flag:contrite } - desc = bp2_yearly.1000.desc_contrite - } - triggered_desc = { - trigger = { scope:triggered_trait = flag:comfort_eater } - desc = bp2_yearly.1000.desc_comfort_eater - } - triggered_desc = { - trigger = { scope:triggered_trait = flag:inappetetic } - desc = bp2_yearly.1000.desc_inappetetic - } - triggered_desc = { - trigger = { scope:triggered_trait = flag:journaller } - desc = bp2_yearly.1000.desc_journaller - } - triggered_desc = { - trigger = { scope:triggered_trait = flag:confider } - desc = bp2_yearly.1000.desc_confider - } - triggered_desc = { - trigger = { scope:triggered_trait = flag:athletic } - desc = bp2_yearly.1000.desc_athletic - } - } - #Is it a *good* stress trait or a *bad* stress trait? - first_valid = { - #Hmm, this isn't _great_ - triggered_desc = { - trigger = { - OR = { - scope:triggered_trait = flag:drunkard - scope:triggered_trait = flag:hashishiyah - scope:triggered_trait = flag:irritable - scope:triggered_trait = flag:flagellant - scope:triggered_trait = flag:comfort_eater - } - } - desc = bp2_yearly.1000.outro_bad - } - #Meh, it's fine - desc = bp2_yearly.1000.outro - } - } - theme = family - #Let's be in a couple of different places - override_background = { - trigger = { - OR = { - scope:triggered_trait = flag:drunkard - scope:triggered_trait = flag:irritable - scope:triggered_trait = flag:contrite - scope:triggered_trait = flag:inappetetic - scope:triggered_trait = flag:confider - } - } - reference = feast_event - } - override_background = { - trigger = { - OR = { - scope:triggered_trait = flag:hashishiyah - scope:triggered_trait = flag:comfort_eater - scope:triggered_trait = flag:journaller - } - } - reference = relaxing_room - } - override_background = { - trigger = { scope:triggered_trait = flag:reclusive } - reference = study - } - override_background = { - trigger = { scope:triggered_trait = flag:flagellant } - reference = dungeon - } - override_background = { - trigger = { scope:triggered_trait = flag:profligate } - reference = market - } - override_background = { - trigger = { scope:triggered_trait = flag:athletic } - reference = courtyard - } - override_background = { - trigger = { scope:triggered_trait = flag:improvident } - reference = temple - } - #Fallback - override_background = { reference = throne_room } - left_portrait = { - character = root - triggered_animation = { - trigger = { scope:triggered_trait = flag:drunkard } - animation = drink_goblet - } - triggered_animation = { - trigger = { scope:triggered_trait = flag:improvident } - animation = personality_compassionate - } - triggered_animation = { - trigger = { - OR = { - scope:triggered_trait = flag:irritable - AND = { - has_trait = eccentric - scope:triggered_trait = flag:reclusive - } - } - } - animation = rage - } - triggered_animation = { - trigger = { scope:triggered_trait = flag:reclusive } - animation = personality_cynical - } - triggered_animation = { - trigger = { scope:triggered_trait = flag:journaller } - animation = reading - } - triggered_animation = { - trigger = { scope:triggered_trait = flag:flagellant } - animation = pain - } - triggered_animation = { - trigger = { scope:triggered_trait = flag:contrite } - animation = personality_zealous - } - triggered_animation = { - trigger = { scope:triggered_trait = flag:confider } - animation = admiration - } - triggered_animation = { - trigger = { scope:triggered_trait = flag:athletic } - animation = ecstasy - } - triggered_animation = { - trigger = { - scope:triggered_trait = flag:profligate - has_trait = eccentric - } - animation = steward - } - triggered_animation = { - trigger = { - OR = { - has_trait = eccentric - has_trait = lunatic - scope:triggered_trait = flag:hashishiyah - } - } - animation = personality_irrational - } - animation = stress - } - right_portrait = { - character = scope:appropriate_child - triggered_animation = { - trigger = { - OR = { - scope:triggered_trait = flag:drunkard - scope:triggered_trait = flag:hashishiyah - scope:triggered_trait = flag:irritable - scope:triggered_trait = flag:flagellant - scope:triggered_trait = flag:comfort_eater - } - } - animation = shock - } - animation = thinking - } - lower_left_portrait = { - trigger = { exists = scope:portrait_to_display } - character = scope:portrait_to_display - } - #Set up the cooldown - cooldown = { years = 10 } - trigger = { - #DLC check - has_bp2_dlc_trigger = yes - #Standard checks - is_available_adult = yes - is_landed_or_landless_administrative = yes - is_ai = no - #Longer cooldown if you removed a stress trait - NOT = { has_character_flag = bp2_yearly_1001_removed_stress_trait } - #Check if we have a stress trait; and if an appropriate child does not have the stress trait (so it's transferrable) - OR = { - any_child = { - bp2_yearly_1000_is_appropriate_child = yes - } - any_relation = { - type = ward - bp2_yearly_1000_is_appropriate_child = yes - } - any_warden_hostage = { - opinion = { - target = root - value >= low_negative_opinion - } - bp2_yearly_1000_is_appropriate_child = yes - } - } - } - weight_multiplier = { - base = 0 - #The more stress traits; the higher chance - modifier = { - has_trait = drunkard - add = 1 - } - modifier = { - has_trait = hashishiyah - add = 1 - } - modifier = { - has_trait = reclusive - add = 1 - } - modifier = { - has_trait = irritable - add = 1 - } - modifier = { - has_trait = flagellant - add = 1 - } - modifier = { - has_trait = profligate - add = 1 - } - modifier = { - has_trait = improvident - add = 1 - } - modifier = { - has_trait = contrite - add = 1 - } - modifier = { - has_trait = comfort_eater - add = 1 - } - modifier = { - has_trait = inappetetic - add = 1 - } - modifier = { - has_trait = journaller - add = 1 - } - modifier = { - has_trait = confider - add = 1 - } - modifier = { - has_trait = athletic - add = 1 - } - } - immediate = { - #play_music_cue = "mx_cue_stress" - #Your own children first - if = { - limit = { - any_child = { - bp2_yearly_1000_is_appropriate_child = yes - } - } - random_child = { - #A child you care about - limit = { - opinion = { - target = root - value >= low_positive_opinion - } - bp2_yearly_1000_is_appropriate_child = yes - } - #Otherwise pick whoever - alternative_limit = { bp2_yearly_1000_is_appropriate_child = yes } - save_scope_as = appropriate_child - } - } - #Otherwise a ward - else_if = { - limit = { - any_relation = { - type = ward - bp2_yearly_1000_is_appropriate_child = yes - } - } - random_relation = { - type = ward - #A child you care about - limit = { - opinion = { - target = root - value >= low_positive_opinion - } - bp2_yearly_1000_is_appropriate_child = yes - } - #Otherwise pick whoever - alternative_limit = { bp2_yearly_1000_is_appropriate_child = yes } - save_scope_as = appropriate_child - } - } - else_if = { - limit = { - any_warden_hostage = { - opinion = { - target = root - value >= low_negative_opinion - } - bp2_yearly_1000_is_appropriate_child = yes - } - } - random_warden_hostage = { - limit = { - opinion = { - target = root - value >= low_negative_opinion - } - bp2_yearly_1000_is_appropriate_child = yes - } - save_scope_as = appropriate_child - } - } - random_list = { - #Set a trait to work from and remember it; weights what stress coping events the child may get later in life - 1 = { - trigger = { has_trait = drunkard } - scope:appropriate_child = { - set_variable = { - name = witnessed_trait - value = flag:drunkard - } - } - } - 1 = { - trigger = { has_trait = hashishiyah } - scope:appropriate_child = { - set_variable = { - name = witnessed_trait - value = flag:hashishiyah - } - } - } - 1 = { - trigger = { has_trait = reclusive } - scope:appropriate_child = { - set_variable = { - name = witnessed_trait - value = flag:reclusive - } - } - } - 1 = { - trigger = { has_trait = irritable } - scope:appropriate_child = { - set_variable = { - name = witnessed_trait - value = flag:irritable - } - } - random_dummy_gender_effect = yes - } - 1 = { - trigger = { has_trait = flagellant } - scope:appropriate_child = { - set_variable = { - name = witnessed_trait - value = flag:flagellant - } - } - add_character_flag = should_be_topless - } - 1 = { - trigger = { has_trait = profligate } - scope:appropriate_child = { - set_variable = { - name = witnessed_trait - value = flag:profligate - } - } - random_dummy_gender_effect = yes - } - 1 = { - trigger = { has_trait = improvident } - scope:appropriate_child = { - set_variable = { - name = witnessed_trait - value = flag:improvident - } - } - } - 1 = { - trigger = { - has_trait = contrite - any_courtier_or_guest = { - is_available_adult = yes - has_any_bad_relationship_with_root_trigger = no - } - } - scope:appropriate_child = { - set_variable = { - name = witnessed_trait - value = flag:contrite - } - } - random_courtier_or_guest = { - limit = { - is_available_adult = yes - has_any_bad_relationship_with_root_trigger = no - } - save_scope_as = other_guest - save_scope_as = portrait_to_display - } - } - 1 = { - trigger = { has_trait = comfort_eater } - scope:appropriate_child = { - set_variable = { - name = witnessed_trait - value = flag:comfort_eater - } - set_favorite_treat_effect = yes - } - set_favorite_treat_effect = yes - } - 1 = { - trigger = { has_trait = inappetetic } - scope:appropriate_child = { - set_variable = { - name = witnessed_trait - value = flag:inappetetic - } - } - } - 1 = { - trigger = { has_trait = journaller } - scope:appropriate_child = { - set_variable = { - name = witnessed_trait - value = flag:journaller - } - } - } - 1 = { - trigger = { - has_trait = confider - any_relation = { - type = friend - is_available = yes - location = root.location - } - } - scope:appropriate_child = { - set_variable = { - name = witnessed_trait - value = flag:confider - } - } - random_relation = { - type = friend - limit = { - is_available = yes - location = root.location - } - save_scope_as = confider_friend - save_scope_as = portrait_to_display - } - } - 1 = { - trigger = { - has_trait = athletic - NOT = { has_trait = one_legged } - } - scope:appropriate_child = { - set_variable = { - name = witnessed_trait - value = flag:athletic - } - } - if = { - limit = { is_male = yes } #Yes, this is a boring restriction but it's the current lense for how things worked back then, I suspect - add_character_flag = should_be_topless - } - } - } - #To save us some script lines in the rest of the event, let's refer to a scope instead - scope:appropriate_child = { - if = { - limit = { exists = var:witnessed_trait } - switch = { - trigger = scope:appropriate_child.var:witnessed_trait - flag:drunkard = { - save_scope_value_as = { - name = triggered_trait - value = flag:drunkard - } - } - flag:hashishiyah = { - save_scope_value_as = { - name = triggered_trait - value = flag:hashishiyah - } - } - flag:reclusive = { - save_scope_value_as = { - name = triggered_trait - value = flag:reclusive - } - } - flag:irritable = { - save_scope_value_as = { - name = triggered_trait - value = flag:irritable - } - } - flag:flagellant = { - save_scope_value_as = { - name = triggered_trait - value = flag:flagellant - } - } - flag:profligate = { - save_scope_value_as = { - name = triggered_trait - value = flag:profligate - } - } - flag:improvident = { - save_scope_value_as = { - name = triggered_trait - value = flag:improvident - } - } - flag:contrite = { - save_scope_value_as = { - name = triggered_trait - value = flag:contrite - } - } - flag:comfort_eater = { - save_scope_value_as = { - name = triggered_trait - value = flag:comfort_eater - } - } - flag:inappetetic = { - save_scope_value_as = { - name = triggered_trait - value = flag:inappetetic - } - } - flag:journaller = { - save_scope_value_as = { - name = triggered_trait - value = flag:journaller - } - } - flag:confider = { - save_scope_value_as = { - name = triggered_trait - value = flag:confider - } - } - flag:athletic = { - save_scope_value_as = { - name = triggered_trait - value = flag:athletic - } - } - } - } - } - if = { - limit = { - scope:triggered_trait = flag:hashishiyah - } - add_character_flag = is_naked - } - } - #Hmm. - option = { - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { - OR = { - scope:triggered_trait = flag:drunkard - scope:triggered_trait = flag:hashishiyah - scope:triggered_trait = flag:irritable - scope:triggered_trait = flag:flagellant - scope:triggered_trait = flag:profligate - scope:triggered_trait = flag:comfort_eater - scope:triggered_trait = flag:inappetetic - } - } - desc = bp2_yearly.1000.a - } - triggered_desc = { - trigger = { scope:triggered_trait = flag:reclusive } - desc = bp2_yearly.1000.b_reclusive - } - desc = bp2_yearly.1000.a_good - } - } - } - flavor = { - first_valid = { - triggered_desc = { - trigger = { - OR = { - scope:triggered_trait = flag:drunkard - scope:triggered_trait = flag:hashishiyah - scope:triggered_trait = flag:reclusive - scope:triggered_trait = flag:irritable - scope:triggered_trait = flag:flagellant - scope:triggered_trait = flag:profligate - scope:triggered_trait = flag:improvident - } - } - desc = bp2_yearly.1000.a.flavor - } - desc = bp2_yearly.1000.a.flavor_good - } - } - custom_tooltip = bp2_yearly.1000.a.tt - #We're not too concerned that we got caught doing these; enjoy the stress loss - if = { - limit = { - OR = { - scope:triggered_trait = flag:reclusive - scope:triggered_trait = flag:improvident - scope:triggered_trait = flag:contrite - scope:triggered_trait = flag:journaller - scope:triggered_trait = flag:confider - scope:triggered_trait = flag:athletic - } - } - stress_impact = { - base = miniscule_stress_impact_loss - } - } - trigger_event = { - days = 5 - id = bp2_yearly.1001 - } - #AI won't be getting this event - } - #Toot-toot, stress trait schmesh trait... - option = { - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { scope:triggered_trait = flag:drunkard } - desc = bp2_yearly.1000.b_drunkard - } - triggered_desc = { - trigger = { scope:triggered_trait = flag:contrite } - desc = bp2_yearly.1000.b_contrite - } - triggered_desc = { - trigger = { scope:triggered_trait = flag:inappetetic } - desc = bp2_yearly.1000.b_inappetetic - } - triggered_desc = { - trigger = { - scope:triggered_trait = flag:confider - - } - desc = bp2_yearly.1000.b_us - } - triggered_desc = { - trigger = { - OR = { - scope:triggered_trait = flag:reclusive - scope:triggered_trait = flag:irritable - } - } - desc = bp2_yearly.1000.b_agitated - } - triggered_desc = { - trigger = { scope:triggered_trait = flag:hashishiyah } - desc = bp2_yearly.1000.b_hashishiyah - } - triggered_desc = { - trigger = { scope:triggered_trait = flag:flagellant } - desc = bp2_yearly.1000.b_flagellant - } - triggered_desc = { - trigger = { scope:triggered_trait = flag:improvident } - desc = bp2_yearly.1000.b_improvident - } - triggered_desc = { - trigger = { scope:triggered_trait = flag:athletic } - desc = bp2_yearly.1000.b_athletic - } - desc = bp2_yearly.1000.b - } - } - } - flavor = { - first_valid = { - triggered_desc = { - trigger = { - OR = { - scope:triggered_trait = flag:reclusive - scope:triggered_trait = flag:irritable - } - } - desc = bp2_yearly.1000.b.flavor_agitated - } - triggered_desc = { - trigger = { scope:triggered_trait = flag:contrite } - desc = bp2_yearly.1000.b.flavor_contrite - } - triggered_desc = { - trigger = { scope:triggered_trait = flag:inappetetic } - desc = bp2_yearly.1000.b.flavor_inappetetic - } - triggered_desc = { - trigger = { scope:triggered_trait = flag:confider } - desc = bp2_yearly.1000.b.flavor_confider - } - triggered_desc = { - trigger = { scope:triggered_trait = flag:flagellant } - desc = bp2_yearly.1000.b.flavor_flagellant - } - triggered_desc = { - trigger = { scope:triggered_trait = flag:improvident } - desc = bp2_yearly.1000.b.flavor_improvident - } - triggered_desc = { - trigger = { scope:triggered_trait = flag:athletic } - desc = bp2_yearly.1000.b.flavor_athletic - } - desc = bp2_yearly.1000.b.flavor - } - } - trigger = { has_trait = eccentric } - scope:appropriate_child = { bp2_yearly_1000_award_trait_effect = yes } - #If it's not a chummy stress trait, let's lash out... - if = { - limit = { - OR = { - scope:triggered_trait = flag:reclusive - scope:triggered_trait = flag:irritable - } - } - reverse_add_opinion = { - target = scope:appropriate_child - modifier = stress_lashed_out_opinion - opinion = -40 - } - stress_impact = { - base = major_stress_impact_loss - } - } - #Otherwise indulge them - else = { - reverse_add_opinion = { - target = scope:appropriate_child - modifier = teaching_moment_opinion - opinion = 25 - } - #More stress relief trade-off for worse inflicted stress traits - if = { - limit = { - OR = { - scope:triggered_trait = flag:journaller - scope:triggered_trait = flag:confider - scope:triggered_trait = flag:athletic - } - } - stress_impact = { - base = minor_stress_impact_loss - } - } - else_if = { - limit = { - OR = { - scope:triggered_trait = flag:improvident - scope:triggered_trait = flag:contrite - } - } - stress_impact = { - base = medium_stress_impact_loss - } - } - else = { - stress_impact = { - base = major_stress_impact_loss - } - } - } - #AI won't be getting this event - } - after = { - if = { - limit = { has_character_flag = should_be_topless } - remove_character_flag = should_be_topless - } - if = { - limit = { has_character_flag = is_naked } - remove_character_flag = is_naked - } - } -} - -#Follow-up; the child is mimicking your stress behavior -bp2_yearly.1001 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.1001.t - desc = { - #Hoppsan - first_valid = { - triggered_desc = { - trigger = { scope:triggered_trait = flag:drunkard } - desc = bp2_yearly.1001.desc_drunkard - } - triggered_desc = { - trigger = { scope:triggered_trait = flag:hashishiyah } - desc = bp2_yearly.1001.desc_hashishiyah - } - triggered_desc = { - trigger = { scope:triggered_trait = flag:reclusive } - desc = bp2_yearly.1001.desc_reclusive - } - triggered_desc = { - trigger = { scope:triggered_trait = flag:irritable } - desc = bp2_yearly.1001.desc_irritable - } - triggered_desc = { - trigger = { scope:triggered_trait = flag:flagellant } - desc = bp2_yearly.1001.desc_flagellant - } - triggered_desc = { - trigger = { scope:triggered_trait = flag:profligate } - desc = bp2_yearly.1001.desc_profligate - } - triggered_desc = { - trigger = { scope:triggered_trait = flag:improvident } - desc = bp2_yearly.1001.desc_improvident - } - triggered_desc = { - trigger = { scope:triggered_trait = flag:contrite } - desc = bp2_yearly.1001.desc_contrite - } - triggered_desc = { - trigger = { scope:triggered_trait = flag:comfort_eater } - desc = bp2_yearly.1001.desc_comfort_eater - } - triggered_desc = { - trigger = { scope:triggered_trait = flag:inappetetic } - desc = bp2_yearly.1001.desc_inappetetic - } - triggered_desc = { - trigger = { scope:triggered_trait = flag:journaller } - desc = bp2_yearly.1001.desc_journaller - } - triggered_desc = { - trigger = { scope:triggered_trait = flag:confider } - desc = bp2_yearly.1001.desc_confider - } - triggered_desc = { - trigger = { scope:triggered_trait = flag:athletic } - desc = bp2_yearly.1001.desc_athletic - } - } - first_valid = { - #Hmm, this isn't _great_ - triggered_desc = { - trigger = { - OR = { - scope:triggered_trait = flag:drunkard - scope:triggered_trait = flag:hashishiyah - scope:triggered_trait = flag:reclusive - scope:triggered_trait = flag:irritable - scope:triggered_trait = flag:flagellant - scope:triggered_trait = flag:profligate - scope:triggered_trait = flag:comfort_eater - scope:triggered_trait = flag:inappetetic - scope:triggered_trait = flag:improvident - scope:triggered_trait = flag:contrite - } - } - desc = bp2_yearly.1001.outro_bad - } - } - } - theme = family - #Let's be in a couple of different places - override_background = { - trigger = { - OR = { - scope:triggered_trait = flag:irritable - scope:triggered_trait = flag:inappetetic - } - } - reference = feast_event - } - override_background = { - trigger = { - OR = { - scope:triggered_trait = flag:hashishiyah - scope:triggered_trait = flag:comfort_eater - } - } - reference = study - } - override_background = { - trigger = { - OR = { - scope:triggered_trait = flag:reclusive - scope:triggered_trait = flag:journaller - } - } - reference = bp2_nursery - } - override_background = { - trigger = { scope:triggered_trait = flag:flagellant } - reference = dungeon - } - override_background = { - trigger = { - OR = { - scope:triggered_trait = flag:athletic - scope:triggered_trait = flag:contrite - } - } - reference = courtyard - } - override_background = { - trigger = { scope:triggered_trait = flag:drunkard } - reference = bp1_wine_cellar - } - override_background = { - trigger = { - OR = { - scope:triggered_trait = flag:profligate - scope:triggered_trait = flag:improvident - scope:triggered_trait = flag:confider - } - } - reference = market - } - #Fallback - override_background = { reference = throne_room } - left_portrait = { - character = scope:appropriate_child - triggered_animation = { - trigger = { scope:triggered_trait = flag:drunkard } - animation = sick - } - triggered_animation = { - trigger = { scope:triggered_trait = flag:improvident } - animation = personality_compassionate - } - triggered_animation = { - trigger = { scope:triggered_trait = flag:irritable } - animation = rage - } - triggered_animation = { - trigger = { scope:triggered_trait = flag:reclusive } - animation = anger - } - triggered_animation = { - trigger = { scope:triggered_trait = flag:journaller } - animation = thinking - } - triggered_animation = { - trigger = { scope:triggered_trait = flag:flagellant } - animation = pain - } - triggered_animation = { - trigger = { scope:triggered_trait = flag:hashishiyah } - animation = personality_irrational - } - triggered_animation = { - trigger = { scope:triggered_trait = flag:contrite } - animation = personality_zealous - } - triggered_animation = { - trigger = { scope:triggered_trait = flag:confider } - animation = admiration - } - triggered_animation = { - trigger = { scope:triggered_trait = flag:comfort_eater } - animation = shame - } - triggered_animation = { - trigger = { scope:triggered_trait = flag:profligate } - animation = steward - } - triggered_animation = { - trigger = { scope:triggered_trait = flag:athletic } - animation = ecstasy - } - animation = stress - } - right_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - scope:triggered_trait = flag:drunkard - scope:triggered_trait = flag:hashishiyah - scope:triggered_trait = flag:reclusive - scope:triggered_trait = flag:flagellant - scope:triggered_trait = flag:comfort_eater - } - } - animation = shock - } - triggered_animation = { - trigger = { - OR = { - scope:triggered_trait = flag:profligate - scope:triggered_trait = flag:journaller - scope:triggered_trait = flag:confider - scope:triggered_trait = flag:athletic - scope:triggered_trait = flag:improvident - } - } - animation = thinking - } - animation = eavesdrop - } - immediate = { - #play_music_cue = "mx_cue_stress" - if = { - limit = { scope:triggered_trait = flag:contrite } - random_dummy_gender_effect = yes - } - scope:appropriate_child = { - if = { - limit = { - scope:triggered_trait = flag:athletic - is_male = yes - } - add_character_flag = should_be_topless - } - } - } - #Teach them better - option = { - name = bp2_yearly.1001.a - flavor = { - first_valid = { - triggered_desc = { - trigger = { - OR = { - scope:triggered_trait = flag:journaller - scope:triggered_trait = flag:confider - scope:triggered_trait = flag:athletic - } - } - desc = bp2_yearly.1001.a.flavor_good - } - desc = bp2_yearly.1001.a.flavor - } - } - #These traits are net positive - if = { - limit = { - OR = { - scope:triggered_trait = flag:journaller - scope:triggered_trait = flag:confider - scope:triggered_trait = flag:athletic - } - } - duel = { - skill = learning - value = average_skill_rating - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - opinion_modifier = { - opinion_target = scope:appropriate_child - multiplier = 3 - step = 5 - } - modifier = { - has_trait = family_first - add = 25 - } - modifier = { - has_trait = diplomat - add = 10 - } - desc = bp2_yearly.1001.a.trait.desc - send_interface_toast = { - type = event_toast_effect_good - title = bp2_yearly.1001.a.trait.t - left_icon = root - right_icon = scope:appropriate_child - scope:appropriate_child = { bp2_yearly_1000_award_trait_effect = yes } - reverse_add_opinion = { - target = scope:appropriate_child - modifier = teaching_moment_opinion - opinion = 25 - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = bp2_yearly.1001.a.no_trait.desc - send_interface_toast = { - type = event_toast_effect_neutral - title = bp2_yearly.1001.a.no_trait.t - left_icon = root - right_icon = scope:appropriate_child - reverse_add_opinion = { - target = scope:appropriate_child - modifier = teaching_moment_opinion - opinion = 25 - } - } - } - } - } - #These traits are to be avoided - else = { - duel = { - skill = learning - value = average_skill_rating - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - opinion_modifier = { - opinion_target = scope:appropriate_child - multiplier = 2 - step = 5 - } - modifier = { - has_trait = family_first - add = 25 - } - modifier = { - has_trait = diplomat - add = 10 - } - desc = bp2_yearly.1001.a.no_trait.desc - send_interface_toast = { - type = event_toast_effect_good - title = bp2_yearly.1001.a.no_trait.t - left_icon = root - right_icon = scope:appropriate_child - reverse_add_opinion = { - target = scope:appropriate_child - modifier = teaching_moment_opinion - opinion = 25 - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = 5 - } - desc = bp2_yearly.1001.a.trait.desc - send_interface_toast = { - type = event_toast_effect_bad - title = bp2_yearly.1001.a.trait.t - left_icon = root - right_icon = scope:appropriate_child - scope:appropriate_child = { bp2_yearly_1000_award_trait_effect = yes } - } - } - } - } - #AI won't be getting this event - } - #I should change my ways - option = { - name = bp2_yearly.1001.b - flavor = bp2_yearly.1001.b.flavor - #Doesn't make sense to lose these traits - trigger = { - NOR = { - scope:triggered_trait = flag:journaller - scope:triggered_trait = flag:confider - scope:triggered_trait = flag:athletic - } - } - switch = { - trigger = scope:triggered_trait - flag:drunkard = { remove_trait = drunkard } - flag:hashishiyah = { remove_trait = hashishiyah } - flag:reclusive = { remove_trait = reclusive } - flag:irritable = { remove_trait = irritable } - flag:flagellant = { remove_trait = flagellant } - flag:profligate = { remove_trait = profligate } - flag:improvident = { remove_trait = improvident } - flag:contrite = { remove_trait = contrite } - flag:comfort_eater = { remove_trait = comfort_eater } - flag:inappetetic = { remove_trait = inappetetic } - } - #Longer cooldown if you actually changed your ways - add_character_flag = { - flag = bp2_yearly_1001_removed_stress_trait - years = 20 - } - #You're stressed about losing your outlet; but also proud about changing your ways - add_character_modifier = { - modifier = changed_ways_modifier - years = 10 - } - #Massive gain - stress_impact = { - base = major_stress_impact_gain - #Some mitigation - whole_of_body = minor_stress_impact_loss - stubborn = minor_stress_impact_loss - } - #AI won't be getting this event - } - #Meh, guess it's out of my hands - option = { - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { - has_trait = sadistic - has_trait = eccentric - } - #That's my girl! - desc = bp2_yearly.1001.c_ecc_sadist - } - triggered_desc = { - trigger = { has_trait = callous } - #Who am I to interrupt - desc = bp2_yearly.1001.c.flavor_callous - } - desc = bp2_yearly.1001.c - } - } - } - flavor = { - first_valid = { - triggered_desc = { - trigger = { - scope:triggered_trait = flag:flagellant - has_trait = sadistic - has_trait = eccentric - } - #Let the flesh sing - desc = bp2_yearly.1001.c.flavor_ecc_sadist - } - triggered_desc = { - trigger = { has_trait = callous } - #Who said child-rearing was difficult - desc = bp2_yearly.1001.c.flavor_callous - } - desc = bp2_yearly.1001.c.flavor - } - } - #Doesn't make sense to not encourage these - trigger = { - NOR = { - scope:triggered_trait = flag:journaller - scope:triggered_trait = flag:confider - scope:triggered_trait = flag:athletic - } - } - random_list = { - 50 = { - send_interface_toast = { - type = event_toast_effect_bad - title = bp2_yearly.1001.a.trait.t - right_icon = scope:appropriate_child - scope:appropriate_child = { bp2_yearly_1000_award_trait_effect = yes } - } - } - 50 = { - #Nothing happens - } - } - #Sadists be sadists - if = { - limit = { - OR = { - scope:triggered_trait = flag:irritable - scope:triggered_trait = flag:flagellant - } - has_trait = sadistic - } - stress_impact = { - diligent = miniscule_stress_impact_gain - lazy = miniscule_stress_impact_loss - sadistic = medium_stress_impact_loss - } - } - else = { - stress_impact = { - diligent = miniscule_stress_impact_gain - lazy = miniscule_stress_impact_loss - } - } - #AI won't be getting this event - } - after = { - scope:appropriate_child = { - if = { - limit = { has_character_flag = should_be_topless } - remove_character_flag = should_be_topless - } - } - } -} - -scripted_trigger bp2_yearly_1005_is_stressed_adult = { - location = root.location - OR = { - AND = { - has_trait = drunkard - #Is the trait transferrable? - NOT = { - root = { has_trait = drunkard } - } - } - AND = { - has_trait = hashishiyah - NOT = { - root = { has_trait = hashishiyah } - } - } - AND = { - has_trait = reclusive - NOT = { - root = { has_trait = reclusive } - } - } - AND = { - has_trait = irritable - NOT = { - root = { has_trait = irritable } - } - } - AND = { - has_trait = flagellant - NOT = { - root = { has_trait = flagellant } - } - } - AND = { - has_trait = profligate - NOT = { - root = { has_trait = profligate } - } - } - AND = { - has_trait = improvident - NOT = { - root = { has_trait = improvident } - } - } - AND = { - has_trait = contrite - NOT = { - root = { has_trait = contrite } - } - } - AND = { - has_trait = comfort_eater - NOT = { - root = { has_trait = comfort_eater } - } - } - AND = { - has_trait = inappetetic - NOT = { - root = { has_trait = inappetetic } - } - } - AND = { - has_trait = journaller - NOT = { - root = { has_trait = journaller } - } - } - AND = { - has_trait = confider - any_relation = { - type = friend - is_available = yes - location = this.location - } - NOT = { - root = { has_trait = confider } - } - } - AND = { - has_trait = athletic - NOT = { - root = { has_trait = athletic } - } - } - } -} - -#Child: You notice your parent/guardian performing a stress trait -bp2_yearly.1005 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.1005.t - desc = { - desc = bp2_yearly.1005.intro - #Well, this is an interesting behavior... - first_valid = { - triggered_desc = { - trigger = { var:witnessed_trait ?= flag:drunkard } - desc = bp2_yearly.1005.desc_drunkard - } - triggered_desc = { - trigger = { var:witnessed_trait ?= flag:hashishiyah } - desc = bp2_yearly.1005.desc_hashishiyah - } - triggered_desc = { - trigger = { var:witnessed_trait ?= flag:reclusive } - desc = bp2_yearly.1005.desc_reclusive - } - triggered_desc = { - trigger = { var:witnessed_trait ?= flag:irritable } - desc = bp2_yearly.1005.desc_irritable - } - triggered_desc = { - trigger = { var:witnessed_trait ?= flag:flagellant } - desc = bp2_yearly.1005.desc_flagellant - } - triggered_desc = { - trigger = { var:witnessed_trait ?= flag:profligate } - desc = bp2_yearly.1005.desc_profligate - } - triggered_desc = { - trigger = { var:witnessed_trait ?= flag:improvident } - desc = bp2_yearly.1005.desc_improvident - } - triggered_desc = { - trigger = { var:witnessed_trait ?= flag:contrite } - desc = bp2_yearly.1005.desc_contrite - } - triggered_desc = { - trigger = { var:witnessed_trait ?= flag:comfort_eater } - desc = bp2_yearly.1005.desc_comfort_eater - } - triggered_desc = { - trigger = { var:witnessed_trait ?= flag:inappetetic } - desc = bp2_yearly.1005.desc_inappetetic - } - triggered_desc = { - trigger = { var:witnessed_trait ?= flag:journaller } - desc = bp2_yearly.1005.desc_journaller - } - triggered_desc = { - trigger = { var:witnessed_trait ?= flag:confider } - desc = bp2_yearly.1005.desc_confider - } - triggered_desc = { - trigger = { var:witnessed_trait ?= flag:athletic } - desc = bp2_yearly.1005.desc_athletic - } - } - } - theme = family - #Let's be in a couple of different places - override_background = { - trigger = { var:witnessed_trait ?= flag:inappetetic } - reference = feast_event - } - override_background = { - trigger = { - OR = { - var:witnessed_trait ?= flag:hashishiyah - var:witnessed_trait ?= flag:comfort_eater - var:witnessed_trait ?= flag:journaller - } - } - reference = relaxing_room - } - override_background = { - trigger = { - OR = { - var:witnessed_trait ?= flag:contrite - var:witnessed_trait ?= flag:confider - } - } - reference = corridor_day - } - override_background = { - trigger = { var:witnessed_trait ?= flag:drunkard } - reference = bp1_wine_cellar - } - override_background = { - trigger = { var:witnessed_trait ?= flag:irritable } - reference = bedchamber - } - override_background = { - trigger = { var:witnessed_trait ?= flag:reclusive } - reference = study - } - override_background = { - trigger = { var:witnessed_trait ?= flag:flagellant } - reference = dungeon - } - override_background = { - trigger = { var:witnessed_trait ?= flag:profligate } - reference = market - } - override_background = { - trigger = { var:witnessed_trait ?= flag:athletic } - reference = ep2_tournament - } - override_background = { - trigger = { var:witnessed_trait ?= flag:improvident } - reference = temple - } - #Fallback - override_background = { reference = throne_room } - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:stressed_adult - triggered_animation = { - trigger = { - root = { var:witnessed_trait ?= flag:drunkard } - } - animation = drink_goblet - } - triggered_animation = { - trigger = { - root = { var:witnessed_trait ?= flag:improvident } - } - animation = personality_compassionate - } - triggered_animation = { - trigger = { - root = { - OR = { - var:witnessed_trait ?= flag:reclusive - var:witnessed_trait ?= flag:inappetetic - } - } - } - animation = personality_cynical - } - triggered_animation = { - trigger = { - root = { var:witnessed_trait ?= flag:journaller } - } - animation = thinking - } - triggered_animation = { - trigger = { - root = { var:witnessed_trait ?= flag:flagellant } - } - animation = pain - } - triggered_animation = { - trigger = { - root = { var:witnessed_trait ?= flag:contrite } - } - animation = personality_zealous - } - triggered_animation = { - trigger = { - root = { var:witnessed_trait ?= flag:confider } - } - animation = admiration - } - triggered_animation = { - trigger = { - root = { var:witnessed_trait ?= flag:athletic } - } - animation = ecstasy - } - triggered_animation = { - trigger = { - root = { var:witnessed_trait ?= flag:profligate } - } - animation = steward - } - triggered_animation = { - trigger = { - root = { var:witnessed_trait ?= flag:irritable } - } - animation = rage - } - triggered_animation = { - trigger = { - OR = { - has_trait = eccentric - has_trait = lunatic - root = { var:witnessed_trait ?= flag:hashishiyah } - } - } - animation = personality_irrational - } - animation = stress - } - lower_right_portrait = { - trigger = { exists = scope:confidant_friend } - character = scope:confidant_friend - } - #Set up the cooldown - cooldown = { years = 10 } - trigger = { - #DLC check - has_bp2_dlc_trigger = yes - #Standard checks - is_available_child = yes - age >= 6 - age <= 14 - is_landed = yes - is_ai = no - OR = { - any_relation = { - type = guardian - bp2_yearly_1005_is_stressed_adult = yes - } - any_parent = { bp2_yearly_1005_is_stressed_adult = yes } - } - NOT = { has_variable = witnessed_trait } - } - weight_multiplier = { - base = 0 - #The more stress traits; the higher chance - modifier = { - OR = { - any_relation = { - type = guardian - location = root.location - has_trait = drunkard - } - any_parent = { - location = root.location - has_trait = drunkard - } - } - add = 1 - } - modifier = { - OR = { - any_relation = { - type = guardian - location = root.location - has_trait = hashishiyah - } - any_parent = { - location = root.location - has_trait = hashishiyah - } - } - add = 1 - } - modifier = { - OR = { - any_relation = { - type = guardian - location = root.location - has_trait = reclusive - } - any_parent = { - location = root.location - has_trait = reclusive - } - } - add = 1 - } - modifier = { - OR = { - any_relation = { - type = guardian - location = root.location - has_trait = irritable - } - any_parent = { - location = root.location - has_trait = irritable - } - } - add = 1 - } - modifier = { - OR = { - any_relation = { - type = guardian - location = root.location - has_trait = flagellant - } - any_parent = { - location = root.location - has_trait = flagellant - } - } - add = 1 - } - modifier = { - OR = { - any_relation = { - type = guardian - location = root.location - has_trait = profligate - } - any_parent = { - location = root.location - has_trait = profligate - } - } - add = 1 - } - modifier = { - OR = { - any_relation = { - type = guardian - location = root.location - has_trait = improvident - } - any_parent = { - location = root.location - has_trait = improvident - } - } - add = 1 - } - modifier = { - OR = { - any_relation = { - type = guardian - location = root.location - has_trait = contrite - } - any_parent = { - location = root.location - has_trait = contrite - } - } - add = 1 - } - modifier = { - OR = { - any_relation = { - type = guardian - location = root.location - has_trait = comfort_eater - } - any_parent = { - location = root.location - has_trait = comfort_eater - } - } - add = 1 - } - modifier = { - OR = { - any_relation = { - type = guardian - location = root.location - has_trait = inappetetic - } - any_parent = { - location = root.location - has_trait = inappetetic - } - } - add = 1 - } - modifier = { - OR = { - any_relation = { - type = guardian - location = root.location - has_trait = journaller - } - any_parent = { - location = root.location - has_trait = journaller - } - } - add = 1 - } - modifier = { - OR = { - any_relation = { - type = guardian - location = root.location - has_trait = confider - } - any_parent = { - location = root.location - has_trait = confider - } - } - add = 1 - } - modifier = { - OR = { - any_relation = { - type = guardian - location = root.location - has_trait = athletic - } - any_parent = { - location = root.location - has_trait = athletic - } - } - add = 1 - } - } - immediate = { - #play_music_cue = "mx_cue_stress" - #Your guardian first (you probably spend more time together) - random_relation = { - type = guardian - limit = { bp2_yearly_1005_is_stressed_adult = yes } - save_scope_as = stressed_adult - } - #Then a parent - if = { - limit = { - NOT = { exists = scope:stressed_adult } - } - random_parent = { - #A parent you care about - limit = { - opinion = { - target = root - value >= low_positive_opinion - } - bp2_yearly_1005_is_stressed_adult = yes - } - #Otherwise pick whoever - alternative_limit = { bp2_yearly_1005_is_stressed_adult = yes } - save_scope_as = stressed_adult - } - } - random_list = { - #Set a trait to work from and remember it; weights what stress coping events the child may get later in life - 1 = { - trigger = { - scope:stressed_adult = { has_trait = drunkard } - } - set_variable = { - name = witnessed_trait - value = flag:drunkard - } - } - 1 = { - trigger = { - scope:stressed_adult = { has_trait = hashishiyah } - } - set_variable = { - name = witnessed_trait - value = flag:hashishiyah - } - } - 1 = { - trigger = { - scope:stressed_adult = { has_trait = reclusive } - } - set_variable = { - name = witnessed_trait - value = flag:reclusive - } - } - 1 = { - trigger = { - scope:stressed_adult = { has_trait = irritable } - } - set_variable = { - name = witnessed_trait - value = flag:irritable - } - } - 1 = { - trigger = { - scope:stressed_adult = { has_trait = flagellant } - } - set_variable = { - name = witnessed_trait - value = flag:flagellant - } - } - 1 = { - trigger = { - scope:stressed_adult = { has_trait = profligate } - } - set_variable = { - name = witnessed_trait - value = flag:profligate - } - } - 1 = { - trigger = { - scope:stressed_adult = { has_trait = improvident } - } - set_variable = { - name = witnessed_trait - value = flag:improvident - } - } - 1 = { - trigger = { - scope:stressed_adult = { has_trait = contrite } - } - set_variable = { - name = witnessed_trait - value = flag:contrite - } - } - 1 = { - trigger = { - scope:stressed_adult = { has_trait = comfort_eater } - } - scope:stressed_adult = { set_favorite_treat_effect = yes } - set_variable = { - name = witnessed_trait - value = flag:comfort_eater - } - } - 1 = { - trigger = { - scope:stressed_adult = { has_trait = inappetetic } - } - set_variable = { - name = witnessed_trait - value = flag:inappetetic - } - } - 1 = { - trigger = { - scope:stressed_adult = { has_trait = journaller } - } - set_variable = { - name = witnessed_trait - value = flag:journaller - } - } - 1 = { - trigger = { - scope:stressed_adult = { - has_trait = confider - any_relation = { - type = friend - is_available = yes - location = this.location - } - } - } - scope:stressed_adult = { - random_relation = { - type = friend - limit = { - is_available = yes - location = this.location - } - save_scope_as = confidant_friend - } - } - set_variable = { - name = witnessed_trait - value = flag:confider - } - } - 1 = { - trigger = { - scope:stressed_adult = { has_trait = athletic } - } - set_variable = { - name = witnessed_trait - value = flag:athletic - } - } - } - } - #_What's the worst thing that could happen_ - option = { - name = bp2_yearly.1005.a - flavor = bp2_yearly.1005.a.flavor - random_list = { - 25 = { - trigger = { - NOR = { - var:witnessed_trait ?= flag:confider - var:witnessed_trait ?= flag:journaller - var:witnessed_trait ?= flag:athletic - } - } - desc = bp2_yearly.1005.a.insight.desc - send_interface_toast = { - type = event_toast_effect_good - title = bp2_yearly.1005.a.insight.t - left_icon = root - add_character_modifier = { - modifier = stress_insight_modifier - #Reflecting on yourself is half the battle - } - } - } - 25 = { - desc = bp2_yearly.1005.a.stressed.desc - send_interface_toast = { - type = event_toast_effect_bad - title = bp2_yearly.1005.a.stressed.t - left_icon = root - stress_impact = { base = miniscule_stress_impact_gain } - } - } - 50 = { - desc = bp2_yearly.1005.a.trait.desc - bp2_yearly_1000_award_trait_effect = yes - stress_impact = { base = medium_stress_impact_loss } - } - } - #AI won't be getting this event - } - #Nah - option = { - name = bp2_yearly.1005.b - #AI won't be getting this event - } -} - -scripted_trigger bp2_yearly_1010_is_hugging_child = { - age >= 2 - age < 16 - is_available = yes - is_ai = yes - location = root.location - opinion = { - target = root - value >= medium_positive_opinion - } -} - -#Parent/Guardian: Your child/ward gives you a hug -bp2_yearly.1010 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.1010.t - desc = { - desc = bp2_yearly.1010.intro - first_valid = { - #Age 2 kid doesn't speak - triggered_desc = { - trigger = { - scope:hugging_child = { age = 2 } - } - desc = bp2_yearly.1010.desc_toddler - } - #Age 3-5 kid speaks... ish - triggered_desc = { - trigger = { - scope:hugging_child = { - age > 2 - age < 6 - } - } - desc = bp2_yearly.1010.desc_rambler - } - #Age 6-10 kid speaks - triggered_desc = { - trigger = { - scope:hugging_child = { - age > 5 - age < 11 - } - } - desc = bp2_yearly.1010.desc_kid - } - #Age 10-15 teenager - triggered_desc = { - trigger = { - scope:hugging_child = { - age > 10 - age <= 15 - } - } - desc = bp2_yearly.1010.desc_teenager - } - } - first_valid = { - triggered_desc = { - trigger = { has_trait = callous } - desc = bp2_yearly.1010.outro_callous - } - triggered_desc = { - trigger = { - scope:hugging_child = { - age >= 2 - age < 11 - } - } - desc = bp2_yearly.1010.outro_young - } - desc = bp2_yearly.1010.outro_older - } - } - theme = family - override_background = { reference = council_chamber } - left_portrait = { - character = root - triggered_animation = { - trigger = { has_trait = callous } - animation = personality_cynical - } - animation = shock - } - right_portrait = { - character = scope:hugging_child - animation = personality_content - } - #Set up the cooldown - cooldown = { years = 5 } - trigger = { - #DLC check - has_bp2_dlc_trigger = yes - #Standard checks - static_group_filter = { - group = bp2_yearly.1010 - match = 0.25 - } - stress > 0 - is_available = yes - is_physically_able_adult = yes - is_landed = yes - OR = { - any_child = { - bp2_yearly_1010_is_hugging_child = yes - } - any_relation = { - type = ward - bp2_yearly_1010_is_hugging_child = yes - } - any_warden_hostage = { - bp2_yearly_1010_is_hugging_child = yes - } - } - } - weight_multiplier = { - base = 1 - #The more stress; the higher chance - modifier = { - stress_level > 0 - add = 1 - } - modifier = { - stress_level > 1 - add = 1 - } - modifier = { - stress_level > 2 - add = 1 - } - } - immediate = { - #play_music_cue = "mx_cue_touching_moment" - #Your own children first - random_list = { - 33 = { - trigger = { any_child = { bp2_yearly_1010_is_hugging_child = yes } } - random_child = { - #A child you care about - limit = { bp2_yearly_1010_is_hugging_child = yes } - save_scope_as = hugging_child - } - } - 33 = { - trigger = { - any_relation = { - type = ward - bp2_yearly_1010_is_hugging_child = yes - } - } - random_relation = { - type = ward - #A child you care about - limit = { bp2_yearly_1010_is_hugging_child = yes } - save_scope_as = hugging_child - } - } - 33 = { - trigger = { - any_warden_hostage = { - bp2_yearly_1010_is_hugging_child = yes - } - } - random_warden_hostage = { - #A child you care about - limit = { bp2_yearly_1010_is_hugging_child = yes } - save_scope_as = hugging_child - } - } - } - } - #Have some stress relief - option = { - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { has_trait = callous } - desc = bp2_yearly.1010.a_callous - } - desc = bp2_yearly.1010.a - } - } - } - flavor = { - first_valid = { - triggered_desc = { - trigger = { has_trait = callous } - desc = bp2_yearly.1010.a.flavor_callous - } - desc = bp2_yearly.1010.a.flavor - } - } - stress_impact = { base = minor_stress_impact_loss } - } -} - -scripted_trigger bp2_yearly_1015_is_golden_child = { - age >= 7 - age < 16 - is_available = yes - is_ai = yes - location = root.location - opinion = { - target = root - value >= medium_positive_opinion - } - NOT = { has_variable = had_bp2_yearly_1015_stewardship_event } -} - -#Parent/Guardian: Your child/ward found a pouch of gold while exploring -bp2_yearly.1015 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.1015.t - desc = { - desc = bp2_yearly.1015.intro - first_valid = { - triggered_desc = { - trigger = { is_parent_of = scope:golden_child } - desc = bp2_yearly.1015.desc_parent - } - desc = bp2_yearly.1015.desc_guardian - } - desc = bp2_yearly.1015.outro - } - theme = family - override_background = { reference = bedchamber } - left_portrait = { - character = root - triggered_animation = { - trigger = { has_trait = callous } - animation = personality_cynical - } - triggered_animation = { - trigger = { has_trait = greedy } - animation = personality_greedy - } - animation = personality_compassionate - } - right_portrait = { - character = scope:golden_child - animation = steward - } - #Set up the cooldown - cooldown = { years = 5 } - trigger = { - #DLC check - has_bp2_dlc_trigger = yes - #Standard checks - is_available = yes - OR = { - any_child = { bp2_yearly_1015_is_golden_child = yes } - any_relation = { - type = ward - bp2_yearly_1015_is_golden_child = yes - } - any_warden_hostage = { - bp2_yearly_1015_is_golden_child = yes - } - } - } - weight_multiplier = { - base = 1 - modifier = { - OR = { - any_child = { - bp2_yearly_1015_is_golden_child = yes - has_focus = education_stewardship - } - any_relation = { - type = ward - bp2_yearly_1015_is_golden_child = yes - has_focus = education_stewardship - } - any_warden_hostage = { - bp2_yearly_1015_is_golden_child = yes - has_focus = education_stewardship - } - } - add = 1 - } - } - immediate = { - #play_music_cue = "mx_cue_low_key_positive" - #Your own children first - random_child = { - limit = { - bp2_yearly_1015_is_golden_child = yes - has_focus = education_stewardship - } - alternative_limit = { bp2_yearly_1015_is_golden_child = yes } - save_scope_as = golden_child - } - random_list = { - 33 = { - trigger = { any_child = { bp2_yearly_1015_is_golden_child = yes } } - random_child = { - limit = { - bp2_yearly_1015_is_golden_child = yes - has_focus = education_stewardship - this = root.player_heir - } - alternative_limit = { - bp2_yearly_1015_is_golden_child = yes - this = root.player_heir - } - alternative_limit = { - bp2_yearly_1015_is_golden_child = yes - has_focus = education_stewardship - } - alternative_limit = { bp2_yearly_1015_is_golden_child = yes } - save_scope_as = golden_child - } - modifier = { - any_child = { - bp2_yearly_1015_is_golden_child = yes - this = root.player_heir - } - add = 50 - } - } - 33 = { - trigger = { - any_relation = { - type = ward - bp2_yearly_1015_is_golden_child = yes - } - } - random_relation = { - type = ward - limit = { - bp2_yearly_1015_is_golden_child = yes - has_focus = education_stewardship - } - alternative_limit = { bp2_yearly_1015_is_golden_child = yes } - save_scope_as = golden_child - } - } - 33 = { - trigger = { - any_warden_hostage = { - bp2_yearly_1015_is_golden_child = yes - } - } - random_warden_hostage = { - #A child you care about - limit = { - bp2_yearly_1015_is_golden_child = yes - has_focus = education_stewardship - } - alternative_limit = { bp2_yearly_1015_is_golden_child = yes } - save_scope_as = golden_child - } - } - } - scope:golden_child = { - set_variable = { - name = had_bp2_yearly_1015_stewardship_event - value = flag:yes - } - } - } - #Have some gold - option = { - name = bp2_yearly.1015.a - flavor = { - first_valid = { - triggered_desc = { - trigger = { has_trait = greedy } - desc = bp2_yearly.1015.a.flavor_greedy - } - desc = bp2_yearly.1015.a.flavor - } - } - add_gold = minor_gold_value - ai_chance = { - base = 100 - } - } - #Have some education - option = { - name = bp2_yearly.1015.b - trigger = { - scope:golden_child = { has_focus = education_stewardship } - } - #More points for a matching education - if = { - limit = { has_trait = education_stewardship } - custom_tooltip = bp2_yearly.1015.b.tt_matching - hidden_effect = { - scope:golden_child = { - education_point_acquisition_additional_points_effect = { LEVEL = mid } - } - } - } - else = { - custom_tooltip = bp2_yearly.1015.b.tt - hidden_effect = { - scope:golden_child = { - education_point_acquisition_additional_points_effect = { LEVEL = low } - } - } - } - reverse_add_opinion = { - target = scope:golden_child - modifier = teaching_moment_opinion - opinion = 15 - } - stress_impact = { greedy = minor_stress_impact_gain } - ai_chance = { - base = 100 - modifier = { - has_trait = greedy - factor = 0 - } - } - } -} - -scripted_trigger bp2_yearly_1020_is_secrety_child = { - age >= 7 - age < 16 - is_available = yes - is_ai = yes - location = root.location - opinion = { - target = root - value >= medium_positive_opinion - } - NOT = { has_variable = had_bp2_yearly_1020_intrigue_event } -} - -scripted_trigger bp2_yearly_1020_is_relevant_secret = { - is_known_by = prev #A courtier - NOR = { - secret_owner = root - is_known_by = root - } -} - -#Parent/Guardian: Your child/ward has found a secret in court -bp2_yearly.1020 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.1020.t - desc = { - desc = bp2_yearly.1020.intro - first_valid = { - triggered_desc = { - trigger = { is_parent_of = scope:secrety_child } - desc = bp2_yearly.1020.desc_parent - } - desc = bp2_yearly.1020.desc_guardian - } - desc = bp2_yearly.1020.desc - } - theme = family - override_background = { reference = study } - left_portrait = { - character = root - triggered_animation = { - trigger = { has_trait = callous } - animation = personality_cynical - } - triggered_animation = { - trigger = { has_trait = deceitful } - animation = schadenfreude - } - animation = personality_dishonorable - } - right_portrait = { - character = scope:secrety_child - animation = ecstasy - } - lower_center_portrait = { - character = scope:secret_keeper - } - #Set up the cooldown - cooldown = { years = 10 } - trigger = { - #DLC check - has_bp2_dlc_trigger = yes - #Standard checks - is_available = yes - is_adult = yes - OR = { - any_child = { - bp2_yearly_1020_is_secrety_child = yes - save_temporary_scope_as = child_check - } - any_relation = { - type = ward - bp2_yearly_1020_is_secrety_child = yes - save_temporary_scope_as = child_check - } - any_warden_hostage = { - bp2_yearly_1020_is_secrety_child = yes - save_temporary_scope_as = child_check - } - } - any_courtier = { - NOR = { - this = scope:child_check - this = root - is_parent_of = scope:child_check #Don't rat out your parents - } - any_secret = { - bp2_yearly_1020_is_relevant_secret = yes - NOR = { - trigger_if = { - limit = { exists = secret_target } - secret_target = scope:child_check - } - secret_owner = scope:child_check #Or yourself - } - } - } - } - weight_multiplier = { - base = 1 - modifier = { - OR = { - any_child = { - bp2_yearly_1020_is_secrety_child = yes - has_focus = education_intrigue - } - any_relation = { - type = ward - bp2_yearly_1020_is_secrety_child = yes - has_focus = education_intrigue - } - any_warden_hostage = { - bp2_yearly_1020_is_secrety_child = yes - has_focus = education_intrigue - } - } - add = 1 - } - } - immediate = { - #play_music_cue = "mx_cue_low_key_positive" - random_list = { - 33 = { - trigger = { any_child = { bp2_yearly_1020_is_secrety_child = yes } } - random_child = { - limit = { - bp2_yearly_1020_is_secrety_child = yes - has_focus = education_intrigue - this = root.player_heir - } - alternative_limit = { - bp2_yearly_1020_is_secrety_child = yes - has_focus = education_intrigue - } - alternative_limit = { bp2_yearly_1020_is_secrety_child = yes } - save_scope_as = secrety_child - } - modifier = { - any_child = { - bp2_yearly_1020_is_secrety_child = yes - this = root.player_heir - } - add = 50 - } - } - 33 = { - trigger = { - any_relation = { - type = ward - bp2_yearly_1020_is_secrety_child = yes - } - } - random_relation = { - type = ward - limit = { - bp2_yearly_1020_is_secrety_child = yes - has_focus = education_stewardship - } - alternative_limit = { bp2_yearly_1020_is_secrety_child = yes } - save_scope_as = secrety_child - } - } - 33 = { - trigger = { - any_warden_hostage = { - bp2_yearly_1020_is_secrety_child = yes - } - } - random_warden_hostage = { - #A child you care about - limit = { - bp2_yearly_1020_is_secrety_child = yes - has_focus = education_stewardship - } - alternative_limit = { bp2_yearly_1020_is_secrety_child = yes } - save_scope_as = secrety_child - } - } - } - #Find the secret to reveal - random_courtier = { - limit = { - NOR = { - this = scope:secrety_child - this = root - is_parent_of = scope:secrety_child #Don't rat out your parents - } - any_secret = { - bp2_yearly_1020_is_relevant_secret = yes - NOR = { - trigger_if = { - limit = { exists = secret_target } - secret_target = scope:secrety_child - } - secret_owner = scope:secrety_child #Or yourself - } - } - } - save_scope_as = secret_keeper - random_secret = { - limit = { - bp2_yearly_1020_is_relevant_secret = yes - NOR = { - trigger_if = { - limit = { exists = secret_target } - secret_target = scope:secrety_child - } - secret_owner = scope:secrety_child - } - } - hidden_effect = { - if = { - limit = { - NOT = { is_known_by = scope:secrety_child } - } - reveal_to = scope:secrety_child - } - } - save_scope_as = bp2_yearly_1020_secret_to_reveal - } - } - scope:secrety_child = { - set_variable = { - name = had_bp2_yearly_1020_intrigue_event - value = flag:yes - } - } - } - #Have a secret - option = { - name = bp2_yearly.1020.a - custom_tooltip = bp2_yearly.1020.a.tt - hidden_effect = { - send_interface_toast = { - type = event_toast_effect_good - title = bp2_yearly.1020.a.secret.t - left_icon = root - right_icon = scope:secret_keeper - scope:bp2_yearly_1020_secret_to_reveal = { reveal_to = root } - } - } - ai_chance = { - base = 100 - } - } - #Have some education - option = { - name = bp2_yearly.1020.b - trigger = { - scope:secrety_child = { has_focus = education_intrigue } - } - #More points for a matching education - if = { - limit = { has_trait = education_intrigue } - custom_tooltip = bp2_yearly.1020.b.tt_matching - hidden_effect = { - scope:secrety_child = { - education_point_acquisition_additional_points_effect = { LEVEL = mid } - } - } - } - else = { - custom_tooltip = bp2_yearly.1020.b.tt - hidden_effect = { - scope:secrety_child = { - education_point_acquisition_additional_points_effect = { LEVEL = low } - } - } - } - reverse_add_opinion = { - target = scope:secrety_child - modifier = teaching_moment_opinion - opinion = 15 - } - stress_impact = { deceitful = minor_stress_impact_gain } - ai_chance = { - base = 100 - modifier = { - has_trait = deceitful - factor = 0 - } - } - } -} - -scripted_trigger bp2_yearly_1030_is_focus_child = { - age >= 5 - age < 16 - is_available = yes - is_ai = yes - OR = { # A focus is selected - has_focus = education_martial - has_focus = education_intrigue - has_focus = education_learning - has_focus = education_stewardship - has_focus = education_diplomacy - } - OR = { - AND = { - root = { has_trait = education_martial } - NOT = { has_focus = education_martial } - } - AND = { - root = { has_trait = education_intrigue } - NOT = { has_focus = education_intrigue } - } - AND = { - root = { has_trait = education_learning } - NOT = { has_focus = education_learning } - } - AND = { - root = { has_trait = education_stewardship } - NOT = { has_focus = education_stewardship } - } - AND = { - root = { has_trait = education_diplomacy } - NOT = { has_focus = education_diplomacy } - } - } - NOT = { has_variable = had_bp2_yearly_1030_focus_event } -} - -#Parent: Your child does not have the same educational trait as you. Change? -bp2_yearly.1030 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.1030.t - desc = bp2_yearly.1030.desc - theme = education - override_background = { reference = bp2_nursery } - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:focus_child - animation = reading - } - #Set up the cooldown - cooldown = { years = 10 } - trigger = { - #DLC check - has_bp2_dlc_trigger = yes - #Standard checks - is_available = yes - is_adult = yes - any_child = { bp2_yearly_1030_is_focus_child = yes } - } - weight_multiplier = { - base = 1 - #The better educational trait; the higher chance - modifier = { - has_trait = education_martial_2 - add = 1 - } - modifier = { - has_trait = education_martial_3 - add = 2 - } - modifier = { - has_trait = education_martial_4 - add = 3 - } - modifier = { - has_trait = education_intrigue_2 - add = 1 - } - modifier = { - has_trait = education_intrigue_3 - add = 2 - } - modifier = { - has_trait = education_intrigue_4 - add = 3 - } - modifier = { - has_trait = education_learning_2 - add = 1 - } - modifier = { - has_trait = education_learning_3 - add = 2 - } - modifier = { - has_trait = education_learning_4 - add = 3 - } - modifier = { - has_trait = education_stewardship_2 - add = 1 - } - modifier = { - has_trait = education_stewardship_3 - add = 2 - } - modifier = { - has_trait = education_stewardship_4 - add = 3 - } - modifier = { - has_trait = education_diplomacy_2 - add = 1 - } - modifier = { - has_trait = education_diplomacy_3 - add = 2 - } - modifier = { - has_trait = education_diplomacy_4 - add = 3 - } - } - immediate = { - #play_music_cue = "mx_cue_low_key_positive" - random_child = { - limit = { - bp2_yearly_1030_is_focus_child = yes - NOT = { has_variable = had_bp2_yearly_1030_focus_event } - } - save_scope_as = focus_child - } - scope:focus_child = { - set_variable = { - name = had_bp2_yearly_1030_focus_event - value = flag:yes - } - } - } - #My way or the highway - option = { - name = bp2_yearly.1030.a - custom_tooltip = bp2_yearly.1030.a.tt_change - custom_tooltip = bp2_yearly.1030.a.tt_tutor - hidden_effect = { - if = { - limit = { has_trait = education_martial } - scope:focus_child = { - set_focus = education_martial - change_variable = { - name = education_martial_variable - add = age - } - } - } - else_if = { - limit = { has_trait = education_intrigue } - scope:focus_child = { - set_focus = education_intrigue - change_variable = { - name = education_intrigue_variable - add = age - } - } - } - else_if = { - limit = { has_trait = education_learning } - scope:focus_child = { - set_focus = education_learning - change_variable = { - name = education_learning_variable - add = age - } - } - } - else_if = { - limit = { has_trait = education_stewardship } - scope:focus_child = { - set_focus = education_stewardship - change_variable = { - name = education_stewardship_variable - add = age - } - } - } - else_if = { - limit = { has_trait = education_diplomacy } - scope:focus_child = { - set_focus = education_diplomacy - change_variable = { - name = education_diplomacy_variable - add = age - } - } - } - } - stress_impact = { - base = medium_stress_impact_gain - diligent = minor_stress_impact_loss - ambitious = minor_stress_impact_loss - } - ai_chance = { - base = 0 - } - } - #It's fine, I guess... - option = { - name = bp2_yearly.1030.b - custom_tooltip = bp2_yearly.1030.b.tt - #To avoid an empty random list - hidden_effect = { - scope:focus_child = { education_point_acquisition_effect = yes } - } - ai_chance = { - base = 100 - } - } -} - -scripted_trigger bp2_yearly_1035_is_rock_child = { - age >= 7 - age < 16 - is_available = yes - is_ai = yes - location = root.location - opinion = { - target = root - value >= medium_positive_opinion - } - NOT = { has_variable = had_bp2_yearly_1035_learning_event } -} - -#Parent/Guardian: Your child/ward has a rock collection -bp2_yearly.1035 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.1035.t - desc = { - desc = bp2_yearly.1035.desc - first_valid = { - triggered_desc = { - trigger = { is_parent_of = scope:rock_child } - desc = bp2_yearly.1035.desc_parent - } - desc = bp2_yearly.1035.desc_guardian - } - } - theme = family - override_background = { - trigger = { - has_tgp_dlc_trigger = yes - location = { - geographical_region = world_asia_east - } - } - reference = relaxing_room - } - override_background = { reference = bp2_nursery } - left_portrait = { - character = root - triggered_animation = { - trigger = { has_trait = callous } - animation = personality_cynical - } - triggered_animation = { - trigger = { has_trait = greedy } - animation = personality_greedy - } - animation = personality_coward - } - right_portrait = { - character = scope:rock_child - animation = love - } - artifact = { - target = scope:gemstone_trinket - position = lower_center_portrait - } - #Set up the cooldown - cooldown = { years = 10 } - trigger = { - #DLC check - has_bp2_dlc_trigger = yes - #Standard checks - is_available = yes - is_adult = yes - OR = { - any_child = { bp2_yearly_1035_is_rock_child = yes } - any_relation = { - type = ward - bp2_yearly_1035_is_rock_child = yes - } - any_warden_hostage = { - bp2_yearly_1035_is_rock_child = yes - } - } - } - weight_multiplier = { - base = 1 - modifier = { - OR = { - any_child = { - bp2_yearly_1035_is_rock_child = yes - has_focus = education_learning - } - any_relation = { - type = ward - bp2_yearly_1035_is_rock_child = yes - has_focus = education_learning - } - any_warden_hostage = { - bp2_yearly_1035_is_rock_child = yes - has_focus = education_learning - } - } - add = 1 - } - } - immediate = { - #play_music_cue = "mx_cue_low_key_positive" - - random_list = { - 33 = { - trigger = { any_child = { bp2_yearly_1035_is_rock_child = yes } } - random_child = { - limit = { - bp2_yearly_1035_is_rock_child = yes - has_focus = education_learning - this = root.player_heir - } - alternative_limit = { - bp2_yearly_1035_is_rock_child = yes - has_focus = education_learning - } - alternative_limit = { bp2_yearly_1035_is_rock_child = yes } - save_scope_as = rock_child - } - modifier = { - any_child = { - bp2_yearly_1035_is_rock_child = yes - this = root.player_heir - } - add = 50 - } - } - 33 = { - trigger = { - any_relation = { - type = ward - bp2_yearly_1035_is_rock_child = yes - } - } - random_relation = { - type = ward - limit = { - bp2_yearly_1035_is_rock_child = yes - has_focus = education_learning - } - alternative_limit = { bp2_yearly_1035_is_rock_child = yes } - save_scope_as = rock_child - } - } - 33 = { - trigger = { - any_warden_hostage = { - bp2_yearly_1035_is_rock_child = yes - } - } - random_warden_hostage = { - #A child you care about - limit = { - bp2_yearly_1035_is_rock_child = yes - has_focus = education_learning - } - alternative_limit = { bp2_yearly_1035_is_rock_child = yes } - save_scope_as = rock_child - } - } - } - - root.location = { save_scope_as = trinket_location } - #Create the gemstone - hidden_effect = { - scope:rock_child = { - random_list = { - 50 = { - create_artifact = { - name = gemstone_trinket_rough - description = gemstone_trinket_rough.desc - type = miscellaneous - visuals = diamond - modifier = artifact_monthly_minor_prestige_1_modifier - modifier = artifact_learning_1_modifier - save_scope_as = gemstone_trinket - wealth = 15 - quality = 15 - max_durability = 30 - generate_history = no - } - } - 50 = { - create_artifact = { - name = gemstone_trinket_modest - description = gemstone_trinket_modest.desc - type = miscellaneous - visuals = diamond - modifier = artifact_monthly_minor_prestige_2_modifier - modifier = artifact_learning_1_modifier - save_scope_as = gemstone_trinket - wealth = 15 - quality = 15 - max_durability = 40 - generate_history = no - } - } - 50 = { - create_artifact = { - name = gemstone_trinket_brilliant - description = gemstone_trinket_brilliant.desc - type = miscellaneous - visuals = diamond - modifier = artifact_monthly_minor_prestige_3_modifier - modifier = artifact_learning_2_modifier - save_scope_as = gemstone_trinket - wealth = 15 - quality = 15 - max_durability = 50 - generate_history = no - } - } - } - - } - } - scope:rock_child = { - set_variable = { - name = had_bp2_yearly_1035_learning_event - value = flag:yes - } - } - } - #Have a gem trinket - option = { - name = bp2_yearly.1035.a - flavor = bp2_yearly.1035.a.flavor - scope:gemstone_trinket = { set_owner = root } - ai_chance = { - base = 100 - } - } - #Have some education - option = { - name = bp2_yearly.1035.b - trigger = { - scope:rock_child = { has_focus = education_learning } - } - #More points for a matching education - if = { - limit = { has_trait = education_learning } - custom_tooltip = bp2_yearly.1035.b.tt_matching - hidden_effect = { - scope:rock_child = { - education_point_acquisition_additional_points_effect = { LEVEL = mid } - } - } - } - else = { - custom_tooltip = bp2_yearly.1035.b.tt - hidden_effect = { - scope:rock_child = { - education_point_acquisition_additional_points_effect = { LEVEL = low } - } - } - } - reverse_add_opinion = { - target = scope:rock_child - modifier = teaching_moment_opinion - opinion = 15 - } - stress_impact = { greedy = minor_stress_impact_gain } - ai_chance = { - base = 100 - modifier = { - has_trait = greedy - factor = 0 - } - } - } -} - -scripted_trigger bp2_yearly_1040_is_sparring_child = { - age >= 7 - age < 16 - is_available = yes - is_ai = yes - location = root.location - opinion = { - target = root - value >= medium_positive_opinion - } - NOT = { has_variable = had_bp2_yearly_1040_martial_event } -} - -#Parent/Guardian: Your child/ward has a text about martial -bp2_yearly.1040 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.1040.t - desc = bp2_yearly.1040.desc - theme = family - override_background = { reference = study } - left_portrait = { - character = root - animation = reading - } - right_portrait = { - character = scope:sparring_child - animation = marshal_wooden_sword - } - #Set up the cooldown - cooldown = { years = 10 } - trigger = { - #DLC check - has_bp2_dlc_trigger = yes - #Standard checks - is_available = yes - is_adult = yes - OR = { - any_child = { bp2_yearly_1040_is_sparring_child = yes } - any_relation = { - type = ward - bp2_yearly_1040_is_sparring_child = yes - } - any_warden_hostage = { - bp2_yearly_1040_is_sparring_child = yes - } - } - } - weight_multiplier = { - base = 1 - modifier = { - OR = { - any_child = { - bp2_yearly_1040_is_sparring_child = yes - has_focus = education_martial - } - any_relation = { - type = ward - bp2_yearly_1040_is_sparring_child = yes - has_focus = education_martial - } - any_warden_hostage = { - bp2_yearly_1040_is_sparring_child = yes - has_focus = education_martial - } - } - add = 1 - } - } - immediate = { - #play_music_cue = "mx_cue_low_key_positive" - - - random_list = { - 33 = { - trigger = { any_child = { bp2_yearly_1040_is_sparring_child = yes } } - random_child = { - limit = { - bp2_yearly_1040_is_sparring_child = yes - has_focus = education_martial - this = root.player_heir - } - alternative_limit = { - bp2_yearly_1040_is_sparring_child = yes - has_focus = education_martial - } - alternative_limit = { bp2_yearly_1040_is_sparring_child = yes } - save_scope_as = sparring_child - } - modifier = { - any_child = { - bp2_yearly_1040_is_sparring_child = yes - this = root.player_heir - } - add = 50 - } - } - 33 = { - trigger = { - any_relation = { - type = ward - bp2_yearly_1040_is_sparring_child = yes - } - } - random_relation = { - type = ward - limit = { - bp2_yearly_1040_is_sparring_child = yes - has_focus = education_martial - } - alternative_limit = { bp2_yearly_1040_is_sparring_child = yes } - save_scope_as = sparring_child - } - } - 33 = { - trigger = { - any_warden_hostage = { - bp2_yearly_1040_is_sparring_child = yes - } - } - random_warden_hostage = { - #A child you care about - limit = { - bp2_yearly_1040_is_sparring_child = yes - has_focus = education_martial - } - alternative_limit = { bp2_yearly_1040_is_sparring_child = yes } - save_scope_as = sparring_child - } - } - } - - scope:sparring_child = { - set_variable = { - name = had_bp2_yearly_1040_martial_event - value = flag:yes - } - } - } - #Have some martial - option = { - name = bp2_yearly.1040.a - flavor = bp2_yearly.1040.a.flavor - add_martial_skill = 1 - ai_chance = { - base = 100 - } - } - #Have some education - option = { - name = bp2_yearly.1040.b - trigger = { - scope:sparring_child = { has_focus = education_martial } - } - #More points for a matching education - if = { - limit = { has_trait = education_martial } - custom_tooltip = bp2_yearly.1040.b.tt_matching - hidden_effect = { - scope:sparring_child = { - education_point_acquisition_additional_points_effect = { LEVEL = mid } - } - } - } - else = { - custom_tooltip = bp2_yearly.1040.b.tt - hidden_effect = { - scope:sparring_child = { - education_point_acquisition_additional_points_effect = { LEVEL = low } - } - } - } - reverse_add_opinion = { - target = scope:sparring_child - modifier = teaching_moment_opinion - opinion = 15 - } - stress_impact = { craven = minor_stress_impact_gain } - ai_chance = { - base = 100 - modifier = { - has_trait = craven - factor = 0 - } - } - } -} - -scripted_trigger bp2_yearly_1045_is_diplomacy_child = { - age >= 7 - age < 16 - is_available = yes - is_ai = yes - location = root.location - opinion = { - target = root - value >= medium_positive_opinion - } - NOT = { has_variable = had_bp2_yearly_1045_diplomacy_event } -} - -#Parent/Guardian: There is a brawl among some children -bp2_yearly.1045 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.1045.t - desc = { - desc = bp2_yearly.1045.intro - first_valid = { - triggered_desc = { - trigger = { is_parent_of = scope:diplomacy_child } - desc = bp2_yearly.1045.desc_parent - } - desc = bp2_yearly.1045.desc_guardian - } - desc = bp2_yearly.1045.desc - } - theme = family - override_background = { reference = alley_day } - left_portrait = { - character = root - triggered_animation = { - trigger = { has_trait = eccentric } - animation = happiness - } - triggered_animation = { - trigger = { - OR = { - has_trait = greedy - has_trait = callous - } - } - animation = personality_dishonorable - } - animation = worry - } - right_portrait = { - character = scope:diplomacy_child - animation = shock - } - #Set up the cooldown - cooldown = { years = 10 } - trigger = { - #DLC check - has_bp2_dlc_trigger = yes - #Standard checks - is_available = yes - is_adult = yes - OR = { - any_child = { bp2_yearly_1045_is_diplomacy_child = yes } - any_relation = { - type = ward - bp2_yearly_1045_is_diplomacy_child = yes - } - any_warden_hostage = { - bp2_yearly_1045_is_diplomacy_child = yes - } - } - } - weight_multiplier = { - base = 1 - modifier = { - OR = { - any_child = { - bp2_yearly_1045_is_diplomacy_child = yes - has_focus = education_diplomacy - } - any_relation = { - type = ward - bp2_yearly_1045_is_diplomacy_child = yes - has_focus = education_diplomacy - } - any_warden_hostage = { - bp2_yearly_1045_is_diplomacy_child = yes - has_focus = education_diplomacy - } - } - add = 1 - } - } - immediate = { - #play_music_cue = "mx_cue_low_key_positive" - - random_list = { - 33 = { - trigger = { any_child = { bp2_yearly_1045_is_diplomacy_child = yes } } - random_child = { - limit = { - bp2_yearly_1045_is_diplomacy_child = yes - has_focus = education_diplomacy - this = root.player_heir - } - alternative_limit = { - bp2_yearly_1045_is_diplomacy_child = yes - has_focus = education_diplomacy - } - alternative_limit = { bp2_yearly_1045_is_diplomacy_child = yes } - save_scope_as = diplomacy_child - } - modifier = { - any_child = { - bp2_yearly_1045_is_diplomacy_child = yes - this = root.player_heir - } - add = 50 - } - } - 33 = { - trigger = { - any_relation = { - type = ward - bp2_yearly_1045_is_diplomacy_child = yes - } - } - random_relation = { - type = ward - limit = { - bp2_yearly_1045_is_diplomacy_child = yes - has_focus = education_diplomacy - } - alternative_limit = { bp2_yearly_1045_is_diplomacy_child = yes } - save_scope_as = diplomacy_child - } - } - 33 = { - trigger = { - any_warden_hostage = { - bp2_yearly_1040_is_sparring_child = yes - } - } - random_warden_hostage = { - #A child you care about - limit = { - bp2_yearly_1045_is_diplomacy_child = yes - has_focus = education_diplomacy - } - alternative_limit = { bp2_yearly_1045_is_diplomacy_child = yes } - save_scope_as = diplomacy_child - } - } - } - - scope:diplomacy_child = { - set_variable = { - name = had_bp2_yearly_1045_diplomacy_event - value = flag:yes - } - } - } - #Have some diplomacy - option = { - name = bp2_yearly.1045.a - flavor = bp2_yearly.1045.a.flavor - add_prestige = minor_prestige_gain - if = { - limit = { - NOT = { has_perk = firm_hand_perk } - } - random = { - chance = 5 - send_interface_toast = { - type = event_toast_effect_good - title = bp2_yearly.1045.a.perk.t - left_icon = root - add_perk = firm_hand_perk - } - } - } - else_if = { - limit = { has_lifestyle = diplomacy_lifestyle } - add_learning_lifestyle_xp = minor_lifestyle_experience - } - else = { - add_character_modifier = { - modifier = august_presence_modifier - years = 5 - } - } - ai_chance = { - base = 100 - } - } - #Bet on the fight - option = { - name = bp2_yearly.1045.b - flavor = bp2_yearly.1045.b.flavor - trigger = { - OR = { - has_trait = greedy - has_trait = eccentric - has_trait = callous - } - } - duel = { - skill = learning - value = medium_skill_rating - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = bp2_yearly.1045.b.win.desc - send_interface_toast = { - type = event_toast_effect_good - title = bp2_yearly.1045.b.win.t - left_icon = root - add_gold = medium_gold_value - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = bp2_yearly.1045.b.loss.desc - send_interface_toast = { - type = event_toast_effect_good - title = bp2_yearly.1045.b.loss.t - left_icon = root - remove_short_term_gold = minor_gold_value - } - } - } - stress_impact = { - compassionate = minor_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - has_trait = compassionate - factor = 0 - } - } - } - #Have some education - option = { - name = bp2_yearly.1045.c - trigger = { - scope:diplomacy_child = { has_focus = education_diplomacy } - } - #More points for a matching education - if = { - limit = { has_trait = education_diplomacy } - custom_tooltip = bp2_yearly.1045.c.tt_matching - hidden_effect = { - scope:diplomacy_child = { - education_point_acquisition_additional_points_effect = { LEVEL = mid } - } - } - } - else = { - custom_tooltip = bp2_yearly.1045.c.tt - hidden_effect = { - scope:diplomacy_child = { - education_point_acquisition_additional_points_effect = { LEVEL = low } - } - } - } - reverse_add_opinion = { - target = scope:diplomacy_child - modifier = teaching_moment_opinion - opinion = 15 - } - stress_impact = { craven = minor_stress_impact_loss } - ai_chance = { - base = 100 - } - } -} - -################# -## Event Chain ## -## The Builder ## -## 1050 - 1072 ## -################# -#These effects keeps track of what our latest choice was -scripted_effect the_builder_stewardship_choice_tracker_effect = { - #Record the latest choice - if = { - limit = { - NOT = { exists = var:the_builder_latest_choice } - } - set_variable = { - name = the_builder_latest_choice - value = flag:stewardship - } - } - else = { - remove_variable = the_builder_latest_choice - set_variable = { - name = the_builder_latest_choice - value = flag:stewardship - } - } -} - -#These effects increments the amount of any particular choice (had to separate it to display the present/past effect correctly) -scripted_effect the_builder_stewardship_increment_effect = { - #We stack - if = { - limit = { - NOT = { exists = var:the_builder_stewardship_choices } - } - set_variable = { - name = the_builder_stewardship_choices - value = 1 - } - } - else = { - change_variable = { - name = the_builder_stewardship_choices - add = 1 - } - } - #Pick something else and we reset - if = { - limit = { exists = var:the_builder_martial_choices } - remove_variable = the_builder_martial_choices - } - if = { - limit = { exists = var:the_builder_learning_choices } - remove_variable = the_builder_learning_choices - } -} - -scripted_effect the_builder_martial_choice_tracker_effect = { - #Record the latest choice - if = { - limit = { - NOT = { exists = var:the_builder_latest_choice } - } - set_variable = { - name = the_builder_latest_choice - value = flag:martial - } - } - else = { - remove_variable = the_builder_latest_choice - set_variable = { - name = the_builder_latest_choice - value = flag:martial - } - } -} - -scripted_effect the_builder_martial_increment_effect = { - #We stack - if = { - limit = { - NOT = { exists = var:the_builder_martial_choices } - } - set_variable = { - name = the_builder_martial_choices - value = 1 - } - } - else = { - change_variable = { - name = the_builder_martial_choices - add = 1 - } - } - #Pick something else and we reset - if = { - limit = { exists = var:the_builder_learning_choices } - remove_variable = the_builder_learning_choices - } - if = { - limit = { exists = var:the_builder_stewardship_choices } - remove_variable = the_builder_stewardship_choices - } -} - -scripted_effect the_builder_learning_choice_tracker_effect = { - #Record the latest choice - if = { - limit = { - NOT = { exists = var:the_builder_latest_choice } - } - set_variable = { - name = the_builder_latest_choice - value = flag:learning - } - } - else = { - remove_variable = the_builder_latest_choice - set_variable = { - name = the_builder_latest_choice - value = flag:learning - } - } -} - -scripted_effect the_builder_learning_increment_effect = { - #We stack - if = { - limit = { - NOT = { exists = var:the_builder_learning_choices } - } - set_variable = { - name = the_builder_learning_choices - value = 1 - } - } - else = { - change_variable = { - name = the_builder_learning_choices - add = 1 - } - } - #Pick something else and we reset - if = { - limit = { exists = var:the_builder_stewardship_choices } - remove_variable = the_builder_stewardship_choices - } - if = { - limit = { exists = var:the_builder_martial_choices } - remove_variable = the_builder_martial_choices - } -} - -#The tide/storm is ruining your sand/twigcastle! -bp2_yearly.1050 = { - type = character_event - content_source = dlc_009 - title = { - first_valid = { - triggered_desc = { - trigger = { - root.location = { - OR = { - county = { is_coastal_county = yes } - graphical_wilderness_desert_trigger = yes - } - } - } - desc = bp2_yearly.1050.t - } - desc = bp2_yearly.1050.t_twig - } - } - desc = { - first_valid = { - triggered_desc = { - trigger = { - root.location = { - county = { is_coastal_county = yes } - } - } - desc = bp2_yearly.1050.desc - } - triggered_desc = { - trigger = { - root.location = { graphical_wilderness_desert_trigger = yes } - } - desc = bp2_yearly.1050.desc_desert - } - desc = bp2_yearly.1050.desc_twig - } - } - theme = education - override_background = { - trigger = { - root.location = { - county = { is_coastal_county = yes } - } - } - reference = bp3_coast - } - #Some more flavor than simply using reference = terrain - override_background = { - trigger = { - root.location = { graphical_wilderness_desert_trigger = yes } - } - reference = wilderness_desert - } - override_background = { - trigger = { - root.location = { graphical_wilderness_forest_pine_trigger = yes } - } - reference = ep2_hunt_foggy_forest - } - override_background = { - trigger = { - root.location = { graphical_wilderness_jungle_trigger = yes } - } - reference = wilderness_jungle - } - override_background = { - trigger = { - root.location = { graphical_wilderness_steppe_trigger = yes } - } - reference = ep2_travel_settlement_steppe - } - override_background = { - trigger = { - root.location = { graphical_drylands_trigger = yes } - } - reference = drylands - } - #Fallback - override_background = { reference = ep2_hunt_foggy_forest } - left_portrait = { - character = root - animation = thinking - } - trigger = { - #DLC check - has_bp2_dlc_trigger = yes - #Standard checks - is_available = yes - is_landed_or_landless_administrative = yes - age >= 4 - age <= 10 - NOT = { has_variable = had_builder_event_chain } - #If the child is AI, we don't want a player regent to get snubbed by the AI builder child - trigger_if = { - limit = { is_ai = yes } - has_active_diarchy = yes - diarch = { is_ai = yes } - } - } - weight_multiplier = { - base = 1 - modifier = { - is_ai = no - add = 10 #Should reach 50 in the on_action trigger for the chain to start - } - } - immediate = { - #play_music_cue = "mx_cue_low_key_positive" - set_variable = { name = had_builder_event_chain } - } - #Bribe nature - option = { - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { - root.location = { - county = { is_coastal_county = yes } - } - } - desc = bp2_yearly.1050.a - } - desc = bp2_yearly.1050.a_twig - } - } - } - flavor = { - first_valid = { - triggered_desc = { - trigger = { - root.location = { - county = { is_coastal_county = yes } - } - } - desc = bp2_yearly.1050.a.flavor - } - desc = bp2_yearly.1050.a.flavor_twig - } - } - the_builder_stewardship_choice_tracker_effect = yes - the_builder_stewardship_increment_effect = yes - add_stewardship_skill = 1 - ai_chance = { - base = 100 - modifier = { - ai_has_pious_builder_personality = yes - factor = 0 - } - modifier = { - ai_has_warlike_personality = yes - factor = 0 - } - modifier = { - has_trait = zealous - factor = 0 - } - modifier = { - has_trait = craven - factor = 0 - } - } - } - #Build walls - option = { - name = bp2_yearly.1050.b - flavor = bp2_yearly.1050.b.flavor - the_builder_martial_choice_tracker_effect = yes - the_builder_martial_increment_effect = yes - add_martial_skill = 1 - ai_chance = { - base = 100 - modifier = { - ai_has_pious_builder_personality = yes - factor = 0 - } - modifier = { - ai_has_economical_boom_personality = yes - factor = 0 - } - modifier = { - has_trait = zealous - factor = 0 - } - modifier = { - has_trait = greedy - factor = 0 - } - } - } - #Build a tiny altar - option = { - name = bp2_yearly.1050.c - flavor = bp2_yearly.1050.c.flavor - the_builder_learning_choice_tracker_effect = yes - the_builder_learning_increment_effect = yes - add_learning_skill = 1 - ai_chance = { - base = 100 - modifier = { - ai_has_economical_boom_personality = yes - factor = 0 - } - modifier = { - ai_has_warlike_personality = yes - factor = 0 - } - modifier = { - has_trait = greedy - factor = 0 - } - modifier = { - has_trait = craven - factor = 0 - } - } - } - after = { - trigger_event = { - id = bp2_yearly.1051 - days = 1 - } - } -} - -#Follow-up: Curse you, tide! -bp2_yearly.1051 = { - type = character_event - content_source = dlc_009 - title = { - first_valid = { - triggered_desc = { - trigger = { - root.location = { - OR = { - county = { is_coastal_county = yes } - graphical_wilderness_desert_trigger = yes - } - } - } - desc = bp2_yearly.1051.t - } - desc = bp2_yearly.1051.t_twig - } - } - desc = { - first_valid = { - triggered_desc = { - trigger = { - root.location = { - county = { is_coastal_county = yes } - } - } - desc = bp2_yearly.1051.desc - } - triggered_desc = { - trigger = { - root.location = { graphical_wilderness_desert_trigger = yes } - } - desc = bp2_yearly.1051.desc_desert - } - desc = bp2_yearly.1051.desc_twig - } - desc = bp2_yearly.1051.outro - } - theme = education - #Oh beach background; where art thou - override_background = { - trigger = { - root.location = { - county = { is_coastal_county = yes } - } - } - reference = market_tribal #This is the closest to a beach -well this or wetlands and I personally have a hard time seeing a sand castle in a marsh- we have that doesn't star a massive longship atm - } - #Some more flavor than simply using reference = terrain - override_background = { - trigger = { - root.location = { graphical_wilderness_desert_trigger = yes } - } - reference = wilderness_desert - } - override_background = { - trigger = { - root.location = { graphical_wilderness_forest_pine_trigger = yes } - } - reference = ep2_forest_managed - } - override_background = { - trigger = { - root.location = { graphical_wilderness_jungle_trigger = yes } - } - reference = wilderness_jungle - } - override_background = { - trigger = { - root.location = { graphical_wilderness_steppe_trigger = yes } - } - reference = ep2_travel_settlement_steppe - } - override_background = { - trigger = { - root.location = { graphical_drylands_trigger = yes } - } - reference = drylands - } - #Fallback - override_background = { reference = wilderness_forest_pine } - left_portrait = { - character = root - animation = personality_cynical - } - artifact = { - target = scope:iridescent_stone_trinket - position = lower_center_portrait - } - immediate = { - #play_music_cue = "mx_cue_positive_effect" - if = { - limit = { var:the_builder_latest_choice ?= flag:stewardship } - create_artifact = { - name = iridescent_stone_trinket - description = iridescent_stone_trinket.desc - type = miscellaneous - visuals = diamond - modifier = artifact_stewardship_1_modifier - modifier = artifact_stewardship_lifestyle_xp_2_modifier - save_scope_as = iridescent_stone_trinket - wealth = 15 - quality = 15 - max_durability = 40 - history = { type = created_before_history } - } - } - if = { - limit = { var:the_builder_latest_choice ?= flag:martial } - create_artifact = { - name = iridescent_stone_trinket - description = iridescent_stone_trinket.desc - type = miscellaneous - visuals = diamond - modifier = artifact_martial_1_modifier - modifier = artifact_martial_lifestyle_xp_2_modifier - save_scope_as = iridescent_stone_trinket - wealth = 15 - quality = 15 - max_durability = 40 - history = { type = created_before_history } - } - } - if = { - limit = { var:the_builder_latest_choice ?= flag:learning } - create_artifact = { - name = iridescent_stone_trinket - description = iridescent_stone_trinket.desc - type = miscellaneous - visuals = diamond - modifier = artifact_learning_1_modifier - modifier = artifact_learning_lifestyle_xp_2_modifier - save_scope_as = iridescent_stone_trinket - wealth = 15 - quality = 15 - max_durability = 40 - history = { type = created_before_history } - } - } - } - #Curse you, tide/storm! - option = { - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { - root.location = { - county = { is_coastal_county = yes } - } - } - desc = bp2_yearly.1051.a - } - desc = bp2_yearly.1051.a_twig - } - } - } - } - #We are 4-10 years - after = { - if = { - limit = { age = 4 } - trigger_event = { - id = bp2_yearly.1055 - years = 4 - } - } - else_if = { - limit = { age = 5 } - trigger_event = { - id = bp2_yearly.1055 - years = 3 - } - } - else_if = { - limit = { age = 6 } - trigger_event = { - id = bp2_yearly.1055 - years = 2 - } - } - else_if = { - limit = { age = 10 } - trigger_event = { - id = bp2_yearly.1055 - years = 1 - } - } - #7-9 years - else = { - trigger_event = { - id = bp2_yearly.1055 - years = { 1 2 } - } - } - } -} - -################# -#If we for whatever reason don't finish the event chain, clean up the flags and variables -scripted_effect the_builder_clean_up_flags_effect = { - if = { - limit = { exists = var:the_builder_latest_choice } - remove_variable = the_builder_latest_choice - } - if = { - limit = { exists = var:the_builder_stewardship_choices } - remove_variable = the_builder_stewardship_choices - } - if = { - limit = { exists = var:the_builder_martial_choices } - remove_variable = the_builder_martial_choices - } - if = { - limit = { exists = var:the_builder_learning_choices } - remove_variable = the_builder_learning_choices - } -} - -#These effects accurately checks and rewards your any particular stacked type of decision -scripted_effect the_builder_stacking_stewardship_rewards_effect = { - #Stewardship - if = { - limit = { var:the_builder_latest_choice ?= flag:stewardship } - if = { - limit = { exists = var:the_builder_stewardship_choices } - if = { - limit = { var:the_builder_stewardship_choices >= 4 } - #To get that sweet sweet past version of the tooltip if the effect has already happened - custom_description_no_bullet = { text = reminds_of_childhood_decision } - add_gold = major_gold_value - } - else_if = { - limit = { var:the_builder_stewardship_choices = 3 } - #To get that sweet sweet past version of the tooltip if the effect has already happened - custom_description_no_bullet = { text = reminds_of_childhood_decision } - add_gold = medium_gold_value - } - else_if = { - limit = { var:the_builder_stewardship_choices = 2 } - #To get that sweet sweet past version of the tooltip if the effect has already happened - custom_description_no_bullet = { text = reminds_of_childhood_decision } - add_gold = minor_gold_value - } - else_if = { - limit = { var:the_builder_stewardship_choices = 1 } - #To get that sweet sweet past version of the tooltip if the effect has already happened - custom_description_no_bullet = { text = reminds_of_childhood_decision } - add_gold = tiny_gold_value - } - } - } -} - -scripted_effect the_builder_stacking_martial_rewards_effect = { - #Martial - if = { - limit = { var:the_builder_latest_choice ?= flag:martial } - if = { - limit = { exists = var:the_builder_martial_choices } - if = { - limit = { var:the_builder_martial_choices >= 4 } - #To get that sweet sweet past version of the tooltip if the effect has already happened - custom_description_no_bullet = { text = reminds_of_childhood_decision } - add_prestige = major_prestige_gain - } - else_if = { - limit = { var:the_builder_martial_choices = 3 } - #To get that sweet sweet past version of the tooltip if the effect has already happened - custom_description_no_bullet = { text = reminds_of_childhood_decision } - add_prestige = medium_prestige_gain - } - else_if = { - limit = { var:the_builder_martial_choices = 2 } - #To get that sweet sweet past version of the tooltip if the effect has already happened - custom_description_no_bullet = { text = reminds_of_childhood_decision } - add_prestige = minor_prestige_gain - } - else_if = { - limit = { var:the_builder_martial_choices = 1 } - #To get that sweet sweet past version of the tooltip if the effect has already happened - custom_description_no_bullet = { text = reminds_of_childhood_decision } - add_prestige = miniscule_prestige_gain - } - } - } -} - -scripted_effect the_builder_stacking_learning_rewards_effect = { - #Learning - if = { - limit = { var:the_builder_latest_choice ?= flag:learning } - if = { - limit = { exists = var:the_builder_learning_choices } - if = { - limit = { var:the_builder_learning_choices >= 4 } - #To get that sweet sweet past version of the tooltip if the effect has already happened - custom_description_no_bullet = { text = reminds_of_childhood_decision } - add_piety = major_piety_gain - } - else_if = { - limit = { var:the_builder_learning_choices = 3 } - #To get that sweet sweet past version of the tooltip if the effect has already happened - custom_description_no_bullet = { text = reminds_of_childhood_decision } - add_piety = medium_piety_gain - } - else_if = { - limit = { var:the_builder_learning_choices = 2 } - #To get that sweet sweet past version of the tooltip if the effect has already happened - custom_description_no_bullet = { text = reminds_of_childhood_decision } - add_piety = minor_piety_gain - } - else_if = { - limit = { var:the_builder_learning_choices = 1 } - #To get that sweet sweet past version of the tooltip if the effect has already happened - custom_description_no_bullet = { text = reminds_of_childhood_decision } - add_piety = miniscule_piety_gain - } - } - } -} - -scripted_effect bp2_yearly_1055_economy_effect = { - the_builder_stacking_stewardship_rewards_effect = yes - add_stewardship_skill = 1 - if = { - limit = { - scope:den_challenger = { is_alive = yes } - } - worsen_relationship_effect = { - TARGET = scope:den_challenger - REASON = rival_paid_to_win - } - } -} - -scripted_effect bp2_yearly_1055_martial_effect = { - the_builder_stacking_martial_rewards_effect = yes - add_martial_skill = 1 - improve_relationship_effect = { - TARGET = scope:den_challenger - REASON = friend_built_den_together - } - if = { - limit = { has_relation_bully = scope:den_challenger } - add_prestige = minor_prestige_loss - } - if = { - limit = { - scope:den_challenger = { - NOT = { is_in_the_same_court_as = root } - } - } - add_courtier = scope:den_challenger - } -} - -scripted_effect bp2_yearly_1055_sacred_effect = { - the_builder_stacking_learning_rewards_effect = yes - create_artifact = { - name = holy_stick - description = holy_stick.desc - type = spear - visuals = spear - modifier = artifact_learning_lifestyle_xp_1_modifier - modifier = artifact_learning_2_modifier - save_scope_as = holy_stick_artifact - wealth = 25 - quality = 25 - max_durability = 40 - generate_history = no - } - add_learning_skill = 1 -} - -#You are challenged to a den-building competition -bp2_yearly.1055 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.1055.t - desc = { - desc = bp2_yearly.1055.desc - first_valid = { - triggered_desc = { - trigger = { - OR = { - is_close_family_of = scope:den_challenger - is_extended_family_of = scope:den_challenger - } - } - desc = bp2_yearly.1055.desc_related - } - triggered_desc = { - trigger = { - OR = { - has_relation_crush = scope:den_challenger - has_relation_friend = scope:den_challenger - has_relation_best_friend = scope:den_challenger - has_relation_bully = scope:den_challenger - } - } - desc = bp2_yearly.1055.desc_relations - } - desc = bp2_yearly.1055.desc_liege - } - desc = bp2_yearly.1055.outro - } - theme = education - #Some more flavor than simply using reference = terrain - override_background = { - trigger = { - root.location = { graphical_wilderness_jungle_trigger = yes } - } - reference = wilderness_jungle - } - override_background = { - trigger = { - root.location = { graphical_wilderness_steppe_trigger = yes } - } - reference = ep2_travel_settlement_steppe - } - override_background = { - trigger = { - root.location = { - OR = { - graphical_drylands_trigger = yes - graphical_wilderness_desert_trigger = yes - } - } - } - reference = drylands - } - #Fallback - override_background = { reference = ep2_hunt_forest_hut } - left_portrait = { - character = root - animation = personality_bold - } - right_portrait = { - character = scope:den_challenger - animation = schadenfreude - } - trigger = { - is_available = yes - is_landed_or_landless_administrative = yes - #If the child is AI, we don't want a player regent to get snubbed by the AI builder child - trigger_if = { - limit = { is_ai = yes } - has_active_diarchy = yes - diarch = { is_ai = yes } - } - } - on_trigger_fail = { the_builder_clean_up_flags_effect = yes } - immediate = { - #play_music_cue = "mx_cue_low_key_positive" - if = { - limit = { - any_relation = { - type = bully - is_available_ai = yes - } - } - random_relation = { - type = bully - limit = { is_available_ai = yes } - save_scope_as = den_challenger - } - } - else_if = { - limit = { - any_courtier_or_guest = { - is_available_ai = yes - is_adult = no - age > 8 - } - } - random_courtier = { - limit = { - is_available_ai = yes - is_adult = no - age > 8 - } - save_scope_as = den_challenger - } - } - else_if = { - limit = { - any_pool_character = { - province = root.location - is_available_ai = yes - is_adult = no - age > 8 - } - } - random_pool_character = { - province = root.location - limit = { - is_available_ai = yes - is_adult = no - age > 8 - } - save_scope_as = den_challenger - } - } - else = { - create_character = { - location = root.location - template = peasant_child_character - age = { 9 13 } - culture = root.location.culture - faith = root.location.faith - save_scope_as = den_challenger - after_creation = { - add_character_flag = created - } - } - } - } - #Use the virtue of 'free' labor - option = { - name = bp2_yearly.1055.a - flavor = bp2_yearly.1055.a.flavor - the_builder_stewardship_choice_tracker_effect = yes - show_as_tooltip = { bp2_yearly_1055_economy_effect = yes } - ai_chance = { - base = 100 - modifier = { - has_trait = zealous - factor = 0 - } - modifier = { - has_trait = gregarious - factor = 0 - } - } - } - #Build higher walls _together_! - option = { - name = bp2_yearly.1055.b - flavor = bp2_yearly.1055.b.flavor - the_builder_martial_choice_tracker_effect = yes - show_as_tooltip = { bp2_yearly_1055_martial_effect = yes } - ai_chance = { - base = 100 - modifier = { - has_trait = zealous - factor = 0 - } - modifier = { - has_trait = arrogant - factor = 0 - } - } - } - #Pft, only Deity can judge _me_ - option = { - name = bp2_yearly.1055.c - flavor = bp2_yearly.1055.c.flavor - the_builder_learning_choice_tracker_effect = yes - show_as_tooltip = { - the_builder_stacking_learning_rewards_effect = yes - add_learning_skill = 1 - } - ai_chance = { - base = 100 - modifier = { - has_trait = gregarious - factor = 0 - } - modifier = { - has_trait = arrogant - factor = 0 - } - } - } - after = { - trigger_event = { - id = bp2_yearly.1056 - days = 1 - } - } -} - -#Follow-up: Things went down in the woods -bp2_yearly.1056 = { - type = character_event - content_source = dlc_009 - title = { - first_valid = { - triggered_desc = { - trigger = { var:the_builder_latest_choice ?= flag:stewardship } - desc = bp2_yearly.1056.t_economy - } - triggered_desc = { - trigger = { var:the_builder_latest_choice ?= flag:martial } - desc = bp2_yearly.1056.t_martial - } - desc = bp2_yearly.1056.t_pious - } - } - desc = { - first_valid = { - triggered_desc = { - trigger = { var:the_builder_latest_choice ?= flag:stewardship } - desc = bp2_yearly.1056.desc_economy - } - triggered_desc = { - trigger = { var:the_builder_latest_choice ?= flag:martial } - desc = bp2_yearly.1056.desc_martial - } - desc = bp2_yearly.1056.desc_pious - } - } - theme = education - #Some more flavor than simply using reference = terrain - override_background = { - trigger = { - root.location = { graphical_wilderness_jungle_trigger = yes } - } - reference = wilderness_jungle - } - override_background = { - trigger = { - root.location = { graphical_wilderness_steppe_trigger = yes } - } - reference = ep2_travel_settlement_steppe - } - override_background = { - trigger = { - root.location = { - OR = { - graphical_drylands_trigger = yes - graphical_wilderness_desert_trigger = yes - } - } - } - reference = drylands - } - #Fallback - override_background = { reference = ep2_hunt_forest_cave } - left_portrait = { - character = root - triggered_animation = { - trigger = { var:the_builder_latest_choice ?= flag:stewardship } - animation = personality_dishonorable - } - triggered_animation = { - trigger = { var:the_builder_latest_choice ?= flag:martial } - animation = admiration - } - animation = disbelief - } - right_portrait = { - trigger = { - root = { - OR = { - var:the_builder_latest_choice ?= flag:stewardship - var:the_builder_latest_choice ?= flag:martial - } - } - } - triggered_animation = { - trigger = { - root = { var:the_builder_latest_choice ?= flag:stewardship } - } - animation = disapproval - } - character = scope:den_challenger - animation = happiness - } - artifact = { - trigger = { exists = scope:holy_stick_artifact } - target = scope:holy_stick_artifact - position = lower_center_portrait - } - immediate = { - #play_music_cue = "mx_cue_low_key_positive" - if = { - limit = { var:the_builder_latest_choice ?= flag:stewardship } - bp2_yearly_1055_economy_effect = yes - the_builder_stewardship_increment_effect = yes - } - else_if = { - limit = { var:the_builder_latest_choice ?= flag:martial } - bp2_yearly_1055_martial_effect = yes - the_builder_martial_increment_effect = yes - } - else = { - bp2_yearly_1055_sacred_effect = yes - the_builder_learning_increment_effect = yes - } - } - #Alright - option = { - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { var:the_builder_latest_choice ?= flag:stewardship } - desc = bp2_yearly.1056.a_economy - } - triggered_desc = { - trigger = { var:the_builder_latest_choice ?= flag:martial } - desc = bp2_yearly.1056.a_martial - } - desc = bp2_yearly.1056.a_pious - } - } - } - #Effects are handled in the immediate - } - #We are 8-11 years - after = { - if = { - limit = { age = 8 } - trigger_event = { - id = bp2_yearly.1060 - years = { 4 5 } - } - } - else_if = { - limit = { age = 9 } - trigger_event = { - id = bp2_yearly.1060 - years = { 3 4 } - } - } - #10-11 years - else = { - trigger_event = { - id = bp2_yearly.1060 - years = { 1 2 } - } - } - scope:den_challenger = { # created in the preceding event, but necessary for the immediate and the narrative in this one - silent_disappearance_ai_if_created_effect = yes - } - } -} - -################# -scripted_trigger bp2_yearly_1060_appropriate_character_trigger = { - NOR = { - opinion = { - target = root - value < medium_negative_opinion - } - has_relation_rival = root - has_relation_nemesis = root - this = root - } - is_available_ai = yes - location = root.location -} - -scripted_effect bp2_yearly_1060_give_economical_reward_effect = { - the_builder_stacking_stewardship_rewards_effect = yes - scope:economical_architecture_book = { - set_owner = root - add_artifact_history = { - location = root.location - actor = scope:steward_character - recipient = root - type = given - } - } - add_stewardship_skill = 1 - improve_relationship_effect = { - TARGET = scope:steward_character - REASON = friend_bonded_over_economical_architecture - } -} - -scripted_effect bp2_yearly_1060_give_martial_reward_effect = { - the_builder_stacking_martial_rewards_effect = yes - scope:martial_architecture_book = { - set_owner = root - add_artifact_history = { - location = root.location - actor = scope:martial_character - recipient = root - type = given - } - } - add_martial_skill = 1 - improve_relationship_effect = { - TARGET = scope:martial_character - REASON = friend_bonded_over_martial_architecture - } -} - -scripted_effect bp2_yearly_1060_give_learned_reward_effect = { - the_builder_stacking_learning_rewards_effect = yes - scope:religious_architecture_book = { - set_owner = root - add_artifact_history = { - location = root.location - actor = scope:learned_character - recipient = root - type = given - } - } - add_learning_skill = 1 - improve_relationship_effect = { - TARGET = scope:learned_character - REASON = friend_bonded_over_religious_architecture - } -} - -#Appreciate the architecture of your capital -bp2_yearly.1060 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.1060.t - desc = bp2_yearly.1060.desc - theme = education - override_background = { reference = courtyard } - left_portrait = { - character = root - animation = thinking - } - lower_left_portrait = { character = scope:steward_character } - lower_center_portrait = { character = scope:martial_character } - lower_right_portrait = { character = scope:learned_character } - trigger = { - is_available = yes - is_landed_or_landless_administrative = yes - exists = capital_province - #If the child is AI, we don't want a player regent to get snubbed by the AI builder child - trigger_if = { - limit = { is_ai = yes } - has_active_diarchy = yes - diarch = { is_ai = yes } - } - } - on_trigger_fail = { the_builder_clean_up_flags_effect = yes } - immediate = { - #play_music_cue = "mx_cue_low_key_positive" - set_variable = { - name = the_builder_sightseed_capital - value = capital_province - } - #Find a steward character - if = { - limit = { - cp:councillor_steward ?= { bp2_yearly_1060_appropriate_character_trigger = yes } - } - cp:councillor_steward = { save_scope_as = steward_character } - } - #Or a steward-savvy courtier - else_if = { - limit = { - any_courtier_or_guest = { - bp2_yearly_1060_appropriate_character_trigger = yes - stewardship >= medium_skill_rating - } - } - random_courtier_or_guest = { - limit = { - bp2_yearly_1060_appropriate_character_trigger = yes - stewardship >= medium_skill_rating - } - add_to_list = potential_steward_characters - } - ordered_in_list = { - list = potential_steward_characters - order_by = stewardship - save_scope_as = steward_character - } - } - #Or a steward-savvy pool character - else_if = { - limit = { - any_pool_character = { - province = root.location - bp2_yearly_1060_appropriate_character_trigger = yes - stewardship >= medium_skill_rating - } - } - random_pool_character = { - province = root.location - limit = { - bp2_yearly_1060_appropriate_character_trigger = yes - stewardship >= medium_skill_rating - } - save_scope_as = steward_character - } - #And add them to court - hidden_effect = { add_courtier = scope:steward_character } - } - #Or simply create a steward-savvy character - else = { - create_character = { - location = root.location - template = bp1_yearly_2021_stewardship_person_template - save_scope_as = steward_character - after_creation = { - add_character_flag = created - } - } - #And add them to court - hidden_effect = { add_courtier = scope:steward_character } - } - #Give them a steward architecture book - hidden_effect_new_object = { - scope:steward_character = { - if = { - limit = { artifacts_use_indian_books_trigger = yes } - create_artifact = { - name = economical_architecture_book - description = economical_architecture_book_desc - type = journal - visuals = indian_book - modifier = artifact_stewardship_lifestyle_xp_2_modifier - modifier = artifact_stewardship_1_modifier - modifier = artifact_city_holding_build_speed_add_1_modifier - save_scope_as = economical_architecture_book - } - } - else = { - create_artifact = { - name = economical_architecture_book - description = economical_architecture_book_desc - type = journal - visuals = book - modifier = artifact_stewardship_lifestyle_xp_2_modifier - modifier = artifact_stewardship_1_modifier - modifier = artifact_city_holding_build_speed_add_1_modifier - save_scope_as = economical_architecture_book - } - } - } - } - #Find a martial character - if = { - limit = { - cp:councillor_marshal ?= { - bp2_yearly_1060_appropriate_character_trigger = yes - this != scope:steward_character - } - } - cp:councillor_marshal = { save_scope_as = martial_character } - } - #Or a martial-savvy courtier - else_if = { - limit = { - any_courtier_or_guest = { - bp2_yearly_1060_appropriate_character_trigger = yes - martial >= medium_skill_rating - this != scope:steward_character - } - } - random_courtier_or_guest = { - limit = { - bp2_yearly_1060_appropriate_character_trigger = yes - martial >= medium_skill_rating - this != scope:steward_character - } - add_to_list = potential_martial_characters - } - ordered_in_list = { - list = potential_martial_characters - order_by = martial - save_scope_as = martial_character - } - } - else_if = { - limit = { - any_pool_character = { - province = root.location - bp2_yearly_1060_appropriate_character_trigger = yes - martial >= medium_skill_rating - this != scope:steward_character - } - } - random_pool_character = { - province = root.location - limit = { - bp2_yearly_1060_appropriate_character_trigger = yes - martial >= medium_skill_rating - this != scope:steward_character - } - save_scope_as = martial_character - } - #And add them to court - hidden_effect = { add_courtier = scope:martial_character } - } - #Or simply create a martial-savvy character - else = { - create_character = { - location = root.location - template = bp1_yearly_2021_martial_person_template - save_scope_as = martial_character - after_creation = { - add_character_flag = created - } - } - #And add them to court - hidden_effect = { add_courtier = scope:martial_character } - } - #Give them a martial architecture book - hidden_effect_new_object = { - scope:martial_character = { - if = { - limit = { artifacts_use_indian_books_trigger = yes } - create_artifact = { - name = martial_architecture_book - description = martial_architecture_book_desc - type = journal - visuals = indian_book - modifier = artifact_martial_lifestyle_xp_2_modifier - modifier = artifact_martial_1_modifier - modifier = artifact_castle_holding_build_speed_add_1_modifier - save_scope_as = martial_architecture_book - } - } - else = { - create_artifact = { - name = martial_architecture_book - description = martial_architecture_book_desc - type = journal - visuals = book - modifier = artifact_martial_lifestyle_xp_2_modifier - modifier = artifact_martial_1_modifier - modifier = artifact_castle_holding_build_speed_add_1_modifier - save_scope_as = martial_architecture_book - } - } - } - } - #Find a learned character - if = { - limit = { - cp:councillor_court_chaplain ?= { - bp2_yearly_1060_appropriate_character_trigger = yes - NOR = { - this = scope:steward_character - this = scope:martial_character - } - } - } - cp:councillor_court_chaplain = { save_scope_as = learned_character } - } - #Or a learning-savvy courtier - else_if = { - limit = { - any_courtier_or_guest = { - bp2_yearly_1060_appropriate_character_trigger = yes - learning >= medium_skill_rating - NOR = { - this = scope:steward_character - this = scope:martial_character - } - } - } - random_courtier_or_guest = { - limit = { - bp2_yearly_1060_appropriate_character_trigger = yes - learning >= medium_skill_rating - NOR = { - this = scope:steward_character - this = scope:martial_character - } - } - add_to_list = potential_learned_characters - } - ordered_in_list = { - list = potential_learned_characters - order_by = learning - save_scope_as = learned_character - } - } - #Or a learning-savvy pool character - else_if = { - limit = { - any_pool_character = { - province = root.location - bp2_yearly_1060_appropriate_character_trigger = yes - learning >= medium_skill_rating - NOR = { - this = scope:steward_character - this = scope:martial_character - } - } - } - random_pool_character = { - province = root.location - limit = { - bp2_yearly_1060_appropriate_character_trigger = yes - learning >= medium_skill_rating - NOR = { - this = scope:steward_character - this = scope:martial_character - } - } - save_scope_as = learned_character - } - #And add them to court - hidden_effect = { add_courtier = scope:learned_character } - } - #Or simply create a learning-savvy character - else = { - create_character = { - location = root.location - template = bp1_yearly_2021_learning_person_template - save_scope_as = learned_character - after_creation = { - add_character_flag = created - } - } - #And add them to court - hidden_effect = { add_courtier = scope:learned_character } - } - #Give them a religious architecture book - hidden_effect_new_object = { - scope:learned_character = { - if = { - limit = { artifacts_use_indian_books_trigger = yes } - create_artifact = { - name = religious_architecture_book - description = religious_architecture_book_desc - type = journal - visuals = indian_book - modifier = artifact_learning_lifestyle_xp_2_modifier - modifier = artifact_learning_1_modifier - modifier = artifact_church_holding_build_speed_add_1_modifier - save_scope_as = religious_architecture_book - } - } - else = { - create_artifact = { - name = religious_architecture_book - description = religious_architecture_book_desc - type = journal - visuals = book - modifier = artifact_learning_lifestyle_xp_2_modifier - modifier = artifact_learning_1_modifier - modifier = artifact_church_holding_build_speed_add_1_modifier - save_scope_as = religious_architecture_book - } - } - } - } - } - #Check out _that_ tradeport - option = { - name = bp2_yearly.1060.a - flavor = bp2_yearly.1060.a.flavor - the_builder_stewardship_choice_tracker_effect = yes - show_as_tooltip = { bp2_yearly_1060_give_economical_reward_effect = yes } - ai_chance = { - base = 100 - modifier = { - has_trait = zealous - factor = 0 - } - modifier = { - has_trait = craven - factor = 0 - } - } - } - #I like a good wall - option = { - name = bp2_yearly.1060.b - flavor = bp2_yearly.1060.b.flavor - the_builder_martial_choice_tracker_effect = yes - show_as_tooltip = { bp2_yearly_1060_give_martial_reward_effect = yes } - ai_chance = { - base = 100 - modifier = { - has_trait = zealous - factor = 0 - } - modifier = { - has_trait = greedy - factor = 0 - } - } - } - #The temple, obviously - option = { - name = bp2_yearly.1060.c - flavor = bp2_yearly.1060.c.flavor - the_builder_learning_choice_tracker_effect = yes - show_as_tooltip = { bp2_yearly_1060_give_learned_reward_effect = yes } - ai_chance = { - base = 100 - modifier = { - has_trait = craven - factor = 0 - } - modifier = { - has_trait = greedy - factor = 0 - } - } - } - after = { - trigger_event = { - id = bp2_yearly.1061 - days = 1 - } - scope:steward_character ?= { - silent_disappearance_ai_if_created_effect = yes - } - scope:martial_character ?= { - silent_disappearance_ai_if_created_effect = yes - } - scope:learned_character ?= { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -#Follow-up: You spend the day with WhatsTheirFace -bp2_yearly.1061 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.1061.t - desc = { - first_valid = { - triggered_desc = { - trigger = { var:the_builder_latest_choice ?= flag:stewardship } - desc = bp2_yearly.1061.desc_steward - } - triggered_desc = { - trigger = { var:the_builder_latest_choice ?= flag:martial } - desc = bp2_yearly.1061.desc_martial - } - desc = bp2_yearly.1061.desc_religion - } - desc = bp2_yearly.1061.outro - } - theme = education - override_background = { - trigger = { var:the_builder_latest_choice ?= flag:stewardship } - reference = market - } - override_background = { - trigger = { var:the_builder_latest_choice ?= flag:martial } - reference = armory - } - override_background = { - trigger = { var:the_builder_latest_choice ?= flag:learning } - reference = holy_site_generic - } - left_portrait = { - character = root - animation = happiness - } - right_portrait = { - character = scope:architecture_character - animation = personality_compassionate - } - artifact = { - target = scope:book_to_get - position = lower_center_portrait - } - immediate = { - #play_music_cue = "mx_cue_low_key_positive" - #Save character for the portrait - if = { - limit = { var:the_builder_latest_choice ?= flag:stewardship } - scope:steward_character = { save_scope_as = architecture_character } - scope:economical_architecture_book = { save_scope_as = book_to_get } - bp2_yearly_1060_give_economical_reward_effect = yes - the_builder_stewardship_increment_effect = yes - } - else_if = { - limit = { var:the_builder_latest_choice ?= flag:martial } - scope:martial_character = { save_scope_as = architecture_character } - scope:martial_architecture_book = { save_scope_as = book_to_get } - bp2_yearly_1060_give_martial_reward_effect = yes - the_builder_martial_increment_effect = yes - } - else = { - scope:learned_character = { save_scope_as = architecture_character } - scope:religious_architecture_book = { save_scope_as = book_to_get } - bp2_yearly_1060_give_learned_reward_effect = yes - the_builder_learning_increment_effect = yes - } - } - #Alright - option = { - name = bp2_yearly.1061.a - flavor = bp2_yearly.1061.a.flavor - #Effect is handled in immediate - } - #We are 12-13 years - after = { - trigger_event = { - id = bp2_yearly.1065 - years = { 1 2 } - } - } -} - -################# -scripted_trigger bp2_yearly.1065_appropriate_province_trigger = { - trigger_if = { - limit = { exists = barony.holder } - barony.holder = { is_ai = yes } - } - has_holding = yes - has_free_building_slot = yes -} - -scripted_trigger bp2_yearly_1065_can_build_building_trigger = { - building_$BUILDING$_requirement_terrain = yes - NOT = { has_building = $BUILDING$_08 } -} - -scripted_effect bp2_yearly_1065_add_buff_effect = { - if = { - limit = { has_province_modifier = $DIRECTION$_improvements_modifier } - remove_province_modifier = $DIRECTION$_improvements_modifier - add_province_modifier = { - modifier = $DIRECTION$_improvements_modifier - years = 10 - } - } - else = { - add_province_modifier = { - modifier = $DIRECTION$_improvements_modifier - years = 10 - } - } -} - -scripted_effect bp2_yearly_1065_determine_economical_building_effect = { - #Can we actually build one of these buildings? - if = { - limit = { - OR = { - bp2_yearly_1065_can_build_building_trigger = { BUILDING = common_tradeport } - bp2_yearly_1065_can_build_building_trigger = { BUILDING = pastures } - bp2_yearly_1065_can_build_building_trigger = { BUILDING = hunting_grounds } - bp2_yearly_1065_can_build_building_trigger = { BUILDING = orchards } - bp2_yearly_1065_can_build_building_trigger = { BUILDING = farm_estates } - bp2_yearly_1065_can_build_building_trigger = { BUILDING = cereal_fields } - bp2_yearly_1065_can_build_building_trigger = { BUILDING = logging_camps } - bp2_yearly_1065_can_build_building_trigger = { BUILDING = peat_quarries } - bp2_yearly_1065_can_build_building_trigger = { BUILDING = hill_farms } - bp2_yearly_1065_can_build_building_trigger = { BUILDING = elephant_pens } - bp2_yearly_1065_can_build_building_trigger = { BUILDING = plantations } - bp2_yearly_1065_can_build_building_trigger = { BUILDING = quarries } - } - } - #Yes? In that case, randomize which! - random_list = { - #Tradeport - 10 = { - trigger = { - bp2_yearly_1065_can_build_building_trigger = { BUILDING = common_tradeport } - } - set_variable = { - name = bp2_yearly_1065_economical_building - value = flag:common_tradeport - } - } - #Pastures - 10 = { - trigger = { - bp2_yearly_1065_can_build_building_trigger = { BUILDING = pastures } - } - set_variable = { - name = bp2_yearly_1065_economical_building - value = flag:pastures - } - } - #Hunting Grounds - 10 = { - trigger = { - bp2_yearly_1065_can_build_building_trigger = { BUILDING = hunting_grounds } - } - set_variable = { - name = bp2_yearly_1065_economical_building - value = flag:hunting_grounds - } - } - #Orchards - 10 = { - trigger = { - bp2_yearly_1065_can_build_building_trigger = { BUILDING = orchards } - } - set_variable = { - name = bp2_yearly_1065_economical_building - value = flag:orchards - } - } - #Farm Estates - 10 = { - trigger = { - bp2_yearly_1065_can_build_building_trigger = { BUILDING = farm_estates } - } - set_variable = { - name = bp2_yearly_1065_economical_building - value = flag:farm_estates - } - } - #Cereal Fields - 10 = { - trigger = { - bp2_yearly_1065_can_build_building_trigger = { BUILDING = cereal_fields } - } - set_variable = { - name = bp2_yearly_1065_economical_building - value = flag:cereal_fields - } - } - #Logging Camps - 10 = { - trigger = { - bp2_yearly_1065_can_build_building_trigger = { BUILDING = logging_camps } - } - set_variable = { - name = bp2_yearly_1065_economical_building - value = flag:logging_camps - } - } - #Peat Quarries - 10 = { - trigger = { - bp2_yearly_1065_can_build_building_trigger = { BUILDING = peat_quarries } - } - set_variable = { - name = bp2_yearly_1065_economical_building - value = flag:peat_quarries - } - } - #Hill Farms - 10 = { - trigger = { - bp2_yearly_1065_can_build_building_trigger = { BUILDING = hill_farms } - } - set_variable = { - name = bp2_yearly_1065_economical_building - value = flag:hill_farms - } - } - #Elephant Pens - 10 = { - trigger = { - bp2_yearly_1065_can_build_building_trigger = { BUILDING = elephant_pens } - } - set_variable = { - name = bp2_yearly_1065_economical_building - value = flag:elephant_pens - } - } - #Plantations - 10 = { - trigger = { - bp2_yearly_1065_can_build_building_trigger = { BUILDING = plantations } - } - set_variable = { - name = bp2_yearly_1065_economical_building - value = flag:plantations - } - } - #Quarries - 10 = { - trigger = { - bp2_yearly_1065_can_build_building_trigger = { BUILDING = quarries } - } - set_variable = { - name = bp2_yearly_1065_economical_building - value = flag:quarries - } - } - } - } - #Otherwise you get a modifier - else = { - set_variable = { - name = bp2_yearly_1065_economical_building - value = flag:modifier - } - } -} - -scripted_effect bp2_yearly_1065_add_economical_building_effect = { - #Tradeport - if = { - limit = { var:bp2_yearly_1065_economical_building ?= flag:common_tradeport } - add_next_building_tier_effect = { BUILDING = common_tradeport } - } - #Pastures - else_if = { - limit = { var:bp2_yearly_1065_economical_building ?= flag:pastures } - add_next_building_tier_effect = { BUILDING = pastures } - } - #Hunting Grounds - else_if = { - limit = { var:bp2_yearly_1065_economical_building ?= flag:hunting_grounds } - add_next_building_tier_effect = { BUILDING = hunting_grounds } - } - #Orchards - else_if = { - limit = { var:bp2_yearly_1065_economical_building ?= flag:orchards } - add_next_building_tier_effect = { BUILDING = orchards } - } - #Farm Estates - else_if = { - limit = { var:bp2_yearly_1065_economical_building ?= flag:farm_estates } - add_next_building_tier_effect = { BUILDING = farm_estates } - } - #Cereal Fields - else_if = { - limit = { var:bp2_yearly_1065_economical_building ?= flag:cereal_fields } - add_next_building_tier_effect = { BUILDING = cereal_fields } - } - #Logging Camps - else_if = { - limit = { var:bp2_yearly_1065_economical_building ?= flag:logging_camps } - add_next_building_tier_effect = { BUILDING = logging_camps } - } - #Peat Quarries - else_if = { - limit = { var:bp2_yearly_1065_economical_building ?= flag:peat_quarries } - add_next_building_tier_effect = { BUILDING = peat_quarries } - } - #Hill Farms - else_if = { - limit = { var:bp2_yearly_1065_economical_building ?= flag:hill_farms } - add_next_building_tier_effect = { BUILDING = hill_farms } - } - #Elephant Pens - else_if = { - limit = { var:bp2_yearly_1065_economical_building ?= flag:elephant_pens } - add_next_building_tier_effect = { BUILDING = elephant_pens } - } - #Plantations - else_if = { - limit = { var:bp2_yearly_1065_economical_building ?= flag:plantations } - add_next_building_tier_effect = { BUILDING = plantations } - } - #Quarries - else_if = { - limit = { var:bp2_yearly_1065_economical_building ?= flag:quarries } - add_next_building_tier_effect = { BUILDING = quarries } - } - #You're all decked out; have a modifier - else_if = { - limit = { var:bp2_yearly_1065_economical_building ?= flag:modifier } - bp2_yearly_1065_add_buff_effect = { DIRECTION = economical } - } -} - -scripted_effect bp2_yearly_1065_determine_martial_building_effect = { - #Can we actually build one of these buildings? - if = { - limit = { - OR = { - bp2_yearly_1065_can_build_building_trigger = { BUILDING = ramparts } - bp2_yearly_1065_can_build_building_trigger = { BUILDING = curtain_walls } - bp2_yearly_1065_can_build_building_trigger = { BUILDING = watchtowers } - bp2_yearly_1065_can_build_building_trigger = { BUILDING = hill_forts } - bp2_yearly_1065_can_build_building_trigger = { BUILDING = outposts } - bp2_yearly_1065_can_build_building_trigger = { BUILDING = barracks } - bp2_yearly_1065_can_build_building_trigger = { BUILDING = smiths } - } - } - #Yes? In that case, randomize which! - random_list = { - #Ramparts - 10 = { - trigger = { - bp2_yearly_1065_can_build_building_trigger = { BUILDING = ramparts } - } - set_variable = { - name = bp2_yearly_1065_martial_building - value = flag:ramparts - } - } - #Walls - 10 = { - trigger = { - bp2_yearly_1065_can_build_building_trigger = { BUILDING = curtain_walls } - } - set_variable = { - name = bp2_yearly_1065_martial_building - value = flag:curtain_walls - } - } - #Watch Towers - 10 = { - trigger = { - bp2_yearly_1065_can_build_building_trigger = { BUILDING = watchtowers } - } - set_variable = { - name = bp2_yearly_1065_martial_building - value = flag:watchtowers - } - } - #Hill Forts - 10 = { - trigger = { - bp2_yearly_1065_can_build_building_trigger = { BUILDING = hill_forts } - } - set_variable = { - name = bp2_yearly_1065_martial_building - value = flag:hill_forts - } - } - #Barracks - 10 = { - trigger = { - bp2_yearly_1065_can_build_building_trigger = { BUILDING = barracks } - } - set_variable = { - name = bp2_yearly_1065_martial_building - value = flag:barracks - } - } - #Smiths - 10 = { - trigger = { - bp2_yearly_1065_can_build_building_trigger = { BUILDING = smiths } - } - set_variable = { - name = bp2_yearly_1065_martial_building - value = flag:smiths - } - } - } - } - #Otherwise you get a modifier - else = { - set_variable = { - name = bp2_yearly_1065_martial_building - value = flag:modifier - } - } -} - -scripted_effect bp2_yearly_1065_add_martial_building_effect = { - #Ramparts - if = { - limit = { var:bp2_yearly_1065_martial_building ?= flag:ramparts } - add_next_building_tier_effect = { BUILDING = ramparts } - } - #Curtain Walls - else_if = { - limit = { var:bp2_yearly_1065_martial_building ?= flag:curtain_walls } - add_next_building_tier_effect = { BUILDING = curtain_walls } - } - #Watch Towers - else_if = { - limit = { var:bp2_yearly_1065_martial_building ?= flag:watchtowers } - add_next_building_tier_effect = { BUILDING = watchtowers } - } - #Hill Fort - else_if = { - limit = { var:bp2_yearly_1065_martial_building ?= flag:hill_forts } - add_next_building_tier_effect = { BUILDING = hill_forts } - } - #Barracks - else_if = { - limit = { var:bp2_yearly_1065_martial_building ?= flag:barracks } - add_next_building_tier_effect = { BUILDING = barracks } - } - #Smiths - else_if = { - limit = { var:bp2_yearly_1065_martial_building ?= flag:smiths } - add_next_building_tier_effect = { BUILDING = smiths } - } - #You're all decked out; have a modifier - else_if = { - limit = { var:bp2_yearly_1065_martial_building ?= flag:modifier } - bp2_yearly_1065_add_buff_effect = { DIRECTION = martial } - } -} - -scripted_effect bp2_yearly_1065_determine_pious_building_effect = { - #Can we actually build one of these buildings? - if = { - limit = { - OR = { - county.holder.faith = { has_doctrine_parameter = can_build_megaliths } - county.faith = { has_doctrine_parameter = can_build_megaliths } - NOT = { has_building = monastic_schools_08 } - } - } - #Yes? In that case, randomize which! - random_list = { - #Monastic Schools - 10 = { - trigger = { - NOT = { has_building = monastic_schools_08 } - } - set_variable = { - name = bp2_yearly_1065_pious_building - value = flag:monastic_schools - } - } - #Megalith - 10 = { - trigger = { - OR = { - county.holder.faith = { has_doctrine_parameter = can_build_megaliths } - county.faith = { has_doctrine_parameter = can_build_megaliths } - } - } - set_variable = { - name = bp2_yearly_1065_pious_building - value = flag:megalith - } - } - } - } - #Otherwise you get a modifier - else = { - set_variable = { - name = bp2_yearly_1065_pious_building - value = flag:modifier - } - } -} - -scripted_effect bp2_yearly_1065_add_pious_building_effect = { - #Monastic Schools - if = { - limit = { var:bp2_yearly_1065_pious_building ?= flag:monastic_schools } - add_next_building_tier_effect = { BUILDING = monastic_schools } - } - #Megalith - else_if = { - limit = { var:bp2_yearly_1065_pious_building ?= flag:megalith } - add_next_building_tier_effect = { BUILDING = megalith } - } - #You're all decked out; have a modifier - else_if = { - limit = { var:bp2_yearly_1065_pious_building ?= flag:modifier } - bp2_yearly_1065_add_buff_effect = { DIRECTION = pious } - } -} - -#Your input is desired on the next building target -bp2_yearly.1065 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.1065.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - scope:current_regent ?= { - OR = { - is_parent_of = root - is_grandparent_of = root - is_great_grandparent_of = root - } - } - } - desc = bp2_yearly.1065.intro_parent - } - triggered_desc = { - trigger = { exists = scope:current_regent } - desc = bp2_yearly.1065.intro_regent - } - desc = bp2_yearly.1065.intro - } - first_valid = { - triggered_desc = { - trigger = { - scope:current_regent ?= { - OR = { - is_parent_of = root - is_grandparent_of = root - is_great_grandparent_of = root - } - } - exists = scope:province_holder - } - desc = bp2_yearly.1065.desc_parent_mayor - } - triggered_desc = { - trigger = { - scope:current_regent ?= { - OR = { - is_parent_of = root - is_grandparent_of = root - is_great_grandparent_of = root - } - } - } - desc = bp2_yearly.1065.desc_parent_mayor - } - triggered_desc = { - trigger = { - exists = scope:current_regent - exists = scope:province_holder - } - desc = bp2_yearly.1065.desc_regent_mayor - } - triggered_desc = { - trigger = { exists = scope:current_regent } - desc = bp2_yearly.1065.desc_regent - } - triggered_desc = { - trigger = { exists = scope:province_holder } - desc = bp2_yearly.1065.desc_mayor - } - desc = bp2_yearly.1065.desc - } - desc = bp2_yearly.1065.outro - } - theme = education - override_background = { reference = council_chamber } - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - trigger = { exists = scope:current_regent } - character = scope:current_regent - animation = disapproval - } - lower_right_portrait = { - trigger = { exists = scope:province_holder } - character = scope:province_holder - } - trigger = { - is_available = yes - is_landed_or_landless_administrative = yes - #If the child is AI, we don't want a player regent to get snubbed by the AI builder child - trigger_if = { - limit = { is_ai = yes } - has_active_diarchy = yes - diarch = { is_ai = yes } - } - OR = { - any_held_title = { - title_tier = county - any_county_province = { bp2_yearly.1065_appropriate_province_trigger = yes } - } - any_sub_realm_county = { - county.holder ?= { is_ai = yes } - any_county_province = { bp2_yearly.1065_appropriate_province_trigger = yes } - } - } - } - on_trigger_fail = { - if = { - limit = { exists = var:the_builder_sightseed_capital } - remove_variable = the_builder_sightseed_capital - } - the_builder_clean_up_flags_effect = yes - } - immediate = { - #play_music_cue = "mx_cue_low_key_positive" - if = { - limit = { has_active_diarchy = yes } - diarch = { save_scope_as = current_regent } - } - #Find a holding to build a building in - if = { - limit = { - OR = { - any_held_title = { - title_tier = county - any_county_province = { bp2_yearly.1065_appropriate_province_trigger = yes } - } - any_sub_realm_county = { - county.holder ?= { is_ai = yes } - any_county_province = { bp2_yearly.1065_appropriate_province_trigger = yes } - } - } - } - #First one with an empty slot - if = { - limit = { - any_held_title = { - title_tier = county - any_county_province = { bp2_yearly.1065_appropriate_province_trigger = yes } - } - } - random_held_title = { - title_tier = county - limit = { - any_county_province = { bp2_yearly.1065_appropriate_province_trigger = yes } - } - save_scope_as = 1065_county_for_building - } - } - #Or a sub-realm with an empty slot - else_if = { - limit = { - any_sub_realm_county = { - county.holder ?= { is_ai = yes } - any_county_province = { bp2_yearly.1065_appropriate_province_trigger = yes } - } - } - random_sub_realm_county = { - limit = { - county.holder ?= { is_ai = yes } - any_county_province = { bp2_yearly.1065_appropriate_province_trigger = yes } - } - save_scope_as = 1065_sub_realm_county_for_building - } - } - } - else = { - random_held_title = { - title_tier = county - random_county_province = { save_scope_as = 1065_province_for_buffing } - } - } - #Find the scopes in the province - if = { - limit = { - NOT = { exists = scope:1065_province_for_buffing } - } - #Hash out which one of our own provinces to build in - if = { - limit = { exists = scope:1065_county_for_building } - scope:1065_county_for_building = { - random_county_province = { - limit = { bp2_yearly.1065_appropriate_province_trigger = yes } - save_scope_as = 1065_province_for_building - } - } - } - #... or a sub-realm province - else = { - scope:1065_sub_realm_county_for_building = { - random_county_province = { - limit = { bp2_yearly.1065_appropriate_province_trigger = yes } - save_scope_as = 1065_province_for_building - } - } - } - #Save scopes for loc - scope:1065_province_for_building = { - if = { - limit = { - exists = barony.holder - barony.holder != root - trigger_if = { - limit = { exists = scope:current_regent } - barony.holder != scope:current_regent - } - } - barony.holder = { save_scope_as = province_holder } - } - } - set_variable = { - name = the_builder_constructed_building_in - value = scope:1065_province_for_building - } - } - else = { - #Save scopes for loc - scope:1065_province_for_buffing = { - if = { - limit = { - exists = barony.holder - barony.holder != root - trigger_if = { - limit = { exists = scope:current_regent } - barony.holder != scope:current_regent - } - } - barony.holder = { save_scope_as = province_holder } - } - } - set_variable = { - name = the_builder_constructed_building_in - value = scope:1065_province_for_buffing - } - } - #Determine what buildings you should get to pick from - and actually give the effect in the option - if = { - limit = { exists = scope:1065_province_for_building } - scope:1065_province_for_building = { - bp2_yearly_1065_determine_economical_building_effect = yes - bp2_yearly_1065_determine_martial_building_effect = yes - bp2_yearly_1065_determine_pious_building_effect = yes - } - } - } - #Economical improvements - option = { - name = bp2_yearly.1065.a - flavor = bp2_yearly.1065.a.flavor - the_builder_stacking_stewardship_rewards_effect = yes - add_stewardship_skill = 1 - if = { - limit = { exists = scope:1065_province_for_building } - scope:1065_province_for_building = { bp2_yearly_1065_add_economical_building_effect = yes } - } - else_if = { - limit = { exists = scope:1065_province_for_buffing } - scope:1065_province_for_buffing = { - bp2_yearly_1065_add_buff_effect = { DIRECTION = economical } - } - } - the_builder_stewardship_choice_tracker_effect = yes - the_builder_stewardship_increment_effect = yes - ai_chance = { - base = 100 - modifier = { - ai_has_warlike_personality = yes - factor = 0 - } - modifier = { - has_trait = zealous - factor = 0 - } - modifier = { - has_trait = craven - factor = 0 - } - } - } - #Martial improvements - option = { - name = bp2_yearly.1065.b - flavor = bp2_yearly.1065.b.flavor - the_builder_stacking_martial_rewards_effect = yes - add_martial_skill = 1 - if = { - limit = { exists = scope:1065_province_for_building } - scope:1065_province_for_building = { bp2_yearly_1065_add_martial_building_effect = yes } - } - else_if = { - limit = { exists = scope:1065_province_for_buffing } - scope:1065_province_for_buffing = { - bp2_yearly_1065_add_buff_effect = { DIRECTION = martial } - } - } - the_builder_martial_choice_tracker_effect = yes - the_builder_martial_increment_effect = yes - ai_chance = { - base = 100 - modifier = { - ai_has_economical_boom_personality = yes - factor = 0 - } - modifier = { - has_trait = zealous - factor = 0 - } - modifier = { - has_trait = greedy - factor = 0 - } - } - } - #Pious improvements, obviously - option = { - name = bp2_yearly.1065.c - flavor = bp2_yearly.1065.c.flavor - the_builder_stacking_learning_rewards_effect = yes - add_learning_skill = 1 - if = { - limit = { exists = scope:1065_province_for_building } - scope:1065_province_for_building = { - if = { - limit = { - NOT = { has_holding_type = church_holding } - } - custom_tooltip = bp2_yearly.1065.c.tt - set_holding_type = church_holding - } - bp2_yearly_1065_add_pious_building_effect = yes - } - } - else_if = { - limit = { exists = scope:1065_province_for_buffing } - scope:1065_province_for_buffing = { - bp2_yearly_1065_add_buff_effect = { DIRECTION = pious } - } - } - the_builder_learning_choice_tracker_effect = yes - the_builder_learning_increment_effect = yes - ai_chance = { - base = 100 - modifier = { - ai_has_economical_boom_personality = yes - factor = 0 - } - modifier = { - ai_has_warlike_personality = yes - factor = 0 - } - modifier = { - has_trait = craven - factor = 0 - } - modifier = { - has_trait = greedy - factor = 0 - } - } - } - #We are 14-15 - after = { - if = { - limit = { exists = scope:1065_province_for_building } - if = { - limit = { exists = var:bp2_yearly_1065_economical_building } - remove_variable = bp2_yearly_1065_economical_building - } - if = { - limit = { exists = var:bp2_yearly_1065_martial_building } - remove_variable = bp2_yearly_1065_martial_building - } - if = { - limit = { exists = var:bp2_yearly_1065_pious_building } - remove_variable = bp2_yearly_1065_pious_building - } - } - trigger_event = { - id = bp2_yearly.1070 - years = { 4 6 } - } - } -} - -################# -#All of our efforts have culminated into _this_ - -scripted_effect bp2_yearly_1070_city_builder_effect = { - the_builder_stacking_stewardship_rewards_effect = yes - give_nickname = nick_the_city_builder - add_trait = architect - add_character_modifier = the_city_builder_modifier -} - -scripted_effect bp2_yearly_1070_castle_builder_effect = { - the_builder_stacking_martial_rewards_effect = yes - give_nickname = nick_the_castle_builder - add_trait = architect - add_character_modifier = the_castle_builder_modifier -} - -scripted_effect bp2_yearly_1070_temple_builder_effect = { - the_builder_stacking_learning_rewards_effect = yes - give_nickname = nick_the_temple_builder - add_trait = architect - add_character_modifier = the_temple_builder_modifier -} - -bp2_yearly.1070 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.1070.t - desc = { - desc = bp2_yearly.1070.intro - first_valid = { - triggered_desc = { - trigger = { exists = scope:1070_province_to_build_in } - desc = bp2_yearly.1070.desc - } - triggered_desc = { - trigger = { exists = scope:1070_province_to_buff } - desc = bp2_yearly.1070.desc_no_province - } - } - #Actually none of the above apply - triggered_desc = { - trigger = { - NOR = { - exists = scope:1070_province_to_build_in - exists = scope:1070_province_to_buff - } - } - desc = bp2_yearly.1070.desc_no_province_no_buff - } - } - theme = education - override_background = { reference = study } - left_portrait = { - character = root - animation = personality_compassionate - } - trigger = { - is_available = yes - is_landed_or_landless_administrative = yes - has_active_diarchy = no - has_variable = the_builder_sightseed_capital - } - on_trigger_fail = { - the_builder_clean_up_flags_effect = yes - if = { - limit = { exists = var:the_builder_sightseed_capital } - remove_variable = the_builder_sightseed_capital - } - if = { - limit = { exists = var:the_builder_constructed_building_in } - remove_variable = the_builder_constructed_building_in - } - } - immediate = { - #play_music_cue = "mx_cue_positive_effect" - var:the_builder_sightseed_capital ?= { save_scope_as = sightseed_capital } - var:the_builder_constructed_building_in ?= { save_scope_as = constructed_building_in } - #Find a holding to build - if = { - limit = { - OR = { - any_held_title = { county_has_empty_province_trigger = yes } - any_sub_realm_county = { - county.holder ?= { is_ai = yes } - any_county_province = { province_has_no_holding_trigger = yes } - } - } - } - #Build in our own area first - ordered_held_title = { - limit = { county_has_empty_province_trigger = yes } - order_by = development_level - save_scope_as = 1070_county_to_build_in - } - if = { - limit = { - NOT = { exists = scope:1070_county_to_build_in } - } - #Then a sub realm - ordered_sub_realm_county = { - limit = { - county.holder ?= { is_ai = yes } - any_county_province = { province_has_no_holding_trigger = yes } - } - order_by = development_level - save_scope_as = 1070_county_to_build_in - } - } - scope:1070_county_to_build_in = { - random_county_province = { - limit = { province_has_no_holding_trigger = yes } - set_variable = { - name = the_builder_holding - value = root - } - save_scope_as = 1070_province_to_build_in - } - } - set_variable = { - name = the_builder_constructed_holding - value = scope:1070_province_to_build_in - } - } - #If no empty provinces, buff a random holding - else_if = { - limit = { - any_held_title = { - title_tier = county - any_county_province = { - NOR = { - has_province_modifier = improved_by_the_city_builder_modifier - has_province_modifier = improved_by_the_castle_builder_modifier - has_province_modifier = improved_by_the_temple_builder_modifier - } - } - } - any_sub_realm_county = { - any_county_province = { - NOR = { - has_province_modifier = improved_by_the_city_builder_modifier - has_province_modifier = improved_by_the_castle_builder_modifier - has_province_modifier = improved_by_the_temple_builder_modifier - } - } - } - } - #Least developed county - ordered_held_title = { - title_tier = county - order_by = { - value = development_level - multiply = -1 - } - save_scope_as = 1070_county_to_buff - } - if = { - limit = { - NOT = { exists = scope:1070_county_to_buff } - } - #Least developed sub realm county - ordered_sub_realm_county = { - limit = { - any_county_province = { - NOR = { - has_province_modifier = improved_by_the_city_builder_modifier - has_province_modifier = improved_by_the_castle_builder_modifier - has_province_modifier = improved_by_the_temple_builder_modifier - } - } - } - order_by = { - value = development_level - multiply = -1 - } - save_scope_as = 1070_county_to_buff - } - } - scope:1070_county_to_buff = { - ordered_county_province = { - limit = { - NOR = { - has_province_modifier = improved_by_the_city_builder_modifier - has_province_modifier = improved_by_the_castle_builder_modifier - has_province_modifier = improved_by_the_temple_builder_modifier - } - } - #Least developed holdng - order_by = { - value = county.development_level - multiply = -1 - } - save_scope_as = 1070_province_to_buff - } - } - } - } - #Build or buff a city - option = { - name = { - text = { - first_valid = { - #Build city - triggered_desc = { - trigger = { exists = scope:1070_province_to_build_in } - desc = bp2_yearly.1070.a - } - #Buff holding - triggered_desc = { - trigger = { exists = scope:1070_province_to_buff } - desc = bp2_yearly.1070.a_buff - } - #I would probs focus on economy - desc = bp2_yearly.1070.a_none - } - } - } - flavor = { - first_valid = { - triggered_desc = { - trigger = { exists = scope:1070_province_to_build_in } - desc = bp2_yearly.1070.a.flavor - } - desc = bp2_yearly.1070.a.flavor_none - } - } - the_builder_stewardship_choice_tracker_effect = yes - #We build! - if = { - limit = { exists = scope:1070_province_to_build_in } - scope:1070_province_to_build_in = { - begin_create_holding = { type = city_holding } - } - #Some custom loc to look proper in tooltip - custom_description_no_bullet = { text = upon_holding_completion } - show_as_tooltip = { - bp2_yearly_1070_city_builder_effect = yes - dynasty ?= { add_dynasty_prestige = minor_dynasty_prestige_gain } - } - } - #We buff - else_if = { - limit = { exists = scope:1070_province_to_buff } - bp2_yearly_1070_city_builder_effect = yes - scope:1070_province_to_buff = { add_province_modifier = improved_by_the_city_builder_modifier } - } - #... we really should never end up here. Have some renown, because obviously your domain is pristine. - else = { - bp2_yearly_1070_city_builder_effect = yes - dynasty ?= { add_dynasty_prestige = medium_dynasty_prestige_gain } - } - ai_chance = { - base = 100 - modifier = { - ai_has_warlike_personality = yes - factor = 0 - } - modifier = { - has_trait = zealous - factor = 0 - } - modifier = { - has_trait = craven - factor = 0 - } - } - } - #Build or buff a castle - option = { - name = { - text = { - first_valid = { - #Build castle - triggered_desc = { - trigger = { exists = scope:1070_province_to_build_in } - desc = bp2_yearly.1070.b - } - #Buff holding - triggered_desc = { - trigger = { exists = scope:1070_province_to_buff } - desc = bp2_yearly.1070.b_buff - } - #I would probs focus on defense - desc = bp2_yearly.1070.b_none - } - } - } - flavor = { - first_valid = { - triggered_desc = { - trigger = { - OR = { - exists = scope:1070_province_to_build_in - exists = scope:1070_province_to_buff - } - } - desc = bp2_yearly.1070.b.flavor - } - desc = bp2_yearly.1070.b.flavor_none - } - } - the_builder_martial_choice_tracker_effect = yes - #We build! - if = { - limit = { exists = scope:1070_province_to_build_in } - scope:1070_province_to_build_in = { - begin_create_holding = { type = castle_holding } - } - #Some custom loc to look proper in tooltip - custom_description_no_bullet = { text = upon_holding_completion } - show_as_tooltip = { - bp2_yearly_1070_castle_builder_effect = yes - dynasty ?= { add_dynasty_prestige = minor_dynasty_prestige_gain } - } - } - #We buff - else_if = { - limit = { exists = scope:1070_province_to_buff } - bp2_yearly_1070_castle_builder_effect = yes - scope:1070_province_to_buff = { add_province_modifier = improved_by_the_castle_builder_modifier } - } - #... we really should never end up here. Have some renown, because obviously your domain is pristine. - else = { - bp2_yearly_1070_castle_builder_effect = yes - dynasty ?= { add_dynasty_prestige = medium_dynasty_prestige_gain } - } - ai_chance = { - base = 100 - modifier = { - ai_has_economical_boom_personality = yes - factor = 0 - } - modifier = { - has_trait = zealous - factor = 0 - } - modifier = { - has_trait = greedy - factor = 0 - } - } - } - #Build or buff a temple - option = { - name = bp2_yearly.1070.c - flavor = { - first_valid = { - triggered_desc = { - trigger = { - OR = { - exists = scope:1070_province_to_build_in - exists = scope:1070_province_to_buff - } - } - desc = bp2_yearly.1070.c.flavor - } - desc = bp2_yearly.1070.c.flavor_none - } - } - the_builder_learning_choice_tracker_effect = yes - #We build! - if = { - limit = { exists = scope:1070_province_to_build_in } - scope:1070_province_to_build_in = { - begin_create_holding = { type = church_holding } - } - #Some custom loc to look proper in tooltip - custom_description_no_bullet = { text = upon_holding_completion } - show_as_tooltip = { - bp2_yearly_1070_temple_builder_effect = yes - dynasty ?= { add_dynasty_prestige = minor_dynasty_prestige_gain } - } - } - #We buff - else_if = { - limit = { exists = scope:1070_province_to_buff } - bp2_yearly_1070_temple_builder_effect = yes - scope:1070_province_to_buff = { add_province_modifier = improved_by_the_temple_builder_modifier } - } - #... we really should never end up here. Have some renown, because obviously your domain is pristine. - else = { - bp2_yearly_1070_temple_builder_effect = yes - dynasty ?= { add_dynasty_prestige = medium_dynasty_prestige_gain } - } - ai_chance = { - base = 100 - modifier = { - ai_has_economical_boom_personality = yes - factor = 0 - } - modifier = { - ai_has_warlike_personality = yes - factor = 0 - } - modifier = { - has_trait = greedy - factor = 0 - } - modifier = { - has_trait = craven - factor = 0 - } - } - } - after = { - if = { - limit = { exists = var:the_builder_sightseed_capital } - remove_variable = the_builder_sightseed_capital - } - if = { - limit = { exists = var:the_builder_constructed_building_in } - remove_variable = the_builder_constructed_building_in - } - #If the player for whatever reason manually cancels the holding - if = { - limit = { exists = scope:1070_province_to_build_in } - set_variable = { - name = the_builder_holding_cancelled_safeguard - value = scope:1070_province_to_build_in - years = 6 #In general, a holding takes 5 years to build - } - #You dun messed up, son - trigger_event = { - id = bp2_yearly.1072 - years = 6 - } - } - } -} - -#Follow-up: Get the sweet sweet loo... I mean, sweet sweet effects! -bp2_yearly.1071 = { - type = character_event - content_source = dlc_009 - title = { - first_valid = { - triggered_desc = { - trigger = { var:the_builder_latest_choice ?= flag:stewardship } - desc = bp2_yearly.1071.t_city - } - triggered_desc = { - trigger = { var:the_builder_latest_choice ?= flag:martial } - desc = bp2_yearly.1071.t_castle - } - triggered_desc = { - trigger = { var:the_builder_latest_choice ?= flag:learning } - desc = bp2_yearly.1071.t_temple - } - } - } - desc = { - first_valid = { - triggered_desc = { - trigger = { var:the_builder_latest_choice ?= flag:stewardship } - desc = bp2_yearly.1071.desc_city - } - triggered_desc = { - trigger = { var:the_builder_latest_choice ?= flag:martial } - desc = bp2_yearly.1071.desc_castle - } - triggered_desc = { - trigger = { var:the_builder_latest_choice ?= flag:learning } - desc = bp2_yearly.1071.desc_temple - } - } - desc = bp2_yearly.1071.outro - } - theme = education - override_background = { - trigger = { var:the_builder_latest_choice ?= flag:stewardship } - reference = market - } - override_background = { - trigger = { var:the_builder_latest_choice ?= flag:martial } - reference = courtyard - } - override_background = { - trigger = { var:the_builder_latest_choice ?= flag:learning } - reference = holy_site_generic - } - left_portrait = { - character = root - animation = personality_honorable - } - immediate = { - #play_music_cue = "mx_cue_positive_effect" - var:the_builder_constructed_holding ?= { save_scope_as = constructed_holding } - } - #Alright - option = { - name = bp2_yearly.1071.a - flavor = bp2_yearly.1071.a.flavor - if = { - limit = { var:the_builder_latest_choice ?= flag:stewardship } - bp2_yearly_1070_city_builder_effect = yes - } - else_if = { - limit = { var:the_builder_latest_choice ?= flag:martial } - bp2_yearly_1070_castle_builder_effect = yes - } - else_if = { - limit = { var:the_builder_latest_choice ?= flag:learning } - bp2_yearly_1070_temple_builder_effect = yes - } - dynasty ?= { add_dynasty_prestige = minor_dynasty_prestige_gain } - } - after = { - if = { - limit = { has_variable = the_builder_constructed_holding } - remove_variable = the_builder_constructed_holding - } - the_builder_clean_up_flags_effect = yes - } -} - -#Clean up: You dun messed up, son -bp2_yearly.1072 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.1072.t - desc = bp2_yearly.1072.desc - theme = education - override_background = { reference = study } - left_portrait = { - character = root - animation = sadness - } - trigger = { - has_variable = the_builder_holding_cancelled_safeguard - } - immediate = { - #play_music_cue = "mx_cue_negative" - var:the_builder_holding_cancelled_safeguard = { save_scope_as = cancelled_holding } - } - #Wa-wa - option = { - name = bp2_yearly.1072.a - } - after = { - if = { - limit = { has_variable = the_builder_holding_cancelled_safeguard } - remove_variable = the_builder_holding_cancelled_safeguard - } - the_builder_clean_up_flags_effect = yes - } -} diff --git a/events/dlc/bp2/bp2_yearly_2.txt b/events/dlc/bp2/bp2_yearly_2.txt deleted file mode 100644 index 31efbd124..000000000 --- a/events/dlc/bp2/bp2_yearly_2.txt +++ /dev/null @@ -1,4472 +0,0 @@ -namespace = bp2_yearly - -######################## -## BP2 Yearly Events -## 2000-2999 -## by Chad Uhl -######################## -## -## In Their Footsteps (House Founder) bp2_yearly.2000 -## In Their Footsteps (Ancestor) bp2_yearly.2001 -## In Their Footsteps (Artifact follow-up) bp2_yearly.2002 -## -#### Imaginary Friend Story Cycle Events bp2_yearly.2010-99 -## Introduction Event bp2_yearly.2010 -## Playdate Event bp2_yearly.2011 -## Regent Shenanigans bp2_yearly.2012 -## Change a personality trait bp2_yearly.2013 -## Pursue a crush bp2_yearly.2014 -## Fight back against your bully bp2_yearly.2015 -## Flower crowns bp2_yearly.2016 -## Study up or go practice swordsmanship bp2_yearly.2017 -## Gain the confider or poet trait bp2_yearly.2018 -## Gain Eccentric trait bp2_yearly.2019 -## Adulthood Events - Evil bp2_yearly.2020-29 -## bp2_yearly.2020 # Your imaginary friend wants you to kill someone -## bp2_yearly.2021 # Why haven't you started your scheme? -## bp2_yearly.2022 # Murder Success - Another target? -## bp2_yearly.2023 # Murder Invalidated -## bp2_yearly.2024 # Murder Failed, try again -## bp2_yearly.2025 # Murder special ending -## Adulthood Events - Good bp2_yearly.2030-39 -## bp2_yearly.2030 # Imaginary friend reveals they are an angel -## bp2_yearly.2031 # Honor your Imaginary Friend at the Holy Site -## Adulthood Events - Neutral bp2_yearly.2040 -## bp2_yearly.2040 # Neutral ending -### END Imaginary Friend Events -## -## Laying Foundations bp2_yearly.2100 -## -#### Trait Specific Events -## Gain Humble or Arrogant bp2_yearly.2110 -## Gain Temperate or Gluttonous bp2_yearly.2120 -## Gain Generous or Greedy bp2_yearly.2130 -## Gain Honest or Deceitful bp2_yearly.2140 -## Gain Herbalist or Gardener bp2_yearly.2150 -## Gain Compassionate or Sadistic bp2_yearly.2160 -## -######################## - -scripted_trigger relevant_story_teller_trigger = { - OR = { - any_close_or_extended_family_member = { - is_relevant_to_child = yes - } - any_courtier_or_guest = { - is_relevant_to_child = yes - } - any_knight = { - is_relevant_to_child = yes - } - any_councillor = { - is_relevant_to_child = yes - } - any_court_position_holder = { - is_relevant_to_child = yes - } - } -} -# You hear a story about your house founder -bp2_yearly.2000 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.2000.t - desc = { - first_valid = { - triggered_desc = { - trigger = { scope:story_teller.dynasty = root.dynasty } - desc = bp2_yearly.2000.desc_dynasty - } - desc = bp2_yearly.2000.desc - } - } - theme = education - - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:story_teller - animation = admiration - } - lower_center_portrait = scope:root_house_founder - - trigger = { - has_bp2_dlc_trigger = yes - is_available_child = yes - number_of_personality_traits < 3 - exists = house - root.house.house_founder ?= { - is_alive = no - number_of_personality_traits_in_common = { - target = root - value < 3 - } - number_of_opposing_personality_traits = { - target = root - value < 3 - } - } - relevant_story_teller_trigger = yes - } - - weight_multiplier = { - base = 1 - modifier = { - factor = 3 - culture = { - OR = { - has_cultural_tradition = tradition_mystical_ancestors - has_cultural_tradition = tradition_storytellers - } - } - } - modifier = { - factor = 4 - is_ai = no - } - } - - immediate = { - house.house_founder = { - save_scope_as = root_house_founder - } - # Grab someone to tell their story - grab_learning_char_relevant_to_child = { - CHILD = root - SCOPE_OUTPUT = story_teller - } - scope:root_house_founder = { - every_character_trait = { - if = { - limit = { - # Must be a personality trait - has_trait_category = personality - # Child does not already have this trait - root = { - NOT = { has_trait = prev } - } - # Child does not already have the opposite of this trait - any_opposite_trait = { - root = { - NOT = { has_trait = prev } - } - } - } - add_to_list = target_traits - } - } - } - - random_in_list = { - list = target_traits - save_scope_as = target_trait - random_opposite_trait = { - save_scope_as = target_trait_opposite - } - } - - random_court_position_holder = { - type = court_artificer_court_position - save_scope_as = artificer - } - - } - - option = { - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { - OR = { - scope:target_trait = trait:callous - scope:target_trait = trait:deceitful - scope:target_trait = trait:lazy - faith = { trait_is_sin = scope:target_trait } - } - } - desc = bp2_yearly.2000.a.negative - } - desc = bp2_yearly.2000.a - } - } - } - add_trait = scope:target_trait - hidden_effect = { - create_character_memory = { - type = ancestor_trait_memory - participants = { - ancestor = scope:root_house_founder - } - } - scope:new_memory = { - set_variable = { - name = target_trait - value = scope:target_trait - } - if = { - limit = { exists = var:target_trait } - #To prevent 'unused except in loc' errors - } - } - } - ai_chance = { - base = 50 - } - } - - option = { - name = bp2_yearly.2000.b - add_trait = scope:target_trait_opposite - hidden_effect = { - create_character_memory = { - type = ancestor_opposite_trait_memory - participants = { - ancestor = scope:root_house_founder - } - } - scope:new_memory = { - set_variable = { - name = target_trait_opposite - value = scope:target_trait_opposite - } - if = { - limit = { exists = var:target_trait_opposite } - #To prevent 'unused except in loc' errors - } - } - } - ai_chance = { - base = 50 - } - } - - option = { - name = bp2_yearly.2000.c - trigger = { - employs_court_position = court_artificer_court_position - } - custom_tooltip = bp2_yearly.2000.c.tt - remove_short_term_gold = medium_gold_value - trigger_event = { - id = bp2_yearly.2002 - days = { 7 21 } - } - - ai_chance = { - base = 30 - } - } - - option = { - name = bp2_yearly.2000.d - ai_chance = { - base = 0 - } - } -} - -# You hear a story about your ancestor -bp2_yearly.2001 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.2000.t - desc = bp2_yearly.2001.desc - theme = education - - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:story_teller - animation = admiration - } - lower_center_portrait = scope:ancestor - - trigger = { - has_bp2_dlc_trigger = yes - is_available_child = yes - number_of_personality_traits < 3 - any_ancestor = { - even_if_dead = yes - is_alive = no - age >= 25 - number_of_personality_traits_in_common = { - target = root - value < 3 - } - number_of_opposing_personality_traits = { - target = root - value < 3 - } - } - relevant_story_teller_trigger = yes - } - - weight_multiplier = { - base = 1 - modifier = { - factor = 3 - culture = { - OR = { - has_cultural_tradition = tradition_mystical_ancestors - has_cultural_tradition = tradition_storytellers - } - } - } - modifier = { - factor = 4 - is_ai = no - } - } - - immediate = { - ordered_ancestor = { - even_if_dead = yes - limit = { - is_alive = no - age >= 25 - number_of_personality_traits_in_common = { - target = root - value < 3 - } - number_of_opposing_personality_traits = { - target = root - value < 3 - } - } - order_by = highest_held_title_tier - save_scope_as = ancestor - } - # Grab someone to tell their story - grab_learning_char_relevant_to_child = { - CHILD = root - SCOPE_OUTPUT = story_teller - } - scope:ancestor = { - every_character_trait = { - if = { - limit = { - # Must be a personality trait - has_trait_category = personality - # Child does not already have this trait - root = { - NOT = { has_trait = prev } - } - # Child does not already have the opposite of this trait - any_opposite_trait = { - root = { - NOT = { has_trait = prev } - } - } - } - add_to_list = target_traits - } - } - } - - random_in_list = { - list = target_traits - save_scope_as = target_trait - random_opposite_trait = { - save_scope_as = target_trait_opposite - } - } - - random_court_position_holder = { - type = court_artificer_court_position - save_scope_as = artificer - } - - } - - option = { - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { - OR = { - scope:target_trait = trait:callous - scope:target_trait = trait:deceitful - scope:target_trait = trait:lazy - faith = { trait_is_sin = scope:target_trait } - } - } - desc = bp2_yearly.2000.a.negative - } - desc = bp2_yearly.2001.a - } - } - } - #custom_tooltip = bp2_yearly.2000.a.tt - add_trait = scope:target_trait - hidden_effect = { - create_character_memory = { - type = ancestor_trait_memory - participants = { - ancestor = scope:ancestor - } - } - scope:new_memory = { - set_variable = { - name = target_trait - value = scope:target_trait - } - if = { - limit = { exists = var:target_trait } - #To prevent 'unused except in loc' errors - } - } - } - ai_chance = { - base = 50 - } - } - - option = { - name = bp2_yearly.2000.b - add_trait = scope:target_trait_opposite - hidden_effect = { - create_character_memory = { - type = ancestor_opposite_trait_memory - participants = { - ancestor = scope:ancestor - } - } - scope:new_memory = { - set_variable = { - name = target_trait_opposite - value = scope:target_trait_opposite - } - if = { - limit = { exists = var:target_trait_opposite } - #To prevent 'unused except in loc' errors - } - } - } - ai_chance = { - base = 50 - } - } - - option = { - name = bp2_yearly.2000.c - trigger = { - employs_court_position = court_artificer_court_position - } - custom_tooltip = bp2_yearly.2000.c.tt - remove_short_term_gold = medium_gold_value - trigger_event = { - id = bp2_yearly.2002 - days = { 7 21 } - } - - ai_chance = { - base = 30 - } - } - - option = { - name = bp2_yearly.2000.d - ai_chance = { - base = 0 - } - } -} - -# Artifact follow-up -bp2_yearly.2002 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.2000.t - desc = bp2_yearly.2002.desc - theme = education - - left_portrait = { - character = root - animation = admiration - } - right_portrait = { - character = scope:artificer - animation = personality_honorable - } - artifact = { - target = scope:newly_created_artifact - position = lower_center_portrait - } - - trigger = { - has_bp2_dlc_trigger = yes - } - - immediate = { - random_list = { - 1 = { # Ring - create_artifact_ring_effect = { - OWNER = root - SMITH = scope:artificer - } - if = { - limit = { exists = scope:newly_created_artifact } - scope:newly_created_artifact = { - set_artifact_name = house_founder_ring_name - set_artifact_description = house_founder_ring_desc - } - } - } - 1 = { # Necklace - create_artifact_necklace_effect = { - OWNER = root - SMITH = scope:artificer - } - if = { - limit = { exists = scope:newly_created_artifact } - scope:newly_created_artifact = { - set_artifact_name = house_founder_necklace_name - set_artifact_description = house_founder_necklace_desc - } - } - } - 1 = { # Brooch - create_artifact_brooch_effect = { - OWNER = root - SMITH = scope:artificer - } - if = { - limit = { exists = scope:newly_created_artifact } - scope:newly_created_artifact = { - set_artifact_name = house_founder_brooch_name - set_artifact_description = house_founder_brooch_desc - } - } - } - } - } - - option = { - name = bp2_yearly.2002.a - show_as_tooltip = { - scope:newly_created_artifact = { set_owner = root } - } - } -} - -# Imaginary Friend - Story Cycle Start -bp2_yearly.2010 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.2010.t - desc = { - desc = bp2_yearly.2010.desc - random_valid = { - triggered_desc = { - trigger = { - OR = { - mother ?= { is_ruler = yes } - father ?= { is_ruler = yes } - } - } - desc = bp2_yearly.2010.desc.landed - } - triggered_desc = { - trigger = { - mother ?= { is_alive = no } - father ?= { is_alive = no } - } - desc = bp2_yearly.2010.desc.parents_dead - } - } - desc = bp2_yearly.2010.outro - } - theme = friend_relation - override_background = { reference = bp2_nursery } - - left_portrait = { - character = root - animation = shock - } - right_portrait = { - character = scope:imaginary_friend - animation = crying - hide_info = yes - } - - trigger = { - is_ai = no - is_landed = yes - has_bp2_dlc_trigger = yes - is_available_child = yes - age >= 6 - age <= 12 - NOT = { - any_owned_story = { - type = story_cycle_imaginary_friend - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - factor = 4 - has_trait = eccentric - } - - modifier = { - factor = 2 - any_parent = { - even_if_dead = yes - has_trait = eccentric - } - } - modifier = { - factor = 2 - any_relation = { - type = guardian - has_trait = eccentric - } - } - - } - - immediate = { - create_character = { - template = bp2_imaginary_friend_template - dynasty = none - location = root.location - save_scope_as = imaginary_friend - } - - set_variable = { - name = imaginary_friend_char - value = scope:imaginary_friend - } - - create_story = story_cycle_imaginary_friend - set_favorite_toy_effect = yes - - # Pick three random culture names - sorry for this being a bit cursed - root.faith = { - random_faith_character = { - limit = { - culture = root.culture - trigger_if = { - limit = { root = { is_female = yes } } - is_male = yes - } - trigger_if = { - limit = { root = { is_female = no } } - is_female = yes - } - } - save_scope_as = name_option_1 - } - random_faith_character = { - limit = { - culture = root.culture - this != scope:name_option_1 - trigger_if = { - limit = { root = { is_female = yes } } - is_male = yes - } - trigger_if = { - limit = { root = { is_female = no } } - is_female = yes - } - } - save_scope_as = name_option_2 - } - random_faith_character = { - limit = { - culture = root.culture - NOR = { - this = scope:name_option_1 - this = scope:name_option_2 - } - trigger_if = { - limit = { root = { is_female = yes } } - is_male = yes - } - trigger_if = { - limit = { root = { is_female = no } } - is_female = yes - } - } - save_scope_as = name_option_3 - } - } - - # for loc - if = { - limit = { - OR = { - mother ?= { - is_ruler = yes - } - father ?= { is_ruler = yes } - } - } - if = { - limit = { mother ?= { is_ruler = yes } } - mother ?= { save_scope_as = ruler_parent } - } - else = { - father ?= { save_scope_as = ruler_parent } - } - } - } - - option = { - name = bp2_yearly.2010.a - set_variable = { - name = imaginary_friend_name - value = scope:name_option_1 - } - random_owned_story = { - type = story_cycle_imaginary_friend - set_variable = { - name = imaginary_friend_name - value = scope:name_option_1 - } - } - create_character_memory = { - type = imaginary_friend_gained_memory - duration = { years = memory_default_duration } - } - random_memory = { - memory_type = imaginary_friend_gained_memory - set_variable = { - name = imaginary_friend_name - value = scope:name_option_1 - } - } - } - - option = { - name = bp2_yearly.2010.b - set_variable = { - name = imaginary_friend_name - value = scope:name_option_2 - } - random_owned_story = { - type = story_cycle_imaginary_friend - set_variable = { - name = imaginary_friend_name - value = scope:name_option_2 - } - } - create_character_memory = { - type = imaginary_friend_gained_memory - duration = { years = memory_default_duration } - } - random_memory = { - memory_type = imaginary_friend_gained_memory - set_variable = { - name = imaginary_friend_name - value = scope:name_option_2 - } - } - } - - option = { - name = bp2_yearly.2010.c - set_variable = { - name = imaginary_friend_name - value = scope:name_option_3 - } - random_owned_story = { - type = story_cycle_imaginary_friend - set_variable = { - name = imaginary_friend_name - value = scope:name_option_3 - } - } - create_character_memory = { - type = imaginary_friend_gained_memory - duration = { years = memory_default_duration } - } - random_memory = { - memory_type = imaginary_friend_gained_memory - set_variable = { - name = imaginary_friend_name - value = scope:name_option_3 - } - } - } - - after = { - send_interface_toast = { - title = gained_imaginary_friend - left_icon = root - } - scope:imaginary_friend = { - silent_disappearance_effect = yes - } - add_character_modifier = { - modifier = imaginary_friend_modifier - } - } -} - -scripted_effect necromance_imaginary_friend_character_effect = { - create_character = { - template = bp2_imaginary_friend_template - dynasty = none - location = root.location - save_scope_as = imaginary_friend - } -} - -scripted_effect increase_progress_to_eccentricity_effect = { - random_owned_story = { - type = story_cycle_imaginary_friend - change_variable = { - name = progress_to_eccentric_trait - add = $VALUE$ - } - } - if = { - limit = { $VALUE$ <= 2 } - custom_tooltip = imaginary_friend_increase_relationship - } - else_if = { - limit = { $VALUE$ >= 3 } - custom_tooltip = imaginary_friend_significantly_increase_relationship - } -} - -scripted_effect decrease_progress_to_eccentricity_effect = { - random_owned_story = { - type = story_cycle_imaginary_friend - change_variable = { - name = progress_to_eccentric_trait - subtract = $VALUE$ - } - } - custom_tooltip = imaginary_friend_decrease_relationship -} - -# You try to play with your imaginary friend at a playdate -bp2_yearly.2011 = { - type = activity_event - content_source = dlc_009 - title = bp2_yearly.2011.t - desc = bp2_yearly.2011.desc - theme = playdate_activity - override_background = { reference = bp2_nursery } - - left_portrait = { - character = root - animation = anger - } - center_portrait = { - character = scope:imaginary_friend - animation = worry - hide_info = yes - } - right_portrait = { - character = scope:participant - animation = schadenfreude - } - - trigger = { - has_bp2_dlc_trigger = yes - any_owned_story = { - type = story_cycle_imaginary_friend - } - NOT = { has_character_flag = had_event_bp2_yearly_2011 } - } - - immediate = { - add_character_flag = had_event_bp2_yearly_2011 - - # Revive a character to show as your imaginary friend - necromance_imaginary_friend_character_effect = yes - - # Pick out a fitting activity guest to bully you - involved_activity = { - ordered_attending_character = { - limit = { - this != root - is_ai = yes - } - order_by = { - value = age - if = { # Childhood traits - limit = { - OR = { - has_trait = rowdy - has_trait = bossy - } - } - add = 10 - } - if = { # They or their parent have a higher title than you - limit = { - root = { is_landed = yes } - OR = { - AND = { - exists = highest_held_title_tier - highest_held_title_tier > root.highest_held_title_tier - } - AND = { - exists = mother.highest_held_title_tier - mother.highest_held_title_tier > root.highest_held_title_tier - } - AND = { - exists = father.highest_held_title_tier - father.highest_held_title_tier > root.highest_held_title_tier - } - } - } - add = 50 - } - else_if = { # They or their parent have a higher title than your dad - limit = { - root = { is_landed = no } - root.father = { is_landed = yes } - OR = { - AND = { - exists = highest_held_title_tier - highest_held_title_tier > root.father.highest_held_title_tier - } - AND = { - exists = mother.highest_held_title_tier - mother.highest_held_title_tier > root.father.highest_held_title_tier - } - AND = { - exists = father.highest_held_title_tier - father.highest_held_title_tier > root.father.highest_held_title_tier - } - } - } - add = 50 - } - else_if = { # They or their parent have a higher title than your mom - limit = { - root = { is_landed = no } - root.mother = { is_landed = yes } - OR = { - AND = { - exists = highest_held_title_tier - highest_held_title_tier > root.mother.highest_held_title_tier - } - AND = { - exists = mother.highest_held_title_tier - mother.highest_held_title_tier > root.mother.highest_held_title_tier - } - AND = { - exists = father.highest_held_title_tier - father.highest_held_title_tier > root.mother.highest_held_title_tier - } - } - } - add = 50 - } - } - save_scope_as = participant - } - } - } - - option = { - name = bp2_yearly.2011.a - increase_progress_to_eccentricity_effect = { VALUE = 3 } - stress_impact = { - pensive = miniscule_stress_impact_gain - rowdy = minor_stress_impact_loss - bossy = miniscule_stress_impact_loss - } - send_interface_toast = { - title = bp2_yearly.2011.bully.toast - left_icon = root - right_icon = scope:participant - set_relation_bully = { - target = scope:participant - reason = bully_childhood_imaginary_friend - } - } - create_character_memory = { - type = tormented_me_during_childhood - participants = { - tormentor = scope:participant - } - } - scope:participant = { - create_character_memory = { - type = childhood_started_bullying_positive - participants = { - victim = root - } - } - } - } - - option = { - name = bp2_yearly.2011.b - increase_progress_to_eccentricity_effect = { VALUE = 1 } - add_prestige = miniscule_prestige_loss - stress_impact = { - rowdy = minor_stress_impact_loss - bossy = miniscule_stress_impact_loss - } - } - - option = { - name = bp2_yearly.2011.c - # Rejected existence of Imaginary Friend - decrease_progress_to_eccentricity_effect = { VALUE = 5 } - stress_impact = { - pensive = miniscule_stress_impact_loss - bossy = miniscule_stress_impact_gain - rowdy = miniscule_stress_impact_gain - } - } - - after = { - scope:imaginary_friend = { silent_disappearance_effect = yes } - } -} - -# Regent Shenanigans -bp2_yearly.2012 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.2012.t - desc = bp2_yearly.2012.desc - theme = friend_relation - override_background = { reference = courtyard } - - left_portrait = { - character = root - animation = anger - } - right_portrait = { - character = scope:imaginary_friend - animation = thinking - hide_info = yes - } - lower_center_portrait = scope:regent_scope - - cooldown = { years = 10 } - - trigger = { - has_bp2_dlc_trigger = yes - number_of_personality_traits < personality_trait_limit - has_active_diarchy = yes - } - - weight_multiplier = { - base = 1 - modifier = { - has_trait = rowdy - add = 1 - } - modifier = { - is_ai = yes - factor = 0.1 - } - } - - immediate = { - # Revive a character to show as your imaginary friend - necromance_imaginary_friend_character_effect = yes - diarch = { save_scope_as = regent_scope } - } - - option = { # Gregarious - name = bp2_yearly.2012.a - if = { - limit = { - NOR = { - has_trait = gregarious - has_trait = shy - } - } - add_trait = gregarious - } - duel = { - skill = diplomacy - target = scope:regent_scope - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = bp2_yearly.2012.a.success - send_interface_toast = { - title = bp2_yearly.2012.a.success - left_icon = root - right_icon = scope:regent_scope - change_diarchy_swing = medium_sop_swing_liege_gain - scope:regent_scope = { - add_prestige = minor_prestige_loss - } - } - } - # Defeat! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = bp2_yearly.2012.a.failure - send_interface_toast = { - title = bp2_yearly.2012.a.failure - left_icon = root - right_icon = scope:regent_scope - - scope:regent_scope = { - add_prestige = major_prestige_gain - } - } - } - } - increase_progress_to_eccentricity_effect = { VALUE = 1 } - } - - option = { # Deceitful - name = bp2_yearly.2012.b - trigger = { - NOR = { - has_trait = deceitful - has_trait = trusting - } - } - add_trait = deceitful - - duel = { - skill = intrigue - value = low_skill_rating - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = bp2_yearly.2012.b.success - send_interface_toast = { - title = bp2_yearly.2012.b.success - left_icon = root - right_icon = scope:regent_scope - change_diarchy_swing = medium_sop_swing_liege_gain - scope:regent_scope = { - add_prestige = minor_prestige_loss - } - } - } - # Defeat! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = bp2_yearly.2012.b.failure - send_interface_toast = { - title = bp2_yearly.2012.b.failure - left_icon = root - right_icon = scope:regent_scope - - scope:regent_scope = { - add_opinion = { - target = root - modifier = hate_opinion - opinion = -20 - } - } - } - } - } - increase_progress_to_eccentricity_effect = { VALUE = 2 } - } - - option = { - name = bp2_yearly.2012.c - decrease_progress_to_eccentricity_effect = { VALUE = 1 } - - ai_chance = { # We want the AI to choose this so traits aren't imbalanced - base = 100 - } - } - - after = { - scope:imaginary_friend = { silent_disappearance_effect = yes } - } -} - -# Chance to lose/change a personality trait -bp2_yearly.2013 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.2013.t - desc = bp2_yearly.2013.desc - theme = friend_relation - override_background = { reference = garden } - - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:imaginary_friend - animation = disapproval - hide_info = yes - } - - cooldown = { years = 16 } - - trigger = { - has_bp2_dlc_trigger = yes - is_ai = no # the ai doesn't need this event - is_available_child = yes - number_of_personality_traits >= 1 - } - - immediate = { - # Revive a character to show as your imaginary friend - necromance_imaginary_friend_character_effect = yes - # Pick a trait to target - random_character_trait = { - limit = { has_trait_category = personality } - save_scope_as = target_trait - } - scope:target_trait = { - random_opposite_trait = { - save_scope_as = opposite_trait - } - } - } - - option = { # Keep the trait - name = bp2_yearly.2013.a - decrease_progress_to_eccentricity_effect = { VALUE = 1 } - } - - option = { # Lose the trait - name = bp2_yearly.2013.b - increase_progress_to_eccentricity_effect = { VALUE = 1 } - remove_trait = scope:target_trait - } - - option = { # Trade the trait - name = bp2_yearly.2013.c - increase_progress_to_eccentricity_effect = { VALUE = 2 } - remove_trait = scope:target_trait - add_trait_force_tooltip = scope:opposite_trait - } - - after = { - scope:imaginary_friend = { silent_disappearance_effect = yes } - } -} - -# Imaginary Friend inspires you to pursue a crush -bp2_yearly.2014 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.2014.t - desc = bp2_yearly.2014.desc - theme = friend_relation - override_background = { reference = garden } - - left_portrait = { - character = root - animation = admiration - } - right_portrait = { - character = scope:imaginary_friend - animation = flirtation - hide_info = yes - } - lower_center_portrait = scope:crush - - cooldown = { years = 16 } - - trigger = { - has_bp2_dlc_trigger = yes - is_available_child = yes - age >= 10 - num_of_relation_crush <= 0 - NOT = { - has_trait = chaste - } - OR = { - has_sexuality = heterosexual - has_sexuality = bisexual - has_sexuality = homosexual - } - # Ensure we have a character to crush on - OR = { - any_vassal = { - save_good_crush_character_trigger_check = yes - } - any_vassal = { - any_child = { - save_good_crush_character_trigger_check = yes - } - } - any_courtier_or_guest = { - save_good_crush_character_trigger_check = yes - } - AND = { - top_liege != this - liege ?= { - save_good_crush_character_trigger_check = yes - } - } - AND = { - top_liege != this - liege ?= { - any_vassal = { - save_good_crush_character_trigger_check = yes - } - } - } - AND = { - top_liege != this - liege ?= { - any_vassal = { - any_child = { - save_good_crush_character_trigger_check = yes - } - } - } - } - AND = { - top_liege != this - liege ?= { - any_courtier_or_guest = { - save_good_crush_character_trigger_check = yes - } - } - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - has_trait = charming - add = 1 - } - } - - immediate = { - play_music_cue = "mx_cue_touching_moment" - # Revive a character to show as your imaginary friend - necromance_imaginary_friend_character_effect = yes - # Pick someone to crush on - every_vassal = { - limit = { - save_good_crush_character_trigger_check = yes - } - add_to_list = crushes - } - every_vassal = { - every_child = { - limit = { - save_good_crush_character_trigger_check = yes - } - add_to_list = crushes - } - } - every_courtier_or_guest = { - limit = { - save_good_crush_character_trigger_check = yes - } - add_to_list = crushes - } - if = { - limit = { - top_liege != this - liege ?= { - save_good_crush_character_trigger_check = yes - } - } - liege = { - add_to_list = crushes - } - } - if = { - limit = { - top_liege != this - liege ?= { - any_vassal = { - save_good_crush_character_trigger_check = yes - } - } - } - liege = { - every_vassal = { - limit = { - save_good_crush_character_trigger_check = yes - } - add_to_list = crushes - } - } - } - if = { - limit = { - top_liege != this - liege ?= { - any_vassal = { - any_child = { - save_good_crush_character_trigger_check = yes - } - } - } - } - liege = { - every_vassal = { - every_child = { - limit = { - save_good_crush_character_trigger_check = yes - } - add_to_list = crushes - } - } - } - } - if = { - limit = { - top_liege != this - liege ?= { - any_courtier_or_guest = { - save_good_crush_character_trigger_check = yes - } - } - } - liege = { - every_courtier_or_guest = { - limit = { - save_good_crush_character_trigger_check = yes - } - add_to_list = crushes - } - } - } - - random_in_list = { - list = crushes - weight = { - base = 1 - modifier = { - add = 10 - top_liege != this - exists = liege - is_primary_heir_of = liege - } - modifier = { - add = 5 - top_liege != this - exists = liege - is_heir_of = liege - } - modifier = { - add = 10 - any_parent = { - is_powerful_vassal_of = root - } - } - modifier = { - add = 5 - any_parent = { - is_vassal_of = root - } - } - modifier = { - add = 10 - is_of_major_interest_to_root_trigger = yes - } - modifier = { - add = 5 - is_of_minor_interest_to_root_trigger = yes - } - } - save_scope_as = crush - } - } - - option = { # Raunchy Advance - name = bp2_yearly.2014.a - increase_progress_to_eccentricity_effect = { VALUE = 2 } - if = { # Add lustful if we can - limit = { - number_of_personality_traits < 4 - NOT = { has_trait = lustful } - } - add_trait = lustful - } - set_relation_crush = scope:crush - # Determine if they return the crush - random_list = { - 50 = { - send_interface_toast = { - title = bp2_yearly.2014.a.success - left_icon = root - right_icon = scope:crush - scope:crush = { set_relation_crush = root } - } - modifier = { - has_trait = charming - add = 10 - } - modifier = { - has_trait = lustful - add = 10 - } - modifier = { - has_trait = gregarious - add = 10 - } - modifier = { - has_trait = shy - add = -20 - } - modifier = { - has_trait = chaste - add = -30 - } - modifier = { - has_trait = temperate - add = -10 - } - } - 50 = {} - } - - ai_chance = { - base = 20 - modifier = { - has_trait = lustful - factor = 3 - } - } - - stress_impact = { - shy = medium_stress_impact_gain - } - } - - option = { # Charming Advance - name = bp2_yearly.2014.b - increase_progress_to_eccentricity_effect = { VALUE = 1 } - set_relation_crush = scope:crush - # Determine if they return the crush - random_list = { - 50 = { - send_interface_toast = { - title = bp2_yearly.2014.a.success - left_icon = root - right_icon = scope:crush - scope:crush = { set_relation_crush = root } - } - modifier = { - has_trait = charming - add = 10 - } - modifier = { - has_trait = lustful - add = 10 - } - modifier = { - has_trait = gregarious - add = 10 - } - modifier = { - has_trait = shy - add = -10 - } - } - 50 = {} - } - - ai_chance = { - base = 30 - modifier = { - has_trait = charming - factor = 2 - } - modifier = { - has_trait = lustful - factor = 0 - } - } - stress_impact = { - lustful = minor_stress_impact_gain - charming = minor_stress_impact_loss - } - } - - option = { # I'm more interested in #EMP you#! - name = bp2_yearly.2014.c - increase_progress_to_eccentricity_effect = { VALUE = 3 } - - ai_chance = { - base = 30 - } - } - - option = { # Aw you're too afraid of love? - name = bp2_yearly.2014.d - decrease_progress_to_eccentricity_effect = { VALUE = 1 } - if = { - limit = { - scope:crush = { - is_ai = yes - } - } - progress_towards_friend_effect = { - CHARACTER = scope:crush - OPINION = 10 - REASON = friend_childhood_friendzoned - } - } - - ai_chance = { - base = 20 - modifier = { - OR = { - has_trait = lustful - has_trait = charming - } - factor = 0 - } - } - stress_impact = { - lustful = minor_stress_impact_gain - } - } - - after = { - scope:imaginary_friend = { silent_disappearance_effect = yes } - } -} - -# Imaginary friend inspires you to fight back against your bully -bp2_yearly.2015 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.2015.t - desc = bp2_yearly.2015.desc - theme = friend_relation - override_background = { reference = bp2_nursery } - - left_portrait = { - character = root - animation = sadness - } - right_portrait = { - character = scope:imaginary_friend - animation = worry - hide_info = yes - } - lower_center_portrait = scope:bully - - trigger = { - has_bp2_dlc_trigger = yes - is_ai = no - is_available_child = yes - # make sure they have a bully - any_relation = { type = bully } - } - - weight_multiplier = { - base = 1 - modifier = { - any_relation = { type = bully } - add = 2 - } - } - - immediate = { - # Revive a character to show as your imaginary friend - necromance_imaginary_friend_character_effect = yes - # Save the bully - random_relation = { - type = bully - save_scope_as = bully - set_favorite_toy_effect = yes - } - } - - option = { # Fight them - name = bp2_yearly.2015.a - if = { - limit = { has_trait = craven } - remove_trait = craven - add_trait_force_tooltip = brave - } - else_if = { - limit = { - number_of_personality_traits < 4 - NOR = { - has_trait = brave - any_character_trait = { - any_opposite_trait = { - this = trait:brave - } - } - } - } - add_trait = brave - } - - duel = { - skill = prowess - target = scope:bully - - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = 50 - } - desc = bp2_yearly.2015.a.success - send_interface_toast = { - title = bp2_yearly.2015.a.success - left_icon = root - right_icon = scope:bully - add_prowess_skill = 1 - remove_relation_bully = scope:bully - increase_progress_to_eccentricity_effect = { VALUE = 3 } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = bp2_yearly.2015.a.failure - send_interface_toast = { - title = bp2_yearly.2015.a.failure - left_icon = root - right_icon = scope:bully - add_prestige = minor_prestige_loss - increase_progress_to_eccentricity_effect = { VALUE = 1 } - } - } - } - } - - option = { # Spread an embarrasing rumor - name = bp2_yearly.2015.b - - if = { - limit = { - number_of_personality_traits < 4 - NOR = { - has_trait = vengeful - any_character_trait = { - any_opposite_trait = { - this = trait:vengeful - } - } - } - } - add_trait = vengeful - } - - duel = { - skill = intrigue - target = scope:bully - - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = 50 - } - desc = bp2_yearly.2015.b.success - send_interface_toast = { - title = bp2_yearly.2015.b.success - left_icon = root - right_icon = scope:bully - add_intrigue_skill = 1 - remove_relation_bully = scope:bully - increase_progress_to_eccentricity_effect = { VALUE = 3 } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = bp2_yearly.2015.b.failure - send_interface_toast = { - title = bp2_yearly.2015.b.failure - left_icon = root - right_icon = scope:bully - add_prestige = minor_prestige_loss - increase_progress_to_eccentricity_effect = { VALUE = 1 } - } - } - } - } - - option = { # Run away and cry in your room - name = bp2_yearly.2015.c - if = { - limit = { has_trait = brave } - remove_trait = brave - add_trait_force_tooltip = craven - } - else_if = { - limit = { - number_of_personality_traits < 4 - NOR = { - has_trait = craven - any_character_trait = { - any_opposite_trait = { - this = trait:craven - } - } - } - } - add_trait = craven - } - decrease_progress_to_eccentricity_effect = { VALUE = 2 } - } - - after = { - scope:imaginary_friend = { silent_disappearance_effect = yes } - } -} - -# Imaginary Friend invites you to pick flowers and make flower crowns -bp2_yearly.2016 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.2016.t - desc = bp2_yearly.2016.desc - theme = friend_relation - override_background = { reference = garden } - - left_portrait = { - character = root - animation = happiness - } - right_portrait = { - character = scope:imaginary_friend - animation = admiration - hide_info = yes - } - - trigger = { - has_bp2_dlc_trigger = yes - is_available_child = yes - number_of_personality_traits < 3 - } - - cooldown = { years = 15 } - - immediate = { - # Revive a character to show as your imaginary friend - necromance_imaginary_friend_character_effect = yes - } - - option = { - name = bp2_yearly.2016.a - if = { - limit = { - NOR = { - has_trait = compassionate - any_character_trait = { - any_opposite_trait = { - this = trait:compassionate - } - } - } - } - add_trait = compassionate - } - else_if = { - limit = { - NOR = { - has_trait = calm - any_character_trait = { - any_opposite_trait = { - this = trait:calm - } - } - } - } - add_trait = calm - } - else_if = { - limit = { - NOR = { - has_trait = content - any_character_trait = { - any_opposite_trait = { - this = trait:content - } - } - } - } - add_trait = content - } - else_if = { - limit = { - NOR = { - has_trait = humble - any_character_trait = { - any_opposite_trait = { - this = trait:humble - } - } - } - } - add_trait = humble - } - - increase_progress_to_eccentricity_effect = { VALUE = 1 } - - stress_impact = { - base = medium_stress_loss - } - - ai_chance = { - base = 50 - } - } - - option = { - name = bp2_yearly.2016.b - add_dread = minor_dread_gain - decrease_progress_to_eccentricity_effect = { VALUE = 1 } - - ai_chance = { - base = 50 - modifier = { - OR = { - has_trait = rowdy - has_trait = pensive - has_trait = callous - has_trait = sadistic - } - add = 30 - } - } - - stress_impact = { - pensive = minor_stress_impact_loss - rowdy = minor_stress_impact_loss - charming = minor_stress_impact_gain - } - } - - after = { - scope:imaginary_friend = { silent_disappearance_effect = yes } - } -} - -# If you are bookish in any way, your imaginary friend encourages you to stay up and study all the books -bp2_yearly.2017 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.2017.t - desc = bp2_yearly.2017.desc - theme = friend_relation - override_background = { reference = study } - - left_portrait = { - character = root - animation = reading - } - right_portrait = { - character = scope:imaginary_friend - animation = reading - hide_info = yes - } - - cooldown = { years = 16 } - - weight_multiplier = { - base = 1 - # We don't need a ton of smart or healthy ais running 'round - modifier = { - is_ai = yes - factor = 0 - } - } - - trigger = { - has_bp2_dlc_trigger = yes - OR = { # Are they a nerd? - has_focus = education_learning - has_trait = shrewd - has_trait = pensive - } - } - - immediate = { - necromance_imaginary_friend_character_effect = yes - } - - option = { - name = bp2_yearly.2017.a - if = { # increase learning education if you have it - limit = { has_focus = education_learning } - custom_tooltip = bp2_yearly.2017.a.tt - education_point_acquisition_additional_points_effect = { LEVEL = mid } - } - if = { # chance to gain the shrewd trait - limit = { NOT = { has_trait = shrewd } } - random = { - chance = 30 - add_trait = shrewd - } - } - increase_progress_to_eccentricity_effect = { VALUE = 1 } - - - stress_impact = { - pensive = minor_stress_impact_loss - shrewd = minor_stress_impact_loss - rowdy = minor_stress_impact_gain - curious = minor_stress_impact_gain - } - } - - option = { - name = bp2_yearly.2017.b - if = { # increase martial education if you have it - limit = { has_focus = education_martial } - custom_tooltip = bp2_yearly.2017.b.tt - education_point_acquisition_additional_points_effect = { LEVEL = mid } - } - if = { # chance to gain the athletic trait - limit = { NOT = { has_trait = athletic } } - random = { - chance = 50 - add_trait = athletic - } - } - decrease_progress_to_eccentricity_effect = { VALUE = 1 } - - stress_impact = { - pensive = minor_stress_impact_gain - shrewd = minor_stress_impact_gain - rowdy = minor_stress_impact_loss - curious = minor_stress_impact_loss - } - } - - after = { - scope:imaginary_friend = { silent_disappearance_effect = yes } - } -} - -# Chance to get the confider or poet trait -bp2_yearly.2018 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.2018.t - desc = bp2_yearly.2018.desc - theme = friend_relation - override_background = { reference = relaxing_room } - - left_portrait = { - character = root - animation = worry - } - right_portrait = { - character = scope:imaginary_friend - animation = admiration - hide_info = yes - } - - cooldown = { years = 16 } - - trigger = { - has_bp2_dlc_trigger = yes - NAND = { - has_trait = confider - has_trait = lifestyle_poet - } - stress >= normal_baseline_stress - } - - weight_multiplier = { - base = 1 - # We don't need a ton of ai poets and confiders running 'round - modifier = { - is_ai = yes - factor = 0 - } - } - - immediate = { - necromance_imaginary_friend_character_effect = yes - } - - option = { # Channel your stress into the confider trait - name = bp2_yearly.2018.a - trigger = { NOT = { has_trait = confider } } - add_trait = confider - increase_progress_to_eccentricity_effect = { VALUE = 3 } - - stress_impact = { - base = minor_stress_impact_loss - } - } - - option = { # Channel your stress into the poet trait - name = bp2_yearly.2018.b - trigger = { NOT = { has_trait = lifestyle_poet } } - add_trait = lifestyle_poet - increase_progress_to_eccentricity_effect = { VALUE = 1 } - - stress_impact = { - base = minor_stress_impact_loss - } - } - - option = { # opt out - name = bp2_yearly.2018.c - if = { # increase martial education if you have it - limit = { has_focus = education_martial } - education_point_acquisition_additional_points_effect = { LEVEL = mid } - } - add_prowess_skill = 1 - stress_impact = { - base = minor_stress_impact_loss - } - decrease_progress_to_eccentricity_effect = { VALUE = 1 } - - stress_impact = { - pensive = minor_stress_impact_gain - shrewd = minor_stress_impact_gain - rowdy = minor_stress_impact_loss - curious = minor_stress_impact_loss - } - } - - after = { - scope:imaginary_friend = { silent_disappearance_effect = yes } - } -} - -# Chance to gain the Eccentric Trait -bp2_yearly.2019 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.2019.t - desc = { - desc = bp2_yearly.2019.desc.intro - first_valid = { - triggered_desc = { - trigger = { - is_landed = yes - scope:target_councilor = cp:councillor_court_chaplain - } - desc = bp2_yearly.2019.desc.chaplain - } - triggered_desc = { - trigger = { scope:target_councilor = cp:councillor_court_chaplain } - desc = bp2_yearly.2019.desc.chaplain_unlanded - } - triggered_desc = { - trigger = { - is_landed = yes - scope:target_councilor = cp:councillor_steward - } - desc = bp2_yearly.2019.desc.steward - } - triggered_desc = { - trigger = { scope:target_councilor = cp:councillor_steward } - desc = bp2_yearly.2019.desc.steward_unlanded - } - triggered_desc = { - trigger = { - is_landed = yes - scope:target_councilor = cp:councillor_marshal - } - desc = bp2_yearly.2019.desc.marshal - } - triggered_desc = { - trigger = { scope:target_councilor = cp:councillor_marshal } - desc = bp2_yearly.2019.desc.marshal_unlanded - } - triggered_desc = { - trigger = { - is_landed = yes - scope:target_councilor = cp:councillor_spymaster - } - desc = bp2_yearly.2019.desc.spymaster - } - triggered_desc = { - trigger = { scope:target_councilor = cp:councillor_spymaster } - desc = bp2_yearly.2019.desc.spymaster_unlanded - } - triggered_desc = { - trigger = { - is_landed = yes - scope:target_councilor = cp:councillor_chancellor - } - desc = bp2_yearly.2019.desc.chancellor - } - triggered_desc = { - trigger = { scope:target_councilor = cp:councillor_chancellor } - desc = bp2_yearly.2019.desc.chancellor_unlanded - } - triggered_desc = { - trigger = { scope:target_councilor = { is_kurultai_trigger = yes } } - desc = bp2_yearly.2019.desc.kurultai - } - } - desc = bp2_yearly.2019.desc.outro - } - theme = friend_relation - - override_background = { reference = relaxing_room } - - left_portrait = { - character = root - animation = manic - } - right_portrait = { - character = scope:target_councilor - triggered_animation = { - trigger = { - scope:target_councilor = { - has_council_position = councillor_court_chaplain - } - } - animation = chaplain - } - triggered_animation = { - trigger = { - scope:target_councilor = { - has_council_position = councillor_steward - } - } - animation = steward - } - triggered_animation = { - trigger = { - scope:target_councilor = { - has_council_position = councillor_marshal - } - } - animation = marshal - } - triggered_animation = { - trigger = { - scope:target_councilor = { - has_council_position = councillor_spymaster - } - } - animation = spymaster - } - triggered_animation = { - trigger = { - scope:target_councilor = { - has_council_position = councillor_chancellor - } - } - animation = chancellor - } - } - lower_center_portrait = { - character = scope:imaginary_friend - hide_info = yes - } - - trigger = { - has_bp2_dlc_trigger = yes - is_landless_adventurer = no - NOT = { has_character_flag = had_bp2_yearly_2019 } - # Doesn't have the opposites of Eccentric - NOR = { - has_trait = stubborn - has_trait = fickle - } - any_owned_story = { - type = story_cycle_imaginary_friend - has_variable = progress_to_eccentric_trait - var:progress_to_eccentric_trait >= 5 - } - OR = { # ensure we have a councilor to grab - exists = cp:councillor_court_chaplain - exists = cp:councillor_steward - exists = cp:councillor_marshal - exists = cp:councillor_spymaster - exists = cp:councillor_chancellor - exists = cp:councillor_kurultai_1 - exists = cp:councillor_kurultai_2 - exists = cp:councillor_kurultai_3 - exists = cp:councillor_kurultai_4 - } - } - - immediate = { - necromance_imaginary_friend_character_effect = yes - random_list = { - 1 = { - trigger = { exists = cp:councillor_court_chaplain } - cp:councillor_court_chaplain = { save_scope_as = target_councilor } - } - 1 = { - trigger = { exists = cp:councillor_steward } - cp:councillor_steward = { save_scope_as = target_councilor } - } - 1 = { - trigger = { exists = cp:councillor_marshal } - cp:councillor_marshal = { save_scope_as = target_councilor } - } - 1 = { - trigger = { exists = cp:councillor_spymaster } - cp:councillor_spymaster = { save_scope_as = target_councilor } - } - 1 = { - trigger = { exists = cp:councillor_chancellor } - cp:councillor_chancellor = { save_scope_as = target_councilor } - } - 1 = { - trigger = { - any_councillor = { - is_kurultai_trigger = yes - } - } - random_councillor = { - limit = { - is_kurultai_trigger = yes - } - save_scope_as = target_councilor - } - } - } - add_character_flag = { - flag = had_bp2_yearly_2019 - years = 16 - } - # for option tooltips - save_scope_as = root_scope - } - - option = { - name = bp2_yearly.2019.a - flavor = bp2_yearly.2019.a.tt - add_trait = eccentric - every_vassal = { - vassal_stance = courtly - custom = every_courtly_vassal - add_opinion = { - target = root - modifier = courtly_imaginary_friend_opinion - opinion = -10 - } - } - - ai_chance = { - base = 50 - } - } - - option = { - name = bp2_yearly.2019.b - flavor = bp2_yearly.2019.b.tt - add_trait = paranoid - # Follow-up where your imaginary friend leaves - - ai_chance = { - base = 50 - } - } - - after = { scope:imaginary_friend = { silent_disappearance_effect = yes } } -} - -### IMAGINARY FRIEND ADULT EVENTS -scripted_trigger is_valid_for_imaginary_friend_adult_event_trigger = { - any_owned_story = { - type = story_cycle_imaginary_friend - save_temporary_scope_as = target_story_cycle - } - is_available_adult = yes - is_travelling = no - has_trait = eccentric -} - -## EVIL IMAGINARY FRIEND - -# Scripted effect for choosing murder target(s) -scripted_effect bp2_yearly_2020_choose_new_murder_target_effect = { - random_list = { # Choose a random murder target - 1 = { - trigger = { - any_close_family_member = { - is_alive = yes - is_adult = yes - save_temporary_scope_as = family_target - root = { - can_start_scheme = { - type = murder - target_character = scope:family_target - } - } - } - } - random_close_family_member = { - limit = { - is_alive = yes - is_adult = yes - save_temporary_scope_as = family_target - root = { - can_start_scheme = { - type = murder - target_character = scope:family_target - } - } - } - save_scope_as = new_murder_target - } - } - 1 = { - trigger = { - primary_spouse ?= { - is_alive = yes - save_temporary_scope_as = spouse_target - root = { - can_start_scheme = { - type = murder - target_character = scope:spouse_target - } - } - } - } - primary_spouse = { - save_scope_as = new_murder_target - } - } - 1 = { - trigger = { - any_relation = { - type = friend - is_alive = yes - is_adult = yes - save_temporary_scope_as = friend_target - root = { - can_start_scheme = { - type = murder - target_character = scope:friend_target - } - } - } - } - random_relation = { - type = friend - limit = { - is_alive = yes - is_adult = yes - save_temporary_scope_as = friend_target - root = { - can_start_scheme = { - type = murder - target_character = scope:friend_target - } - } - } - save_scope_as = new_murder_target - } - } - 1 = { - trigger = { - any_relation = { - type = best_friend - is_alive = yes - is_adult = yes - save_temporary_scope_as = best_friend_target - root = { - can_start_scheme = { - type = murder - target_character = scope:best_friend_target - } - } - } - } - random_relation = { - type = best_friend - limit = { - is_alive = yes - is_adult = yes - save_temporary_scope_as = best_friend_target - root = { - can_start_scheme = { - type = murder - target_character = scope:best_friend_target - } - } - } - save_scope_as = new_murder_target - } - } - 1 = { - trigger = { - any_courtier_or_guest = { - is_alive = yes - is_adult = yes - save_temporary_scope_as = guest_target - root = { - can_start_scheme = { - type = murder - target_character = scope:guest_target - } - } - } - } - random_courtier_or_guest = { - limit = { - is_alive = yes - is_adult = yes - save_temporary_scope_as = guest_target - root = { - can_start_scheme = { - type = murder - target_character = scope:guest_target - } - } - } - save_scope_as = new_murder_target - } - } - } -} - -scripted_trigger bp2_yearly_2020_is_there_a_new_murder_target_trigger = { - OR = { - any_close_family_member = { - is_alive = yes - is_adult = yes - save_temporary_scope_as = family_target - root = { - can_start_scheme = { - type = murder - target_character = scope:family_target - } - } - } - primary_spouse ?= { - is_alive = yes - save_temporary_scope_as = spouse_target - root = { - can_start_scheme = { - type = murder - target_character = scope:spouse_target - } - } - } - any_relation = { - type = friend - is_alive = yes - is_adult = yes - save_temporary_scope_as = friend_target - root = { - can_start_scheme = { - type = murder - target_character = scope:friend_target - } - } - } - any_relation = { - type = best_friend - is_alive = yes - is_adult = yes - save_temporary_scope_as = best_friend_target - root = { - can_start_scheme = { - type = murder - target_character = scope:best_friend_target - } - } - } - any_courtier_or_guest = { - is_alive = yes - is_adult = yes - save_temporary_scope_as = guest_target - root = { - can_start_scheme = { - type = murder - target_character = scope:guest_target - } - } - } - } -} - -# Your imaginary friend wants you to kill someone -bp2_yearly.2020 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.2020.t - desc = bp2_yearly.2020.desc - theme = friend_relation - override_background = { reference = corridor_night } - - left_portrait = { - character = root - animation = fear - } - right_portrait = { - character = scope:imaginary_friend - animation = spymaster - hide_info = yes - } - lower_center_portrait = scope:murder_target - - trigger = { - has_bp2_dlc_trigger = yes - is_valid_for_imaginary_friend_adult_event_trigger = yes - scope:target_story_cycle.var:imaginary_friend_disposition = flag:devil - NOT = { has_character_flag = had_bp2_yearly_2020 } - bp2_yearly_2020_is_there_a_new_murder_target_trigger = yes - } - - immediate = { - # Revive a character to show as your imaginary friend - necromance_imaginary_friend_character_effect = yes - add_character_flag = had_bp2_yearly_2020 - - # Choose a random murder target - bp2_yearly_2020_choose_new_murder_target_effect = yes - scope:new_murder_target = { - save_scope_as = murder_target - } - } - - option = { - name = bp2_yearly.2020.a - if = { - limit = { - can_start_scheme = { - type = murder - target_character = scope:murder_target - } - } - start_scheme = { - type = murder - target_character = scope:murder_target - } - } - - # Set up an event where your imaginary friend scolds you if you haven't started the scheme within 2 months - trigger_event = { - id = bp2_yearly.2021 - days = 60 - } - set_variable = { - name = imaginary_friend_murder_target - value = scope:murder_target - } - custom_tooltip = imaginary_friend_first_murder_scheme_tt - } - - option = { - name = bp2_yearly.2020.b - - stress_impact = { - base = massive_stress_impact_gain - } - } - - after = { - scope:imaginary_friend = { silent_disappearance_effect = yes } - if = { - limit = { - has_variable = imaginary_friend_murder_target - any_scheme = { - type = murder - scheme_target_character = root.var:imaginary_friend_murder_target - } - } - random_scheme = { - type = murder - limit = { - scheme_target_character = root.var:imaginary_friend_murder_target - } - add_scheme_modifier = { type = imaginary_friend_murder_scheme_modifier } - } - } - } -} - -# Why haven't you started your scheme? -bp2_yearly.2021 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.2021.t - desc = bp2_yearly.2021.desc - theme = friend_relation - - left_portrait = { - character = root - animation = happiness - } - right_portrait = { - character = scope:imaginary_friend - animation = rage - } - - trigger = { - has_bp2_dlc_trigger = yes - any_owned_story = { - type = story_cycle_imaginary_friend - } - has_variable = imaginary_friend_murder_target - NOT = { - any_scheme = { - type = murder - scheme_target_character = root.var:imaginary_friend_murder_target - } - } - } - - immediate = { - # Revive a character to show as your imaginary friend - necromance_imaginary_friend_character_effect = yes - root.var:imaginary_friend_murder_target = { - save_scope_as = new_murder_target - } - } - - option = { - name = bp2_yearly.2021.a - - show_as_unavailable = { - NOT = { - can_start_scheme = { - type = murder - target_character = scope:new_murder_target - } - } - } - - start_scheme = { - type = murder - target_character = scope:new_murder_target - } - # Recursively fire event in 90 days to check if the character has started a scheme - trigger_event = { - id = bp2_yearly.2021 - days = 90 - } - - ai_chance = { - base = 100 - } - } - - option = { - name = bp2_yearly.2021.b - - # Recursively fire event in 90 days to check if the character has started a scheme - trigger_event = { - id = bp2_yearly.2021 - days = 90 - } - - stress_impact = { - base = minor_stress_impact_gain - craven = minor_stress_impact_loss - } - - ai_chance = { - base = 50 - } - } - - option = { - name = bp2_yearly.2021.c - - random_owned_story = { - type = story_cycle_imaginary_friend - end_story = yes - } - - stress_impact = { - base = medium_stress_impact_gain - compassionate = minor_stress_impact_loss - calm = minor_stress_impact_loss - craven = minor_stress_impact_gain - } - - ai_chance = { - base = 0 - } - } -} - -# Murder Success - Another target? -bp2_yearly.2022 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.2022.t - desc = { - desc = bp2_yearly.2022.desc - triggered_desc = { - trigger = { - has_variable = imaginary_friend_murder_count - var:imaginary_friend_murder_count >= 1 - } - desc = bp2_yearly.2022.desc.next_target - } - } - theme = friend_relation - override_background = { reference = corridor_night } - - left_portrait = { - character = root - animation = paranoia - } - right_portrait = { - character = scope:imaginary_friend - animation = laugh - hide_info = yes - } - lower_center_portrait = { - character = scope:new_murder_target - } - - trigger = { - has_bp2_dlc_trigger = yes - bp2_yearly_2020_is_there_a_new_murder_target_trigger = yes - } - - immediate = { - # Revive a character to show as your imaginary friend - necromance_imaginary_friend_character_effect = yes - # Basic bonuses - add_dread = medium_dread_gain - add_stress = major_stress_loss - # Add lunacy if they don't have it already - if = { - limit = { - NOT = { has_trait = lunatic_1 } - } - add_trait = lunatic_1 - } - # Increment murder count - if = { - limit = { - NOT = { has_variable = imaginary_friend_murder_count } - } - set_variable = { - name = imaginary_friend_murder_count - value = 1 - } - } - else = { - change_variable = { - name = imaginary_friend_murder_count - add = 1 - } - } - - # Choose a random murder target - bp2_yearly_2020_choose_new_murder_target_effect = yes - } - - option = { - name = bp2_yearly.2022.a - flavor = bp2_yearly.2019.a.tt - - if = { - limit = { - can_start_scheme = { - type = murder - target_character = scope:new_murder_target - } - } - start_scheme = { - type = murder - target_character = scope:new_murder_target - } - } - custom_tooltip = imaginary_friend_future_murder_scheme_tt - - # Set up an event where your imaginary friend scolds you if you haven't started the scheme within 2 months - trigger_event = { - id = bp2_yearly.2021 - days = 60 - } - set_variable = { - name = imaginary_friend_murder_target - value = scope:new_murder_target - } - - ai_chance = 100 - } - - option = { - name = bp2_yearly.2022.b - flavor = bp2_yearly.2019.b.tt - - stress_impact = { - base = medium_stress_impact_gain - } - - ai_chance = 0 - } - - after = { - scope:imaginary_friend = { silent_disappearance_effect = yes } - if = { - limit = { - has_variable = imaginary_friend_murder_target - any_scheme = { - type = murder - scheme_target_character = root.var:imaginary_friend_murder_target - } - } - random_scheme = { - type = murder - limit = { - scheme_target_character = root.var:imaginary_friend_murder_target - } - add_scheme_modifier = { type = imaginary_friend_murder_scheme_modifier } - } - } - } -} - -# Murder Invalidated -bp2_yearly.2023 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.2023.t - desc = { - desc = bp2_yearly.2023.desc - desc = bp2_yearly.2022.desc.next_target - } - theme = friend_relation - override_background = { reference = corridor_night } - - left_portrait = { - character = root - animation = worry - } - right_portrait = { - character = scope:imaginary_friend - animation = anger - hide_info = yes - } - lower_center_portrait = scope:new_murder_target - - trigger = { - has_bp2_dlc_trigger = yes - bp2_yearly_2020_is_there_a_new_murder_target_trigger = yes - } - - immediate = { - necromance_imaginary_friend_character_effect = yes - # Choose a random murder target - bp2_yearly_2020_choose_new_murder_target_effect = yes - } - - option = { - name = bp2_yearly.2023.a - if = { - limit = { - can_start_scheme = { - type = murder - target_character = scope:new_murder_target - } - } - start_scheme = { - type = murder - target_character = scope:new_murder_target - } - } - else = { - custom_tooltip = imaginary_friend_future_murder_scheme_tt - set_variable = { - name = imaginary_friend_murder_target - value = scope:new_murder_target - } - } - # Set up an event where your imaginary friend scolds you if you haven't started the scheme within 2 months - trigger_event = { - id = bp2_yearly.2021 - days = 60 - } - set_variable = { - name = imaginary_friend_murder_target - value = scope:new_murder_target - } - } - - option = { - name = bp2_yearly.2023.b - stress_impact = { - base = massive_stress_impact_gain - } - } - - after = { - scope:imaginary_friend = { silent_disappearance_effect = yes } - if = { - limit = { - has_variable = imaginary_friend_murder_target - any_scheme = { - type = murder - scheme_target_character = root.var:imaginary_friend_murder_target - } - } - random_scheme = { - type = murder - limit = { - scheme_target_character = root.var:imaginary_friend_murder_target - } - add_scheme_modifier = { type = imaginary_friend_murder_scheme_modifier } - } - } - } -} - -# Murder Failed, try again -bp2_yearly.2024 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.2024.t - desc = { - desc = bp2_yearly.2024.desc - desc = bp2_yearly.2022.desc.next_target - } - theme = friend_relation - override_background = { reference = corridor_night } - - left_portrait = { - character = root - animation = worry - } - right_portrait = { - character = scope:imaginary_friend - animation = anger - hide_info = yes - } - lower_center_portrait = scope:new_murder_target - - trigger = { - has_bp2_dlc_trigger = yes - bp2_yearly_2020_is_there_a_new_murder_target_trigger = yes - } - - immediate = { - necromance_imaginary_friend_character_effect = yes - # Choose a random murder target - bp2_yearly_2020_choose_new_murder_target_effect = yes - } - - option = { - name = bp2_yearly.2024.a - if = { - limit = { - can_start_scheme = { - type = murder - target_character = scope:new_murder_target - } - } - start_scheme = { - type = murder - target_character = scope:new_murder_target - } - } - else = { - custom_tooltip = imaginary_friend_future_murder_scheme_tt - set_variable = { - name = imaginary_friend_murder_target - value = scope:new_murder_target - } - } - # Set up an event where your imaginary friend scolds you if you haven't started the scheme within 2 months - trigger_event = { - id = bp2_yearly.2021 - days = 60 - } - set_variable = { - name = imaginary_friend_murder_target - value = scope:new_murder_target - } - } - - option = { - name = bp2_yearly.2024.b - stress_impact = { - base = massive_stress_impact_gain - } - } - - after = { - scope:imaginary_friend = { silent_disappearance_effect = yes } - if = { - limit = { - has_variable = imaginary_friend_murder_target - any_scheme = { - type = murder - scheme_target_character = root.var:imaginary_friend_murder_target - } - } - random_scheme = { - type = murder - limit = { - scheme_target_character = root.var:imaginary_friend_murder_target - } - add_scheme_modifier = { type = imaginary_friend_murder_scheme_modifier } - } - } - } -} - -# Murder special ending 2025 -bp2_yearly.2025 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.2025.t - desc = bp2_yearly.2025.desc - theme = friend_relation - - override_background = { reference = corridor_night } - - left_portrait = { - character = root - animation = manic - } - right_portrait = { - character = scope:imaginary_friend - animation = love - hide_info = yes - } - lower_center_portrait = scope:target - - trigger = { - has_bp2_dlc_trigger = yes - } - - immediate = { - necromance_imaginary_friend_character_effect = yes - } - - option = { - name = bp2_yearly.2025.a - set_nickname_effect = { NICKNAME = nick_the_mad } - add_character_modifier = { - modifier = imaginary_friend_mad_modifier - } - custom_tooltip = imaginary_friend_mad_modifier_bribe_discount - } - - after = { - scope:imaginary_friend = { silent_disappearance_effect = yes } - random_owned_story = { - type = story_cycle_imaginary_friend - end_story = yes - } - if = { - limit = { has_character_modifier = imaginary_friend_modifier } - remove_character_modifier = imaginary_friend_modifier - } - } -} - -## GOOD IMAGINARY FRIEND -# Imaginary friend reveals they are an angel -bp2_yearly.2030 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.2030.t - desc = bp2_yearly.2030.desc - theme = friend_relation - override_background = { reference = relaxing_room } - - left_portrait = { - character = root - animation = admiration - } - right_portrait = { - character = scope:imaginary_friend - animation = personality_content - hide_info = yes - } - - trigger = { - has_bp2_dlc_trigger = yes - is_valid_for_imaginary_friend_adult_event_trigger = yes - NOT = { has_character_flag = bp2_yearly_2030 } - } - - immediate = { - necromance_imaginary_friend_character_effect = yes - add_character_flag = bp2_yearly_2030 - # Pick a random holy site that you can pilgrimage to - faith = { - random_holy_site = { save_scope_as = target_holy_site } - } - random_owned_story = { - type = story_cycle_imaginary_friend - set_variable = { - name = pilgrimage_destination - value = scope:target_holy_site.title_province - } - } - } - - option = { # Start a pilgrimage right now - name = bp2_yearly.2030.a - custom_tooltip = bp2_yearly.2030.a.tt - open_view_data = { - view = activity_list_detail_host_window - data = activity_type:activity_pilgrimage - player = root - } - add_character_flag = { - flag = imaginary_friend_pilgrimage_discount - years = 2 - } - - stress_impact = { - zealous = minor_stress_impact_loss - cynical = medium_stress_impact_gain - } - - ai_chance = { - base = 50 - modifier = { - factor = 0 - has_trait = cynical - } - } - } - - option = { # cynical is baffled - name = bp2_yearly.2030.b - trigger = { has_trait = cynical } - - remove_trait = cynical - add_trait_force_tooltip = zealous - - add_character_flag = { - flag = imaginary_friend_pilgrimage_discount - years = 2 - } - - stress_impact = { - cynical = minor_stress_impact_loss - zealous = minor_stress_impact_gain - } - - ai_chance = { - base = 0 - } - } - - option = { # Just pray here - name = bp2_yearly.2030.c - add_piety = medium_piety_gain - - stress_impact = { - eccentric = major_stress_impact_gain - zealous = miniscule_stress_impact_gain - } - - ai_chance = { - base = 50 - modifier = { - factor = 0 - has_trait = eccentric - } - } - } - - after = { - scope:imaginary_friend = { silent_disappearance_effect = yes } - } -} - -# Honor your Imaginary Friend at the Holy Site -bp2_yearly.2031 = { - type = activity_event - content_source = dlc_009 - title = bp2_yearly.2031.t - desc = bp2_yearly.2031.desc - theme = friend_relation - override_background = { - trigger = { - NOR = { - faith = { religion = religion:hinduism_religion } - faith = { religion = religion:buddhism_religion } - faith = { religion = religion:jainism_religion } - } - } - reference = temple - } - override_background = { - trigger = { - OR = { - faith = { religion = religion:hinduism_religion } - faith = { religion = religion:buddhism_religion } - faith = { religion = religion:jainism_religion } - } - } - reference = ep2_holy_site_indian - } - - left_portrait = { - character = root - animation = personality_honorable - } - right_portrait = { - character = scope:imaginary_friend - animation = personality_zealous - hide_info = yes - } - - trigger = { - has_bp2_dlc_trigger = yes - } - - immediate = { - necromance_imaginary_friend_character_effect = yes - } - - weight_multiplier = { - base = 1 - modifier = { - has_trait = zealous - add = 1 - } - modifier = { - has_learning_lifestyle_trait_trigger = yes - add = 1 - } - } - - option = { - name = bp2_yearly.2031.a - # Effects - if = { - limit = { - piety_level < max_piety_level - } - add_piety_level = 1 - } - else = { - add_piety = massive_piety_gain - } - - if = { - limit = { - NOT = { has_trait = lifestyle_mystic } - } - add_trait = lifestyle_mystic - } - else_if = { - limit = { - has_trait_xp = { - trait = lifestyle_mystic - value < 100 - } - } - add_trait_xp = { - trait = lifestyle_mystic - value = 50 - } - } - # Add activity log entry - scope:activity = { - add_activity_log_entry = { - key = imaginary_friend_pilgrimage_log - show_in_conclusion = yes - score = 50 - character = scope:activity.activity_host - } - } - # Add memory - create_character_memory = { type = honored_imaginary_friend_memory } - scope:new_memory = { - set_variable = { - name = location - value = root.location - } - set_variable = { - name = imaginary_friend_name - value = root.var:imaginary_friend_name - } - } - - stress_impact = { - base = major_stress_impact_loss - } - } - - after = { - scope:imaginary_friend = { silent_disappearance_effect = yes } - random_owned_story = { - type = story_cycle_imaginary_friend - end_story = yes - } - if = { - limit = { has_character_modifier = imaginary_friend_modifier } - remove_character_modifier = imaginary_friend_modifier - } - } -} - -## NEUTRAL ENDING -bp2_yearly.2040 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.2040.t - desc = { - desc = bp2_yearly.2040.desc - triggered_desc = { - trigger = { exists = scope:lover } - desc = bp2_yearly.2040.desc.lover - } - triggered_desc = { - trigger = { exists = scope:friend } - desc = bp2_yearly.2040.desc.friend - } - } - theme = friend_relation - override_background = { reference = relaxing_room } - - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:imaginary_friend - animation = personality_compassionate - hide_info = yes - } - - lower_center_portrait = scope:lover - lower_right_portrait = scope:friend - - trigger = { - has_bp2_dlc_trigger = yes - is_valid_for_imaginary_friend_adult_event_trigger = yes - NOT = { has_character_flag = bp2_yearly_2030 } - OR = { - any_relation = { - type = friend - NOT = { has_relation_best_friend = root } - } - AND = { - root = { num_of_relation_lover < 2 } - any_courtier_or_guest = { - trigger_if = { - limit = { - OR = { - is_married = yes - num_of_relation_lover = 1 - } - } - might_cheat_on_every_partner_trigger = yes - } - NOT = { has_relation_lover = root } - num_of_relation_lover < 2 - is_physically_able_ai_adult = yes - save_temporary_scope_as = temp_lover - matching_gender_and_sexuality_trigger = { - CHARACTER_1 = scope:temp_lover - CHARACTER_2 = root - } - } - } - } - } - - immediate = { - necromance_imaginary_friend_character_effect = yes - add_character_flag = bp2_yearly_2030 - # Find characters to manipulate - # Friend -> best friend - if = { - limit = { - any_relation = { - type = friend - NOT = { has_relation_best_friend = root } - } - } - random_relation = { - type = friend - limit = { - NOT = { has_relation_best_friend = root } - } - save_scope_as = friend - } - random_memory = { - memory_type = became_friends - limit = { - has_memory_participant = scope:friend - } - save_scope_as = target_memory - } - get_period_of_time_word_setup_effect = { - START_DATE = scope:target_memory.memory_creation_date - } - - } - # Lover - random_courtier_or_guest = { - limit = { - trigger_if = { - limit = { - OR = { - is_married = yes - num_of_relation_lover = 1 - } - } - might_cheat_on_every_partner_trigger = yes - } - NOT = { has_relation_lover = root } - num_of_relation_lover < 2 - is_physically_able_ai_adult = yes - save_temporary_scope_as = temp_lover - matching_gender_and_sexuality_trigger = { - CHARACTER_1 = scope:temp_lover - CHARACTER_2 = root - } - } - save_scope_as = lover - } - - } - - option = { - name = bp2_yearly.2040.a - trigger = { exists = scope:lover } - set_relation_lover = { - reason = lover_imaginary_friend - target = scope:lover - } - - ai_chance = { - base = 50 - } - } - - option = { - name = bp2_yearly.2040.b - trigger = { exists = scope:friend } - set_relation_best_friend = { - reason = best_friend_imaginary_friend - target = scope:friend - } - - stress_impact = { - lustful = medium_stress_impact_loss - } - - ai_chance = { - base = 50 - } - } - - after = { - clean_up_period_of_time_word_effect = yes - - scope:imaginary_friend = { silent_disappearance_effect = yes } - random_owned_story = { - type = story_cycle_imaginary_friend - end_story = yes - } - if = { - limit = { has_character_modifier = imaginary_friend_modifier } - remove_character_modifier = imaginary_friend_modifier - } - } -} - -########################################## -# Flavor Events - -scripted_trigger bp2_yearly_2000_pick_child_interlocutor_trigger = { - OR = { - any_sibling = { - is_available_ai_child = yes - age > root.age_minus_3 - age >= 4 - location = root.location - } - location = { - any_character_in_location = { - is_available_ai_child = yes - age > root.age_minus_3 - age >= 4 - OR = { - liege = root - is_courtier_of = root - is_pool_guest_of = root - } - this != root - } - } - } -} - -scripted_effect bp2_yearly_2000_pick_child_interlocutor_effect = { - if = { - limit = { - any_sibling = { - is_available_ai_child = yes - age > root.age_minus_3 - age >= 4 - location = root.location - } - } - random_sibling = { - limit = { - is_available_ai_child = yes - age > root.age_minus_3 - age >= 4 - location = root.location - } - save_scope_as = interlocutor - } - } - else = { - location = { - random_character_in_location = { - limit = { - is_available_ai_child = yes - age > root.age_minus_3 - age >= 4 - OR = { - liege = root - is_courtier_of = root - is_pool_guest_of = root - } - this != root - } - save_scope_as = interlocutor - } - } - } -} - -# Build something with your friend, get a some xp I guess -bp2_yearly.2100 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.2100.t - desc = bp2_yearly.2100.desc - theme = friend_relation - override_background = { reference = garden } - - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:interlocutor - animation = happiness - } - - trigger = { - has_bp2_dlc_trigger = yes - is_available_child = yes - age >= 5 - age <= 15 - bp2_yearly_2000_pick_child_interlocutor_trigger = yes - OR = { - has_variable = education_diplomacy_variable - has_variable = education_martial_variable - has_variable = education_stewardship_variable - has_variable = education_intrigue_variable - has_variable = education_learning_variable - } - } - - cooldown = { years = 16 } - - immediate = { - # Pick an interlocutor - bp2_yearly_2000_pick_child_interlocutor_effect = yes - # Pick a random second option to show - if = { - limit = { has_variable = education_diplomacy_variable } - add_character_flag = option_a - } - else_if = { - limit = { has_variable = education_martial_variable } - add_character_flag = option_b - } - else_if = { - limit = { has_variable = education_stewardship_variable } - add_character_flag = option_c - } - else_if = { - limit = { has_variable = education_intrigue_variable } - add_character_flag = option_d - } - else_if = { - limit = { has_variable = education_learning_variable } - add_character_flag = option_e - } - random_list = { - 1 = { - trigger = { - NOT = { has_character_flag = option_a } - } - add_character_flag = option_a - } - 1 = { - trigger = { - NOT = { has_character_flag = option_b } - } - add_character_flag = option_b - } - 1 = { - trigger = { - NOT = { has_character_flag = option_c } - } - add_character_flag = option_c - } - 1 = { - trigger = { - NOT = { has_character_flag = option_d } - } - add_character_flag = option_d - } - 1 = { - trigger = { - NOT = { has_character_flag = option_e } - } - add_character_flag = option_e - } - } - random_list = { - 1 = { - trigger = { - NOT = { has_character_flag = option_a } - } - add_character_flag = option_a - } - 1 = { - trigger = { - NOT = { has_character_flag = option_b } - } - add_character_flag = option_b - } - 1 = { - trigger = { - NOT = { has_character_flag = option_c } - } - add_character_flag = option_c - } - 1 = { - trigger = { - NOT = { has_character_flag = option_d } - } - add_character_flag = option_d - } - 1 = { - trigger = { - NOT = { has_character_flag = option_e } - } - add_character_flag = option_e - } - } - } - - option = { # Diplomacy - name = bp2_yearly.2100.a - trigger = { has_character_flag = option_a } - if = { - limit = { has_variable = education_diplomacy_variable } - #Award more points - custom_tooltip = bp2_yearly.2100.a.tt - change_variable = { - name = education_diplomacy_variable - add = 4 - } - } - else = { - add_diplomacy_skill = 1 - progress_towards_friend_effect = { - REASON = friend_wedding_relation_bond - CHARACTER = scope:interlocutor - OPINION = default_friend_opinion - } - } - } - - option = { # Martial - name = bp2_yearly.2100.b - #trigger = { has_character_flag = option_b } - if = { - limit = { has_variable = education_martial_variable } - #Award more points - custom_tooltip = bp2_yearly.2100.b.tt - change_variable = { - name = education_martial_variable - add = 4 - } - } - else = { - add_martial_skill = 1 - progress_towards_friend_effect = { - REASON = friend_wedding_relation_bond - CHARACTER = scope:interlocutor - OPINION = default_friend_opinion - } - } - } - - option = { # Stewardship - name = bp2_yearly.2100.c - trigger = { has_character_flag = option_c } - if = { - limit = { has_variable = education_stewardship_variable } - #Award more points - custom_tooltip = bp2_yearly.2100.c.tt - change_variable = { - name = education_stewardship_variable - add = 4 - } - } - else = { - add_stewardship_skill = 1 - progress_towards_friend_effect = { - REASON = friend_wedding_relation_bond - CHARACTER = scope:interlocutor - OPINION = default_friend_opinion - } - } - } - - option = { # Intrigue - name = bp2_yearly.2100.d - trigger = { has_character_flag = option_d } - if = { - limit = { has_variable = education_intrigue_variable } - #Award more points - custom_tooltip = bp2_yearly.2100.d.tt - change_variable = { - name = education_intrigue_variable - add = 4 - } - } - else = { - add_intrigue_skill = 1 - progress_towards_friend_effect = { - REASON = friend_wedding_relation_bond - CHARACTER = scope:interlocutor - OPINION = default_friend_opinion - } - } - } - - option = { # Learning - name = bp2_yearly.2100.e - trigger = { has_character_flag = option_e } - if = { - limit = { has_variable = education_learning_variable } - #Award more points - custom_tooltip = bp2_yearly.2100.e.tt - change_variable = { - name = education_learning_variable - add = 4 - } - } - else = { - add_learning_skill = 1 - progress_towards_friend_effect = { - REASON = friend_wedding_relation_bond - CHARACTER = scope:interlocutor - OPINION = default_friend_opinion - } - } - } - - after = { - if = { - limit = { has_character_flag = option_a } - remove_character_flag = option_a - } - if = { - limit = { has_character_flag = option_b } - remove_character_flag = option_b - } - if = { - limit = { has_character_flag = option_c } - remove_character_flag = option_c - } - if = { - limit = { has_character_flag = option_d } - remove_character_flag = option_d - } - if = { - limit = { has_character_flag = option_e } - remove_character_flag = option_e - } - } -} - -# Take a trait... or don't... it's up to you -bp2_yearly.2110 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.2110.t - desc = bp2_yearly.2110.desc - theme = friend_relation - override_background = { reference = courtyard } - - left_portrait = { - character = root - animation = celebrate_sword - } - right_portrait = { - character = scope:interlocutor - animation = sword_yield_start - } - - cooldown = { years = 20 } - - trigger = { - is_ai = no - has_bp2_dlc_trigger = yes - is_available_child = yes - age >= 6 - number_of_personality_traits < 3 - NOR = { - has_trait = humble - has_trait = arrogant - } - bp2_yearly_2000_pick_child_interlocutor_trigger = yes - } - - weight_multiplier = { - base = 1 - modifier = { - is_ai = no - factor = 10 - } - } - - immediate = { - bp2_yearly_2000_pick_child_interlocutor_effect = yes - } - - option = { # Humble - name = bp2_yearly.2110.a - add_trait = humble - - ai_chance = { - base = 30 - } - - stress_impact = { - pensive = minor_stress_impact_loss - rowdy = minor_stress_impact_gain - } - } - - option = { # Arrogant - name = bp2_yearly.2110.b - add_trait = arrogant - - ai_chance = { - base = 30 - } - - stress_impact = { - bossy = medium_stress_impact_loss - rowdy = minor_stress_impact_loss - pensive = minor_stress_impact_gain - } - } - - option = { # Remain Silent - name = bp2_yearly.2110.c - - ai_chance = { - base = 30 - } - } -} - -bp2_yearly.2120 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.2120.t - desc = bp2_yearly.2120.desc - theme = friend_relation - override_background = { reference = bp1_kitchen_western } - - left_portrait = { - character = root - animation = toast_goblet - } - right_portrait = { - character = scope:interlocutor - animation = worry - } - - cooldown = { years = 20 } - - trigger = { - has_bp2_dlc_trigger = yes - is_available_child = yes - is_ai = no - age >= 6 - number_of_personality_traits < 3 - NOR = { - has_trait = temperate - has_trait = gluttonous - } - bp2_yearly_2000_pick_child_interlocutor_trigger = yes - } - - weight_multiplier = { - base = 1 - modifier = { - is_ai = no - factor = 10 - } - } - - immediate = { - bp2_yearly_2000_pick_child_interlocutor_effect = yes - } - - option = { # temperate - name = bp2_yearly.2120.a - add_trait = temperate - - ai_chance = { - base = 30 - } - - stress_impact = { - rowdy = minor_stress_impact_gain - pensive = minor_stress_impact_loss - } - } - - option = { # gluttonous - name = bp2_yearly.2120.b - add_trait = gluttonous - - ai_chance = { - base = 30 - } - - stress_impact = { - pensive = minor_stress_impact_gain - } - } - - option = { # No way jose - name = bp2_yearly.2110.c - - ai_chance = { - base = 30 - } - } -} - -bp2_yearly.2130 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.2130.t - desc = bp2_yearly.2130.desc - theme = friend_relation - override_background = { reference = alley_day } - - left_portrait = { - character = root - animation = clutching_toy - } - right_portrait = { - character = scope:interlocutor - animation = sadness - } - - cooldown = { years = 20 } - - trigger = { - has_bp2_dlc_trigger = yes - is_ai = no - is_ruler = yes - is_available_child = yes - age >= 6 - number_of_personality_traits < 3 - NOR = { - has_trait = generous - has_trait = greedy - } - } - - weight_multiplier = { - base = 1 - modifier = { - is_ai = no - factor = 10 - } - } - - immediate = { - set_favorite_toy_effect = yes - if = { - limit = { - any_pool_character = { - province = root.location - age >= root.age_minus_3 - is_available_ai_child = yes - } - } - random_pool_character = { - province = root.location - limit = { - age >= root.age_minus_3 - is_available_ai_child = yes - } - save_scope_as = interlocutor - } - } - else = { - create_character = { - template = child_peasant_character - dynasty = none - location = root.location - culture = root.culture - faith = root.faith - gender = root - save_scope_as = interlocutor - } - } - } - - option = { # generous - name = bp2_yearly.2130.a - flavor = bp2_yearly.2130.a.flavor - add_trait = generous - add_piety = minor_piety_gain - - ai_chance = { - base = 30 - } - - stress_impact = { - charming = minor_stress_impact_loss - rowdy = minor_stress_impact_gain - } - } - - option = { # greedy - name = bp2_yearly.2130.b - add_trait = greedy - - ai_chance = { - base = 30 - } - - stress_impact = { - bossy = minor_stress_impact_loss - } - } - - option = { # No way jose - name = bp2_yearly.2110.c - - ai_chance = { - base = 30 - } - } -} - -bp2_yearly.2140 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.2140.t - desc = bp2_yearly.2140.desc - theme = friend_relation - override_background = { reference = corridor_night } - - left_portrait = { - character = root - animation = disbelief - } - right_portrait = { - character = scope:interlocutor - animation = disapproval - } - - cooldown = { years = 20 } - - trigger = { - has_bp2_dlc_trigger = yes - is_available_child = yes - is_ai = no - age >= 6 - age < 12 - number_of_personality_traits < 3 - NOR = { - has_trait = honest - has_trait = deceitful - } - OR = { - father ?= { - is_alive = yes - is_available_ai_adult = yes - } - mother ?= { - is_alive = yes - is_available_ai_adult = yes - } - any_relation = { - type = guardian - is_alive = yes - is_available_ai_adult = yes - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - is_ai = no - factor = 10 - } - } - - immediate = { - set_favorite_treat_effect = yes - if = { - limit = { - father ?= { - is_alive = yes - is_available_ai_adult = yes - } - } - father = { save_scope_as = interlocutor } - } - else_if = { - limit = { - mother ?= { - is_alive = yes - is_available_ai_adult = yes - } - } - mother = { save_scope_as = interlocutor } - } - else = { - random_relation = { - type = guardian - save_scope_as = interlocutor - } - } - } - - option = { # honest - name = bp2_yearly.2140.a - add_trait = honest - - ai_chance = { - base = 30 - } - - stress_impact = { - rowdy = minor_stress_impact_gain - } - } - - option = { # deceitful - name = bp2_yearly.2140.b - add_trait = deceitful - - ai_chance = { - base = 30 - } - - stress_impact = { - charming = minor_stress_impact_loss - } - } - - option = { # No way jose - name = bp2_yearly.2110.c - - ai_chance = { - base = 30 - } - } -} - -bp2_yearly.2150 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.2150.t - desc = bp2_yearly.2150.desc - theme = friend_relation - override_background = { reference = study } - - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:interlocutor - animation = admiration - } - - cooldown = { years = 20 } - - trigger = { - has_bp2_dlc_trigger = yes - is_available_child = yes - age >= 10 - NOR = { - has_trait = lifestyle_herbalist - has_trait = lifestyle_gardener - } - employs_court_position = court_physician_court_position - } - - immediate = { - random_court_position_holder = { - type = court_physician_court_position - save_scope_as = interlocutor - } - } - - option = { # herbalist - name = bp2_yearly.2150.a - add_trait = lifestyle_herbalist - - ai_chance = { - base = 30 - } - } - - option = { # gardener - name = bp2_yearly.2150.b - add_trait = lifestyle_gardener - - ai_chance = { - base = 30 - } - } - - option = { # No way jose - name = bp2_yearly.2150.c - - ai_chance = { - base = 30 - } - } -} - -bp2_yearly.2160 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.2160.t - desc = bp2_yearly.2160.desc - theme = friend_relation - override_background = { reference = courtyard } - - left_portrait = { - character = root - animation = worry - } - right_portrait = { - character = scope:interlocutor - animation = severelywounded - } - - cooldown = { years = 20 } - - trigger = { - has_bp2_dlc_trigger = yes - is_available_child = yes - is_ai = no - age >= 6 - number_of_personality_traits < 3 - NOR = { - has_trait = compassionate - has_trait = sadistic - } - bp2_yearly_2000_pick_child_interlocutor_trigger = yes - OR = { - exists = cp:councillor_marshal - employs_court_position = second_camp_officer - } - } - - weight_multiplier = { - base = 1 - modifier = { - is_ai = no - factor = 10 - } - } - - immediate = { - bp2_yearly_2000_pick_child_interlocutor_effect = yes - hidden_effect = { - scope:interlocutor = { - increase_wounds_no_death_effect = { REASON = fight } - } - } - if = { - limit = { - employs_court_position = second_camp_officer - any_court_position_holder = { - type = second_camp_officer - is_available_ai_adult = yes - } - } - random_court_position_holder = { - type = second_camp_officer - limit = { is_available_ai_adult = yes } - save_scope_as = marshal - } - } - else = { - cp:councillor_marshal = { save_scope_as = marshal } - } - } - - option = { # Compassionate - name = bp2_yearly.2160.a - add_trait = compassionate - - ai_chance = { - base = 30 - } - } - - option = { # sadistic - name = bp2_yearly.2160.b - custom_tooltip = bp2_yearly.2160.b.flavor - add_trait = sadistic - - ai_chance = { - base = 30 - } - } - - option = { # No way jose - name = bp2_yearly.2110.c - - ai_chance = { - base = 30 - } - } -} diff --git a/events/dlc/bp2/bp2_yearly_3.txt b/events/dlc/bp2/bp2_yearly_3.txt deleted file mode 100644 index c1152fe9d..000000000 --- a/events/dlc/bp2/bp2_yearly_3.txt +++ /dev/null @@ -1,538 +0,0 @@ -namespace = bp2_yearly - -# bp2_yearly.3000 - Asserting yourself in your studies or loafing - -################################ -# What's a Study Day Worth? # -# by Claudia Baldassi # -# bp2_yearly.3000 # -################################ - -# Asserting yourself in your studies or loafing - -bp2_yearly.3000 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.3000.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - exists = scope:educator - } - desc = bp2_yearly.3000.desc - } - desc = bp2_yearly.3000.desc_no_educator - } - desc = bp2_yearly.3000.desc_ending - } - theme = education - left_portrait = { - character = root - animation = boredom - } - right_portrait = { - trigger = { exists = scope:educator } - character = scope:educator - animation = personality_rational - } - cooldown = { years = 10 } #Should not happen more than once for the same child - - trigger = { - has_bp2_dlc_trigger = yes - age >= 8 - is_available_child = yes - has_education_focus_trigger = yes - OR = { - exists = warden - any_relation = { - type = guardian - location = root.location - } - exists = liege - AND = { - top_liege = this - employs_court_position = court_tutor_court_position - } - any_parent = { - is_alive = yes - location = root.location - } - } - } - - weight_multiplier = { - base = 1 - } - - immediate = { - if = { - limit = { - is_hostage = yes - location = warden.location - } - warden = { - save_scope_as = educator - } - } - else_if = { - limit = { - any_relation = { - type = guardian - location = root.location - } - } - random_relation = { - type = guardian - limit = { - location = root.location - } - save_scope_as = educator - } - } - else_if = { - limit = { - exists = liege - root.liege = { - employs_court_position = court_tutor_court_position - court_position:court_tutor_court_position = { location = root.location } - } - } - root.liege.court_position:court_tutor_court_position = { - save_scope_as = educator - } - } - else_if = { - limit = { - top_liege = this - employs_court_position = court_tutor_court_position - court_position:court_tutor_court_position = { location = root.location } - } - court_position:court_tutor_court_position = { - save_scope_as = educator - } - } - else_if = { - limit = { - any_parent = { - is_alive = yes - location = root.location - } - } - random_parent = { - limit = { - is_alive = yes - location = root.location - } - save_scope_as = educator - } - } - else_if = { - limit = { exists = liege } - liege = { - save_scope_as = educator - } - } - } - - # Option A: study hard - option = { - name = bp2_yearly.3000.a - if = { - limit = { - has_focus = education_diplomacy - } - add_diplomacy_skill = 1 - } - else_if = { - limit = { - has_focus = education_martial - } - add_martial_skill = 1 - } - else_if = { - limit = { - has_focus = education_stewardship - } - add_stewardship_skill = 1 - } - else_if = { - limit = { - has_focus = education_intrigue - } - add_intrigue_skill = 1 - } - else_if = { - limit = { - has_focus = education_learning - } - add_learning_skill = 1 - } - hidden_effect = { education_point_acquisition_effect = yes } - custom_tooltip = bp2_yearly.3000.a.tt - - stress_impact = { - base = medium_stress_impact_gain - diligent = medium_stress_impact_loss - lazy = minor_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - has_trait = diligent - add = 100 - } - modifier = { - has_trait = lazy - add = -100 - } - modifier = { - has_trait = curious - add = 100 - } - modifier = { - has_trait = pensive - add = 150 - } - } - } - - # Option B: study a bit - option = { - name = bp2_yearly.3000.b - hidden_effect = { education_point_acquisition_effect = yes } - custom_tooltip = bp2_yearly.3000.a.tt - stress_impact = { - base = minor_stress_impact_gain - diligent = minor_stress_impact_loss - lazy = minor_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - has_trait = diligent - add = 50 - } - modifier = { - has_trait = lazy - add = -50 - } - modifier = { - has_trait = curious - add = 50 - } - modifier = { - has_trait = pensive - add = 75 - } - } - } - - # Option C: play - option = { - name = bp2_yearly.3000.c - add_prowess_skill = 1 - stress_impact = { - base = minor_stress_impact_loss - diligent = major_stress_impact_gain - pensive = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - has_trait = diligent - add = -100 - } - modifier = { - has_trait = lazy - add = 100 - } - modifier = { - has_trait = pensive - add = -75 - } - modifier = { - has_trait = rowdy - add = 100 - } - } - } -} - -################################ -# SheHe Knows This Room # -# by Claudia Baldassi # -# bp2_yearly.3010 # -################################ - -# Child returns home: This home is unfamiliar to me: parent POV - -bp2_yearly.3010 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.3010.t - desc = bp2_yearly.3010.desc - theme = hostage - left_portrait = { - character = root - animation = worry - } - right_portrait = { - character = scope:child - animation = sadness - } - - override_background = { reference = corridor_day } - - cooldown = { years = 20 } - - trigger = { - has_bp2_dlc_trigger = yes - is_available_adult = yes - is_landless_adventurer = no - any_child = { - age >= 12 - location = root.location - NOT = { has_relation_ward = root } # Your ward grew up here - any_memory = { - memory_type = hostage_returned_hostage - memory_age_years <= 1 - } - any_memory = { - memory_type = hostage_created_hostage - memory_age_years >= 6 - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - add = 1 - has_trait = compassionate - } - } - - immediate = { - # for the responding event - save_scope_as = parent - random_child = { - limit = { - any_memory = { - memory_type = hostage_returned_hostage - memory_age_years <= 1 - } - any_memory = { - memory_type = hostage_created_hostage - memory_age_years >= 6 - } - age >= 12 - location = root.location - } - save_scope_as = child - } - } - - # Option A: I wanna help - option = { - name = bp2_yearly.3010.a - scope:child = { - add_character_flag = helpful_parent_flag - add_opinion = { - target = scope:parent - modifier = feel_accepted_opinion - opinion = 20 - } - trigger_event = bp2_yearly.3011 - } - stress_impact = { - callous = medium_stress_impact_gain - fickle = medium_stress_impact_gain - paranoid = medium_stress_impact_gain - content = minor_stress_impact_gain - lazy = minor_stress_impact_gain - } - ai_chance = { - base = 100 - } - } - - # Option B: he'll manage - option = { - name = bp2_yearly.3010.b - scope:child = { - add_opinion = { - target = root - modifier = ignored_opinion - opinion = -15 - } - scope:child = { trigger_event = bp2_yearly.3011 } - } - stress_impact = { - compassionate = medium_stress_impact_gain - gregarious = medium_stress_impact_gain - family_first = medium_stress_impact_gain - patient = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - has_trait = callous - add = 50 - } - } - } -} - -# Child returns home: This home is unfamiliar to me: child POV - -bp2_yearly.3011 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.3011.t - desc = { - desc = bp2_yearly.3011.desc - first_valid = { - triggered_desc = { - trigger = { - has_character_flag = helpful_parent_flag - } - desc = bp2_yearly.3011.desc_parent - } - desc = bp2_yearly.3011.desc_no_parent - } - } - theme = hostage - left_portrait = { - character = root - animation = sadness - } - right_portrait = { - character = scope:parent - animation = worry - } - - override_background = { reference = corridor_day } - - # Option A: accept you're a stranger now - option = { - name = bp2_yearly.3011.a - if = { - limit = { - has_character_flag = helpful_parent_flag - } - scope:parent = { - send_interface_toast = { - title = bp2_yearly.3010.a.tt - left_icon = scope:child - scope:child = { - add_character_modifier = { - modifier = bp2_stranger_at_home_modifier - years = 30 - } - } - } - } - } - else = { - add_character_modifier = { - modifier = bp2_stranger_at_home_modifier - years = 30 - } - } - stress_impact = { - gregarious = medium_stress_impact_gain - humble = medium_stress_impact_gain - patient = minor_stress_impact_gain - pensive = medium_stress_impact_loss - bossy = medium_stress_impact_loss - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = 0.5 - } - modifier = { - has_trait = pensive - add = 100 - } - modifier = { - has_trait = bossy - add = 100 - } - } - } - - # Option B: try to integrate again - option = { - name = bp2_yearly.3011.b - if = { - limit = { - has_character_flag = helpful_parent_flag - } - scope:parent = { - send_interface_toast = { - title = bp2_yearly.3010.b.tt - left_icon = scope:child - scope:child = { - add_character_modifier = { - modifier = bp2_stranger_no_more_modifier - years = 30 - } - } - } - } - } - else = { - add_character_modifier = { - modifier = bp2_stranger_no_more_modifier - years = 30 - } - } - stress_impact = { - stubborn = major_stress_impact_gain - lazy = medium_stress_impact_gain - reclusive = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - wrathful = minor_stress_impact_gain - impatient = minor_stress_impact_gain - charming = medium_stress_impact_loss - curious = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - has_character_flag = helpful_parent_flag - add = 100 - } - modifier = { - has_trait = lazy - add = -50 - } - modifier = { - has_trait = reclusive - add = -50 - } - modifier = { - has_trait = charming - add = 100 - } - modifier = { - has_trait = curious - add = 100 - } - ai_value_modifier = { - ai_energy = -0.5 - } - } - } - - after = { - if = { - limit = { - has_character_flag = helpful_parent_flag - } - remove_character_flag = helpful_parent_flag - } - } -} diff --git a/events/dlc/bp2/bp2_yearly_4.txt b/events/dlc/bp2/bp2_yearly_4.txt deleted file mode 100644 index 466d0872c..000000000 --- a/events/dlc/bp2/bp2_yearly_4.txt +++ /dev/null @@ -1,2069 +0,0 @@ -namespace = bp2_yearly - -bp2_yearly.4000 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.4000.t - desc = bp2_yearly.4000.desc - - theme = pregnancy - - override_background = { reference = bedchamber } - - left_portrait = { - character = root - animation = newborn - } - - lower_center_portrait = { - character = scope:char_father - } - - lower_right_portrait = { - character = scope:char_mother - } - - trigger = { - has_bp2_dlc_trigger = yes - is_playable_character = yes - is_available_adult = yes - is_physically_able_adult = yes - any_memory = { - memory_type = first_born - } - any_memory = { - count = 2 - memory_type = relative_died - any_memory_participant = { - is_parent_of = root - } - has_variable = childhood_memory - } - any_child = { - count = 1 - } - } - - immediate = { - random_child = { - save_scope_as = first_babby - } - father = { - save_scope_as = char_father - } - mother = { - save_scope_as = char_mother - } - } - - weight_multiplier = { - base = 1 - } - - option = { # I promise, I will not abandon you, my child - name = bp2_yearly.4000.a - trigger = { - NOR = { - has_trait = callous - has_trait = sadistic - has_trait = cynical - } - } - flavor = bp2_yearly.4000.a.flavor - add_character_modifier = { - modifier = parental_conviction - years = 10 - } - stress_impact = { - base = medium_stress_gain - } - - ai_chance = { - base = 0 - ai_value_modifier = { - ai_honor = tiny_chance_impact_positive_ai_value - ai_compassion = tiny_chance_impact_positive_ai_value - } - } - } - - option = { #the world is harsh and cruel, how sad - name = bp2_yearly.4000.b - trigger = { - NOT = { - has_trait = compassionate - } - } - flavor = bp2_yearly.4000.b.flavor - stress_impact = { - base = medium_stress_loss - cynical = minor_stress_loss - callous = minor_stress_loss - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = tiny_chance_impact_negative_ai_value - ai_compassion = tiny_chance_impact_negative_ai_value - } - } - } - - option = { #religious option - name = bp2_yearly.4000.c - - add_piety = medium_piety_gain - stress_impact = { - zealous = medium_stress_loss - patient = minor_stress_loss - cynical = medium_stress_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_zeal = tiny_chance_impact_positive_ai_value - } - } - } -} - -bp2_yearly.4001 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.4001.t - desc = bp2_yearly.4001.desc - - theme = prison - - override_background = { reference = dungeon } - - left_portrait = { - character = root - animation = thinking - } - - right_portrait = { - character = scope:imprisoned_murderer - animation = prisondungeon - override_imprisonment_visuals = yes - triggered_outfit = { - remove_default_outfit = no - outfit_tags = { beggar_rags } - } - } - - lower_center_portrait = { - character = scope:murdered_relative - } - - trigger = { - has_bp2_dlc_trigger = yes - any_memory = { - memory_type = relative_died - any_memory_participant = { - exists = this.killer - killer = { - is_imprisoned_by = root - } - } - has_variable = childhood_memory - } - } - - immediate = { - random_memory = { - memory_type = relative_died - limit = { - has_variable = childhood_memory - any_memory_participant = { - killer = { - is_imprisoned_by = root - } - } - } - random_memory_participant = { - save_scope_as = murdered_relative - } - } - - scope:murdered_relative.killer = { - save_scope_as = imprisoned_murderer - } - } - - option = { #haha, kill the prisoner, gain vengeful, gain piety if vengeful is a virtue - name = bp2_yearly.4001.a - execute_prisoner_effect = { - VICTIM = scope:imprisoned_murderer - EXECUTIONER = root - } - if = { - limit = { - NOR = { - has_trait = vengeful - number_of_personality_traits > 3 - } - } - random_list = { - 25 = { - add_trait = vengeful - } - 75 = { - - } - } - } - else_if = { - limit = { - has_trait = vengeful - } - add_character_modifier = { - modifier = delayed_justive_stress - years = 10 - } - } - - if = { - limit = { - root.faith = { - trait_is_virtue = vengeful - } - } - add_character_modifier = { - modifier = delayed_justice_piety - years = 10 - } - } - - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = medium_chance_impact_positive_ai_value - ai_compassion = medium_chance_impact_negative_ai_value - } - } - } - - option = { #show mercy, add compassionate, release the prisoner, gain piety if compassionate is a virtue - name = bp2_yearly.4001.b - - scope:imprisoned_murderer = { release_from_prison = yes } - - if = { - limit = { - NOR = { - has_trait = forgiving - number_of_personality_traits > 3 - } - } - random_list = { - 25 = { - add_trait = forgiving - } - 75 = { - - } - } - } - else_if = { - limit = { - has_trait = forgiving - } - add_character_modifier = { - modifier = delayed_justive_stress - years = 10 - } - } - - if = { - limit = { - root.faith = { - trait_is_virtue = forgiving - } - } - add_character_modifier = { - modifier = delayed_justice_piety - years = 10 - } - } - - - ai_chance = { - base = 0 - ai_value_modifier = { - ai_vengefulness = medium_chance_impact_negative_ai_value - ai_compassion = tiny_chance_impact_positive_ai_value - } - } - - } -} - -bp2_yearly.4002 = { #drunkard - type = character_event - content_source = dlc_009 - title = bp2_yearly.4002.t - desc = bp2_yearly.4002.desc - - theme = healthcare - - override_background = { reference = bp1_wine_cellar } - - left_portrait = { - character = root - animation = drink - } - - lower_center_portrait = { - character = scope:first_aa_relative - } - - lower_right_portrait = { - character = scope:second_aa_relative - } - - trigger = { - has_bp2_dlc_trigger = yes - is_available_adult = yes - has_trait = drunkard - any_memory = { - count >= 2 - memory_type = relative_died - has_variable = childhood_memory - any_memory_participant = { - death_reason = death_drinking_passive - } - } - } - - immediate = { - random_memory = { - memory_type = relative_died - limit = { - has_variable = childhood_memory - any_memory_participant = { - death_reason = death_drinking_passive - } - } - random_memory_participant = { - save_scope_as = first_aa_relative - } - } - random_memory = { - memory_type = relative_died - limit = { - has_variable = childhood_memory - any_memory_participant = { - death_reason = death_drinking_passive - this != scope:first_aa_relative - - } - } - random_memory_participant = { - save_scope_as = second_aa_relative - } - } - } - - weight_multiplier = { - base = 1 - } - - option = { #aaah, alcoholism bad - name = bp2_yearly.4002.a - - remove_trait = drunkard - add_character_modifier = { - modifier = drinking_stop - years = 5 - } - stress_impact = { - base = major_stress_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = tiny_chance_impact_positive_ai_value - ai_rationality = tiny_chance_impact_positive_ai_value - } - } - } - - option = { #drink more - name = bp2_yearly.4002.b - - stress_impact = { - base = medium_stress_loss - } - add_character_modifier = { - modifier = drinking_binge - years = 5 - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = tiny_chance_impact_negative_ai_value - ai_rationality = tiny_chance_impact_negative_ai_value - } - } - } -} - -bp2_yearly.4003 = { #became a ruler at young age - type = character_event - content_source = dlc_009 - title = bp2_yearly.4003.t - desc = bp2_yearly.4003.desc - - theme = realm - - left_portrait = { - character = root - animation = thinking - } - - right_portrait = { - character = scope:child_ruler - animation = worry - } - - cooldown = { years = 10 } - - trigger = { - has_bp2_dlc_trigger = yes - highest_held_title_tier >= tier_duchy - any_held_title = { - count > 1 - title_tier = county - is_landless_type_title = no - } - - any_memory = { - memory_type = ascended_throne_memory - has_variable = childhood_memory - save_temporary_scope_as = throne_memory_temp - root = { - any_child = { - age >= 10 - age = { - value = root.age - subtract = scope:throne_memory_temp.memory_age_years - } - root = { - has_relation_ward = prev - } - is_landed = no - save_temporary_scope_as = child_ruler_temp - } - } - memory_age_years = { - value = root.age - subtract = scope:child_ruler_temp.age - } - } - } - - immediate = { - random_held_title = { - title_tier = county - limit = { - this != root.capital_county - is_landless_type_title = no - } - save_scope_as = giveaway_county - } - random_memory = { - memory_type = ascended_throne_memory - limit = { - has_variable = childhood_memory - save_temporary_scope_as = throne_memory_temp - root = { - any_child = { - age = { - value = root.age - subtract = scope:throne_memory_temp.memory_age_years - } - root = { - has_relation_ward = prev - } - is_landed = no - save_temporary_scope_as = child_ruler_temp - } - } - memory_age_years = { - value = root.age - subtract = scope:child_ruler_temp.age - } - } - save_scope_as = throne_memory - } - random_child = { - limit = { - age >= 10 - age = { - value = root.age - subtract = scope:throne_memory.memory_age_years - } - root = { - has_relation_ward = prev - } - is_landed = no - } - save_scope_as = child_ruler - } - } - - weight_multiplier = { - base = 1 - } - - option = { #nah, child will learn more by my side - name = bp2_yearly.4003.b - scope:child_ruler = { - add_opinion = { - modifier = thankful_opinion - opinion = 20 - target = root - } - stress_impact = { - base = medium_stress_loss - } - } - random_list = { - 5 = { - send_interface_toast = { - title = bp2_yearly.4003.t - left_icon = scope:child_ruler - scope:child_ruler = { - add_stewardship_skill = 2 - } - } - } - 5 = { - send_interface_toast = { - title = bp2_yearly.4003.t - left_icon = scope:child_ruler - scope:child_ruler = { - add_stewardship_skill = 1 - } - } - } - } - stress_impact = { - compassionate = minor_stress_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = tiny_chance_impact_positive_ai_value - } - } - } - - option = { #yes, give away - name = bp2_yearly.4003.a - create_title_and_vassal_change = { - type = granted - save_scope_as = title_change - add_claim_on_loss = no - } - scope:giveaway_county = { - change_title_holder = { - holder = scope:child_ruler - change = scope:title_change - } - } - resolve_title_and_vassal_change = scope:title_change - scope:child_ruler = { - add_opinion = { - modifier = abandoned_opinion - opinion = -20 - target = root - } - stress_impact = { - base = minor_stress_gain - } - } - send_interface_toast = { - title = bp2_yearly.4003.t - left_icon = scope:child_ruler - scope:child_ruler = { - add_stewardship_skill = 4 - } - } - stress_impact = { - compassionate = minor_stress_gain - callous = minor_stress_loss - } - - ai_chance = { - base = 0 - } - } - - option = { #can't afford to lose my county! - name = bp2_yearly.4003.c - - add_character_modifier = { - modifier = focused_on_realm - years = 4 - } - - ai_chance = { - base = 200 - ai_value_modifier = { - ai_greed = tiny_chance_impact_positive_ai_value - ai_rationality = tiny_chance_impact_positive_ai_value - } - } - } -} - -bp2_yearly.4010 = { #child parent is at least Illustrious - type = character_event - content_source = dlc_009 - title = bp2_yearly.4010.t - desc = bp2_yearly.4010.desc - - theme = crown - - left_portrait = { - character = root - animation = admiration - } - - right_portrait = { - character = scope:famous_parent - animation = personality_honorable - } - - cooldown = { - years = 50 - } - - #Fired from on_death for parent, which also saves: - #scope:famous_parent - #var:parent_fame_lvl - - trigger = { - NOR = { #double safeguard that only one event chain can happen - has_character_flag = bp2_prestige_piety_chain - government_has_flag = government_is_mandala - } - } - - immediate = { - add_character_flag = bp2_prestige_piety_chain - } - - option = { #humble switch to arrogant - trigger = { - has_trait = humble - } - name = bp2_yearly.4010.a - remove_trait = humble - add_trait = arrogant - - stress_impact = { - base = major_stress_gain - } - - add_character_modifier = { - modifier = famed_parent_lvl_1 - } - - hidden_effect = { - trigger_event = { - id = bp2_yearly.4011 - years = { 2 4 } - } - } - - ai_chance = { #don't want too many AI, stressed, arrogant chars, do we - base = 0 - } - } - - option = { #yeah, you go papa! I will be like you one day! - trigger = { - NOR = { - has_trait = content - has_trait = humble - } - } - name = bp2_yearly.4010.b - - add_character_modifier = { - modifier = famed_parent_lvl_1 - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = tiny_chance_impact_positive_ai_value - ai_boldness = tiny_chance_impact_positive_ai_value - } - } - - hidden_effect = { - trigger_event = { - id = bp2_yearly.4011 - years = { 2 4 } - } - } - - } - - option = { #it's fine I guess - trigger = { - NOR = { - has_trait = ambitious - has_trait = arrogant - } - } - name = bp2_yearly.4010.c - add_character_modifier = { - modifier = famed_parent_opt_out_base - years = 10 - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = tiny_chance_impact_negative_ai_value - ai_boldness = tiny_chance_impact_negative_ai_value - } - } - } -} - -bp2_yearly.4011 = { #the parent has been dead for a while - type = character_event - content_source = dlc_009 - title = bp2_yearly.4011.t - desc = bp2_yearly.4011.desc - - theme = crown - - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_trait = arrogant - has_trait = ambitious - } - } - animation = personality_bold - } - triggered_animation = { - trigger = { - always = yes - } - animation = grief - } - } - - lower_right_portrait = { - character = scope:famous_dead_parent - } - - trigger = { - has_bp2_dlc_trigger = yes - is_available_adult = yes - any_memory = { - memory_type = famed_parent_became_very_famous - any_memory_participant = { - is_alive = no - } - } - has_variable = parent_fame_lvl - has_character_modifier = famed_parent_lvl_1 - } - - immediate = { - random_memory = { - memory_type = famed_parent_became_very_famous - random_memory_participant = { - save_scope_as = famous_dead_parent - } - } - remove_character_modifier = famed_parent_lvl_1 - - } - - on_trigger_fail = { - #If the trigger fails because we were not an available adult we queue the event again. - if = { - limit = { - is_available_adult = yes - } - trigger_event = { - id = bp2_yearly.4011 - days = 180 - } - } - } - - option = { #how sad, time to get out from the shadow - trigger = { - var:parent_fame_lvl > prestige_level - } - name = bp2_yearly.4011.a - add_character_modifier = { - modifier = famed_parent_lvl_2 - } - hidden_effect = { - trigger_event = { - id = bp2_yearly.4012 - years = { 2 3 } - } - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = tiny_chance_impact_positive_ai_value - ai_boldness = tiny_chance_impact_positive_ai_value - } - - } - } - - option = { #actually, I am content. opt out from chain - trigger = { - var:parent_fame_lvl > prestige_level - NOR = { - has_trait = arrogant - has_trait = ambitious - } - } - name = bp2_yearly.4011.b - add_character_modifier = { - modifier = famed_parent_opt_out_base - years = 10 - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = tiny_chance_impact_negative_ai_value - ai_boldness = tiny_chance_impact_negative_ai_value - } - } - } - - option = { # I am as good as parent and I am content. opt out from the chain - trigger = { - var:parent_fame_lvl <= prestige_level - NOR = { - has_trait = ambitious - has_trait = arrogant - } - } - name = bp2_yearly.4011.c - add_character_modifier = { - modifier = famed_parent_opt_out_base - years = 10 - } - stress_impact = { - base = medium_stress_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = tiny_chance_impact_negative_ai_value - ai_boldness = tiny_chance_impact_negative_ai_value - } - } - } - - option = { # I am as good as parent but I can be better! - trigger = { - var:parent_fame_lvl <= prestige_level - } - name = bp2_yearly.4011.d - stress_impact = { - base = minor_stress_gain - ambitious = minor_stress_loss - arrogant = minor_stress_loss - } - add_character_modifier = { - modifier = famed_parent_lvl_2 - } - - hidden_effect = { - trigger_event = { - id = bp2_yearly.4012 - years = { 1 2 } - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = tiny_chance_impact_positive_ai_value - ai_boldness = tiny_chance_impact_positive_ai_value - } - } - - } - -} - -bp2_yearly.4012 = { #prestige vibe check - type = character_event - content_source = dlc_009 - title = bp2_yearly.4012.t - desc = bp2_yearly.4012.desc - - theme = crown - - left_portrait = { - character = root - animation = personality_bold - } - - lower_right_portrait = { - character = scope:dead_famous_parent - } - - immediate = { - remove_character_modifier = famed_parent_lvl_2 - } - - option = { #there is still much to do - trigger = { - var:parent_fame_lvl > prestige_level - } - name = bp2_yearly.4012.a - - stress_impact = { - base = minor_stress_gain - ambitious = minor_stress_gain - arrogant = minor_stress_gain - } - - add_character_modifier = { - modifier = famed_parent_lvl_3 - } - - hidden_effect = { - trigger_event = { - id = bp2_yearly.4013 - years = { 2 3 } - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = tiny_chance_impact_positive_ai_value - ai_boldness = tiny_chance_impact_positive_ai_value - } - } - } - - option = { #ah, why bother - trigger = { - var:parent_fame_lvl > prestige_level - NOR = { - has_trait = ambitious - has_trait = arrogant - } - } - name = bp2_yearly.4012.b - add_character_modifier = { - modifier = famed_parent_opt_out_base - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = tiny_chance_impact_negative_ai_value - ai_boldness = tiny_chance_impact_negative_ai_value - } - } - } - - option = { #I am as good as parent and I am content. opt out from the chain. Ambitious can opt out - trigger = { - var:parent_fame_lvl <= prestige_level - } - name = bp2_yearly.4012.c - - stress_impact = { - base = minor_stress_loss - ambitious = medium_stress_gain - arrogant = medium_stress_gain - } - - add_character_modifier = { - modifier = famed_parent_opt_out_base - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = tiny_chance_impact_negative_ai_value - ai_boldness = tiny_chance_impact_negative_ai_value - } - } - } - - option = { #moaaar prestige - trigger = { - var:parent_fame_lvl <= prestige_level - } - name = bp2_yearly.4012.d - - stress_impact = { - base = minor_stress_gain - ambitious = minor_stress_loss - arrogant = minor_stress_loss - } - - add_character_modifier = { - modifier = famed_parent_lvl_3 - } - - hidden_effect = { - trigger_event = { - id = bp2_yearly.4013 - years = { 1 2 } - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = tiny_chance_impact_positive_ai_value - ai_boldness = tiny_chance_impact_positive_ai_value - } - } - } - -} - -bp2_yearly.4013 = { #conclusion - type = character_event - content_source = dlc_009 - title = bp2_yearly.4013.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - var:parent_fame_lvl > prestige_level - } - desc = bp2_yearly.4013.desc_failure - } - triggered_desc = { - trigger = { - var:parent_fame_lvl <= prestige_level - } - desc = bp2_yearly.4013.desc_success - } - } - } - - theme = crown - - left_portrait = { - character = root - triggered_animation = { - trigger = { - var:parent_fame_lvl <= prestige_level - } - animation = ecstasy - } - triggered_animation = { - trigger = { - var:parent_fame_lvl > prestige_level - } - animation = shame - } - } - - lower_right_portrait = { - character = scope:dead_famous_parent - } - - immediate = { - remove_character_modifier = famed_parent_lvl_3 - } - - option = { #you are kinda failure, even after trying so hard, you get stress - trigger = { - var:parent_fame_lvl > prestige_level - } - name = bp2_yearly.4013.a - stress_impact = { - base = medium_stress_gain - ambitious = medium_stress_gain - arrogant = medium_stress_gain - } - ai_chance = { - base = 100 #if this option shows, it is the only one - } - } - - option = { #you have succeeded, now chill - name = bp2_yearly.4013.b - trigger = { - var:parent_fame_lvl <= prestige_level - } - - stress_impact = { - base = medium_stress_loss - ambitious = major_stress_gain - arrogant = major_stress_gain - } - - add_character_modifier = { - modifier = famed_parent_opt_out_advanced - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = tiny_chance_impact_negative_ai_value - ai_boldness = tiny_chance_impact_negative_ai_value - } - modifier = { - factor = 0 - has_trait = ambitious - } - modifier = { - factor = 0 - has_trait = arrogant - } - } - - } - - option = { #you have succeeded, MOAR PRESTIGE - name = bp2_yearly.4013.c - trigger = { - var:parent_fame_lvl <= prestige_level - } - - stress_impact = { - base = medium_stress_gain - ambitious = medium_stress_loss - arrogant = medium_stress_loss - } - - add_character_modifier = { - modifier = famed_parent_conclusion - } - - ai_chance = { - base = 0 - modifier = { - add = 100 - has_trait = ambitious - } - modifier = { - add = 100 - has_trait = arrogant - } - } - - } -} - -bp2_yearly.4020 = { #child parent is at least Devoted Icon - type = character_event - content_source = dlc_009 - title = bp2_yearly.4020.t - desc = bp2_yearly.4020.desc - - theme = faith - - left_portrait = { - character = root - animation = admiration - } - - right_portrait = { - character = scope:pious_parent - animation = personality_zealous - } - - #Fired from on_death which also provides: - #scope:pious_parent - #parent_piety_lvl - - trigger = { - NOR = { #double safeguard that only one event chain can happen - has_character_flag = bp2_prestige_piety_chain - government_has_flag = government_is_mandala - } - } - - immediate = { - add_character_flag = bp2_prestige_piety_chain - } - - option = { #yeah, you go papa! I will be like you one day! - trigger = { - NOR = { - has_trait = content - has_trait = cynical - } - } - name = bp2_yearly.4020.b - - add_character_modifier = { - modifier = pious_parent_lvl_1 - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = tiny_chance_impact_positive_ai_value - ai_boldness = tiny_chance_impact_positive_ai_value - ai_zeal = tiny_chance_impact_positive_ai_value - } - } - hidden_effect = { - trigger_event = { - id = bp2_yearly.4021 - years = { 2 4 } - } - } - } - - option = { #it's fine I guess - trigger = { - NOR = { - has_trait = ambitious - has_trait = zealous - } - } - name = bp2_yearly.4020.c - add_character_modifier = { - modifier = pious_parent_opt_out_base - years = 10 - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = tiny_chance_impact_negative_ai_value - ai_boldness = tiny_chance_impact_negative_ai_value - ai_zeal = tiny_chance_impact_positive_ai_value - } - } - } -} - -bp2_yearly.4021 = { #the parent has been dead for a while - type = character_event - content_source = dlc_009 - title = bp2_yearly.4021.t - desc = bp2_yearly.4021.desc - - theme = faith - - - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_trait = ambitious - has_trait = zealous - } - } - animation = personality_zealous - } - triggered_animation = { - trigger = { - always = yes - } - animation = grief - } - } - - lower_right_portrait = { - character = scope:pious_dead_parent - } - - trigger = { - has_bp2_dlc_trigger = yes - is_available_adult = yes - has_variable = parent_piety_lvl - has_character_modifier = pious_parent_lvl_1 - } - - on_trigger_fail = { - #If it failed because we were not available we queue the event again. - if = { - limit = { - is_available_adult = no - } - trigger_event = { - id = bp2_yearly.4021 - days = 180 - } - } - } - - immediate = { - random_memory = { - memory_type = pious_parent_became_very_pious - random_memory_participant = { - save_scope_as = pious_dead_parent - } - } - remove_character_modifier = pious_parent_lvl_1 - - } - - option = { #how sad, time to get out from the shadow - trigger = { - var:parent_piety_lvl > piety_level - } - name = bp2_yearly.4021.a - add_character_modifier = { - modifier = pious_parent_lvl_2 - } - hidden_effect = { - trigger_event = { - id = bp2_yearly.4022 - years = { 2 3 } - } - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = tiny_chance_impact_positive_ai_value - ai_boldness = tiny_chance_impact_positive_ai_value - ai_zeal = tiny_chance_impact_positive_ai_value - } - - } - } - - option = { #actually, I am content. opt out from chain - trigger = { - var:parent_piety_lvl > piety_level - NOR = { - has_trait = ambitious - has_trait = zealous - } - } - name = bp2_yearly.4021.b - add_character_modifier = { - modifier = pious_parent_opt_out_base - years = 10 - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = tiny_chance_impact_negative_ai_value - ai_boldness = tiny_chance_impact_negative_ai_value - ai_zeal = tiny_chance_impact_negative_ai_value - } - } - } - - option = { # I am as good as parent and I am content. opt out from the chain - trigger = { - var:parent_piety_lvl <= piety_level - NOR = { - has_trait = ambitious - has_trait = zealous - } - } - name = bp2_yearly.4021.c - - stress_impact = { - base = medium_stress_loss - } - - add_character_modifier = { - modifier = pious_parent_opt_out_base - years = 10 - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = tiny_chance_impact_negative_ai_value - ai_boldness = tiny_chance_impact_negative_ai_value - ai_zeal = tiny_chance_impact_negative_ai_value - } - } - } - - option = { # I am as good as parent but I can be better! - trigger = { - var:parent_piety_lvl <= piety_level - } - name = bp2_yearly.4021.d - stress_impact = { - base = minor_stress_gain - ambitious = medium_stress_loss - zealous = medium_stress_loss - } - add_character_modifier = { - modifier = pious_parent_lvl_2 - } - - hidden_effect = { - trigger_event = { - id = bp2_yearly.4022 - years = { 1 2 } - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = tiny_chance_impact_positive_ai_value - ai_boldness = tiny_chance_impact_positive_ai_value - ai_zeal = tiny_chance_impact_positive_ai_value - } - } - - } - -} - -bp2_yearly.4022 = { #piety vibe check - type = character_event - content_source = dlc_009 - title = bp2_yearly.4022.t - desc = bp2_yearly.4022.desc - - theme = faith - - left_portrait = { - character = root - animation = personality_zealous - } - - lower_right_portrait = { - character = scope:pious_dead_parent - } - - immediate = { - remove_character_modifier = pious_parent_lvl_2 - } - - option = { #there is still much to do - trigger = { - var:parent_piety_lvl > piety_level - } - name = bp2_yearly.4022.a - - stress_impact = { - base = minor_stress_gain - ambitious = minor_stress_gain - zealous = minor_stress_gain - } - - add_character_modifier = { - modifier = pious_parent_lvl_3 - } - - hidden_effect = { - trigger_event = { - id = bp2_yearly.4023 - years = { 2 3 } - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = tiny_chance_impact_positive_ai_value - ai_boldness = tiny_chance_impact_positive_ai_value - ai_zeal = tiny_chance_impact_positive_ai_value - } - } - } - - option = { #ah, why bother - trigger = { - var:parent_piety_lvl > piety_level - NOR = { - has_trait = ambitious - has_trait = zealous - } - } - name = bp2_yearly.4022.b - add_character_modifier = { - modifier = pious_parent_opt_out_base - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = tiny_chance_impact_negative_ai_value - ai_boldness = tiny_chance_impact_negative_ai_value - ai_zeal = tiny_chance_impact_negative_ai_value - } - } - } - - option = { #I am as good as parent and I am content. opt out from the chain. Ambitious can opt out - trigger = { - var:parent_piety_lvl <= piety_level - } - name = bp2_yearly.4022.c - - stress_impact = { - base = minor_stress_loss - ambitious = major_stress_gain - zealous = major_stress_gain - } - - add_character_modifier = { - modifier = pious_parent_opt_out_base - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = tiny_chance_impact_negative_ai_value - ai_boldness = tiny_chance_impact_negative_ai_value - ai_Zeal = tiny_chance_impact_negative_ai_value - } - } - } - - option = { #moaaar piety - trigger = { - var:parent_piety_lvl <= piety_level - } - name = bp2_yearly.4022.d - - stress_impact = { - base = minor_stress_gain - ambitious = minor_stress_loss - zealous = minor_stress_loss - } - - add_character_modifier = { - modifier = pious_parent_lvl_3 - } - - hidden_effect = { - trigger_event = { - id = bp2_yearly.4023 - years = { 1 2 } - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = tiny_chance_impact_positive_ai_value - ai_boldness = tiny_chance_impact_positive_ai_value - ai_zeal = tiny_chance_impact_positive_ai_value - } - } - } - -} - -bp2_yearly.4023 = { #conclusion - type = character_event - content_source = dlc_009 - title = bp2_yearly.4023.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - var:parent_piety_lvl > piety_level - } - desc = bp2_yearly.4023.desc_failure - } - triggered_desc = { - trigger = { - var:parent_piety_lvl <= piety_level - } - desc = bp2_yearly.4023.desc_success - } - } - } - - theme = crown - - left_portrait = { - character = root - triggered_animation = { - trigger = { - var:parent_piety_lvl <= piety_level - } - animation = ecstasy - } - triggered_animation = { - trigger = { - var:parent_piety_lvl > piety_level - } - animation = shame - } - } - - lower_right_portrait = { - character = scope:dead_pious_parent - } - - immediate = { - remove_character_modifier = pious_parent_lvl_3 - } - - option = { #you are kinda failure, even after trying so hard, you get stress - trigger = { - var:parent_piety_lvl > piety_level - } - name = bp2_yearly.4023.a - stress_impact = { - base = medium_stress_gain - ambitious = minor_stress_gain - zealous = minor_stress_gain - } - ai_chance = { - base = 100 #if this option shows, it is the only one - } - } - - option = { #you have succeeded, now chill - name = bp2_yearly.4023.b - trigger = { - var:parent_piety_lvl <= piety_level - } - - stress_impact = { - base = medium_stress_loss - ambitious = medium_stress_gain - zealous = medium_stress_gain - } - - add_character_modifier = { - modifier = pious_parent_opt_out_advanced - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = tiny_chance_impact_negative_ai_value - ai_boldness = tiny_chance_impact_negative_ai_value - ai_zeal = tiny_chance_impact_negative_ai_value - } - modifier = { - factor = 0 - has_trait = ambitious - } - modifier = { - factor = 0 - has_trait = zealous - } - } - - } - - option = { #you have succeeded, MOAR PIETY - name = bp2_yearly.4023.c - trigger = { - var:parent_piety_lvl <= piety_level - } - - stress_impact = { - base = medium_stress_gain - ambitious = medium_stress_loss - zealous = medium_stress_loss - } - - add_character_modifier = { - modifier = pious_parent_conclusion - } - - ai_chance = { - base = 0 - modifier = { - add = 100 - has_trait = ambitious - } - modifier = { - add = 100 - has_trait = zealous - } - } - - } -} - -bp2_yearly.4030 = { #While commanding army in winter province, you are struck with first sunlight memory from childhood - type = character_event - content_source = dlc_009 - title = bp2_yearly.4030.t - desc = bp2_yearly.4030.desc - content_source = dlc_009 - theme = war - - override_background = { reference = ep2_hunt_snowy_forest } - widget = { - gui = "event_window_widget_vfx_snow" - container = "foreground_shader_vfx_container" - } - - left_portrait = { - character = root - animation = personality_honorable - } - - right_portrait = { - character = scope:frosty_knight - animation = anger - } - - cooldown = { years = 20 } - - trigger = { - has_bp2_dlc_trigger = yes - exists = scope:army - is_playable_character = yes #Not for mercenaries - is_in_army = yes - commanding_army ?= scope:army - location ?= { - has_province_modifier = winter_harsh_modifier - trigger_if = { - limit = { exists = county } - county.holder.top_liege != root.top_liege - } - } - any_knight = { - is_in_army = yes - location = root.location - } - } - - immediate = { - location = { - save_scope_as = winter_location - } - random_knight = { - limit = { - is_in_army = yes - location = root.location - } - save_scope_as = frosty_knight - } - } - - option = { #warm yourself with memories - name = bp2_yearly.4030.a - add_character_modifier = { - modifier = memory_of_sunlight_personal - years = 4 - } - - stress_impact = { - base = minor_stress_loss - shy = medium_stress_loss - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_honor = tiny_chance_impact_negative_ai_value - } - } - } - - option = { #speech, speech, speech! - name = bp2_yearly.4030.b - flavor = bp2_yearly.4030.b.flavor - add_character_modifier = { - modifier = memory_of_sunlight_shared - years = 4 - } - - stress_impact = { - shy = minor_stress_gain - brave = minor_stress_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = tiny_chance_impact_positive_ai_value - } - } - } - - option = { #winter soldier - trigger = { - has_trait = winter_soldier - } - name = bp2_yearly.4030.c - send_interface_toast = { - title = bp2_yearly.4030.c.tt - left_icon = root - random_list = { - 1 = { - add_martial_skill = 1 - } - 1 = { - add_prowess_skill = 2 - } - 1 = { - add_martial_lifestyle_xp = medium_lifestyle_xp - } - } - } - ai_chance = { - base = 400 - } - } -} - -bp2_yearly.4031 = { #you where imprisoned as a child, and guess what? You are imprisoned as an adult. Congratulations! - type = character_event - content_source = dlc_009 - title = bp2_yearly.4031.t - content_source = dlc_009 - desc = { - desc = bp2_yearly.4031.desc_first - first_valid = { - triggered_desc = { - trigger = { - scope:new_imp != scope:old_imp - } - desc = bp2_yearly.4031.desc_base - } - triggered_desc = { - trigger = { - scope:new_imp = scope:old_imp - } - desc = bp2_yearly.4031.desc_same_captor - } - } - desc = bp2_yearly.4031.desc_last - } - - theme = prison - - override_background = { - trigger = { - OR = { - scope:bg_override_char = { has_government = landless_adventurer_government } - is_in_prison_type = dungeon - } - } - reference = dungeon - } - override_background = { - trigger = { - NOR = { - scope:bg_override_char = { has_government = landless_adventurer_government } - is_in_prison_type = dungeon - } - } - reference = relaxing_room - } - - left_portrait = { - character = root - triggered_animation = { - trigger = { is_in_prison_type = house_arrest } - animation = prisonhouse - } - triggered_animation = { - trigger = { is_in_prison_type = dungeon } - animation = prisondungeon - } - override_imprisonment_visuals = yes - } - lower_left_portrait = scope:old_imp - lower_right_portrait = { - character = scope:imprisoner - trigger = { - scope:imprisoner != scope:old_imp - } - } - - cooldown = { years = 10 } - - trigger = { - has_bp2_dlc_trigger = yes - is_imprisoned = yes - any_memory = { - memory_type = imprisoned - has_variable = childhood_memory - } - } - - immediate = { - imprisoner = { - save_scope_as = new_imp - save_scope_as = bg_override_char - } - random_memory = { - memory_type = imprisoned - limit = { - has_variable = childhood_memory - } - random_memory_participant = { - save_scope_as = old_imp - } - } - } - - option = { #use that memory to escape - name = bp2_yearly.4031.a - flavor = bp2_yearly.4031.a.flavor - - add_character_modifier = { - modifier = childhood_prison_escape - years = 10 - } - - custom_tooltip = bp2_yearly.4031.a.ct - - stress_impact = { - brave = minor_stress_loss - stubborn = minor_stress_loss - impatient = minor_stress_loss - arrogant = minor_stress_loss - patient = minor_stress_gain - craven = minor_stress_gain - paranoid = minor_stress_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = tiny_chance_impact_positive_ai_value - } - } - } - - option = { #use that memory to endure - name = bp2_yearly.4031.b - flavor = bp2_yearly.4031.b.flavor - add_character_modifier = { - modifier = childhood_prison_endure - years = 10 - } - - stress_impact = { - patient = minor_stress_loss - craven = minor_stress_loss - trusting = minor_stress_loss - humble = minor_stress_loss - impatient = minor_stress_gain - brave = minor_stress_gain - stubborn = minor_stress_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = tiny_chance_impact_negative_ai_value - } - } - - } -} - -bp2_yearly.4032 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.4032.t - desc = bp2_yearly.4032.desc - content_source = dlc_009 - theme = hostage - - - left_portrait = { - character = root - animation = grief - } - - right_portrait = { - character = scope:hostage_kiddo - animation = jockey_idle - camera = camera_event_horse_right - } - - #Fired from on_hostage_taken which also saves: - #scope:hostage_kiddo - #scope:childhood_hostage_memory - - immediate = { - add_character_flag = bp2_hostage_blues - var:hostage_mem = { - memory_participant:home_court = { - save_scope_as = tru_papa - } - memory_participant:warden = { - save_scope_as = new_papa - } - } - var:hostage_kid = { - save_scope_as = hostage_kiddo - } - } - - option = { #Dynasty Motto child! - name = bp2_yearly.4032.a - - dynasty = { - add_dynasty_prestige = minor_dynasty_prestige_gain - } - - scope:hostage_kiddo = { - add_opinion = { - target = root - modifier = abandoned_opinion - opinion = -20 - } - } - - stress_impact = { - compassionate = medium_stress_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = tiny_chance_impact_negative_ai_value - ai_rationality = tiny_chance_impact_positive_ai_value - } - } - - } - - option = { #You will return, as I did - name = bp2_yearly.4032.b - scope:hostage_kiddo = { - add_character_modifier = { - modifier = generational_hostage - years = 8 - } - } - stress_impact = { - compassionate = medium_stress_loss - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = tiny_chance_impact_positive_ai_value - ai_rationality = tiny_chance_impact_positive_ai_value - } - } - } - - after = { - remove_variable = hostage_mem - remove_variable = hostage_kid - } - -} diff --git a/events/dlc/bp2/bp2_yearly_5.txt b/events/dlc/bp2/bp2_yearly_5.txt deleted file mode 100644 index aa236f168..000000000 --- a/events/dlc/bp2/bp2_yearly_5.txt +++ /dev/null @@ -1,4143 +0,0 @@ -namespace = bp2_yearly - -################################################################ -# |\__/,| (`\ # -# _.|o o |_ ) ) # -#-----------------------(((---(((------------------------------# -# Special Chains: Playdate 5000-11 and destiny_child.1000-1035 # -# Small Chains: 5000 - 5014 # -# Flavours: 5050 - 5060 # -################################################################ - -################################################## -# # Princes in the Tower -# by Nick Meredith -# #5000-5001 -################################################## - -# You have a chance to imprison the young prince/ss -bp2_yearly.5000 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.5000.t - desc = bp2_yearly.5000.desc - theme = corruption - left_portrait = { - character = root - animation = scheme - } - right_portrait = { - character = scope:tower_prince - animation = boredom - } - cooldown = { years = 100 } #Just to ensure it doesn't fire twice for multiple heirs - trigger = { - #DLC check - has_bp2_dlc_trigger = yes - #Standard checks - is_available_adult = yes - #You are a diarch - is_diarch = yes - #And a powerful one - liege = { has_diarchy_parameter = diarchy_type_is_entrenched_regency } - #There is an heir to the title you're the diarch of - liege = { - #They're quite young - age < 14 - #and not imprisoned - is_imprisoned = no - #and they're not a player character - is_ai = yes - } - #Just to ensure this doesn't happen too much - #is_ai = no - } - immediate = { - liege = { save_scope_as = tower_prince } - save_scope_value_as = { #For a bit of fuzziness - name = integer - value = { - integer_range = { - min = 1 - max = 5 - } - } - } - } - #Imprison them! - option = { - name = bp2_yearly.5000.a - - if = { - limit = { - any_held_county = { - any_county_province = { - has_building = the_tower_of_london_01 - } - } - } - add_internal_flag = special - custom_tooltip = bp2_yearly.5000.a.flavor - } - - remove_short_term_gold = minor_gold_value - - if = { - limit = { - any_held_county = { - any_county_province = { - has_building = the_tower_of_london_01 - } - } - } - hard_imprison_character_effect = { - TARGET = scope:tower_prince - IMPRISONER = root - } - trigger_event = { - id = bp2_yearly.5001 - days = { 40 80 } - } - } - else = { - random_list = { - 10 = { #You succeed - desc = bp2_yearly.5000.a.success - modifier = { - add = scope:integer - } - modifier = { - add = 5 - OR = { - has_trait = callous - has_trait = sadistic - } - } - modifier = { - add = 5 - intrigue > 15 - } - send_interface_toast = { - title = bp2_yearly.5000.a.success - left_icon = scope:tower_prince - hard_imprison_character_effect = { - TARGET = scope:tower_prince - IMPRISONER = root - } - } - trigger_event = { - id = bp2_yearly.5001 - days = { 40 80 } - } - } - 10 = { #You fail - desc = bp2_yearly.5000.a.failure - modifier = { - add = 5 - OR = { - has_trait = compassionate - has_trait = just - } - } - modifier = { - add = 5 - intrigue < 8 - } - reverse_add_opinion = { - target = scope:tower_prince - modifier = hate_opinion - opinion = -40 - } - send_interface_toast = { - title = bp2_yearly.5000.a.failure - left_icon = scope:tower_prince - show_as_tooltip = { - custom_tooltip = bp2_yearly.5000.a.tt - } - } - hidden_effect = { - scope:tower_prince = { - every_vassal = { - limit = { - root != this - } - add_opinion = { - target = root - modifier = suspicion_opinion - opinion = -15 - } - } - } - } - } - } - } - - stress_impact = { - compassionate = medium_stress_impact_gain - content = medium_stress_impact_gain - arbitrary = miniscule_stress_impact_loss - ambitious = medium_stress_impact_loss - callous = miniscule_stress_impact_loss - sadistic = medium_stress_impact_loss - } - - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = compassionate - has_trait = content - } - } - } - } - option = { #Leave them be - name = bp2_yearly.5000.b - - add_trait = loyal - - reverse_add_opinion = { - target = scope:tower_prince - modifier = trust_opinion - opinion = 50 - } - - stress_impact = { - craven = miniscule_stress_impact_loss - content = miniscule_stress_impact_loss - compassionate = miniscule_stress_impact_loss - trusting = miniscule_stress_impact_loss - arbitrary = minor_stress_impact_gain - ambitious = medium_stress_impact_gain - callous = medium_stress_impact_gain - sadistic = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = callous - has_trait = sadistic - has_trait = ambitious - } - } - } - } -} - -# You decide their fate -bp2_yearly.5001 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.5001.t - desc = bp2_yearly.5001.desc - theme = dungeon - left_portrait = { - character = root - animation = spymaster - } - right_portrait = { - character = scope:tower_prince - animation = fear - } - trigger = { - #You are a diarch - is_diarch = yes - #Ensure that the prince is still imprisoned - exists = scope:tower_prince - liege = scope:tower_prince - scope:tower_prince = { - is_imprisoned_by = root - } - } - - immediate = { - scope:tower_prince.primary_title = { - save_scope_as = primary_title - } - - save_scope_as = usurper - } - - option = { #Mutilate them - name = bp2_yearly.5001.a - - trigger = { - scope:tower_prince = { - NOT = { - has_trait = incapable - } - } - } - - flavor = bp2_yearly.5001.a.flavor - - add_internal_flag = dangerous - - scope:tower_prince = { - add_trait = incapable - } - - stress_impact = { - paranoid = medium_stress_impact_loss - ambitious = miniscule_stress_impact_loss - callous = minor_stress_impact_loss - sadistic = medium_stress_impact_loss - just = medium_stress_impact_gain - trusting = medium_stress_impact_gain - compassionate = major_stress_impact_gain - content = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = just - has_trait = trusting - has_trait = compassionate - has_trait = content - } - } - } - } - - #Seize the realm - option = { - name = bp2_yearly.5001.b - - flavor = bp2_yearly.5001.b.flavor - - add_character_flag = laid_coup_groundwork_flag - - # You had to grease some palms - remove_short_term_gold = medium_gold_value - - show_as_tooltip = { - custom_tooltip = bp2_yearly.5001.b.tt - } - hidden_effect = { - scope:tower_prince = { - every_vassal = { - limit = { - root != this - } - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 25 - } - } - } - } - - custom_tooltip = bp2_yearly.5001.b.bypass - - stress_impact = { - compassionate = miniscule_stress_impact_loss - content = medium_stress_impact_gain - ambitious = minor_stress_impact_loss - sadistic = miniscule_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - ai_vengefulness = -1 - } - } - } - - #Use them as a political tool - option = { - name = bp2_yearly.5001.c - - update_diarchy_swing_with_perspective_effect = { - SWING = medium_sop_swing_diarch_gain - LIEGE = liege - } - - add_hook = { - target = scope:tower_prince - type = loyalty_hook - } - - scope:tower_prince = { - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 40 - } - release_from_prison = yes - } - - stress_impact = { - compassionate = miniscule_stress_impact_loss - content = miniscule_stress_impact_loss - arbitrary = miniscule_stress_impact_loss - ambitious = miniscule_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - ai_vengefulness = -1 - } - } - } -} - -################################################## -# A winsome foreign hostage -# by Nick Meredith -# #5005-5007 -################################################## - -#Actor -bp2_yearly.5005 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.5005.t - desc = bp2_yearly.5005.desc - theme = love - left_portrait = { - character = root - animation = flirtation_left - } - right_portrait = { - character = scope:foreign_hostage - animation = personality_honorable - } - trigger = { - #DLC check - has_bp2_dlc_trigger = yes - - #Age checks - is_available_child = yes - - #You can have a crush - num_of_relation_crush = 0 - - #You have actually worked out your sexuality (good going kid, took me like two decades) - OR = { - has_sexuality = heterosexual - has_sexuality = bisexual - has_sexuality = homosexual - } - - #There is a fetching foreign hostage whomst you may crush upon - any_warden_hostage = { - save_good_crush_character_trigger_check = yes - location = root.location - } - } - - immediate = { - random_warden_hostage = { - limit = { - save_good_crush_character_trigger_check = yes - } - save_scope_as = foreign_hostage - } - - save_scope_value_as = { #For a bit of fuzziness - name = integer - value = { - integer_range = { - min = 1 - max = 5 - } - } - } - - set_relation_crush = scope:foreign_hostage - save_scope_as = crusher - } - - #Confess my feelings! - option = { - name = bp2_yearly.5005.a - - flavor = bp2_yearly.5005.a.tt - - scope:foreign_hostage = { - trigger_event = { - id = bp2_yearly.5006 - days = { 1 2 } - } - } - - stress_impact = { #Keep these deliberately low: I know kids are dramatic but we don't want one stress-learning French because their crush turned em down - brave = miniscule_stress_impact_loss - rowdy = miniscule_stress_impact_loss - craven = miniscule_stress_impact_gain - pensive = miniscule_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 1 - ai_sociability = 1 - } - } - } - - #Can't risk it, best keep this unrequited - option = { - name = bp2_yearly.5005.b - - add_character_modifier = { - modifier = holding_torch_modifier - years = 5 - } - - stress_impact = { #Keep these deliberately low: I know kids are dramatic but we don't want one stress-learning French because their crush turned em down - base = miniscule_stress_impact_gain - brave = miniscule_stress_impact_gain - rowdy = miniscule_stress_impact_gain - craven = miniscule_stress_impact_loss - pensive = miniscule_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = -1 - ai_sociability = -1 - } - } - } -} - -# Crush response -bp2_yearly.5006 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.5006.t - desc = bp2_yearly.5006.desc - theme = love - left_portrait = { - character = root - animation = shock - } - right_portrait = { - character = scope:crusher - animation = worry - } - - immediate = { - #play_music_cue = "mx_cue_touching_moment" - } - - #Reciprocate - option = { - name = bp2_yearly.5006.a - - set_relation_crush = scope:crusher - - reverse_add_opinion = { - target = scope:crusher - modifier = crush_opinion - opinion = 40 - } - - scope:crusher = { - trigger_event = { - id = bp2_yearly.5007 - days = { 3 7 } - } - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 1 - ai_sociability = 1 - } - } - } - - #Ew, you're icky - option = { - name = bp2_yearly.5006.b - - reverse_add_opinion = { - target = scope:crusher - modifier = disappointed_opinion - opinion = -30 - } - - scope:crusher = { - trigger_event = { - id = bp2_yearly.5008 - days = { 3 7 } - } - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = -1 - ai_sociability = -1 - } - } - } -} - -# Crush reciprocates -bp2_yearly.5007 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.5007.t - desc = bp2_yearly.5007.desc - theme = love - left_portrait = { - character = root - animation = love - } - right_portrait = { - character = scope:foreign_hostage - animation = flirtation - } - artifact = { - target = scope:child_artifact - position = lower_center_portrait - } - - immediate = { - #play_music_cue = "mx_cue_touching_moment" - - if = { - limit = { - any_character_artifact = { - artifact_slot_type = miscellaneous - artifact_can_be_gift_to_trigger = { RECIPIENT = scope:foreign_hostage } - } - } - random_character_artifact = { - limit = { - artifact_slot_type = miscellaneous - artifact_can_be_gift_to_trigger = { RECIPIENT = scope:foreign_hostage } - } - save_scope_as = child_artifact - } - } - } - - #Give them a toy - option = { - name = bp2_yearly.5007.a - - trigger = { - exists = scope:child_artifact - is_ai = no #So you don't have it popping up randomly for human recipients - } - - scope:child_artifact = { - set_owner = { - target = scope:foreign_hostage - history = { - location = root.location - actor = root - recipient = scope:foreign_hostage - type = given - } - } - } - - reverse_add_opinion = { - target = scope:foreign_hostage - modifier = grateful_opinion - opinion = 30 - } - - stress_impact = { - generous = miniscule_stress_impact_loss - charming = miniscule_stress_impact_loss - greedy = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 0.5 - ai_sociability = 1 - } - } - } - - #Be happy - option = { - name = bp2_yearly.5007.b - - add_stress = medium_stress_loss #Relief! - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - ai_greed = 1 - } - } - } -} - -# Crush doesn't reciprocate -bp2_yearly.5008 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.5008.t - desc = bp2_yearly.5008.desc - theme = love - left_portrait = { - character = root - animation = grief - } - right_portrait = { - character = scope:foreign_hostage - animation = dismissal - } - - immediate = { - #play_music_cue = "mx_cue_negative" - } - - #Maybe they'll come round? - option = { - name = bp2_yearly.5008.a - - add_character_modifier = { - modifier = holding_torch_modifier - years = 5 - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 0.5 - ai_sociability = 1 - } - } - } - - #I'll move on - option = { - name = bp2_yearly.5008.b - - remove_relation_crush = scope:foreign_hostage - - add_stress = medium_stress_gain - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - ai_greed = 1 - } - } - } -} - -################################################## -# You promise? -# by Nick Meredith -# #5009 -################################################## - -# Your mutual crush offers to marry you when you're both of age -bp2_yearly.5009 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.5009.t - desc = bp2_yearly.5009.desc - theme = love - left_portrait = { - character = root - animation = flirtation_left - } - right_portrait = { - character = scope:marry_crush - animation = love - } - cooldown = { years = 10 } #Theoretically can happen with multiple crushes - - trigger = { - #DLC check - has_bp2_dlc_trigger = yes - #You are a child - is_adult = no - #But you're at least old enough to do the whole awkward teenage falling in love thing - age >= 12 - #Someone has a crush on you - any_courtier_or_guest = { - has_relation_crush = root - is_imprisoned = no - is_close_family_of_root_trigger = no - is_ai = yes - is_adult = no - age >= 12 - allowed_to_marry_character_gender_trigger = { CHARACTER = root } - save_temporary_scope_as = crush_to_marry - } - #And it's mutual - has_relation_crush = scope:crush_to_marry - #And you could theoretically marry them - could_marry_character_trigger = { CHARACTER = scope:crush_to_marry } - } - immediate = { - random_courtier_or_guest = { - limit = { - has_relation_crush = root - is_imprisoned = no - is_close_family_of_root_trigger = no - is_ai = yes - is_adult = no - age >= 12 - allowed_to_marry_character_gender_trigger = { CHARACTER = root } - } - save_scope_as = marry_crush - } - } - #Agree - option = { - name = bp2_yearly.5009.a - - add_character_modifier = { - modifier = besotted_modifier - years = 5 - } - - reverse_add_opinion = { - target = scope:marry_crush - modifier = pleased_opinion - opinion = 15 - } - - scope:marry_crush = { - add_character_flag = marry_crush_flag - add_character_modifier = { - modifier = besotted_modifier - years = 5 - } - } - - create_character_memory = { - type = pledged_marriage - participants = { - potential_spouse = scope:marry_crush - } - } - - stress_impact = { - content = miniscule_stress_impact_loss - trusting = miniscule_stress_impact_loss - ambitious = medium_stress_impact_gain - paranoid = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = paranoid - has_trait = ambitious - } - } - } - } - #Refuse - option = { - name = bp2_yearly.5009.b - - reverse_add_opinion = { - target = scope:marry_crush - modifier = disappointed_opinion - opinion = -35 - } - - stress_impact = { - content = medium_stress_impact_gain - trusting = minor_stress_impact_gain - ambitious = miniscule_stress_impact_loss - paranoid = miniscule_stress_impact_loss - } - - ai_chance = { - base = 10 - } - } -} - -################################################## -# I promised! -# by Nick Meredith -# #5010-14 -################################################## - -#Actor -bp2_yearly.5010 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.5010.t - desc = bp2_yearly.5010.desc - theme = love - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:marry_crush - animation = happiness - } - - cooldown = { years = 10 } - - trigger = { - #DLC check - has_bp2_dlc_trigger = yes - - #Age and marital status checks - is_available_adult = yes - can_marry_trigger = yes - - #You had someone who was a mutual crush with you - any_courtier_or_guest = { - has_character_flag = marry_crush_flag - is_available_adult = yes - is_married = no - can_marry_trigger = yes - could_marry_character_trigger = { CHARACTER = root } - save_temporary_scope_as = crush_to_marry - } - - #You remember pledging marriage - any_memory = { - memory_type = pledged_marriage - memory_participant:potential_spouse = { - location = root.location - } - } - } - - immediate = { - random_courtier_or_guest = { - limit = { - has_character_flag = marry_crush_flag - is_available_adult = yes - is_married = no - can_marry_trigger = yes - } - save_scope_as = marry_crush - } - } - - #How about it? - option = { - name = bp2_yearly.5010.a - - flavor = bp2_yearly.5010.a.flavor - - custom_tooltip = bp2_yearly.5010.a.tt - - save_scope_as = root_crush #For use later in the chain - - scope:marry_crush = { - trigger_event = { - id = bp2_yearly.5011 - days = { 1 2 } - } - } - - stress_impact = { - patient = minor_stress_impact_gain - content = miniscule_stress_impact_loss - impatient = miniscule_stress_impact_loss - ambitious = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 1 - ai_sociability = 1 - } - } - } - - #What fanciful dreams we had as children, eh? - option = { - name = bp2_yearly.5010.b - - add_character_modifier = { - modifier = reminiscing_modifier - years = 5 - } - - if = { #To ensure it doesn't acquire randomly for players - limit = { - scope:marry_crush = { - is_ai = yes - } - } - scope:marry_crush = { - add_character_modifier = { - modifier = reminiscing_modifier - years = 5 - } - } - } - - stress_impact = { - shy = miniscule_stress_impact_loss - lazy = miniscule_stress_impact_loss - chaste = miniscule_stress_impact_loss - diligent = minor_stress_impact_gain - lustful = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = -1 - ai_sociability = -0.5 - } - } - } -} - -# Crush response -bp2_yearly.5011 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.5011.t - desc = bp2_yearly.5011.desc - theme = love - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:root_crush - animation = flirtation - } - - #Accept - option = { - name = bp2_yearly.5011.a - - if = { #Resolve for non-AIs - limit = { - is_ai = no - } - marry = scope:root_crush - } - - reverse_add_opinion = { - target = scope:root_crush - modifier = love_opinion - opinion = 40 - } - - if = { #Continue chain if AI - limit = { - is_ai = yes - } - scope:root_crush = { - trigger_event = { - id = bp2_yearly.5012 - days = { 1 2 } - } - } - } - - stress_impact = { - shy = minor_stress_impact_gain - lazy = minor_stress_impact_gain - chaste = medium_stress_impact_gain - diligent = miniscule_stress_impact_loss - lustful = miniscule_stress_impact_loss - gregarious = miniscule_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 1 - ai_sociability = 1 - } - } - } - - #Decline - option = { - name = bp2_yearly.5011.b - - reverse_add_opinion = { - target = scope:root_crush - modifier = disappointed_opinion - opinion = -30 - } - - scope:root_crush = { - trigger_event = { - id = bp2_yearly.5013 - days = { 2 3 } - } - } - - stress_impact = { - shy = miniscule_stress_impact_loss - lazy = miniscule_stress_impact_loss - chaste = miniscule_stress_impact_loss - diligent = minor_stress_impact_gain - lustful = medium_stress_impact_gain - gregarious = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = -1 - ai_sociability = -1 - } - } - } -} - -# They agree -bp2_yearly.5012 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.5012.t - desc = bp2_yearly.5012.desc - theme = love - left_portrait = { - character = root - animation = love - } - right_portrait = { - character = scope:marry_crush - animation = love - } - - immediate = { - #play_music_cue = "mx_cue_touching_moment" - } - - #Hooray! - option = { - name = bp2_yearly.5012.a - - marry = scope:marry_crush - - if = { - limit = { - NOT = { - has_relation_lover = scope:marry_crush - } - } - set_relation_lover = { reason = lover_history target = scope:marry_crush } - } - - reverse_add_opinion = { - target = scope:marry_crush - modifier = love_opinion - opinion = 30 - } - - stress_impact = { - base = minor_stress_impact_loss - stubborn = miniscule_stress_impact_loss - fickle = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 0.5 - ai_sociability = 1 - } - } - } - - #On second thoughts... - option = { - name = bp2_yearly.5012.b - - progress_towards_rival_effect = { - REASON = rival_childhood_marriage_vow - CHARACTER = scope:marry_crush - OPINION = -40 - } - - stress_impact = { - stubborn = medium_stress_impact_gain - fickle = medium_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = -0.5 - ai_sociability = -1 - } - } - } -} - -# They disagree -bp2_yearly.5013 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.5013.t - desc = bp2_yearly.5013.desc - theme = love - left_portrait = { - character = root - animation = grief - } - right_portrait = { - character = scope:marry_crush - animation = dismissal - } - - immediate = { - #play_music_cue = "mx_cue_negative" - } - - #Well this sucks - option = { - name = bp2_yearly.5013.a - - add_character_modifier = { - modifier = delayed_heartbreak_modifier - years = 5 - } - - stress_impact = { - base = minor_stress_impact_gain - chaste = miniscule_stress_impact_loss - content = miniscule_stress_impact_loss - lustful = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = -0.5 - ai_sociability = -0.5 - } - } - } -} - - ### ###### #### FLAVOUR EVENTS ### ##### ### ## - ## ### # __..--''``---....___ _..._ __ ### ## - ### ##_.-' .-#"; ` ``<._ ``.''_ `. # ## # -###_.-' _..--.'_ \ `( ) ) ## ## -# (_..-' ## (< _ ;_..__ ; `' # ### - # ## ## ## `-._,_)' ## # ``--...____..-' ### # ## - # ##### #### ## #### ## ###### ### #### ## ##### - -scripted_trigger bp2_yearly_5050_language_teacher_trigger = { - is_available = yes - location = root.location - age > 18 - root = { - NOT = { knows_language_of_culture = prev.culture } - } -} - -# You learn a language off a guest or courtier -bp2_yearly.5050 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.5050.t - desc = bp2_yearly.5050.desc - theme = friendly - override_background = { reference = courtyard } - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:polyglot - animation = happy_teacher - } - cooldown = { years = 10 } - trigger = { - #DLC check - has_bp2_dlc_trigger = yes - #Standard checks - is_available_child = yes - age >= 6 #Old enough to read - - #There is parent, or a guest, or a courtier, or a councillor, or a hostage who knows a language that aint yours - OR = { - any_warden_hostage = { - is_hostage_of = root - bp2_yearly_5050_language_teacher_trigger = yes - } - any_parent = { - bp2_yearly_5050_language_teacher_trigger = yes - } - any_councillor = { - bp2_yearly_5050_language_teacher_trigger = yes - } - any_courtier_or_guest = { - bp2_yearly_5050_language_teacher_trigger = yes - } - } - } - - immediate = { - if = { - limit = { - any_warden_hostage = { - is_hostage_of = root - bp2_yearly_5050_language_teacher_trigger = yes - } - } - random_warden_hostage = { - limit = { - is_hostage_of = root - bp2_yearly_5050_language_teacher_trigger = yes - } - save_scope_as = polyglot - } - } - else_if = { - limit = { - any_councillor = { - bp2_yearly_5050_language_teacher_trigger = yes - } - } - random_councillor = { - limit = { - bp2_yearly_5050_language_teacher_trigger = yes - } - save_scope_as = polyglot - } - } - else_if = { - limit = { - any_parent = { - bp2_yearly_5050_language_teacher_trigger = yes - } - } - random_parent = { - limit = { - bp2_yearly_5050_language_teacher_trigger = yes - } - save_scope_as = polyglot - } - } - else = { - random_courtier_or_guest = { - limit = { - bp2_yearly_5050_language_teacher_trigger = yes - } - save_scope_as = polyglot - } - } - } - - #You have already learnt more than one language, so you get a bonus to learning speed - option = { - name = bp2_yearly.5050.a - - trigger = { - num_of_known_languages > 1 - } - - start_scheme = { - type = learn_language - target_character = scope:polyglot - } - custom_tooltip = diplomacy_family.2250.b.tt - hidden_effect = { - random_scheme = { - type = learn_language - limit = { - scheme_target_character = scope:polyglot - } - add_scheme_modifier = { - type = extra_success_chance_modifier - } - } - } - - reverse_add_opinion = { - target = scope:polyglot - modifier = impressed_opinion - opinion = 35 - } - - stress_impact = { - diligent = minor_stress_impact_loss - ambitious = miniscule_stress_impact_loss - patient = miniscule_stress_impact_loss - lazy = minor_stress_impact_gain - content = miniscule_stress_impact_gain - impatient = miniscule_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 1 - ai_rationality = 0.5 - } - } - } - - option = { #Try and learn it - name = bp2_yearly.5050.b - - trigger = { - NOT = { - num_of_known_languages > 1 - } - } - - start_scheme = { - type = learn_language - target_character = scope:polyglot - } - - reverse_add_opinion = { - target = scope:polyglot - modifier = pleased_opinion - opinion = 20 - } - - stress_impact = { - diligent = minor_stress_impact_loss - ambitious = miniscule_stress_impact_loss - patient = miniscule_stress_impact_loss - lazy = minor_stress_impact_gain - content = miniscule_stress_impact_gain - impatient = miniscule_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 1 - ai_rationality = 0.5 - } - } - } - - option = { #Try gather some useful info - name = bp2_yearly.5050.c - - add_learning_lifestyle_xp = minor_lifestyle_experience - - stress_impact = { - diligent = minor_stress_impact_loss - ambitious = miniscule_stress_impact_loss - patient = miniscule_stress_impact_loss - lazy = minor_stress_impact_gain - content = miniscule_stress_impact_gain - impatient = miniscule_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = -1 - ai_rationality = -0.5 - } - } - } -} - -# Child interacts with baby sibling -bp2_yearly.5051 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.5051.t - desc = bp2_yearly.5051.desc - theme = family - override_background = { reference = corridor_day } - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:child - animation = peekaboo - } - - trigger = { - has_bp2_dlc_trigger = yes - is_available_adult = yes - any_child = { - age >= 10 #Old enough to hold a kid - age < 16 #Still studying - not an adult - is_available = yes - location = root.location - save_temporary_scope_as = kid - } - any_child = { - age <= 2 #bebe - is_available = yes - location = root.location - this != scope:kid - } - } - - immediate = { - random_child = { - limit = { - age >= 10 - age < 16 - is_available = yes - location = root.location - } - save_scope_as = child - } - random_child = { - limit = { - age <= 2 - is_available = yes - location = root.location - this != scope:child - } - save_scope_as = baby - } - } - - # Encourage them to spend time with their sibling - option = { - name = bp2_yearly.5051.a - - scope:child = { - add_character_modifier = { - modifier = bp2_tight_knit_modifier - years = 25 - } - - add_stress = minor_stress_loss - } - - stress_impact = { - base = minor_stress_impact_loss - compassionate = miniscule_stress_impact_loss - lazy = miniscule_stress_impact_loss - callous = minor_stress_impact_gain - diligent = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - ai_sociability = 1 - } - } - } - - # Get them to spend more time on their studies - option = { - name = bp2_yearly.5051.b - - scope:child = { - add_learning_skill = 1 - - add_stress = minor_stress_gain - } - - stress_impact = { - compassionate = minor_stress_impact_gain - lazy = minor_stress_impact_gain - callous = miniscule_stress_impact_loss - diligent = miniscule_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = -1 - ai_sociability = -1 - } - } - } -} - -# Child spends time with their grandparent -bp2_yearly.5052 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.5052.t - desc = bp2_yearly.5052.desc - theme = family - override_background = { - trigger = { is_landless_adventurer = no } - reference = bp1_wine_cellar - } - override_background = { - trigger = { has_government = landless_adventurer_government } - reference = bp1_bonfire - } - left_portrait = { - character = scope:grandparent - animation = throne_room_conversation_1 - } - right_portrait = { - character = scope:child - animation = eavesdrop - } - - cooldown = { - years = 10 - } - - trigger = { - has_bp2_dlc_trigger = yes - is_available_adult = yes - any_child = { - age > 3 #Old enough to listen to stories - is_adult = no #...but young enough to not be too enraptured - is_available = yes - location = root.location - } - any_parent = { - is_available = yes - location = root.location - } - } - - immediate = { - random_child = { - limit = { - age > 3 - is_adult = no - is_available = yes - location = root.location - } - weight = { - base = 1 - modifier = { - add = 100 - is_primary_heir_of = root - } - } - save_scope_as = child - } - random_parent = { - limit = { - is_available = yes - location = root.location - } - save_scope_as = grandparent - } - } - - # Barge in and start telling _your_ stories - option = { - name = bp2_yearly.5052.a - - trigger = { - has_trait = arrogant - } - - add_character_modifier = { - modifier = bp2_one_upper_modifier - years = 10 - } - - reverse_add_opinion = { - target = scope:grandparent - modifier = annoyed_opinion - opinion = -30 - } - - stress_impact = { - base = medium_stress_impact_loss - gregarious = miniscule_stress_impact_loss - shy = medium_stress_impact_gain - callous = miniscule_stress_impact_loss - compassionate = miniscule_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = -1 - ai_sociability = 1 - } - } - } - - # Join and listen in - option = { - name = bp2_yearly.5052.b - - scope:child = { - random = { - chance = 50 - add_learning_skill = 1 - } - } - - add_character_modifier = { - modifier = bp2_listened_elders_modifier - years = 15 - } - - stress_impact = { - compassionate = miniscule_stress_impact_loss - lazy = miniscule_stress_impact_loss - gregarious = miniscule_stress_impact_loss - shy = minor_stress_impact_gain - callous = minor_stress_impact_gain - diligent = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 0.5 - ai_sociability = 1 - } - } - } - - # Leave them to it - option = { - name = bp2_yearly.5052.c - - scope:child = { - random_list = { - 1 = { - add_diplomacy_skill = 1 - } - 1 = { - add_martial_skill = 1 - } - 1 = { - add_stewardship_skill = 1 - } - 1 = { - add_intrigue_skill = 1 - } - 1 = { - add_learning_skill = 1 - } - } - } - - stress_impact = { - compassionate = miniscule_stress_impact_loss - gregarious = miniscule_stress_impact_loss - shy = miniscule_stress_impact_loss - callous = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = -1 - } - } - } -} - -# Host's child gets jealous of ward -bp2_yearly.5053 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.5053.t - desc = bp2_yearly.5053.desc - theme = family - override_background = { reference = bp2_courtyard } - left_portrait = { - character = root - animation = shock - } - right_portrait = { - character = scope:angry_kid - animation = anger - } - lower_center_portrait = { - character = scope:ward - } - - cooldown = { years = 20 } - - trigger = { - has_bp2_dlc_trigger = yes - is_available_adult = yes - any_child = { - age > 9 - is_available = yes - location = root.location - save_temporary_scope_as = angry_kid_temp - } - any_warden_hostage = { - NOR = { - culture = root.culture - culture = scope:angry_kid_temp.culture - } - age > 8 - is_hostage_of = root - is_available = yes - location = root.location - } - } - - immediate = { - random_child = { - limit = { - age > 9 - is_available = yes - location = root.location - } - save_scope_as = angry_kid - } - random_warden_hostage = { - limit = { - NOR = { - culture = root.culture - culture = scope:angry_kid.culture - } - age > 8 - is_hostage_of = root - is_available = yes - location = root.location - } - save_scope_as = ward - } - } - - # You know me, kiddo, I'd never do that! - option = { - name = bp2_yearly.5053.a - - trigger = { - has_trait = family_first - } - - add_diplomacy_skill = 1 - - scope:angry_kid = { - add_character_modifier = { - modifier = bp2_trusted_parent_modifier - years = 15 - } - } - - reverse_add_opinion = { - target = scope:angry_kid - modifier = relieved_opinion - opinion = 45 - } - - stress_impact = { - base = medium_stress_impact_loss - honest = miniscule_stress_impact_loss - deceitful = miniscule_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - ai_rationality = 0.5 - } - } - } - - # Try to convince them - option = { - name = bp2_yearly.5053.b - - trigger = { - NOT = { - has_trait = family_first - } - } - - duel = { - skill = diplomacy - value = decent_skill_rating - - 50 = { #You succeed - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = bp2_yearly.5053.b.success - send_interface_toast = { - title = bp2_yearly.5053.b.success - left_icon = root - right_icon = scope:angry_kid - - add_diplomacy_skill = 1 - - scope:angry_kid = { - add_character_modifier = { - modifier = bp2_trusted_parent_modifier - years = 15 - } - } - - reverse_add_opinion = { - target = scope:angry_kid - modifier = relieved_opinion - opinion = 25 - } - } - } - - 50 = { #You fail - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = bp2_yearly.5053.b.failure - send_interface_toast = { - title = bp2_yearly.5053.b.failure - left_icon = root - right_icon = scope:angry_kid - - add_character_modifier = { - modifier = bp2_foreign_influences_modifier - years = 15 - } - - reverse_add_opinion = { - target = scope:angry_kid - modifier = suspicious_opinion - opinion = -35 - } - } - } - } - - stress_impact = { - patient = miniscule_stress_impact_loss - impatient = minor_stress_impact_gain - just = miniscule_stress_impact_loss - arbitrary = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 0.5 - ai_sociability = 0.5 - } - } - } - - # Hostage is more of a child to me than you ever have been! - option = { - name = bp2_yearly.5053.c - - add_character_modifier = { - modifier = bp2_culturally_adventurous_modifier - years = 15 - } - - scope:angry_kid = { - add_character_modifier = { - modifier = bp2_parental_heartbreak_modifier - years = 25 - } - } - - reverse_add_opinion = { - target = scope:angry_kid - modifier = emotionally_devastated_opinion - opinion = -50 - } - - stress_impact = { - ambitious = minor_stress_impact_loss - content = medium_stress_impact_gain - sadistic = medium_stress_impact_loss - callous = minor_stress_impact_loss - compassionate = major_stress_impact_gain - just = medium_stress_impact_gain - arbitrary = medium_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = 0.5 - ai_compassion = -1 - } - } - } -} - -# Hostage and child are becoming friends -bp2_yearly.5054 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.5054.t - desc = bp2_yearly.5054.desc - theme = hostage - override_background = { reference = relaxing_room } - left_portrait = { - character = scope:child - animation = child_hobby_horse - } - right_portrait = { - character = scope:hostage - animation = clutching_ball - } - - trigger = { - has_bp2_dlc_trigger = yes - is_available_adult = yes - NOT = { #For loc purposes - has_trait = blind - } - any_child = { - age > 4 - is_adult = no - is_available = yes - location = root.location - } - any_warden_hostage = { - age > 4 - is_adult = no - is_hostage_of = root - is_available = yes - location = root.location - } - } - - immediate = { - random_child = { - limit = { - age > 4 - is_adult = no - is_available = yes - location = root.location - } - save_scope_as = child - } - random_warden_hostage = { - limit = { - age > 4 - is_adult = no - is_hostage_of = root - is_available = yes - location = root.location - } - save_scope_as = hostage - } - } - - # Encourage the friendship - option = { - name = bp2_yearly.5054.a - - scope:child = { - random_list = { - 1 = { - add_character_modifier = { - modifier = bp2_expanded_horizons_modifier - years = 20 - } - } - 1 = { add_learning_skill = 1 } - } - if = { - limit = { - can_set_relation_friend_trigger = { CHARACTER = scope:hostage } - } - set_relation_friend = { reason = friend_hostage_friendship target = scope:hostage } - } - } - - stress_impact = { - gregarious = miniscule_stress_impact_loss - trusting = minor_stress_impact_loss - compassionate = miniscule_stress_impact_loss - paranoid = minor_stress_impact_gain - callous = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - ai_sociability = 1 - } - } - } - - # Discourage the friendship - option = { - name = bp2_yearly.5054.b - - scope:child = { - add_intrigue_skill = 1 - - add_stress = minor_stress_gain - - reverse_add_opinion = { - target = scope:hostage - modifier = confused_opinion - opinion = -20 - } - - add_character_modifier = { - modifier = watchful_modifier - days = watchful_modifier_duration - } - } - - reverse_add_opinion = { - target = scope:hostage - modifier = confused_opinion - opinion = -20 - } - - stress_impact = { - gregarious = minor_stress_impact_gain - trusting = minor_stress_impact_gain - compassionate = minor_stress_impact_gain - paranoid = medium_stress_impact_loss - callous = miniscule_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = -1 - ai_sociability = -1 - } - } - } -} - - - -# Another child challenges you to a duel with wooden swords -bp2_yearly.5100 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.5100.t - desc = bp2_yearly.5100.desc - theme = friendly - override_background = { reference = courtyard } - left_portrait = { - character = root - animation = marshal_wooden_sword - } - right_portrait = { - character = scope:challenger - animation = wooden_sword_coup_degrace - } - - cooldown = { - years = 4 - } - - trigger = { - has_bp2_dlc_trigger = yes - NOT = { #It'd be a bit mean honestly - has_trait = blind - } - age >= 6 - is_available_child = yes - any_courtier_or_guest = { - age >= 6 - age <= root.age_plus_5 - age >= root.age_minus_5 - is_available_child = yes - location = root.location - } - } - - immediate = { - random_courtier_or_guest = { - limit = { - age >= 6 - age <= root.age_plus_5 - age >= root.age_minus_5 - is_available_child = yes - location = root.location - } - - weight = { - base = 1 - modifier = { - add = 10 - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = this } - } - } - - save_scope_as = challenger - } - } - - # En garde! - option = { - name = bp2_yearly.5100.a - - custom_tooltip = bp2_yearly.5100.a.tt - - add_prowess_skill = 1 - - set_temporary_signature_weapon = { #to be able to use wooden sword animations in the SCE, then return to previous signature weapon - WEAPON_TYPE = wooden_sword - } - scope:challenger = { - set_temporary_signature_weapon = { #to be able to use wooden sword animations in the SCE, then return to previous signature weapon - WEAPON_TYPE = wooden_sword - } - } - - configure_start_single_combat_effect = { - SC_INITIATOR = scope:challenger - SC_ATTACKER = scope:challenger - SC_DEFENDER = root - FATALITY = no - FIXED = no - LOCALE = courtyard - INVALIDATION_EVENT = single_combat.1006 - OUTPUT_EVENT = single_combat.1006 - } - - stress_impact = { - brave = miniscule_stress_impact_loss - ambitious = miniscule_stress_impact_loss - wrathful = miniscule_stress_impact_loss - calm = minor_stress_impact_gain - content = minor_stress_impact_gain - craven = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 1 - ai_boldness = 1 - } - } - } - - # Don't be foolish - option = { - name = bp2_yearly.5100.b - - flavor = bp2_yearly.5100.b.tt - - add_martial_skill = 1 - - reverse_add_opinion = { - target = scope:challenger - modifier = disappointed_opinion - opinion = -20 - } - - stress_impact = { - brave = medium_stress_impact_gain - ambitious = minor_stress_impact_gain - wrathful = minor_stress_impact_gain - calm = miniscule_stress_impact_loss - content = miniscule_stress_impact_loss - craven = miniscule_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - ai_sociability = 1 - } - } - } -} - -# You and another child pretend to ride horses -bp2_yearly.5101 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.5101.t - desc = bp2_yearly.5101.desc - theme = friendly - override_background = { reference = study } - left_portrait = { - character = root - animation = child_hobby_horse - } - right_portrait = { - character = scope:councillor - animation = stress - } - lower_center_portrait = { - character = scope:child - } - - cooldown = { - years = 4 - } - - trigger = { - has_bp2_dlc_trigger = yes - age >= 5 - age <= 15 - is_available_child = yes - any_courtier_or_guest = { - age >= 5 - age <= root.age_plus_5 - age >= root.age_minus_5 - is_available_child = yes - location = root.location - } - any_councillor = { - is_available = yes - location = root.location - } - } - - immediate = { - random_courtier_or_guest = { - limit = { - age >= 5 - age <= root.age_plus_5 - age >= root.age_minus_5 - is_available_child = yes - location = root.location - } - save_scope_as = child - } - random_councillor = { - limit = { - is_available = yes - location = root.location - } - save_scope_as = councillor - } - } - - # How dare! - option = { - name = bp2_yearly.5101.a - - trigger = { - OR = { - has_trait = arrogant - has_trait = stubborn - } - } - - add_character_modifier = { - modifier = bp2_strong_willed_modifier - years = 10 - } - - reverse_add_opinion = { - target = scope:councillor - modifier = angry_opinion - opinion = -30 - } - - stress_impact = { - base = medium_stress_impact_loss - calm = minor_stress_impact_gain - humble = minor_stress_impact_gain - fickle = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = -1 - ai_sociability = -1 - } - } - } - - # I'll race you outside! - option = { - name = bp2_yearly.5101.b - - random = { - chance = 50 - add_intrigue_skill = 1 - } - - duel = { - skill = prowess - target = scope:child - 50 = { #You win - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = bp2_yearly.5101.b.success - send_interface_toast = { - title = bp2_yearly.5101.b.success - left_icon = root - right_icon = scope:child - - add_prowess_skill = 1 - - random = { - chance = 25 - add_trait = athletic - } - } - } - 50 = { #You lose - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = bp2_yearly.5101.b.failure - send_interface_toast = { - title = bp2_yearly.5101.b.failure - left_icon = root - right_icon = scope:child - - add_stress = minor_stress_gain - } - } - } - - stress_impact = { - ambitious = miniscule_stress_impact_loss - arrogant = miniscule_stress_impact_loss - stubborn = miniscule_stress_impact_loss - content = minor_stress_impact_gain - humble = minor_stress_impact_gain - fickle = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 1 - ai_honor = 0.5 - } - } - } - - # Sorry, councillor, we'll be quiet - option = { - name = bp2_yearly.5101.c - - random = { - chance = 50 - add_diplomacy_skill = 1 - } - - reverse_add_opinion = { - target = scope:councillor - modifier = relieved_opinion - opinion = 25 - } - - stress_impact = { - ambitious = minor_stress_impact_gain - arrogant = minor_stress_impact_gain - stubborn = minor_stress_impact_gain - content = miniscule_stress_impact_loss - humble = miniscule_stress_impact_loss - fickle = miniscule_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - ai_sociability = 1 - } - } - } -} - -# You knock your sibling over by accident -bp2_yearly.5102 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.5102.t - desc = bp2_yearly.5102.desc - theme = family - override_background = { reference = bp2_courtyard } - left_portrait = { - character = root - animation = worry - } - right_portrait = { - character = scope:sibling - animation = crying - } - lower_center_portrait = { - character = scope:parent - } - - trigger = { - has_bp2_dlc_trigger = yes - age >= 4 - is_available_child = yes - any_sibling = { - age >= 4 - age <= root.age_plus_5 - age >= root.age_minus_5 - is_available_child = yes - location = root.location - } - any_parent = { - is_alive = yes - is_available = yes - location = root.location - } - any_courtier = { } - } - - immediate = { - random_sibling = { - limit = { - age >= 4 - age <= root.age_plus_5 - age >= root.age_minus_5 - is_available_child = yes - location = root.location - } - save_scope_as = sibling - } - random_parent = { - limit = { - is_alive = yes - is_available = yes - location = root.location - } - save_scope_as = parent - } - - reverse_add_opinion = { - target = scope:sibling - modifier = hurt_opinion - opinion = -10 - } - } - - # I'll... I'll buy you a toy! - option = { - name = bp2_yearly.5102.a - - trigger = { - OR = { - has_trait = generous - has_trait = craven - has_trait = compassionate - } - } - - remove_short_term_gold = tiny_gold_value - random_courtier = { - save_scope_as = inspiration_owner - } - scope:sibling = { - save_scope_as = statue_owner - create_artifact = { - name = tiny_sculpture_trinket_name - description = tiny_sculpture_trinket_description - type = miscellaneous - visuals = animal_figurine - modifier = artifact_dynasty_opinion_1_modifier - save_scope_as = newly_created_artifact - template = child_toy_template - } - } - - scope:newly_created_artifact = { - set_owner = { - target = scope:sibling - history = { - location = root.location - actor = root - recipient = scope:sibling - type = given - } - } - } - - stress_impact = { - generous = miniscule_stress_impact_loss - craven = miniscule_stress_impact_loss - compassionate = miniscule_stress_impact_loss - greedy = minor_stress_impact_gain - brave = minor_stress_impact_gain - callous = minor_stress_impact_gain - sadistic = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -1 - ai_honor = 1 - } - } - } - - # No no don't tell mum! - option = { - name = bp2_yearly.5102.b - - duel = { - skill = diplomacy - target = scope:sibling - 50 = { #They agree not to tell mum - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = bp2_yearly.5102.b.success - send_interface_toast = { - title = bp2_yearly.5102.b.success - left_icon = root - right_icon = scope:child - - add_stress = minor_stress_loss - - random = { - chance = 33 - add_diplomacy_skill = 1 - } - } - } - 50 = { #You're in trouble now son! - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = bp2_yearly.5102.b.failure - send_interface_toast = { - title = bp2_yearly.5102.b.failure - left_icon = root - right_icon = scope:child - - add_stress = minor_stress_gain - - reverse_add_opinion = { - target = scope:parent - modifier = angry_opinion - opinion = -15 - } - } - } - } - - stress_impact = { - trusting = miniscule_stress_impact_loss - patient = miniscule_stress_impact_loss - gregarious = miniscule_stress_impact_loss - paranoid = minor_stress_impact_gain - impatient = minor_stress_impact_gain - shy = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 1 - ai_energy = 0.5 - } - } - } - - # Oh get over it! - option = { - name = bp2_yearly.5102.c - - if = { - limit = { - NOT = { - number_of_personality_traits < childhood_personality_trait_gain_limit - has_trait = callous - } - } - add_trait = callous - } - - reverse_add_opinion = { - target = scope:sibling - modifier = hurt_opinion - opinion = -25 - } - - reverse_add_opinion = { - target = scope:parent - modifier = angry_opinion - opinion = -15 - } - - stress_impact = { - callous = medium_stress_impact_loss - sadistic = medium_stress_impact_loss - stubborn = miniscule_stress_impact_gain - compassionate = major_stress_impact_gain - fickle = minor_stress_impact_gain - craven = minor_stress_impact_gain - calm = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = -1 - } - } - } -} - -# You are caught stealing sweets -bp2_yearly.5103 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.5103.t - desc = bp2_yearly.5103.desc - theme = family - override_background = { reference = bp1_kitchen_western } - left_portrait = { - character = root - animation = crying - } - right_portrait = { - character = scope:parent - animation = go_to_your_room - } - - cooldown = { - years = 5 - } - - trigger = { - has_bp2_dlc_trigger = yes - age >= 4 - is_available_child = yes - OR = { - any_parent = { - is_alive = yes - is_available = yes - location = root.location - } - any_relation = { - type = guardian - is_alive = yes - is_available = yes - location = root.location - } - } - } - - immediate = { - save_scope_as = child - if = { - limit = { - any_parent = { - is_alive = yes - is_available = yes - location = root.location - } - } - random_parent = { - limit = { - is_alive = yes - is_available = yes - location = root.location - } - save_scope_as = parent - } - } - else = { - random_relation = { - type = guardian - limit = { - is_alive = yes - is_available = yes - location = root.location - } - save_scope_as = parent - } - } - } - - # I will be king/queen! Treat me with respect! - option = { - name = bp2_yearly.5103.a - - trigger = { - OR = { - has_trait = arrogant - has_trait = arbitrary - has_trait = stubborn - } - } - - add_character_modifier = { - modifier = bp2_sweet_treat_modifier - years = 5 - } - - reverse_add_opinion = { - target = scope:parent - modifier = angry_opinion - opinion = -35 - } - - stress_impact = { - base = medium_stress_impact_loss - arrogant = miniscule_stress_impact_loss - greedy = miniscule_stress_impact_loss - ambitious = miniscule_stress_impact_loss - humble = minor_stress_impact_gain - just = minor_stress_impact_gain - fickle = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 1 - ai_honor = 0.5 - } - } - } - - # Try and make a run for it with the treat - option = { - name = bp2_yearly.5103.b - - duel = { - skill = prowess - target = scope:parent - 50 = { #You get away - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = bp2_yearly.5103.b.success - send_interface_toast = { - title = bp2_yearly.5103.b.success - left_icon = root - right_icon = scope:parent - - add_stress = miniscule_stress_loss - - add_character_modifier = { - modifier = bp2_sweet_treat_modifier - years = 5 - } - } - } - 50 = { #They catch you - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = bp2_yearly.5103.b.failure - send_interface_toast = { - title = bp2_yearly.5103.b.failure - left_icon = root - right_icon = scope:parent - - add_stress = minor_stress_gain - - random = { - chance = 25 - increase_wounds_no_death_effect = { REASON = beaten } - } - } - } - } - - reverse_add_opinion = { - target = scope:parent - modifier = angry_opinion - opinion = -20 - } - - stress_impact = { - greedy = minor_stress_impact_loss - deceitful = miniscule_stress_impact_loss - honest = minor_stress_impact_gain - just = minor_stress_impact_gain - arbitrary = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = -0.5 - ai_energy = 1 - } - } - } - - # I'm sorry! - option = { - name = bp2_yearly.5103.c - - random = { - chance = 50 - add_diplomacy_skill = 1 - } - - reverse_add_opinion = { - target = scope:parent - modifier = disappointed_opinion - opinion = -5 - } - - stress_impact = { - greedy = medium_stress_impact_gain - deceitful = medium_stress_impact_gain - arbitrary = minor_stress_impact_gain - honest = miniscule_stress_impact_loss - just = miniscule_stress_impact_loss - temperate = miniscule_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = -1 - } - } - } -} - -# You find a lonely kid and ask them to play -bp2_yearly.5104 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.5104.t - desc = bp2_yearly.5104.desc - theme = friendly - override_background = { reference = bp2_courtyard } - left_portrait = { - character = root - animation = clutching_toy - } - right_portrait = { - character = scope:child - animation = boredom - } - cooldown = { - years = 3 - } - - trigger = { - has_bp2_dlc_trigger = yes - age >= 4 - age <= 14 - is_available_child = yes - NOR = { - has_trait = callous - has_trait = sadistic - } - any_courtier_or_guest = { - is_alive = yes - location = root.location - is_available_child = yes - age >= 4 - NOR = { - has_trait = gregarious - any_relation = { type = friend } - } - can_set_relation_friend_trigger = { CHARACTER = root } - } - } - - weight_multiplier = { - base = 1 - modifier = { - add = 0.5 - has_trait = pensive - } - modifier = { - add = 5 - OR = { - has_trait = wheezing - has_trait = depressed - has_trait = hunchbacked - has_trait = spindly - has_trait = bleeder - has_trait = physique_bad - has_trait = weak - has_trait = one_legged - has_trait = one_eyed - has_trait = reclusive - } - } - } - - immediate = { - random_courtier_or_guest = { - limit = { - is_alive = yes - is_available_child = yes - location = root.location - age >= 4 - NOR = { - has_trait = gregarious - any_relation = { type = friend } - } - can_set_relation_friend_trigger = { CHARACTER = root } - } - weight = { - base = 1 - modifier = { - add = 1 - has_trait = pensive - } - modifier = { - add = 10 - OR = { - has_trait = wheezing - has_trait = depressed - has_trait = hunchbacked - has_trait = spindly - has_trait = bleeder - has_trait = physique_bad - has_trait = weak - has_trait = one_legged - has_trait = one_eyed - has_trait = reclusive - } - } - } - save_scope_as = child - } - } - - # Sit with them - option = { - name = bp2_yearly.5104.a - - trigger = { - OR = { - has_trait = compassionate - has_trait = calm - has_trait = pensive - } - } - - add_diplomacy_skill = 1 - - set_relation_friend = { - reason = friend_sat_together - target = scope:child - } - - add_character_modifier = { - modifier = bp2_empathetic_modifier - years = 15 - } - - stress_impact = { - base = medium_stress_impact_loss - humble = miniscule_stress_impact_loss - wrathful = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = -1 - ai_sociability = 1 - } - } - } - - # Invite them to play - option = { - name = bp2_yearly.5104.b - - duel = { - skill = diplomacy - value = medium_skill_rating - 50 = { #They join in - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = bp2_yearly.5104.b.success - send_interface_toast = { - title = bp2_yearly.5104.b.success - left_icon = root - right_icon = scope:child - - progress_towards_friend_effect = { - REASON = friend_invited_to_play - CHARACTER = scope:child - OPINION = default_friend_opinion - } - } - } - 50 = { #They turn you down - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = bp2_yearly.5104.b.failure - send_interface_toast = { - title = bp2_yearly.5104.b.failure - left_icon = root - right_icon = scope:child - } - } - } - - stress_impact = { - stubborn = miniscule_stress_impact_loss - gregarious = miniscule_stress_impact_loss - impatient = miniscule_stress_impact_loss - patient = minor_stress_impact_gain - fickle = minor_stress_impact_gain - arbitrary = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 1 - } - } - } - - # Leave them to it - option = { - name = bp2_yearly.5104.c - - flavor = bp2_yearly.5104.c.tt - - stress_impact = { - base = miniscule_stress_impact_loss - stubborn = minor_stress_impact_gain - gregarious = minor_stress_impact_gain - impatient = minor_stress_impact_gain - patient = miniscule_stress_impact_loss - fickle = miniscule_stress_impact_loss - arbitrary = miniscule_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 1 - ai_energy = -0.5 - } - } - } -} - -# You and another friend have a pretend joust -bp2_yearly.5105 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.5105.t - desc = bp2_yearly.5105.desc - theme = friendly - override_background = { reference = bp2_courtyard } - left_portrait = { - character = root - animation = clutching_toy - } - right_portrait = { - character = scope:child - animation = child_hobby_horse - } - - cooldown = { - years = 4 - } - - trigger = { - has_bp2_dlc_trigger = yes - age >= 7 - age <= 15 - is_available_child = yes - any_courtier_or_guest = { - is_available_child = yes - location = root.location - age >= 7 - age <= 15 - } - } - - weight_multiplier = { - base = 1 - modifier = { - add = 1 - culture = { has_cultural_parameter = can_host_joust_contests } - } - modifier = { - add = 1 - any_courtier_or_guest = { - is_available_child = yes - location = root.location - culture = { has_cultural_parameter = can_host_joust_contests } - age >= 7 - age <= 15 - } - } - } - - immediate = { - play_music_cue = "mx_cue_war_declared" - - random_courtier_or_guest = { - limit = { - culture = { has_cultural_parameter = can_host_joust_contests } - is_alive = yes - is_available_child = yes - location = root.location - age >= 7 - age <= 15 - } - alternative_limit = { - is_alive = yes - is_available_child = yes - location = root.location - age >= 7 - age <= 15 - } - - weight = { - base = 1 - modifier = { - add = 10 - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = this } - } - } - - save_scope_as = child - } - } - - # Let's 'ave it then - option = { - name = bp2_yearly.5105.a - - flavor = bp2_yearly.5105.a.tt - - set_variable = { - name = joust_win_tally - value = 0 - } - - scope:child = { - set_variable = { - name = joust_win_tally - value = 0 - } - } - - duel = { - skill = prowess - target = scope:child - 50 = { #You win - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = bp2_yearly.5105.a.success - send_interface_toast = { - title = bp2_yearly.5105.a.success - left_icon = root - right_icon = scope:child - - add_stress = miniscule_stress_loss - - change_variable = { - name = joust_win_tally - add = 1 - } - - random = { - chance = 10 - scope:child = { - increase_wounds_no_death_effect = { REASON = wounds } - } - } - - trigger_event = { - id = bp2_yearly.5106 - } - } - } - 50 = { #You lose - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = bp2_yearly.5105.a.failure - send_interface_toast = { - title = bp2_yearly.5105.a.failure - left_icon = root - right_icon = scope:child - - add_stress = miniscule_stress_gain - - scope:child = { - change_variable = { - name = joust_win_tally - add = 1 - } - } - - random = { - chance = 10 - increase_wounds_no_death_effect = { REASON = wounds } - } - - trigger_event = { - id = bp2_yearly.5106 - } - } - } - } - - stress_impact = { - brave = minor_stress_impact_loss - ambitious = miniscule_stress_impact_loss - sadistic = miniscule_stress_impact_loss - craven = minor_stress_impact_gain - content = minor_stress_impact_gain - compassionate = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 1 - ai_sociability = 0.5 - } - } - } - - # Don't be silly - option = { - name = bp2_yearly.5105.b - - reverse_add_opinion = { - target = scope:child - modifier = disappointed_opinion - opinion = -15 - } - - stress_impact = { - stubborn = miniscule_stress_impact_loss - gregarious = miniscule_stress_impact_loss - impatient = miniscule_stress_impact_loss - patient = minor_stress_impact_gain - fickle = minor_stress_impact_gain - arbitrary = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 1 - } - } - } -} - -# Second round of the joust -bp2_yearly.5106 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.5106.t - desc = { - triggered_desc = { - trigger = { - var:joust_win_tally > 0 - } - desc = bp2_yearly.5106.desc.winning - } - triggered_desc = { - trigger = { - NOT = { - var:joust_win_tally > 0 - } - } - desc = bp2_yearly.5106.desc.losing - } - desc = bp2_yearly.5106.ending - } - theme = friendly - override_background = { reference = bp2_courtyard } - left_portrait = { - character = root - animation = child_hobby_horse - } - right_portrait = { - character = scope:child - animation = child_hobby_horse - } - - # Round two, fight! - option = { - name = bp2_yearly.5106.a - - flavor = bp2_yearly.5106.a.tt - - duel = { - skills = { martial prowess } - target = scope:child - 50 = { #You win - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = bp2_yearly.5106.a.success - send_interface_toast = { - title = bp2_yearly.5106.a.success - left_icon = root - right_icon = scope:child - - add_stress = miniscule_stress_loss - - change_variable = { - name = joust_win_tally - add = 1 - } - - random = { - chance = 10 - scope:child = { - increase_wounds_no_death_effect = { REASON = wounds } - } - } - - add_character_flag = won_second_round - - if = { - limit = { - var:joust_win_tally > 1 - } - trigger_event = bp2_yearly.5108 - } - else = { - trigger_event = bp2_yearly.5107 - } - } - } - 50 = { #You lose - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = bp2_yearly.5106.a.failure - send_interface_toast = { - title = bp2_yearly.5106.a.failure - left_icon = root - right_icon = scope:child - - add_stress = miniscule_stress_gain - - scope:child = { - change_variable = { - name = joust_win_tally - add = 1 - } - } - - random = { - chance = 10 - increase_wounds_no_death_effect = { REASON = wounds } - } - - if = { - limit = { - scope:child = { - var:joust_win_tally > 1 - } - } - trigger_event = bp2_yearly.5108 - } - else = { - trigger_event = bp2_yearly.5107 - } - } - } - } - - stress_impact = { - stubborn = miniscule_stress_impact_loss - brave = miniscule_stress_impact_loss - arrogant = miniscule_stress_impact_loss - patient = minor_stress_impact_gain - craven = minor_stress_impact_gain - humble = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 1 - } - } - } - - # Can we stop now? - option = { - name = bp2_yearly.5106.b - - if = { - limit = { - NOT = { - number_of_personality_traits < childhood_personality_trait_gain_limit - has_trait = craven - } - } - random = { - chance = 10 - add_trait = craven - } - } - - reverse_add_opinion = { - target = scope:child - modifier = disappointed_opinion - opinion = -25 - } - - stress_impact = { - stubborn = minor_stress_impact_gain - brave = minor_stress_impact_gain - arrogant = minor_stress_impact_gain - patient = miniscule_stress_impact_loss - craven = miniscule_stress_impact_loss - humble = miniscule_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = -1 - } - } - } -} - -# Third round of the joust -bp2_yearly.5107 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.5107.t - desc = { - triggered_desc = { - trigger = { - has_character_flag = won_second_round - } - desc = bp2_yearly.5107.desc.winning - } - triggered_desc = { - trigger = { - NOT = { - has_character_flag = won_second_round - } - } - desc = bp2_yearly.5107.desc.losing - } - desc = bp2_yearly.5107.ending - } - theme = friendly - override_background = { reference = bp2_courtyard } - left_portrait = { - character = root - animation = child_hobby_horse - } - right_portrait = { - character = scope:child - animation = child_hobby_horse - } - - # Final round, fight! - option = { - name = bp2_yearly.5107.a - - duel = { - skills = { intrigue prowess } - target = scope:child - 50 = { #You win - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = bp2_yearly.5107.a.success - send_interface_toast = { - title = bp2_yearly.5107.a.success - left_icon = root - right_icon = scope:child - - add_stress = miniscule_stress_loss - - change_variable = { - name = joust_win_tally - add = 1 - } - } - } - 50 = { #You lose - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = bp2_yearly.5107.a.failure - send_interface_toast = { - title = bp2_yearly.5107.a.failure - left_icon = root - right_icon = scope:child - - add_stress = miniscule_stress_gain - - scope:child = { - change_variable = { - name = joust_win_tally - add = 1 - } - } - } - } - } - - stress_impact = { - stubborn = miniscule_stress_impact_loss - brave = miniscule_stress_impact_loss - arrogant = miniscule_stress_impact_loss - patient = minor_stress_impact_gain - craven = minor_stress_impact_gain - humble = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 1 - } - } - } - - # All right, we both have one win... - option = { - name = bp2_yearly.5107.b - - send_interface_toast = { - title = bp2_yearly.5107.b.tt - left_icon = scope:child - random_list = { - 1 = { - desc = bp2_yearly.5107.b.tt_success - add_prowess_skill = 1 - } - 1 = { - desc = bp2_yearly.5107.b.tt_fail - custom_tooltip = bp2_yearly.5107.b_tt_fail - } - } - } - - reverse_add_opinion = { - target = scope:child - modifier = disappointed_opinion - opinion = -40 - } - - stress_impact = { - stubborn = minor_stress_impact_gain - brave = minor_stress_impact_gain - arrogant = minor_stress_impact_gain - patient = miniscule_stress_impact_loss - craven = miniscule_stress_impact_loss - humble = miniscule_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = -1 - } - } - } - - after = { - trigger_event = bp2_yearly.5108 - } -} - -# Joust resolution -bp2_yearly.5108 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.5108.t - desc = { - triggered_desc = { - trigger = { - var:joust_win_tally > 1 - } - desc = bp2_yearly.5108.desc.winning - } - triggered_desc = { - trigger = { - NOT = { - var:joust_win_tally > 1 - } - } - desc = bp2_yearly.5108.desc.losing - } - } - theme = friendly - override_background = { reference = bp2_courtyard } - left_portrait = { - character = root - triggered_animation = { - trigger = { var:joust_win_tally = 2 } - animation = throne_room_cheer_2 - } - triggered_animation = { - trigger = { - NOT = { var:joust_win_tally = 2 } - } - animation = crying - } - } - right_portrait = { - character = scope:child - triggered_animation = { - trigger = { - NOT = { var:joust_win_tally = 2 } - } - animation = crying - } - triggered_animation = { - trigger = { var:joust_win_tally = 2 } - animation = throne_room_cheer_2 - } - } - - immediate = { - if = { - limit = { - var:joust_win_tally = 2 - } - add_character_modifier = { - modifier = bp2_joust_prodigy_modifier - years = 15 - } - } - else = { - scope:child = { - add_character_modifier = { - modifier = bp2_joust_prodigy_modifier - years = 15 - } - } - } - } - - # Don't worry, I'm sure you'll get better! - option = { - name = bp2_yearly.5108.a - - trigger = { - var:joust_win_tally = 2 - } - - progress_towards_friend_effect = { - REASON = friend_joust_niceties - CHARACTER = scope:child - OPINION = 25 - } - - stress_impact = { - base = miniscule_stress_impact_loss - compassionate = miniscule_stress_impact_loss - content = miniscule_stress_impact_loss - gregarious = miniscule_stress_impact_loss - sadistic = minor_stress_impact_gain - callous = minor_stress_impact_gain - ambitious = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - } - } - } - - # Hah! In your FACE! - option = { - name = bp2_yearly.5108.b - - trigger = { - var:joust_win_tally = 2 - } - - progress_towards_rival_effect = { - REASON = rival_joust_antagonised - CHARACTER = scope:child - OPINION = -25 - } - - stress_impact = { - base = miniscule_stress_impact_loss - compassionate = minor_stress_impact_gain - content = minor_stress_impact_gain - gregarious = minor_stress_impact_gain - sadistic = miniscule_stress_impact_loss - callous = miniscule_stress_impact_loss - ambitious = miniscule_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = -1 - } - } - } - - # Gracious in defeat - option = { - name = bp2_yearly.5108.c - - trigger = { - NOT = { - var:joust_win_tally = 2 - } - } - - scope:child = { - progress_towards_friend_effect = { - REASON = friend_joust_niceties - CHARACTER = root - OPINION = 25 - } - } - - stress_impact = { - compassionate = miniscule_stress_impact_loss - content = miniscule_stress_impact_loss - gregarious = miniscule_stress_impact_loss - sadistic = minor_stress_impact_gain - callous = minor_stress_impact_gain - ambitious = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - } - } - } - - # Screw you, I'll get you next time! - option = { - name = bp2_yearly.5108.d - - trigger = { - NOT = { - var:joust_win_tally = 2 - } - } - - scope:child = { - progress_towards_rival_effect = { - REASON = rival_joust_antagonised - CHARACTER = root - OPINION = -25 - } - } - - stress_impact = { - compassionate = minor_stress_impact_gain - content = minor_stress_impact_gain - gregarious = minor_stress_impact_gain - sadistic = miniscule_stress_impact_loss - callous = miniscule_stress_impact_loss - ambitious = miniscule_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = -1 - } - } - } - - after = { - scope:child = { - remove_variable = joust_win_tally - } - remove_character_flag = won_second_round - remove_variable = joust_win_tally - } -} - -# You comfort a sad kid -bp2_yearly.5109 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.5109.t - desc = { - desc = bp2_yearly.5109.desc - first_valid = { - triggered_desc = { - trigger = { - scope:parent = { - is_parent_of = root - } - } - desc = bp2_yearly.5109.desc_sibling - } - desc = bp2_yearly.5109.desc_unrelated - } - } - theme = friendly - override_background = { reference = bp2_courtyard } - left_portrait = { - character = root - animation = worry - } - right_portrait = { - character = scope:child - animation = crying - } - lower_center_portrait = { - character = scope:parent - } - - cooldown = { - years = 4 - } - - trigger = { - has_bp2_dlc_trigger = yes - age >= 4 - is_available_child = yes - any_courtier_or_guest = { - is_alive = yes - is_available_child = yes - location = root.location - age >= 4 - age <= 16 - any_parent = { - is_alive = no - even_if_dead = yes - } - can_set_relation_friend_trigger = { CHARACTER = root } - } - } - - immediate = { - random_courtier_or_guest = { - limit = { - is_alive = yes - is_available_child = yes - location = root.location - age >= 4 - age <= 16 - any_parent = { - is_alive = no - even_if_dead = yes - } - can_set_relation_friend_trigger = { CHARACTER = root } - } - save_scope_as = child - } - scope:child = { - random_parent = { - even_if_dead = yes - limit = { - is_alive = no - } - save_scope_as = parent - } - } - } - - # Comfort them with religion - option = { - name = bp2_yearly.5109.a - - trigger = { - AND = { - OR = { - faith.religion = { #Use Abrahamics for an afterlife - is_in_family = rf_abrahamic - } - religion = religion:zoroastrianism_religion #Or Zoroastrianism - } - OR = { #Either you or they are Zealous - has_trait = zealous - scope:child = { - has_trait = zealous - } - } - } - } - - add_learning_skill = 1 - - progress_towards_friend_effect = { - REASON = friend_religious_comfort - CHARACTER = scope:child - OPINION = default_friend_opinion - } - - add_character_modifier = { - modifier = bp2_afterlife_citer_modifier - years = 20 - } - - stress_impact = { - base = minor_stress_impact_loss - zealous = minor_stress_impact_loss - cynical = major_stress_impact_gain - sadistic = medium_stress_impact_gain - callous = medium_stress_impact_gain - } - - - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = sadistic - has_trait = callous - has_trait = cynical - } - } - } - - # Comfort them with words - option = { - name = bp2_yearly.5109.b - - duel = { - skill = diplomacy - target = scope:child - 50 = { #They feel better - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = bp2_yearly.5109.b.success - send_interface_toast = { - title = bp2_yearly.5109.b.success - left_icon = root - right_icon = scope:child - - add_stress = miniscule_stress_loss - - add_diplomacy_skill = 1 - - progress_towards_friend_effect = { - REASON = friend_comforting_words - CHARACTER = scope:child - OPINION = default_friend_opinion - } - } - } - 50 = { #They are inconsolable - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = bp2_yearly.5109.b.failure - send_interface_toast = { - title = bp2_yearly.5109.b.failure - left_icon = root - right_icon = scope:child - - add_stress = medium_stress_gain - } - } - } - - stress_impact = { - calm = miniscule_stress_impact_loss - gregarious = miniscule_stress_impact_loss - patient = miniscule_stress_impact_loss - impatient = minor_stress_impact_gain - shy = minor_stress_impact_gain - wrathful = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = -0.5 - ai_compassion = 1 - } - } - } - - # Leave - option = { - name = bp2_yearly.5109.c - - flavor = bp2_yearly.5109.c.tt - - add_character_modifier = { - modifier = bp2_numbed_to_death_modifier - years = 10 - } - - stress_impact = { - base = miniscule_stress_impact_gain - callous = minor_stress_impact_loss - sadistic = miniscule_stress_impact_loss - lazy = miniscule_stress_impact_loss - compassionate = minor_stress_impact_gain - diligent = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = -1 - } - } - } -} diff --git a/events/dlc/bp2/bp2_yearly_7.txt b/events/dlc/bp2/bp2_yearly_7.txt deleted file mode 100644 index 1083b593d..000000000 --- a/events/dlc/bp2/bp2_yearly_7.txt +++ /dev/null @@ -1,6050 +0,0 @@ -namespace = bp2_yearly - -################################################## -# Wet Nurse Events -# by Arkadiusz Majewski -# 7000 Wet Nurse is sick and can pass it down to a child -# 7001 Spouse is jealous about a Wet Nurse -# 7002 Turns out your relationship is incestous, due to having the same Wet Nurse -# 7003 Wet Nurse informs you about first words of your child -# 7004 Wet Nurse informs you about first steps of your child -# 7005 Wet Nurse informs you about first fallen teeth of your child -# 7006 Wet Nurse informs you about first fallen teeth of your child -# 7007 Hidden event to kick off either positive (7009, 7011) or negative (7008, 7010) paths -# 7008 Neglected child reflects on neglecting parent -# 7009 Cared child reflects on caring parent -# 7010 Neglected child demands something from you -# 7011 Cared child gives you something -# 7012 Child complains about fired Wet Nurse they liked -# 7013 Child grieves over dead Wet Nurse they liked -# 7014 Child and Wet Nurse connect over same faith/culture -# -# Rites of Passage - events outcomes for the decision bp2_decision.0002 -# 7021 duel -# 7022 Duel outcome -# 7023 scarification -# 7024 seclusion -# 7025 seclusion on arrival -# 7026 hair shaving -# 7027 cleansing with water -# 7028 cleansing with fire -# 7029 Completed rite memory follow up event - other tribal child does the rite, you can encourage them or let them back out -# -################################################## -scripted_effect contract_disease_from_wet_nurse_effect = { - if = { - limit = { - scope:wet_nurse ?= { has_trait = bubonic_plague } - can_contract_disease_trigger = { DISEASE = bubonic_plague } - } - contract_disease_effect = { DISEASE = bubonic_plague TREATMENT_EVENT = yes } - } - else_if = { - limit = { - scope:wet_nurse ?= { has_trait = smallpox } - can_contract_disease_trigger = { DISEASE = smallpox } - } - contract_disease_effect = { DISEASE = smallpox TREATMENT_EVENT = yes } - } - else_if = { - limit = { - scope:wet_nurse ?= { has_trait = typhus } - can_contract_disease_trigger = { DISEASE = typhus } - } - contract_disease_effect = { DISEASE = typhus TREATMENT_EVENT = yes } - } - else_if = { - limit = { - scope:wet_nurse ?= { has_trait = pneumonic } - can_contract_disease_trigger = { DISEASE = pneumonic } - } - contract_disease_effect = { DISEASE = pneumonic TREATMENT_EVENT = yes } - } - else_if = { - limit = { - scope:wet_nurse ?= { has_trait = ill } - can_contract_disease_trigger = { DISEASE = ill } - } - contract_disease_effect = { DISEASE = ill TREATMENT_EVENT = yes } - } - else = { - add_character_modifier = { - modifier = malnourished_modifier - years = 5 - } - } -} - -bp2_yearly.7000 = { #Wet Nurse is sick and can pass it down to a child - type = character_event - content_source = dlc_009 - title = bp2_yearly.7000.t - desc = { - first_valid = { - triggered_desc = { - trigger = { scope:nursed_child ?= root} - desc = bp2_yearly.7000.desc_child_liege - } - desc = bp2_yearly.7000.desc - } - } - theme = family - override_background = { - reference = bp2_nursery - } - left_portrait = { - character = root - triggered_animation = { - trigger = { - age < 12 - } - animation = crying - } - triggered_animation = { - trigger = { - age >= 12 - } - animation = worry - } - } - right_portrait = { - character = scope:wet_nurse - triggered_animation = { - trigger = { - root = { age < 12 } - } - animation = sadness - } - triggered_animation = { - trigger = { - root = { age >= 12 } - } - animation = crying - } - } - lower_right_portrait = { - trigger = { NOT = { scope:nursed_child ?= root } } - character = scope:nursed_child - } - - cooldown = { years = 10 } - - trigger = { - has_bp2_dlc_trigger = yes - any_court_position_holder ?= { - type = wet_nurse_court_position - save_temporary_scope_as = wet_nurse_temp - } - scope:wet_nurse_temp = { - OR = { - health < 3 - has_short_disease_trigger = yes - has_serious_disease_trigger = yes - } - } - OR = { - AND = { - is_available_adult = yes - any_child ?= { - has_relation_wet_nurse = scope:wet_nurse_temp - is_ai = yes - is_landed = no - is_adult = no - location = scope:wet_nurse_temp.location - } - } - AND = { - age >= 3 - is_available_child = yes - is_landed = yes - has_relation_wet_nurse = scope:wet_nurse_temp - location = scope:wet_nurse_temp.location - } - } - } - immediate = { - random_court_position_holder = { - type = wet_nurse_court_position - save_scope_as = wet_nurse - } - if = { - limit = { - is_available_adult = yes - } - random_child = { - limit = { - has_relation_wet_nurse = scope:wet_nurse - is_ai = yes - is_landed = no - is_adult = no - location = scope:wet_nurse.location - } - save_scope_as = nursed_child - } - } - else = { - save_scope_as = nursed_child - } - save_court_physician_as_effect = { SCOPE_NAME = court_physician } - if = { - limit = { scope:wet_nurse = { has_short_disease_trigger = yes} } - scope:wet_nurse = { - set_worst_disease_effect = yes - save_scope_as = sick_character - } - } - } - - - # Can't be your fault, you are a good nurse - option = { - name = bp2_yearly.7000.a - flavor = bp2_yearly.7000.a.tt - random_list = { - 15 = { - show_chance = no - desc = bp2_yearly.7000.ill - send_interface_toast = { - title = bp2_yearly.7000.a.tt - left_icon = root - right_icon = scope:nursed_child - scope:nursed_child = { - contract_disease_from_wet_nurse_effect = yes - } - } - } - 75 = { - show_chance = no - desc = bp2_yearly.7000.healthy - send_interface_toast = { - title = bp2_yearly.7000.a.tt - left_icon = root - right_icon = scope:nursed_child - custom_tooltip = bp2_yearly.7000.healthy.tt - } - } - } - scope:wet_nurse = { - add_character_modifier = { - modifier = safe_disease_treatment_success_high_modifier - days = disease_treatment_short_duration - } - } - remove_short_term_gold = minor_gold_value - stress_impact = { - compassionate = medium_stress_impact_loss - wrathful = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - has_trait = wrathful - add = -10 - } - modifier = { - has_trait = compassionate - add = 10 - } - } - } - # I'm disappointed and gonna fire you - option = { - name = bp2_yearly.7000.b - revoke_court_position = { - recipient = scope:wet_nurse - court_position = wet_nurse_court_position - } - random_list = { - 10 = { - show_chance = no - desc = bp2_yearly.7000.ill - send_interface_toast = { - title = bp2_yearly.7000.b.tt - left_icon = root - right_icon = scope:nursed_child - scope:nursed_child = { - contract_disease_from_wet_nurse_effect = yes - } - } - } - 90 = { - show_chance = no - desc = bp2_yearly.7000.healthy - send_interface_toast = { - title = bp2_yearly.7000.b.tt - left_icon = root - right_icon = scope:nursed_child - custom_tooltip = bp2_yearly.7000.healthy.tt - } - } - } - stress_impact = { - wrathful = minor_stress_impact_loss - compassionate = minor_stress_impact_gain - } - ai_chance = { - base = 10 - modifier = { - has_trait = compassionate - add = -10 - } - } - } - # I'm mad and gonna throw you in prison - option = { - name = { - trigger = { is_adult = no } - text = bp2_yearly.7000.c_child_liege - } - name = { - trigger = { is_adult = yes } - text = bp2_yearly.7000.c - } - rightfully_imprison_character_effect = { - TARGET = scope:wet_nurse - IMPRISONER = root - } - random_list = { - 5 = { - show_chance = no - desc = bp2_yearly.7000.ill - send_interface_toast = { - title = bp2_yearly.7000.b.tt - left_icon = root - right_icon = scope:nursed_child - scope:nursed_child = { - contract_disease_from_wet_nurse_effect = yes - } - } - } - 95 = { - show_chance = no - desc = bp2_yearly.7000.healthy - send_interface_toast = { - title = bp2_yearly.7000.b.tt - left_icon = root - right_icon = scope:nursed_child - custom_tooltip = bp2_yearly.7000.healthy.tt - } - } - } - stress_impact = { - wrathful = medium_stress_impact_loss - compassionate = medium_stress_impact_gain - } - ai_chance = { - base = 5 - modifier = { - has_trait = wrathful - add = 10 - } - modifier = { - has_trait = compassionate - add = -5 - } - } - } -} - -bp2_yearly.7001 = { #Spouse is jealous about a Wet Nurse - type = character_event - content_source = dlc_009 - title = bp2_yearly.7001.t - desc = { - desc = bp2_yearly.7001.desc - first_valid = { - triggered_desc = { - trigger = { has_relation_lover = scope:wet_nurse } - desc = bp2_yearly.7001.desc_lover - } - desc = bp2_yearly.7001.desc_no_lover - } - } - theme = family - override_background = { - reference = bp2_nursery - } - left_portrait = { - character = root - animation = dismissal - } - right_portrait = { - character = scope:jealous_spouse - animation = go_to_your_room - } - lower_right_portrait = scope:wet_nurse - - cooldown = { years = 10 } - - trigger = { - has_bp2_dlc_trigger = yes - is_available_adult = yes - any_court_position_holder ?= { - type = wet_nurse_court_position - OR = { - has_trait = beauty_good - has_trait = physique_good - has_trait = strong - has_trait = loyal - has_trait = lustful - } - save_temporary_scope_as = wet_nurse_temp - } - is_attracted_to_gender_of = scope:wet_nurse_temp - any_spouse ?= { - is_available_ai_adult = yes - NOT = { - this = scope:wet_nurse_temp - any_known_secret = { - secret_owner = root - AND = { - secret_type = secret_lover - secret_target = scope:wet_nurse_temp - } - } - } - OR = { - has_trait = fickle - has_trait = vengeful - has_trait = wrathful - has_trait = arbitrary - has_trait = paranoid - } - } - } - immediate = { - random_court_position_holder = { - type = wet_nurse_court_position - save_scope_as = wet_nurse - } - random_spouse ?= { - limit = { - is_available_ai_adult = yes - NOT = { - any_known_secret = { - secret_owner = root - AND = { - secret_type = secret_lover - secret_target = scope:wet_nurse_temp - } - } - } - OR = { - has_trait = fickle - has_trait = vengeful - has_trait = wrathful - has_trait = arbitrary - has_trait = paranoid - root = { - any_secret = { - secret_type = secret_lover - secret_target = scope:wet_nurse - } - } - } - } - save_scope_as = jealous_spouse - } - if = { - limit = { - any_secret = { - type = secret_lover - secret_target = scope:wet_nurse - NOT = { - any_secret_knower = { THIS = scope:jealous_spouse } - } - } - } - random_secret = { - type = secret_lover - limit = { - secret_target = scope:wet_nurse - NOT = { - any_secret_knower = { THIS = scope:jealous_spouse } - } - } - save_scope_as = wet_nurse_secret_lover - } - } - } - - option = { #try to convince your spouse it's not a big deal, although she is right - name = bp2_yearly.7001.a - trigger = { - exists = scope:wet_nurse_secret_lover - } - reason = scope:wet_nurse_secret_lover - custom_tooltip = bp2_yearly.7001.a.tt - duel = { - skill = intrigue - target = scope:jealous_spouse - # you comfort your spouse - 65 = { - desc = bp2_yearly.7001.b.spouse_convinced - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - reverse_add_opinion = { - target = scope:jealous_spouse - modifier = relieved_opinion - opinion = 10 - } - reverse_add_opinion = { - target = scope:wet_nurse - modifier = protected_me_opinion - opinion = 10 - } - } - # your spouse is right about your affair - 35 = { - desc = bp2_yearly.7001.b.spouse_not_convinced - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - scope:wet_nurse_secret_lover = { - reveal_to = scope:jealous_spouse - } - } - } - stress_impact = { - compassionate = medium_stress_impact_loss - wrathful = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - has_trait = wrathful - add = -10 - } - modifier = { - has_trait = compassionate - add = 10 - } - } - } - - option = { #try to convince your spouse it's not a big deal, because it isn't or she already knows - name = bp2_yearly.7001.b - trigger = { - NOT = { exists = scope:wet_nurse_secret_lover } - } - duel = { - skill = diplomacy - target = scope:jealous_spouse - # you comfort your spouse - 65 = { - desc = bp2_yearly.7001.b.spouse_convinced - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - modifier = { #you are a known liar - factor = 0 - OR = { - any_secret = { - type = secret_lover - secret_target != scope:jealous_spouse - any_secret_knower = { THIS = scope:jealous_spouse } - } - has_trait = adulterer - } - } - reverse_add_opinion = { - target = scope:jealous_spouse - modifier = relieved_opinion - opinion = 10 - } - } - 35 = { - trigger = { - NOR = { - any_secret = { - type = secret_lover - secret_target != scope:jealous_spouse - any_secret_knower = { THIS = scope:jealous_spouse } - } - has_trait = adulterer - } - } - desc = bp2_yearly.7001.b.spouse_not_convinced - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - reverse_add_opinion = { - target = scope:jealous_spouse - modifier = cheater_opinion - opinion = -30 - } - } - # you're a known liar - 100 = { - trigger = { - OR = { - any_secret = { - type = secret_lover - secret_target != scope:jealous_spouse - any_secret_knower = { THIS = scope:jealous_spouse } - } - has_trait = adulterer - } - } - desc = bp2_yearly.7001.tt - reverse_add_opinion = { - target = scope:jealous_spouse - modifier = cheater_opinion - opinion = -30 - } - } - } - stress_impact = { - compassionate = medium_stress_impact_loss - wrathful = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - has_trait = wrathful - add = -10 - } - modifier = { - has_trait = compassionate - add = 10 - } - } - } - # Get rid of the problem, fire the nurse - option = { - name = bp2_yearly.7001.c - revoke_court_position = { - recipient = scope:wet_nurse - court_position = wet_nurse_court_position - } - reverse_add_opinion = { - target = scope:jealous_spouse - modifier = pleased_opinion - opinion = 30 - } - stress_impact = { - wrathful = minor_stress_impact_loss - compassionate = minor_stress_impact_gain - } - ai_chance = { - base = 10 - modifier = { - has_trait = compassionate - add = -10 - } - } - } -} - -bp2_yearly.7002 = { #Turns out your relationship is incestous, due to having the same Wet Nurse - type = character_event - content_source = dlc_009 - title = bp2_yearly.7002.t - desc = bp2_yearly.7002.desc - theme = family - override_background = { - reference = relaxing_room - } - left_portrait = { - character = root - animation = shock - } - right_portrait = { - character = scope:court_chaplain - animation = worry - } - lower_left_portrait = scope:spouse - - cooldown = { years = 10 } - - trigger = { - has_bp2_dlc_trigger = yes - is_available_adult = yes - faith = { - OR = { - has_doctrine = doctrine_consanguinity_restricted - has_doctrine = doctrine_consanguinity_cousins - } - } - any_spouse ?= { - is_ai = yes - NOT = { is_close_family_of = root } - has_same_wet_nurse_trigger = { - SCOPE = this - OTHER_SCOPE = root - } - save_temporary_scope_as = spouse_temp - } - OR = { - cp:councillor_court_chaplain ?= { - NOT = { has_character_flag = had_bp2_yearly_7002 } - is_available_ai_adult = yes - } - any_courtier_or_guest = { - is_clergy = yes - } - } - } - weight_multiplier = { - base = 1 - modifier = { - add = 4 - faith.religion ?= religion:islam_religion - } - modifier = { - add = 4 - scope:court_chaplain ?= { - OR = { - opinion = { - target = root - value <= -50 - } - opinion = { - target = scope:spouse_temp - value <= -50 - } - OR = { - has_relation_rival = root - has_relation_nemesis = root - } - OR = { - has_relation_rival = scope:spouse_temp - has_relation_nemesis = scope:spouse_temp - } - } - } - } - } - immediate = { - random_spouse ?= { - limit = { - is_ai = yes - NOT = { is_close_family_of = root } - has_same_wet_nurse_trigger = { - SCOPE = this - OTHER_SCOPE = root - } - } - save_scope_as = spouse - } - if = { - limit = { exists = cp:councillor_court_chaplain } - cp:councillor_court_chaplain = { save_scope_as = court_chaplain } - } - else = { - ordered_courtier_or_guest = { - limit = { is_clergy = yes } - order_by = ai_zeal - save_scope_as = court_chaplain - } - } - } - - option = { #I guess it's incest? - name = bp2_yearly.7002.a - scope:spouse = { - add_secret = { - type = secret_incest - } - } - reverse_add_opinion = { - target = scope:spouse - modifier = love_opinion - opinion = 25 - } - add_secret = { - type = secret_incest - target = scope:spouse - } - progress_towards_rival_effect = { - REASON = rival_accused_of_perversion - CHARACTER = scope:court_chaplain - OPINION = default_rival_opinion - } - random_secret = { - type = secret_incest - reveal_to_without_events_effect = { - CHARACTER = scope:court_chaplain - } - } - create_character_memory = { - type = incestous_marriage_wet_nurse - participants = { - spouse = scope:spouse - } - } - stress_impact = { - compassionate = medium_stress_impact_loss - cynical = minor_stress_impact_loss - zealous = minor_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - has_trait = zealous - add = -10 - } - modifier = { - OR = { - has_trait = compassionate - has_trait = cynical - } - add = 10 - } - } - } - - option = { #divorce them - name = bp2_yearly.7002.b - divorce_effect = { - DIVORCER = root - DIVORCEE = scope:spouse - } - reverse_add_opinion = { - target = scope:court_chaplain - modifier = took_my_advice_opinion - opinion = 25 - } - create_character_memory = { - type = incestous_divorce_wet_nurse - participants = { - spouse = scope:spouse - } - } - stress_impact = { - zealous = medium_stress_impact_loss - compassionate = minor_stress_impact_gain - } - ai_chance = { - base = 10 - modifier = { - has_trait = compassionate - add = -10 - } - modifier = { - has_trait = zealous - add = 10 - } - modifier = { - OR = { - has_relation_lover = scope:spouse - has_relation_soulmate = scope:spouse - } - factor = 0 - } - } - } - option = { #pay them off - name = bp2_yearly.7002.c - pay_short_term_gold = { - target = scope:court_chaplain - gold = minor_gold_value - } - reverse_add_opinion = { - target = scope:spouse - modifier = love_opinion - opinion = 10 - } - reverse_add_opinion = { - target = scope:court_chaplain - modifier = pleased_opinion - opinion = 10 - } - create_character_memory = { - type = incestous_marriage_wet_nurse - participants = { - spouse = scope:spouse - } - } - stress_impact = { - compassionate = minor_stress_impact_loss - greedy = minor_stress_impact_gain - } - ai_chance = { - base = 10 - modifier = { - has_trait = greedy - add = -10 - } - modifier = { - has_trait = compassionate - add = 10 - } - } - } - after = { - scope:court_chaplain = { - add_character_flag = had_bp2_yearly_7002 - } - } -} - -scripted_effect parental_neglect_effect = { - if = { - limit = { - $RESENTING$ = { - has_relation_nemesis = $RESENTED$ - } - } - send_interface_toast = { - title = bp2_yearly.parental_neglect_effect - left_icon = $RESENTING$ - right_icon = $RESENTED$ - add_opinion = { - target = $RESENTED$ - modifier = hate_opinion - opinion = -50 - } - } - } - else_if = { - limit = { - $RESENTING$ = { - has_relation_rival = $RESENTED$ - } - } - $RESENTING$ = { - set_relation_nemesis = { - target = $RESENTED$ - reason = rival_parent_neglect - } - } - } - else_if = { - limit = { - $RESENTING$ = { - has_relation_potential_rival = $RESENTED$ - } - } - $RESENTING$ = { - set_relation_rival = { - target = $RESENTED$ - reason = rival_parent_neglect - } - } - } - else = { - random = { - chance = 20 - $RESENTING$ = { - set_relation_potential_rival = { - target = $RESENTED$ - reason = rival_parent_neglect - } - } - } - } -} - -bp2_yearly.7003 = { #Wet Nurse informs you about first words of your child - type = character_event - content_source = dlc_009 - title = bp2_yearly.7003.t - desc = { - desc = bp2_yearly.7003.desc - first_valid = { - triggered_desc = { - trigger = { scope:first_word = flag:motto} - desc = bp2_yearly.7003.desc_motto - } - triggered_desc = { - trigger = { scope:first_word = flag:house} - desc = bp2_yearly.7003.desc_house - } - triggered_desc = { - trigger = { scope:first_word = flag:military} - desc = bp2_yearly.7003.desc_military - } - triggered_desc = { - trigger = { scope:first_word = flag:gold} - desc = bp2_yearly.7003.desc_gold - } - triggered_desc = { - trigger = { scope:first_word = flag:secret} - desc = bp2_yearly.7003.desc_secret - } - triggered_desc = { - trigger = { scope:first_word = flag:faith} - desc = bp2_yearly.7003.desc_faith - } - triggered_desc = { - trigger = { scope:first_word = flag:gibberish root = {is_male = yes}} - desc = bp2_yearly.7003.desc_father - } - triggered_desc = { - trigger = { scope:first_word = flag:gibberish root = {is_female = yes}} - desc = bp2_yearly.7003.desc_mother - } - } - } - theme = family - override_background = { reference = bp2_nursery } - left_portrait = { - character = root - animation = happiness - } - right_portrait = { - character = scope:nursed_child - animation = clutching_toy - } - lower_right_portrait = scope:wet_nurse - - cooldown = { years = 12 } - - trigger = { - has_bp2_dlc_trigger = yes - is_available_adult = yes - any_court_position_holder ?= { - type = wet_nurse_court_position - is_available_adult = yes - location = root.location - } - any_courtier = { - age < 5 - child_not_infant_trigger = yes - is_available_ai = yes - location = root.location - OR = { - is_child_of = root - is_grandchild_of = root - is_great_grandchild_of = root - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - factor = 50 - any_child = { - OR = { - this = root.player_heir - NOT = { - any_sibling = { - age > prev.age - } - } - has_variable_list = neglect_reason - has_variable_list = praise_reason - } - } - } - } - - immediate = { - random_court_position_holder ?= { - type = wet_nurse_court_position - save_scope_as = wet_nurse - } - random_courtier = { - limit = { - age < 5 - child_not_infant_trigger = yes - this = root.player_heir - is_available_ai = yes - location = root.location - OR = { - is_child_of = root - is_grandchild_of = root - is_great_grandchild_of = root - } - } - alternative_limit = { - age < 5 - child_not_infant_trigger = yes - NOT = { - any_sibling = { - age > prev.age - } - } - is_available_ai = yes - location = root.location - is_child_of = root - } - alternative_limit = { - age < 5 - child_not_infant_trigger = yes - is_available_ai = yes - location = root.location - is_child_of = root - } - alternative_limit = { - age < 5 - child_not_infant_trigger = yes - is_available_ai = yes - location = root.location - OR = { - is_child_of = root - is_grandchild_of = root - is_great_grandchild_of = root - } - } - weight = { - base = 1 - modifier = { - add = 50 - OR = { - has_variable_list = neglect_reason - has_variable_list = praise_reason - } - } - } - save_scope_as = nursed_child - } - scope:nursed_child = { - random_list = { - 0 = { - modifier = { - add = 10 - highest_skill = diplomacy - } - save_scope_value_as = { - name = first_word - value = flag:house - } - } - 0 = { - modifier = { - add = 10 - OR = { - highest_skill_including_prowess = prowess - highest_skill_including_prowess = martial - } - } - save_scope_value_as = { - name = first_word - value = flag:military - } - } - 0 = { - modifier = { - add = 10 - highest_skill = stewardship - } - save_scope_value_as = { - name = first_word - value = flag:gold - } - } - 0 = { - modifier = { - add = 10 - highest_skill = intrigue - } - save_scope_value_as = { - name = first_word - value = flag:secret - } - } - 0 = { - modifier = { - add = 10 - highest_skill = learning - } - save_scope_value_as = { - name = first_word - value = flag:faith - } - } - 5 = { - save_scope_value_as = { - name = first_word - value = flag:gibberish - } - } - 0 = { - modifier = { - add = 100 - has_trait = intellect_good - } - save_scope_value_as = { - name = first_word - value = flag:motto - } - } - } - set_variable = { - name = nursed_child_parent_var - value = root - } - } - } - - option = { #This is lovely! - name = bp2_yearly.7003.a - switch = { - trigger = scope:first_word - flag:house = { - add_prestige = miniscule_prestige_gain - } - flag:military = { - add_prestige = miniscule_prestige_gain - } - flag:gold = { - add_gold = 1 - } - flag:secret = { - add_prestige = miniscule_prestige_gain - } - flag:faith = { - add_piety = miniscule_piety_gain - } - flag:gibberish = { - add_piety = miniscule_piety_gain - } - flag:motto = { - dynasty = { - add_dynasty_prestige = miniscule_dynasty_prestige_gain - } - } - } - scope:nursed_child = { - add_to_variable_list = { - name = praise_reason - target = flag:word - } - } - reverse_add_opinion = { - target = scope:nursed_child - modifier = grateful_child - } - stress_impact = { - compassionate = medium_stress_impact_loss - ambitious = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - has_trait = ambitious - add = -10 - } - modifier = { - has_trait = compassionate - add = 10 - } - } - } - - option = { #What else they can? - name = bp2_yearly.7003.b - flavor = bp2_yearly.7003.b.tt - scope:nursed_child = { - add_stress = 50 - switch = { - trigger = scope:first_word - flag:house = { - add_diplomacy_skill = 1 - } - flag:military = { - add_martial_skill = 1 - } - flag:gold = { - add_stewardship_skill = 1 - } - flag:secret = { - add_intrigue_skill = 1 - } - flag:faith = { - add_learning_skill = 1 - } - flag:gibberish = { - add_learning_skill = 1 - } - flag:motto = { - add_trait = eccentric - } - } - add_to_variable_list = { - name = praise_reason - target = flag:word - } - } - stress_impact = { - ambitious = medium_stress_impact_loss - callous = minor_stress_impact_loss - sadistic = minor_stress_impact_loss - content = medium_stress_impact_gain - compassionate = medium_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - has_trait = content - add = -10 - } - modifier = { - has_trait = compassionate - add = -10 - } - modifier = { - has_trait = ambitious - add = 10 - } - } - } - - option = { #I don't really care - name = bp2_yearly.7003.c - parental_neglect_effect = { - RESENTING = scope:nursed_child - RESENTED = root - } - scope:nursed_child = { - add_to_variable_list = { - name = neglect_reason - target = flag:word - } - } - stress_impact = { - impatient = minor_stress_impact_loss - callous = minor_stress_impact_loss - sadistic = minor_stress_impact_loss - wrathful = minor_stress_impact_loss - compassionate = medium_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - has_trait = compassionate - add = -10 - } - modifier = { - has_trait = impatient - add = 10 - } - } - } -} - -bp2_yearly.7004 = { #Wet Nurse informs you about first steps of your child - type = character_event - content_source = dlc_009 - title = bp2_yearly.7004.t - desc = bp2_yearly.7004.desc - theme = family - override_background = { reference = bp2_nursery } - left_portrait = { - character = root - animation = happiness - } - right_portrait = { - character = scope:nursed_child - animation = throne_room_bow_2 - } - lower_right_portrait = scope:wet_nurse - - cooldown = { years = 12 } - - trigger = { - has_bp2_dlc_trigger = yes - is_available_adult = yes - any_court_position_holder ?= { - type = wet_nurse_court_position - is_available_adult = yes - location = root.location - } - any_courtier = { - age < 5 - child_not_infant_trigger = yes - is_available_ai = yes - location = root.location - OR = { - is_child_of = root - is_grandchild_of = root - is_great_grandchild_of = root - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - factor = 50 - any_child = { - OR = { - this = root.player_heir - NOT = { - any_sibling = { - age > prev.age - } - } - has_variable_list = neglect_reason - has_variable_list = praise_reason - } - } - } - } - - immediate = { - random_court_position_holder = { - type = wet_nurse_court_position - save_scope_as = wet_nurse - } - random_courtier = { - limit = { - age < 5 - child_not_infant_trigger = yes - this = root.player_heir - is_available_ai = yes - location = root.location - OR = { - is_child_of = root - is_grandchild_of = root - is_great_grandchild_of = root - } - } - alternative_limit = { - age < 5 - child_not_infant_trigger = yes - NOT = { - any_sibling = { - age > prev.age - } - } - is_available_ai = yes - location = root.location - is_child_of = root - } - alternative_limit = { - age < 5 - child_not_infant_trigger = yes - is_available_ai = yes - location = root.location - is_child_of = root - } - alternative_limit = { - age < 5 - child_not_infant_trigger = yes - is_available_ai = yes - location = root.location - OR = { - is_child_of = root - is_grandchild_of = root - is_great_grandchild_of = root - } - } - weight = { - base = 1 - modifier = { - add = 50 - OR = { - has_variable_list = neglect_reason - has_variable_list = praise_reason - } - } - } - save_scope_as = nursed_child - } - scope:nursed_child = { - set_variable = { - name = nursed_child_parent_var - value = root - } - } - } - - option = { #This is lovely! - name = bp2_yearly.7004.a - add_prestige = miniscule_prestige_gain - reverse_add_opinion = { - target = scope:nursed_child - modifier = grateful_child - } - scope:nursed_child = { - add_to_variable_list = { - name = praise_reason - target = flag:step - } - } - stress_impact = { - compassionate = medium_stress_impact_loss - ambitious = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - has_trait = ambitious - add = -10 - } - modifier = { - has_trait = compassionate - add = 10 - } - } - } - option = { #What else they can? - name = bp2_yearly.7004.b - flavor = bp2_yearly.7004.b.tt - scope:nursed_child = { - add_stress = 50 - add_prowess_skill = 1 - add_to_variable_list = { - name = praise_reason - target = flag:step - } - } - stress_impact = { - ambitious = medium_stress_impact_loss - callous = minor_stress_impact_loss - sadistic = minor_stress_impact_loss - content = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - has_trait = content - add = -10 - } - modifier = { - has_trait = ambitious - add = 10 - } - } - } - - option = { #I don't really care - name = bp2_yearly.7004.c - parental_neglect_effect = { - RESENTING = scope:nursed_child - RESENTED = root - } - scope:nursed_child = { - add_to_variable_list = { - name = neglect_reason - target = flag:step - } - } - stress_impact = { - impatient = minor_stress_impact_loss - callous = minor_stress_impact_loss - sadistic = minor_stress_impact_loss - wrathful = minor_stress_impact_loss - compassionate = medium_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - has_trait = compassionate - add = -10 - } - modifier = { - has_trait = impatient - add = 10 - } - } - } -} - -bp2_yearly.7005 = { #Wet Nurse informs you about first fallen teeth of your child - type = character_event - content_source = dlc_009 - title = bp2_yearly.7005.t - desc = bp2_yearly.7005.desc - theme = family - override_background = { reference = bp2_nursery } - left_portrait = { - character = root - animation = admiration - } - right_portrait = { - character = scope:nursed_child - animation = throne_room_cheer_2 - } - lower_right_portrait = scope:wet_nurse - - cooldown = { years = 12 } - - trigger = { - has_bp2_dlc_trigger = yes - is_available_adult = yes - any_court_position_holder ?= { - type = wet_nurse_court_position - is_available_adult = yes - location = root.location - } - any_courtier = { - child_not_infant_trigger = yes - age <= 8 - is_available_ai = yes - location = root.location - OR = { - is_child_of = root - is_grandchild_of = root - is_great_grandchild_of = root - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - factor = 50 - any_child = { - OR = { - this = root.player_heir - NOT = { - any_sibling = { - age > prev.age - } - } - has_variable_list = neglect_reason - has_variable_list = praise_reason - } - } - } - } - - immediate = { - random_court_position_holder ?= { - type = wet_nurse_court_position - save_scope_as = wet_nurse - } - random_courtier = { - limit = { - child_not_teen_trigger = yes - this = root.player_heir - is_available_ai = yes - location = root.location - OR = { - is_child_of = root - is_grandchild_of = root - is_great_grandchild_of = root - } - } - alternative_limit = { - child_not_teen_trigger = yes - NOT = { - any_sibling = { - age > prev.age - } - } - is_available_ai = yes - location = root.location - is_child_of = root - } - alternative_limit = { - child_not_teen_trigger = yes - is_available_ai = yes - location = root.location - is_child_of = root - } - alternative_limit = { - child_not_teen_trigger = yes - is_available_ai = yes - location = root.location - OR = { - is_child_of = root - is_grandchild_of = root - is_great_grandchild_of = root - } - } - weight = { - base = 1 - modifier = { - add = 50 - OR = { - has_variable_list = neglect_reason - has_variable_list = praise_reason - } - } - } - save_scope_as = nursed_child - } - hidden_effect = { - scope:nursed_child = { - create_artifact = { - name = child_teeth_memorabilia - description = child_teeth_memorabilia_desc - type = miscellaneous - visuals = pocket_pouch - modifier = artifact_child_opinion_2_modifier - modifier = artifact_monthly_minor_prestige_1_modifier - save_scope_as = child_teeth - } - set_variable = { - name = nursed_child_parent_var - value = root - } - } - scope:child_teeth = { - flag_as_trash_artifact = yes - } - } - } - - option = { #This is lovely! - name = bp2_yearly.7005.a - add_prestige = miniscule_prestige_gain - scope:child_teeth = { - set_owner = scope:nursed_child - } - scope:nursed_child = { - add_to_variable_list = { - name = praise_reason - target = flag:tooth - } - } - reverse_add_opinion = { - target = scope:nursed_child - modifier = grateful_child - } - stress_impact = { - compassionate = medium_stress_impact_loss - ambitious = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - has_trait = ambitious - add = -10 - } - modifier = { - has_trait = compassionate - add = 10 - } - } - } - option = { #I'll give you some coins - name = bp2_yearly.7005.b - pay_short_term_gold = { - target = scope:nursed_child - gold = tiny_gold_value - } - scope:child_teeth = { - set_owner = root - } - reverse_add_opinion = { - target = scope:nursed_child - modifier = grateful_child - } - scope:nursed_child = { - add_to_variable_list = { - name = praise_reason - target = flag:tooth - } - } - stress_impact = { - ambitious = medium_stress_impact_loss - callous = minor_stress_impact_loss - sadistic = minor_stress_impact_loss - content = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - has_trait = content - add = -10 - } - modifier = { - has_trait = ambitious - add = 10 - } - } - } - - option = { #I don't really care - name = bp2_yearly.7005.c - parental_neglect_effect = { - RESENTING = scope:nursed_child - RESENTED = root - } - scope:child_teeth = { - set_owner = scope:wet_nurse - } - scope:nursed_child = { - add_to_variable_list = { - name = neglect_reason - target = flag:tooth - } - } - stress_impact = { - impatient = minor_stress_impact_loss - callous = minor_stress_impact_loss - sadistic = minor_stress_impact_loss - wrathful = minor_stress_impact_loss - compassionate = medium_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - has_trait = compassionate - add = -10 - } - modifier = { - has_trait = impatient - add = 10 - } - } - } -} - -bp2_yearly.7006 = { #Wet Nurse informs you about first independent dress up of your child - type = character_event - content_source = dlc_009 - title = bp2_yearly.7006.t - desc = bp2_yearly.7006.desc - theme = family - override_background = { reference = bp2_nursery } - left_portrait = { - character = root - outfit_tags = { nightgown } - animation = laugh - } - right_portrait = { - character = scope:nursed_child - outfit_tags = { travel_cloak } - animation = manic - } - lower_right_portrait = scope:wet_nurse - - cooldown = { years = 12 } - - trigger = { - has_bp2_dlc_trigger = yes - is_available_adult = yes - any_court_position_holder ?= { - type = wet_nurse_court_position - is_available_adult = yes - location = root.location - } - any_courtier = { - child_not_infant_trigger = yes - age <= 10 - is_available_ai = yes - location = root.location - OR = { - is_child_of = root - is_grandchild_of = root - is_great_grandchild_of = root - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - factor = 50 - any_child = { - OR = { - this = root.player_heir - NOT = { - any_sibling = { - age > prev.age - } - } - has_variable_list = neglect_reason - has_variable_list = praise_reason - } - } - } - } - - immediate = { - random_court_position_holder ?= { - type = wet_nurse_court_position - save_scope_as = wet_nurse - } - random_courtier = { - limit = { - child_not_teen_trigger = yes - this = root.player_heir - is_available_ai = yes - location = root.location - OR = { - is_child_of = root - is_grandchild_of = root - is_great_grandchild_of = root - } - } - alternative_limit = { - child_not_teen_trigger = yes - NOT = { - any_sibling = { - age > prev.age - } - } - is_available_ai = yes - location = root.location - is_child_of = root - } - alternative_limit = { - child_not_teen_trigger = yes - is_available_ai = yes - location = root.location - is_child_of = root - } - alternative_limit = { - child_not_teen_trigger = yes - is_available_ai = yes - location = root.location - OR = { - is_child_of = root - is_grandchild_of = root - is_great_grandchild_of = root - } - } - weight = { - base = 1 - modifier = { - add = 50 - OR = { - has_variable_list = neglect_reason - has_variable_list = praise_reason - } - } - } - save_scope_as = nursed_child - } - scope:nursed_child = { - set_variable = { - name = nursed_child_parent_var - value = root - } - } - } - - option = { #This is lovely! - name = bp2_yearly.7006.a - add_prestige = miniscule_prestige_gain - reverse_add_opinion = { - target = scope:nursed_child - modifier = grateful_child - } - scope:nursed_child = { - add_to_variable_list = { - name = praise_reason - target = flag:dress - } - } - stress_impact = { - compassionate = medium_stress_impact_loss - ambitious = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - has_trait = ambitious - add = -10 - } - modifier = { - has_trait = compassionate - add = 10 - } - } - } - option = { #I'll give you a nickname, negative - name = bp2_yearly.7006.b - scope:nursed_child = { - if = { - limit = { - OR = { - has_any_nickname = no - has_bad_nickname = yes - } - } - give_nickname = nick_prince_of_fashion - } - add_to_variable_list = { - name = neglect_reason - target = flag:dress - } - } - reverse_add_opinion = { - target = scope:nursed_child - modifier = grateful_child - } - stress_impact = { - ambitious = medium_stress_impact_loss - callous = minor_stress_impact_loss - sadistic = minor_stress_impact_loss - content = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - has_trait = content - add = -10 - } - modifier = { - OR = { - has_trait = ambitious - has_trait = callous - has_trait = sadistic - } - add = 10 - } - } - } - - option = { #I don't really care - name = bp2_yearly.7005.c - parental_neglect_effect = { - RESENTING = scope:nursed_child - RESENTED = root - } - scope:nursed_child = { - add_to_variable_list = { - name = neglect_reason - target = flag:dress - } - } - stress_impact = { - impatient = minor_stress_impact_loss - callous = minor_stress_impact_loss - sadistic = minor_stress_impact_loss - wrathful = minor_stress_impact_loss - compassionate = medium_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - has_trait = compassionate - add = -10 - } - modifier = { - has_trait = impatient - add = 10 - } - } - } -} - -bp2_yearly.7007 = { #Hidden event to kick off either positive (7009, 7011) or negative (7008, 7010) paths - hidden = yes - - trigger = { - has_bp2_dlc_trigger = yes - is_available_adult = yes - OR = { - has_variable_list = neglect_reason - has_variable_list = praise_reason - } - any_parent = { - is_alive = yes - } - } - on_trigger_fail = { - if = { - limit = { - OR = { - has_variable = nursed_child_parent_var - has_variable_list = neglect_reason - has_variable_list = praise_reason - } - } - clear_variable_list = neglect_reason - clear_variable_list = praise_reason - remove_variable = nursed_child_parent_var - } - } - - immediate = { - save_scope_as = nursed_child - if = { - limit = { - any_parent = { - is_alive = yes - scope:nursed_child.var:nursed_child_parent_var ?= this - } - } - random_parent = { - limit = { - is_alive = yes - scope:nursed_child.var:nursed_child_parent_var ?= this - } - save_scope_as = reflecting_parent - } - } - else = { - random_parent = { - limit = { - is_alive = yes - } - save_scope_as = reflecting_parent - } - } - if = { - limit = { - scope:nursed_child = { - has_variable_list = neglect_reason - } - } - scope:nursed_child = { - trigger_event = bp2_yearly.7008 - } - } - else = { - scope:nursed_child = { - trigger_event = bp2_yearly.7009 - } - } - } -} - -scripted_effect take_parent_title_effect = { - create_title_and_vassal_change = { - type = granted - save_scope_as = title_change - add_claim_on_loss = no - } - scope:parent_title = { - change_title_holder = { - holder = scope:nursed_child - change = scope:title_change - } - } - resolve_title_and_vassal_change = scope:title_change -} - -bp2_yearly.7008 = { #Neglected child reflects on neglecting parent - type = character_event - content_source = dlc_009 - title = bp2_yearly.7008.t - desc = { - first_valid = { - triggered_desc = { - trigger = { scope:nursed_child.var:nursed_child_parent_var ?= scope:reflecting_parent } - desc = bp2_yearly.7008.desc - } - desc = bp2_yearly.7008.desc_dead_parent - } - triggered_desc = { - trigger = { - is_target_in_variable_list = { - name = neglect_reason - target = flag:word - } - } - desc = bp2_yearly.7008.desc_word - } - triggered_desc = { - trigger = { - is_target_in_variable_list = { - name = neglect_reason - target = flag:step - } - } - desc = bp2_yearly.7008.desc_step - } - triggered_desc = { - trigger = { - is_target_in_variable_list = { - name = neglect_reason - target = flag:tooth - } - } - desc = bp2_yearly.7008.desc_tooth - } - triggered_desc = { - trigger = { - is_target_in_variable_list = { - name = neglect_reason - target = flag:dress - } - } - desc = bp2_yearly.7008.desc_dress - } - desc = bp2_yearly.7008.desc_end - } - theme = family - override_background = { - reference = courtyard - } - - left_portrait = { - character = scope:nursed_child - animation = anger - } - right_portrait = { - character = scope:reflecting_parent - animation = schadenfreude - } - lower_right_portrait = { - trigger = { NOT = { scope:nursed_child.var:nursed_child_parent_var ?= scope:reflecting_parent } } - character = scope:nursed_child.var:nursed_child_parent_var - } - - immediate = { - scope:reflecting_parent = { - if = { - limit = { - any_held_title = { - count > 1 - title_tier = county - is_landless_type_title = no - } - } - random_held_title = { - title_tier = county - limit = { - is_landless_type_title = no - } - save_scope_as = parent_title - } - } - } - } - - option = { #I want your titles - name = bp2_yearly.7008.a - custom_tooltip = bp2_yearly.7008.tt - trigger = { exists = scope:parent_title } - show_as_tooltip = { - random_list = { - 1 = { - show_chance = no - desc = bp2_yearly.7008.a.tt_good - take_parent_title_effect = yes - } - 1 = { - show_chance = no - desc = bp2_yearly.7008.a.tt_bad - scope:nursed_child = { - add_hook = { - target = scope:reflecting_parent - type = loyalty_hook - } - } - } - } - } - scope:reflecting_parent = { - save_scope_value_as = { - name = child_request - value = flag:title - } - trigger_event = bp2_yearly.7010 - } - stress_impact = { - ambitious = medium_stress_impact_gain - content = medium_stress_impact_loss - } - ai_chance = { - base = 10 - modifier = { - has_trait = ambitious - add = 10 - } - modifier = { - has_trait = compassionate - add = -10 - } - } - } - - option = { #I want gold - name = bp2_yearly.7008.b - custom_tooltip = bp2_yearly.7008.tt - show_as_tooltip = { - random_list = { - 1 = { - show_chance = no - desc = bp2_yearly.7008.a.tt_good - scope:reflecting_parent = { - pay_short_term_gold = { - target = scope:nursed_child - gold = massive_gold_value - } - } - } - 1 = { - show_chance = no - desc = bp2_yearly.7008.a.tt_bad - scope:nursed_child = { - add_hook = { - target = scope:reflecting_parent - type = loyalty_hook - } - } - } - } - } - scope:reflecting_parent = { - save_scope_value_as = { - name = child_request - value = flag:gold - } - trigger_event = bp2_yearly.7010 - } - stress_impact = { - greedy = medium_stress_impact_loss - generous = medium_stress_impact_gain - } - ai_chance = { - base = 10 - modifier = { - has_trait = generous - add = -10 - } - modifier = { - has_trait = greedy - add = 10 - } - } - } - - option = { #I hate you! - name = { - trigger = { scope:nursed_child.var:nursed_child_parent_var ?= scope:reflecting_parent } - text = bp2_yearly.7008.c - } - name = { - trigger = { NOT = { scope:nursed_child.var:nursed_child_parent_var ?= scope:reflecting_parent } } - text = bp2_yearly.7008.c_dead_parent - } - custom_tooltip = bp2_yearly.7008.tt - trigger = { - OR = { - has_trait = vengeful - has_trait = ambitious - has_trait = arrogant - has_trait = callous - has_trait = impatient - has_trait = stubborn - has_trait = wrathful - } - } - show_as_tooltip = { - random_list = { - 1 = { - show_chance = no - desc = bp2_yearly.7008.a.tt_good - parental_neglect_effect = { - RESENTING = root - RESENTED = scope:reflecting_parent - } - } - 1 = { - show_chance = no - desc = bp2_yearly.7008.a.tt_bad - scope:nursed_child = { - add_hook = { - target = scope:reflecting_parent - type = loyalty_hook - } - } - } - } - } - scope:reflecting_parent = { - save_scope_value_as = { - name = child_request - value = flag:hate - } - trigger_event = bp2_yearly.7010 - } - stress_impact = { - forgiving = minor_stress_impact_gain - content = minor_stress_impact_gain - humble = minor_stress_impact_gain - compassionate = minor_stress_impact_gain - patient = minor_stress_impact_gain - fickle = minor_stress_impact_gain - calm = minor_stress_impact_gain - vengeful = minor_stress_impact_loss - ambitious = minor_stress_impact_loss - arrogant = minor_stress_impact_loss - callous = minor_stress_impact_loss - impatient = minor_stress_impact_loss - stubborn = minor_stress_impact_loss - wrathful = minor_stress_impact_loss - } - ai_chance = { - base = 10 - modifier = { - OR = { - has_trait = vengeful - has_trait = ambitious - has_trait = arrogant - has_trait = callous - has_trait = impatient - has_trait = stubborn - has_trait = wrathful - } - add = 10 - } - modifier = { - OR = { - has_trait = forgiving - has_trait = content - has_trait = humble - has_trait = compassionate - has_trait = patient - has_trait = fickle - has_trait = calm - } - add = -10 - } - } - } - - option = { #I forgive you - name = bp2_yearly.7008.d - trigger = { - OR = { - has_trait = forgiving - has_trait = content - has_trait = humble - has_trait = compassionate - has_trait = patient - has_trait = fickle - has_trait = calm - } - } - add_character_modifier = { - modifier = role_model_parent - years = 15 - } - stress_impact = { - vengeful = minor_stress_impact_gain - ambitious = minor_stress_impact_gain - arrogant = minor_stress_impact_gain - callous = minor_stress_impact_gain - impatient = minor_stress_impact_gain - stubborn = minor_stress_impact_gain - wrathful = minor_stress_impact_gain - forgiving = minor_stress_impact_loss - content = minor_stress_impact_loss - humble = minor_stress_impact_loss - compassionate = minor_stress_impact_loss - patient = minor_stress_impact_loss - fickle = minor_stress_impact_loss - calm = minor_stress_impact_loss - } - ai_chance = { - base = 10 - modifier = { - OR = { - has_trait = vengeful - has_trait = ambitious - has_trait = arrogant - has_trait = callous - has_trait = impatient - has_trait = stubborn - has_trait = wrathful - } - add = -10 - } - modifier = { - OR = { - has_trait = forgiving - has_trait = content - has_trait = humble - has_trait = compassionate - has_trait = patient - has_trait = fickle - has_trait = calm - } - add = 10 - } - } - } - - option = { #Like father like son - name = bp2_yearly.7008.e - scope:nursed_child = { - clear_variable_list = neglect_reason - clear_variable_list = praise_reason - add_character_modifier = { - modifier = child_like_parent_modifier - years = 10 - } - } - stress_impact = { - base = major_stress_loss - impatient = minor_stress_impact_loss - callous = minor_stress_impact_loss - sadistic = minor_stress_impact_loss - wrathful = minor_stress_impact_loss - compassionate = medium_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - has_trait = compassionate - add = -10 - } - modifier = { - OR = { - has_trait = impatient - has_trait = callous - has_trait = sadistic - has_trait = wrathful - } - add = 10 - } - } - } -} - -bp2_yearly.7009 = { #Cared child reflects on caring parent - type = character_event - content_source = dlc_009 - title = bp2_yearly.7009.t - desc = { - first_valid = { - triggered_desc = { - trigger = { scope:nursed_child.var:nursed_child_parent_var ?= scope:reflecting_parent } - desc = bp2_yearly.7009.desc - } - desc = bp2_yearly.7009.desc_dead_parent - } - triggered_desc = { - trigger = { - scope:nursed_child = { - is_target_in_variable_list = { - name = praise_reason - target = flag:word - } - } - } - desc = bp2_yearly.7009.desc_word - } - triggered_desc = { - trigger = { - scope:nursed_child = { - is_target_in_variable_list = { - name = praise_reason - target = flag:step - } - } - } - desc = bp2_yearly.7009.desc_step - } - triggered_desc = { - trigger = { - scope:nursed_child = { - is_target_in_variable_list = { - name = praise_reason - target = flag:tooth - } - } - } - desc = bp2_yearly.7009.desc_tooth - } - triggered_desc = { - trigger = { - scope:nursed_child = { - is_target_in_variable_list = { - name = praise_reason - target = flag:dress - } - } - } - desc = bp2_yearly.7009.desc_dress - } - first_valid = { - triggered_desc = { - trigger = { scope:nursed_child.var:nursed_child_parent_var ?= scope:reflecting_parent } - desc = bp2_yearly.7009.desc_end - } - desc = bp2_yearly.7009.desc_end_dead_parent - } - } - theme = family - override_background = { - reference = garden - } - left_portrait = { - character = scope:nursed_child - animation = happiness - } - right_portrait = { - character = scope:reflecting_parent - animation = personality_content - } - lower_right_portrait = { - trigger = { NOT = { scope:nursed_child.var:nursed_child_parent_var ?= scope:reflecting_parent } } - character = scope:nursed_child.var:nursed_child_parent_var - } - - option = { #I love my parent - name = bp2_yearly.7009.a - custom_tooltip = bp2_yearly.7008.tt - show_as_tooltip = { - random_list = { - 1 = { - desc = bp2_yearly.7009.a.tt_good - show_chance = no - scope:nursed_child = { - if = { - limit = { NOT = { has_trait = loyal } } - add_trait = loyal - } - else = { - scope:nursed_child = { - send_interface_toast = { - title = bp2_yearly.7010.c.tt - left_icon = scope:reflecting_parent - add_opinion = { - target = scope:nursed_child - modifier = love_opinion - opinion = 50 - } - } - } - } - } - } - 1 = { - desc = bp2_yearly.7009.a.tt_bad - show_chance = no - scope:reflecting_parent = { - add_hook = { - target = scope:nursed_child - type = loyalty_hook - } - } - } - } - } - scope:reflecting_parent = { - save_scope_value_as = { - name = child_request - value = flag:receive_love - } - trigger_event = bp2_yearly.7011 - } - stress_impact = { - compassionate = minor_stress_impact_loss - honest = minor_stress_impact_loss - arrogant = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - has_trait = arrogant - add = -10 - } - modifier = { - OR = { - has_trait = compassionate - has_trait = honest - } - add = 10 - } - } - } - - option = { #I'll be as good as them - name = bp2_yearly.7009.b - add_character_modifier = { - modifier = parenting_by_example - years = 15 - } - custom_tooltip = bp2_yearly.7008.tt - show_as_tooltip = { - random_list = { - 1 = { - desc = bp2_yearly.7009.a.tt_good - show_chance = no - scope:reflecting_parent = { - add_character_modifier = { - modifier = role_model_parent - years = 15 - } - } - } - 1 = { - desc = bp2_yearly.7009.a.tt_bad - show_chance = no - scope:reflecting_parent = { - add_hook = { - target = scope:nursed_child - type = loyalty_hook - } - } - } - } - } - scope:reflecting_parent = { - save_scope_value_as = { - name = child_request - value = flag:forwarded_love - } - trigger_event = bp2_yearly.7011 - } - stress_impact = { - ambitious = minor_stress_impact_loss - arrogant = minor_stress_impact_loss - lazy = minor_stress_impact_gain - humble = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - OR = { - has_trait = lazy - has_trait = humble - } - add = -10 - } - modifier = { - OR = { - has_trait = ambitious - has_trait = arrogant - } - add = 10 - } - } - } - - option = { #Like father like son - name = bp2_yearly.7009.c - if = { - limit = { - scope:nursed_child = { - OR = { - has_variable = nursed_child_parent_var - has_variable_list = neglect_reason - has_variable_list = praise_reason - } - } - } - scope:nursed_child = { - clear_variable_list = neglect_reason - clear_variable_list = praise_reason - remove_variable = nursed_child_parent_var - } - } - stress_impact = { - base = major_stress_loss - impatient = minor_stress_impact_loss - callous = minor_stress_impact_loss - sadistic = minor_stress_impact_loss - wrathful = minor_stress_impact_loss - compassionate = medium_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - has_trait = compassionate - add = -10 - } - modifier = { - OR = { - has_trait = impatient - has_trait = callous - has_trait = sadistic - has_trait = wrathful - } - add = 10 - } - } - } -} - -bp2_yearly.7010 = { #Neglected child demands something from you - type = character_event - content_source = dlc_009 - title = bp2_yearly.7010.t - desc = { - first_valid = { - triggered_desc = { - trigger = { scope:nursed_child.var:nursed_child_parent_var ?= scope:reflecting_parent } - desc = bp2_yearly.7010.desc - } - desc = bp2_yearly.7010.desc_dead_parent - } - triggered_desc = { - trigger = { - scope:nursed_child = { - is_target_in_variable_list = { - name = neglect_reason - target = flag:word - } - } - } - desc = bp2_yearly.7010.desc_word - } - triggered_desc = { - trigger = { - scope:nursed_child = { - is_target_in_variable_list = { - name = neglect_reason - target = flag:step - } - } - } - desc = bp2_yearly.7010.desc_step - } - triggered_desc = { - trigger = { - scope:nursed_child = { - is_target_in_variable_list = { - name = neglect_reason - target = flag:tooth - } - } - } - desc = bp2_yearly.7010.desc_tooth - } - triggered_desc = { - trigger = { - scope:nursed_child = { - is_target_in_variable_list = { - name = neglect_reason - target = flag:dress - } - } - } - desc = bp2_yearly.7010.desc_dress - } - desc = bp2_yearly.7010.desc_end - triggered_desc = { - trigger = { - scope:child_request = flag:hate - } - desc = { - first_valid = { - triggered_desc = { - trigger = { scope:nursed_child.var:nursed_child_parent_var ?= scope:reflecting_parent } - desc = bp2_yearly.7010.desc_hate - } - desc = bp2_yearly.7010.desc_hate_dead_parent - } - } - } - triggered_desc = { - trigger = { - scope:child_request = flag:gold - } - desc = bp2_yearly.7010.desc_gold - } - triggered_desc = { - trigger = { - scope:child_request = flag:title - } - desc = bp2_yearly.7010.desc_title - } - } - theme = family - override_background = { - reference = courtyard - } - left_portrait = { - character = scope:reflecting_parent - animation = war_defender - } - right_portrait = { - character = scope:nursed_child - animation = anger - } - lower_right_portrait = { - trigger = { NOT = { scope:nursed_child.var:nursed_child_parent_var ?= scope:reflecting_parent } } - character = scope:nursed_child.var:nursed_child_parent_var - } - - option = { #I'm so sorry - name = bp2_yearly.7010.a - trigger = { NOT = { scope:child_request ?= flag:hate } } - scope:nursed_child = { - send_interface_toast = { - title = bp2_yearly.7010.a.tt - left_icon = scope:reflecting_parent - if = { - limit = { scope:child_request ?= flag:title } - take_parent_title_effect = yes - } - else = { - scope:reflecting_parent = { - pay_short_term_gold = { - target = scope:nursed_child - gold = massive_gold_value - } - } - } - } - } - stress_impact = { - compassionate = minor_stress_impact_loss - generous = minor_stress_impact_loss - greedy = minor_stress_impact_gain - callous = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - OR = { - has_trait = callous - has_trait = greedy - } - add = -10 - } - modifier = { - OR = { - has_trait = compassionate - has_trait = generous - } - add = 10 - } - modifier = { - factor = 0 - AND = { - short_term_gold < massive_gold_value - scope:child_request ?= flag:gold - } - } - } - } - option = { #How about a hook instead? - name = bp2_yearly.7010.b - scope:nursed_child = { - send_interface_toast = { - title = bp2_yearly.7010.b.tt - left_icon = scope:reflecting_parent - if = { - limit = { has_hook = scope:reflecting_parent } - use_hook = scope:reflecting_parent - } - add_hook = { - target = scope:reflecting_parent - type = loyalty_hook - } - } - } - stress_impact = { - callous = minor_stress_impact_loss - compassionate = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - has_trait = compassionate - add = -10 - } - modifier = { - has_trait = callous - add = 10 - } - } - } - - option = { #I still don't really care - name = bp2_yearly.7010.c - scope:nursed_child = { - send_interface_toast = { - title = bp2_yearly.7010.c.tt - left_icon = scope:reflecting_parent - parental_neglect_effect = { - RESENTING = scope:nursed_child - RESENTED = root - } - } - } - stress_impact = { - impatient = minor_stress_impact_loss - callous = minor_stress_impact_loss - sadistic = minor_stress_impact_loss - wrathful = minor_stress_impact_loss - compassionate = medium_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - has_trait = compassionate - add = -10 - } - modifier = { - OR = { - has_trait = impatient - has_trait = callous - has_trait = sadistic - has_trait = wrathful - } - add = 10 - } - modifier = { #if the child is the player we wan't only one of the above outcomes - scope:nursed_child = { - is_ai = no - } - factor = 0 - } - } - } - after = { - if = { - limit = { - scope:nursed_child = { - OR = { - has_variable_list = neglect_reason - has_variable_list = praise_reason - has_variable = nursed_child_parent_var - } - } - } - scope:nursed_child = { - clear_variable_list = neglect_reason - clear_variable_list = praise_reason - remove_variable = nursed_child_parent_var - } - } - } -} - -bp2_yearly.7011 = { #Cared child gives you something - type = character_event - content_source = dlc_009 - title = bp2_yearly.7011.t - desc = { - first_valid = { - triggered_desc = { - trigger = { scope:nursed_child.var:nursed_child_parent_var ?= scope:reflecting_parent } - desc = bp2_yearly.7011.desc - } - desc = bp2_yearly.7011.desc_dead_parent - } - triggered_desc = { - trigger = { - scope:nursed_child = { - is_target_in_variable_list = { - name = praise_reason - target = flag:word - } - } - } - desc = bp2_yearly.7011.desc_word - } - triggered_desc = { - trigger = { - scope:nursed_child = { - is_target_in_variable_list = { - name = praise_reason - target = flag:step - } - } - } - desc = bp2_yearly.7011.desc_step - } - triggered_desc = { - trigger = { - scope:nursed_child = { - is_target_in_variable_list = { - name = praise_reason - target = flag:tooth - } - } - } - desc = bp2_yearly.7011.desc_tooth - } - triggered_desc = { - trigger = { - scope:nursed_child = { - is_target_in_variable_list = { - name = praise_reason - target = flag:dress - } - } - } - desc = bp2_yearly.7011.desc_dress - } - triggered_desc = { - trigger = { - scope:child_request = flag:receive_love - } - desc = bp2_yearly.7011.desc_receive_love - } - triggered_desc = { - trigger = { - scope:child_request = flag:forwarded_love - } - desc = bp2_yearly.7011.desc_forwarded_love - } - } - theme = family - override_background = { - reference = garden - } - left_portrait = { - character = scope:reflecting_parent - animation = love - } - right_portrait = { - character = scope:nursed_child - animation = love - } - lower_right_portrait = { - trigger = { NOT = { scope:nursed_child.var:nursed_child_parent_var ?= scope:reflecting_parent } } - character = scope:nursed_child.var:nursed_child_parent_var - } - - option = { #Thank you - name = bp2_yearly.7011.a - switch = { - trigger = scope:child_request - flag:receive_love = { - scope:nursed_child = { - send_interface_toast = { - title = bp2_yearly.7011.a.tt - left_icon = scope:reflecting_parent - if = { - limit = { NOT = { has_trait = loyal } } - add_trait = loyal - } - else = { - scope:reflecting_parent = { - add_opinion = { - target = scope:nursed_child - modifier = love_opinion - opinion = 50 - } - } - } - } - } - } - flag:forwarded_love = { - scope:reflecting_parent = { - add_character_modifier = { - modifier = role_model_parent - years = 15 - } - } - } - } - stress_impact = { - compassionate = minor_stress_impact_loss - callous = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - has_trait = callous - add = -10 - } - modifier = { - has_trait = compassionate - add = 10 - } - } - } - option = { #How about a hook instead? - name = bp2_yearly.7011.b - scope:nursed_child = { - send_interface_toast = { - title = bp2_yearly.7011.b.tt - left_icon = scope:reflecting_parent - scope:reflecting_parent = { - if = { - limit = { has_hook = scope:nursed_child } - use_hook = scope:nursed_child - } - add_hook = { - target = scope:nursed_child - type = loyalty_hook - } - } - } - } - stress_impact = { - callous = minor_stress_impact_loss - compassionate = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - has_trait = compassionate - add = -10 - } - modifier = { - has_trait = callous - add = 10 - } - } - } - - option = { #I still don't really care - name = bp2_yearly.7011.c - scope:nursed_child = { - send_interface_toast = { - title = bp2_yearly.7011.c.tt - left_icon = scope:reflecting_parent - add_opinion = { - target = scope:reflecting_parent - modifier = disappointed_opinion - opinion = -10 - } - } - } - stress_impact = { - impatient = minor_stress_impact_loss - callous = minor_stress_impact_loss - sadistic = minor_stress_impact_loss - wrathful = minor_stress_impact_loss - compassionate = medium_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - has_trait = compassionate - add = -10 - } - modifier = { - OR = { - has_trait = impatient - has_trait = callous - has_trait = sadistic - has_trait = wrathful - } - add = 10 - } - modifier = { #if the child is the player we wan't only one of the above outcomes - scope:nursed_child = { - is_ai = no - } - factor = 0 - } - } - } - after = { - if = { - limit = { - scope:nursed_child = { - OR = { - has_variable = nursed_child_parent_var - has_variable_list = neglect_reason - has_variable_list = praise_reason - } - } - } - scope:nursed_child = { - clear_variable_list = neglect_reason - clear_variable_list = praise_reason - remove_variable = nursed_child_parent_var - } - } - } -} - -bp2_yearly.7012 = { #if any child has positive realtion with the fired nurse trigger an event about them complaining - type = character_event - content_source = dlc_009 - title = bp2_yearly.7012.t - desc = bp2_yearly.7012.desc - theme = family - override_background = { - reference = council_chamber - } - - left_portrait = { - character = root - animation = stressed_teacher - } - right_portrait = { - character = scope:nursed_child - animation = crying - } - lower_right_portrait = scope:former_wet_nurse - - cooldown = { years = 1 } - - trigger = { - has_bp2_dlc_trigger = yes - #handled in wet_nurse_title_revoked_effect - #but double check if all relevant characters are still alive - scope:nursed_child = { - is_alive = yes - } - scope:former_wet_nurse = { - is_alive = yes - } - } - - immediate = { - #nursed_child, former_wet_nurse and liege scopes handled in wet_nurse_title_revoked_effect - random_court_position_holder ?= { - type = wet_nurse_court_position - save_scope_as = current_wet_nurse - } - } - - option = { #oops, I'll hire her back - name = bp2_yearly.7012.a - trigger = { - scope:former_wet_nurse = { can_be_employed_as = wet_nurse_court_position } - } - court_position_grant_effect = { - EMPLOYER = root - CANDIDATE = scope:former_wet_nurse - POS = wet_nurse - } - reverse_add_opinion = { - target = scope:nursed_child - modifier = pleased_opinion - opinion = 20 - } - add_character_modifier = { - modifier = under_childs_boot_modifier - years = 5 - } - stress_impact = { - compassionate = minor_stress_impact_loss - fickle = minor_stress_impact_loss - callous = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - add = -10 - has_trait = callous - } - modifier = { - add = 10 - has_trait = compassionate - } - modifier = { - add = 10 - has_trait = fickle - } - } - } - - option = { #I make rules here, so understand - name = bp2_yearly.7012.b - duel = { - skill = diplomacy - value = decent_skill_rating - 50 = { - desc = bp2_yearly.7012.b_win - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - reverse_add_opinion = { - target = scope:nursed_child - modifier = comforted_opinion - opinion = 20 - } - add_character_modifier = { - modifier = bp2_good_parent_modifier - years = 5 - } - } - 50 = { - desc = bp2_yearly.7012.b_loss - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - reverse_add_opinion = { - target = scope:nursed_child - modifier = confused_opinion - opinion = -25 - } - } - } - stress_impact = { - compassionate = minor_stress_impact_loss - callous = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - add = -10 - has_trait = callous - } - modifier = { - add = 10 - has_trait = compassionate - } - } - } - - option = { #I make rules here, so shut up - name = bp2_yearly.7012.c - reverse_add_opinion = { - target = scope:nursed_child - modifier = frustrated_opinion - opinion = -10 - } - stress_impact = { - callous = minor_stress_impact_loss - arbitrary = minor_stress_impact_loss - stubborn = minor_stress_impact_loss - compassionate = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - add = 10 - has_trait = callous - } - modifier = { - add = 10 - has_trait = arbitrary - } - modifier = { - add = 10 - has_trait = stubborn - } - modifier = { - add = -10 - has_trait = compassionate - } - } - } -} - -bp2_yearly.7013 = { #child griefs over their dead wet nurse - type = character_event - content_source = dlc_009 - title = bp2_yearly.7013.t - desc = bp2_yearly.7013.desc - theme = family - override_background = { - reference = bp2_nursery - } - - left_portrait = { - character = root - animation = worry - } - right_portrait = { - character = scope:nursed_child - animation = crying - } - lower_right_portrait = scope:former_wet_nurse - - cooldown = { years = 1 } - - trigger = { - has_bp2_dlc_trigger = yes - #handled in on_death_relation_nursed_child - #but double check if all relevant characters are still alive - scope:nursed_child = { - is_alive = yes - } - scope:liege = { - is_alive = yes - } - } - - immediate = { - #scopes assigned in on_death_relation_nursed_child - } - - option = { #I'll get a new wet nurse asap - name = bp2_yearly.7013.a - custom_tooltip = bp2_yearly.7013.a.tt - trigger_event = bp2_decision.0001 - reverse_add_opinion = { - target = scope:nursed_child - modifier = comforted_opinion - opinion = 15 - } - stress_impact = { - compassionate = minor_stress_impact_loss - fickle = minor_stress_impact_loss - callous = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - add = -10 - has_trait = callous - } - modifier = { - add = 10 - has_trait = compassionate - } - modifier = { - add = 10 - has_trait = fickle - } - } - } - - option = { #help with grief - name = bp2_yearly.7013.b - scope:nursed_child = { - add_character_modifier = { - modifier = parent_helped_grief_modifier - years = 5 - } - } - stress_impact = { - compassionate = minor_stress_impact_loss - callous = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - add = -10 - has_trait = callous - } - modifier = { - add = 10 - has_trait = compassionate - } - } - } - - option = { #dead is dead - name = bp2_yearly.7013.c - reverse_add_opinion = { - target = scope:nursed_child - modifier = frustrated_opinion - opinion = -10 - } - stress_impact = { - callous = minor_stress_impact_loss - arbitrary = minor_stress_impact_loss - stubborn = minor_stress_impact_loss - compassionate = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - add = 10 - has_trait = callous - } - modifier = { - add = 10 - has_trait = arbitrary - } - modifier = { - add = 10 - has_trait = stubborn - } - modifier = { - add = -10 - has_trait = compassionate - } - } - } -} - -bp2_yearly.7014 = { # Child and Wet Nurse connect over same faith/culture - type = character_event - content_source = dlc_009 - title = bp2_yearly.7014.t - desc = { - desc = bp2_yearly.7014.desc - first_valid = { - triggered_desc = { - trigger = { - scope:wet_nurse.culture = root.culture - exists = scope:tradition - exists = scope:tradition_2 - } - desc = bp2_yearly.7014.desc_culture - } - triggered_desc = { - trigger = { scope:wet_nurse.culture = root.culture } - desc = bp2_yearly.7014.desc_culture_no_trad - } - triggered_desc = { - trigger = { scope:wet_nurse.faith = root.faith } - desc = bp2_yearly.7014.desc_faith - } - } - } - theme = family - override_background = { - reference = bp2_nursery - } - - left_portrait = { - character = root - animation = crying - } - right_portrait = { - character = scope:wet_nurse - animation = love - } - cooldown = { years = 10 } - - trigger = { - has_bp2_dlc_trigger = yes - is_available_child = yes - any_relation = { - type = wet_nurse - OR = { - AND = { #search for a nurse that is courtier of your liege and you have the same faith or culture as her, but different than liege - exists = liege - is_courtier_of = liege - OR = { - AND = { - faith = root.faith - faith != liege.faith - } - AND = { - culture = root.culture - culture != liege.culture - } - } - } - AND = { #search for a nurse that is your courtier and you have the same faith or culture as her - is_courtier_of = root - OR = { - faith = root.faith - culture = root.culture - } - } - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - add = 2 - is_hostage = yes - } - } - - immediate = { - random_relation = { - type = wet_nurse - limit = { - OR = { - AND = { #search for a nurse that is courtier of your liege and you have the same faith or culture as her, but different than liege - exists = liege - is_courtier_of = liege - OR = { - AND = { - faith = root.faith - faith != liege.faith - } - AND = { - culture = root.culture - culture != liege.culture - } - } - } - AND = { #search for a nurse that is your courtier and you have the same faith or culture as her - is_courtier_of = root - OR = { - faith = root.faith - culture = root.culture - } - } - } - } - save_scope_as = wet_nurse - } - if = { - limit = { - culture = { - any_culture_tradition = { - exists = this - save_temporary_scope_as = temp_tradition - } - any_culture_tradition = { - exists = this - this != scope:temp_tradition - } - } - } - culture = { #used in loc only - random_tradition = { - save_scope_as = tradition - } - random_tradition = { - limit = { - this != scope:tradition - } - save_scope_as = tradition_2 - } - } - } - } - - option = { #make friends with the wet nurse - name = bp2_yearly.7014.a - if = { - limit = { scope:wet_nurse.faith != root.faith } - progress_towards_friend_effect = { - REASON = friend_matters_of_culture - CHARACTER = scope:wet_nurse - OPINION = default_friend_opinion - } - } - else_if = { - limit = { scope:wet_nurse.culture != root.culture } - progress_towards_friend_effect = { - REASON = friend_matters_of_faith - CHARACTER = scope:wet_nurse - OPINION = default_friend_opinion - } - } - else = { - progress_towards_friend_effect = { - REASON = friend_child_special_attention - CHARACTER = scope:wet_nurse - OPINION = default_friend_opinion - } - } - ai_chance = { - base = 10 - } - } - - option = { #get a cool modifier with culture/faith opinion - name = bp2_yearly.7014.b - if = { - limit = { scope:wet_nurse.faith != root.faith } - add_character_modifier = { - modifier = wet_nurse_cultural_bonding_modifier - years = 10 - } - } - else_if = { - limit = { scope:wet_nurse.culture != root.culture } - add_character_modifier = { - modifier = wet_nurse_faith_bonding_modifier - years = 10 - } - } - else = { - add_character_modifier = { - modifier = wet_nurse_bonding_modifier - years = 10 - } - } - ai_chance = { #AI should take the 1st option more, so that other wet nurse events trigger more often - base = 1 - } - } -} - -scripted_effect clean_rites_flags_success = { - scope:teentribal ?= { - create_character_memory = { - type = completed_rites_of_passage - } - - scope:new_memory = { - set_variable = { - name = rites_of_passage_type - value = scope:teentribal.var:chosen_rite_memory - } - } - remove_variable ?= cleansing_type - remove_variable ?= chosen_rite_memory - remove_character_flag ?= unproven_adult_flag - clear_variable_list ?= possible_rites - } -} - -scripted_effect clean_rites_flags_failure = { - scope:teentribal ?= { - remove_variable ?= cleansing_type - remove_variable ?= chosen_rite_memory - clear_variable_list ?= possible_rites - add_character_flag = unproven_adult_flag #flag to be able to take the decision again - } -} - -scripted_effect passage_rites_effect = { - random_list = { - 9 = { #or lifestyle xp - desc = passage_rites_effect.xp - add_$LIFESTYLE$_lifestyle_xp = major_lifestyle_xp - } - 9 = { #or a skill point - desc = passage_rites_effect.skill - add_$SKILL$_skill = 1 - } - 0 = { #have a chance to gain a personality trait - desc = passage_rites_effect.trait - modifier = { - number_of_personality_traits < personality_trait_standard - NOT = { has_trait = $TRAIT$ } - NOT = { has_trait = $OPPOSITE_TRAIT$ } - add = 2 - } - add_trait = $TRAIT$ - } - } -} - -bp2_yearly.7021 = { #duel - type = character_event - content_source = dlc_009 - title = bp2_yearly.7021.t - desc = { - first_valid = { - triggered_desc = { - trigger = { scope:teentribal = root } - desc = bp2_yearly.7021.desc_root - } - desc = bp2_yearly.7021.desc - } - } - theme = family - override_background = { - reference = ep2_tournament - } - left_portrait = { - character = root - triggered_animation = { - trigger = { - this != scope:teentribal - is_adult = yes - } - animation = marshal - } - triggered_animation = { - trigger = { - var:signature_weapon = flag:axe - age >= 14 - this = scope:teentribal - } - animation = aggressive_axe - } - triggered_animation = { - trigger = { - var:signature_weapon = flag:mace - age >= 14 - this = scope:teentribal - } - animation = aggressive_mace - } - triggered_animation = { - trigger = { - var:signature_weapon = flag:sword - age >= 14 - this = scope:teentribal - } - animation = aggressive_sword - } - triggered_animation = { - trigger = { - var:signature_weapon = flag:dagger - age >= 14 - this = scope:teentribal - } - animation = aggressive_dagger - } - triggered_animation = { - trigger = { - var:signature_weapon = flag:spear - age >= 14 - this = scope:teentribal - } - animation = aggressive_spear - } - triggered_animation = { - trigger = { - var:signature_weapon = flag:hammer - age >= 14 - this = scope:teentribal - } - animation = aggressive_hammer - } - triggered_animation = { - trigger = { - is_adult = no - this != scope:teentribal - } - animation = war_attacker - } - animation = throne_room_one_handed_passive_1 - } - right_portrait = { - trigger = { root != scope:teentribal } - character = scope:teentribal - triggered_animation = { - trigger = { - scope:teentribal.var:signature_weapon = flag:axe - scope:teentribal = { age >= 14 } - } - animation = celebrate_axe - } - triggered_animation = { - trigger = { - scope:teentribal.var:signature_weapon = flag:mace - scope:teentribal = { age >= 14 } - } - animation = celebrate_mace - } - triggered_animation = { - trigger = { - scope:teentribal.var:signature_weapon = flag:sword - scope:teentribal = { age >= 14 } - } - animation = celebrate_sword - } - triggered_animation = { - trigger = { - scope:teentribal.var:signature_weapon = flag:dagger - scope:teentribal = { age >= 14 } - } - animation = celebrate_dagger - } - triggered_animation = { - trigger = { - scope:teentribal.var:signature_weapon = flag:spear - scope:teentribal = { age >= 14 } - } - animation = celebrate_spear - } - triggered_animation = { - trigger = { - scope:teentribal.var:signature_weapon = flag:hammer - scope:teentribal = { age >= 14 } - } - animation = celebrate_hammer - } - animation = throne_room_one_handed_passive_1 - } - lower_left_portrait = { - trigger = { exists = scope:family_duelist } - character = scope:family_duelist - } - lower_center_portrait = { - trigger = { exists = scope:duelist_1 } - character = scope:duelist_1 - } - lower_right_portrait = { - trigger = { exists = scope:duelist_2 } - character = scope:duelist_2 - } - - immediate = { - if = { - limit = { exists = scope:liege } - scope:liege = { - set_signature_weapon_effect = yes - } - } - scope:teentribal = { set_signature_weapon_effect = yes } - if = { #look for a family member - limit = { - any_close_or_extended_family_member = { - is_ai = yes - culture = root.culture - can_start_single_combat_trigger = yes - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = this } - } - } - random_close_or_extended_family_member = { - limit = { - is_ai = yes - culture = root.culture - can_start_single_combat_trigger = yes - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = this } - } - save_scope_as = family_duelist - } - } - else = { #find other duelist if there is no eligible family member - if = { #first look in your court - limit = { - any_courtier_or_guest ?= { - is_ai = yes - culture = root.culture - can_start_single_combat_trigger = yes - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = this } - NOR = { - is_close_or_extended_family_of = root - scope:family_duelist ?= this - } - } - } - random_courtier_or_guest ?= { - limit = { - is_ai = yes - culture = root.culture - can_start_single_combat_trigger = yes - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = this } - NOR = { - is_close_or_extended_family_of = root - scope:family_duelist ?= this - } - } - save_scope_as = duelist_2 - } - } - else_if = { #then look in pool - limit = { - any_pool_character ?= { - province = scope:rite_location - is_ai = yes - culture = root.culture - can_start_single_combat_trigger = yes - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = this } - NOR = { - is_close_or_extended_family_of = root - scope:family_duelist ?= this - } - } - } - random_pool_character ?= { - province = scope:rite_location - limit = { - is_ai = yes - culture = root.culture - can_start_single_combat_trigger = yes - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = this } - NOR = { - is_close_or_extended_family_of = root - scope:family_duelist ?= this - } - } - save_scope_as = duelist_2 - } - } - else = { #create if still nothing - create_character = { - location = scope:rite_location - template = pool_repopulate_prowess - culture = root.culture - faith = root.faith - save_scope_as = duelist_2 - after_creation = { - add_character_flag = created - } - } - } - } - if = { #first look in your court - limit = { - any_courtier_or_guest ?= { - is_ai = yes - culture = root.culture - can_start_single_combat_trigger = yes - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = this } - NOR = { - is_close_or_extended_family_of = root - scope:duelist_2 ?= this - scope:family_duelist ?= this - } - prowess >= average_skill_rating - } - } - random_courtier_or_guest ?= { - limit = { - is_ai = yes - culture = root.culture - can_start_single_combat_trigger = yes - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = this } - NOR = { - is_close_or_extended_family_of = root - scope:duelist_2 ?= this - scope:family_duelist ?= this - } - prowess >= average_skill_rating - } - save_scope_as = duelist_1 - } - } - else_if = { #then look in pool - limit = { - any_pool_character ?= { - province = scope:rite_location - is_ai = yes - culture = root.culture - can_start_single_combat_trigger = yes - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = this } - NOR = { - is_close_or_extended_family_of = root - scope:duelist_2 ?= this - scope:family_duelist ?= this - } - prowess >= average_skill_rating - } - } - random_pool_character ?= { - province = scope:rite_location - limit = { - is_ai = yes - culture = root.culture - can_start_single_combat_trigger = yes - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = this } - NOR = { - is_close_or_extended_family_of = root - scope:duelist_2 ?= this - scope:family_duelist ?= this - } - prowess >= average_skill_rating - } - save_scope_as = duelist_1 - } - } - else = { #create if still nothing - create_character = { - location = scope:rite_location - template = pool_repopulate_prowess - culture = root.culture - faith = root.faith - save_scope_as = duelist_1 - after_creation = { - add_character_flag = created - } - } - } - } - - option = { #Challenge a family member - name = bp2_yearly.7021.a - name = { - trigger = { scope:teentribal = root } - text = bp2_yearly.7021.a_root - } - trigger = { exists = scope:family_duelist } - custom_tooltip = bp2_yearly.7021.a.tt - show_as_tooltip = { - dynasty = { - add_dynasty_prestige = minor_dynasty_prestige_gain - } - } - configure_start_single_combat_effect = { - SC_INITIATOR = root - SC_ATTACKER = scope:teentribal - SC_DEFENDER = scope:family_duelist - FATALITY = no - FIXED = no - LOCALE = terrain_scope - OUTPUT_EVENT = bp2_yearly.7022 - INVALIDATION_EVENT = fp1_tbc.0021 - } - ai_chance = { - base = 1 - } - } - - option = { #Challenge anyone of your culture - name = bp2_yearly.7021.b - name = { - trigger = { scope:teentribal = root } - text = bp2_yearly.7021.b_root - } - custom_tooltip = bp2_yearly.7021.b.tt - configure_start_single_combat_effect = { - SC_INITIATOR = root - SC_ATTACKER = scope:teentribal - SC_DEFENDER = scope:duelist_1 - FATALITY = no - FIXED = no - LOCALE = terrain_scope - OUTPUT_EVENT = bp2_yearly.7022 - INVALIDATION_EVENT = fp1_tbc.0021 - } - ai_chance = { - base = 1 - } - } - - option = { #Pick the other challenger of your culture, available only if you don't have an eligible family member - name = bp2_yearly.7021.c - trigger = { exists = scope:duelist_2 } - custom_tooltip = bp2_yearly.7021.c.tt - configure_start_single_combat_effect = { - SC_INITIATOR = root - SC_ATTACKER = scope:teentribal - SC_DEFENDER = scope:duelist_2 - FATALITY = no - FIXED = no - LOCALE = terrain_scope - OUTPUT_EVENT = bp2_yearly.7022 - INVALIDATION_EVENT = fp1_tbc.0021 - } - ai_chance = { - base = 1 - } - } - - option = { #I changed my mind - name = bp2_yearly.7021.d - custom_tooltip = bp2_yearly.7021.d.tt - clean_rites_flags_failure = yes - ai_chance = { #there is no reason for the AI to back out at this point - base = 0 - } - } -} - -bp2_yearly.7022 = { #Duel outcome - type = character_event - content_source = dlc_009 - title = bp2_yearly.7022.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - exists = scope:liege - scope:teentribal = scope:sc_victor - } - desc = bp2_yearly.7022.desc_child_win - } - triggered_desc = { - trigger = { - exists = scope:liege - scope:teentribal = scope:sc_loser - } - desc = bp2_yearly.7022.desc_child_lost - } - triggered_desc = { - trigger = { - scope:teentribal = scope:sc_victor - } - desc = bp2_yearly.7022.desc_root_win - } - triggered_desc = { - trigger = { - scope:teentribal = scope:sc_loser - } - desc = bp2_yearly.7022.desc_root_lost - } - } - } - theme = family - override_background = { - reference = ep2_tournament - } - left_portrait = { - character = scope:sc_victor - triggered_animation = { - trigger = { scope:teentribal = scope:sc_victor } - animation = manic - } - triggered_animation = { - trigger = { scope:teentribal = scope:sc_loser } - animation = personality_honorable - } - } - right_portrait = { - character = scope:sc_loser - triggered_animation = { - trigger = { scope:teentribal = scope:sc_victor } - animation = throne_room_bow_1 - } - triggered_animation = { - trigger = { scope:teentribal = scope:sc_loser } - animation = severelywounded - } - } - - immediate = { - if = { - limit = { - scope:family_duelist ?= { - OR = { - this = scope:sc_victor - this = scope:sc_loser - } - } - } - root.dynasty = { - add_dynasty_prestige = minor_dynasty_prestige_gain - } - } - } - - option = { #Good fight - name = bp2_yearly.7022.a - flavor = { - first_valid = { - triggered_desc = { - trigger = { scope:teentribal = scope:sc_victor } - desc = bp2_yearly.7022.a_victory - } - desc = bp2_yearly.7022.a_loss - } - } - scope:sc_victor ?= { - if = { - limit = { - this = scope:teentribal - } - send_interface_toast = { - title = bp2_yearly.7022.toast - left_icon = scope:teentribal - passage_rites_effect = { - TRAIT = arrogant - OPPOSITE_TRAIT = humble - LIFESTYLE = martial - SKILL = prowess - } - } - } - } - scope:sc_loser ?= { - if = { - limit = { - this = scope:teentribal - } - send_interface_toast = { - title = bp2_yearly.7022.toast - left_icon = scope:teentribal - passage_rites_effect = { - TRAIT = vengeful - OPPOSITE_TRAIT = forgiving - LIFESTYLE = intrigue - SKILL = intrigue - } - } - } - } - stress_impact = { - vengeful = minor_stress_impact_loss - forgiving = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - has_trait = forgiving - add = -10 - } - modifier = { - has_trait = vengeful - add = 10 - } - } - } - option = { #Have potential - name = bp2_yearly.7022.b - flavor = { - first_valid = { - triggered_desc = { - trigger = { scope:teentribal = scope:sc_victor } - desc = bp2_yearly.7022.b_victory - } - desc = bp2_yearly.7022.b_loss - } - } - scope:teentribal = { - if = { - limit = { - NOT = { has_trait = lifestyle_blademaster } - } - add_trait = lifestyle_blademaster - } - else = { - send_interface_toast = { - title = bp2_yearly.7022.toast - left_icon = scope:teentribal - passage_rites_effect = { - TRAIT = diligent - OPPOSITE_TRAIT = lazy - LIFESTYLE = martial - SKILL = prowess - } - } - } - } - stress_impact = { - diligent = minor_stress_impact_loss - lazy = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - has_trait = lazy - add = -10 - } - modifier = { - has_trait = diligent - add = 10 - } - } - } - option = { #Tasted blood and liked it - name = bp2_yearly.7022.c - flavor = { - first_valid = { - triggered_desc = { - trigger = { scope:teentribal = scope:sc_victor } - desc = bp2_yearly.7022.c_victory - } - desc = bp2_yearly.7022.c_loss - } - } - scope:sc_victor = { - if = { - limit = { - this = scope:teentribal - } - send_interface_toast = { - title = bp2_yearly.7022.toast - left_icon = scope:teentribal - passage_rites_effect = { - TRAIT = sadistic - OPPOSITE_TRAIT = compassionate - LIFESTYLE = intrigue - SKILL = intrigue - } - } - } - } - scope:sc_loser ?= { - if = { - limit = { - this = scope:teentribal - } - send_interface_toast = { - title = bp2_yearly.7022.toast - left_icon = scope:teentribal - passage_rites_effect = { - TRAIT = craven - OPPOSITE_TRAIT = brave - LIFESTYLE = stewardship - SKILL = stewardship - } - } - } - } - stress_impact = { - sadistic = minor_stress_impact_loss - craven = minor_stress_impact_loss - compassionate = minor_stress_impact_gain - brave = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - has_trait = craven - add = 10 - } - modifier = { - has_trait = sadistic - add = 10 - } - modifier = { - has_trait = compassionate - add = -10 - } - modifier = { - has_trait = brave - add = -10 - } - } - } - after = { - if = { - limit = { scope:teentribal = scope:sc_victor } - scope:teentribal = { - add_character_modifier = { - modifier = proven_adult_modifier - years = 10 - } - } - } - else = { - scope:teentribal = { - add_character_modifier = { - modifier = insecure_adult_modifier - years = 10 - } - } - } - clean_rites_flags_success = yes - scope:duelist_1 ?= { - silent_disappearance_ai_if_created_effect = yes - } - scope:duelist_2 ?= { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -bp2_yearly.7023 = { #scarification - type = character_event - content_source = dlc_009 - title = bp2_yearly.7023.t - desc = bp2_yearly.7023.desc - theme = family - override_background = { - reference = fp1_runestone_circle - } - left_portrait = { - character = scope:teentribal - animation = throne_room_curtsey_1 - remove_default_outfit = no - outfit_tags = { nightgown } - } - right_portrait = { - character = scope:priest - animation = celebrate_dagger - } - - option = { #Scarification - name = bp2_yearly.7023.a - flavor = bp2_yearly.7023.a.tt - send_interface_toast = { - title = bp2_yearly.7023.a - left_icon = scope:teentribal - right_icon = scope:priest - scope:teentribal = { - passage_rites_effect = { - TRAIT = brave - OPPOSITE_TRAIT = craven - LIFESTYLE = martial - SKILL = martial - } - random_list = { - 50 = { - show_chance = no - desc = bp2_yearly.7023.a_nothing - } - 45 = { - show_chance = no - desc = bp2_yearly.7023.a_scarred - add_trait = scarred - } - 5 = { - show_chance = no - desc = bp2_yearly.7023.a_wounded - add_trait = wounded_1 - } - } - self_mutilation_minor_piety_gain_effect = yes - } - } - scope:teentribal = { - add_character_modifier = { - modifier = proven_adult_modifier - years = 10 - } - } - clean_rites_flags_success = yes - stress_impact = { - brave = minor_stress_impact_loss - craven = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - has_trait = craven - add = -10 - } - modifier = { - has_trait = brave - add = 10 - } - } - } - - option = { #How about a symbolic one instead? - name = bp2_yearly.7023.b - flavor = bp2_yearly.7023.b.tt - scope:teentribal = { - send_interface_toast = { - title = bp2_yearly.7023.b - left_icon = scope:teentribal - right_icon = scope:priest - passage_rites_effect = { - TRAIT = cynical - OPPOSITE_TRAIT = zealous - LIFESTYLE = intrigue - SKILL = intrigue - } - } - } - scope:teentribal = { - add_character_modifier = { - modifier = insecure_adult_modifier - years = 10 - } - } - clean_rites_flags_success = yes - stress_impact = { - cynical = minor_stress_impact_loss - zealous = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - has_trait = zealous - add = -10 - } - modifier = { - has_trait = cynical - add = 10 - } - } - } - - option = { #I changed my mind - name = bp2_yearly.7023.c - custom_tooltip = bp2_yearly.7023.c.tt - clean_rites_flags_failure = yes - ai_chance = { #there is no reason for the AI to back out at this point - base = 0 - } - } -} - -bp2_yearly.7024 = { #seclusion - type = character_event - content_source = dlc_009 - title = bp2_yearly.7024.t - desc = { - desc = bp2_yearly.7024.desc - triggered_desc = { - trigger = { exists = scope:rite_location } - desc = bp2_yearly.7024.desc_capital - } - triggered_desc = { - trigger = { exists = scope:realm_location } - desc = bp2_yearly.7024.desc_realm - } - triggered_desc = { - trigger = { exists = scope:abroad_location } - desc = bp2_yearly.7024.desc_abroad - } - desc = bp2_yearly.7024.desc_end - } - theme = family - override_background = { - reference = terrain_travel - } - left_portrait = { - character = scope:teentribal - animation = throne_room_bow_1 - } - right_portrait = { - character = scope:priest - animation = go_to_your_room - } - - immediate = { - if = { - limit = { - any_realm_province = { - this != root.capital_province - } - } - random_realm_province = { - limit = { - this != root.capital_province - } - weight = { - base = 1 - modifier = { - add = 100 - has_holding = no - } - } - save_scope_as = realm_location - } - } - random_neighboring_top_liege_realm_owner = { - random_realm_province = { - weight = { - base = 1 - modifier = { - add = 100 - has_holding = no - } - } - save_scope_as = abroad_location - } - save_scope_as = foreign_ruler - } - } - - option = { #go abroad - name = bp2_yearly.7024.a - trigger = { exists = scope:abroad_location } - custom_tooltip = bp2_yearly.7024.a.abroad - custom_tooltip = bp2_yearly.7024.a.tt - scope:teentribal = { - scope:abroad_location = { - save_scope_as = seclusion_location - } - start_travel_plan = { - destination = scope:abroad_location - on_travel_planner_cancel_event = bp2_yearly.7024 - on_arrival_event = bp2_yearly.7025 - on_arrival_destinations = all_but_last - } - } - if = { - limit = { exists = scope:liege } - scope:liege = { - show_as_tooltip = { - random_list = { - 1 = { - desc = bp2_yearly.7024.win - show_chance = no - scope:teentribal = { - add_character_modifier = { - modifier = proven_adult_modifier - years = 10 - } - add_prestige = major_prestige_value - } - } - 1 = { - desc = bp2_yearly.7024.lose - show_chance = no - scope:teentribal = { - add_character_modifier = { - modifier = insecure_adult_modifier - years = 10 - } - add_trait_xp = { - trait = lifestyle_traveler - track = danger - value = 30 - } - increase_wounds_no_death_effect = { REASON = wild_animal } - } - } - } - } - } - } - stress_impact = { - ambitious = minor_stress_impact_loss - lazy = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - has_trait = lazy - add = -10 - } - modifier = { - has_trait = ambitious - add = 10 - } - } - } - - option = { #go nearby - name = bp2_yearly.7024.b - trigger = { exists = scope:realm_location } - custom_tooltip = bp2_yearly.7024.b.realm - custom_tooltip = bp2_yearly.7024.b.tt - scope:teentribal = { - scope:realm_location = { - save_scope_as = seclusion_location - } - start_travel_plan = { - destination = scope:realm_location - on_travel_planner_cancel_event = bp2_yearly.7024 - on_arrival_event = bp2_yearly.7025 - on_arrival_destinations = all_but_last - } - } - if = { - limit = { exists = scope:liege } - scope:liege = { - show_as_tooltip = { - random_list = { - 1 = { - desc = bp2_yearly.7024.win - show_chance = no - scope:teentribal = { - add_character_modifier = { - modifier = proven_adult_modifier - years = 10 - } - add_trait_xp = { - trait = lifestyle_traveler - track = danger - value = 20 - } - add_prestige = medium_prestige_value - } - } - 1 = { - desc = bp2_yearly.7024.lose - show_chance = no - scope:teentribal = { - add_character_modifier = { - modifier = insecure_adult_modifier - years = 10 - } - increase_wounds_no_death_effect = { REASON = wild_animal } - } - } - } - } - } - } - stress_impact = { - arbitrary = minor_stress_impact_loss - lazy = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - has_trait = lazy - add = -10 - } - modifier = { - has_trait = arbitrary - add = 10 - } - } - } - - option = { #stay in capital holding - name = bp2_yearly.7024.c - custom_tooltip = bp2_yearly.7024.c.capital - custom_tooltip = bp2_yearly.7024.c.tt - scope:teentribal = { - scope:rite_location = { - save_scope_as = seclusion_location - } - trigger_event = bp2_yearly.7025 - } - if = { - limit = { exists = scope:liege } - scope:liege = { - show_as_tooltip = { - random_list = { - 1 = { - desc = bp2_yearly.7024.win - show_chance = no - scope:teentribal = { - add_character_modifier = { - modifier = proven_adult_modifier - years = 10 - } - add_prestige = minor_prestige_value - } - } - 1 = { - desc = bp2_yearly.7024.lose - show_chance = no - scope:teentribal = { - add_character_modifier = { - modifier = insecure_adult_modifier - years = 10 - } - add_trait_xp = { - trait = lifestyle_traveler - track = danger - value = 10 - } - increase_wounds_no_death_effect = { REASON = wild_animal } - } - } - } - } - } - } - stress_impact = { - lazy = minor_stress_impact_loss - ambitious = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - has_trait = ambitious - add = -10 - } - modifier = { - has_trait = lazy - add = 10 - } - } - } - - option = { #I changed my mind - name = bp2_yearly.7024.d - custom_tooltip = bp2_yearly.7024.d.tt - clean_rites_flags_failure = yes - ai_chance = { #there is no reason for the AI to back out at this point - base = 0 - } - } -} - -bp2_yearly.7025 = { #seclusion on arrival - type = character_event - content_source = dlc_009 - title = bp2_yearly.7025.t - desc = { - first_valid = { - triggered_desc = { - trigger = { scope:abroad_location ?= scope:seclusion_location } - desc = bp2_yearly.7025.desc_abroad - } - triggered_desc = { - trigger = { scope:realm_location ?= scope:seclusion_location } - desc = bp2_yearly.7025.desc_realm - } - desc = bp2_yearly.7025.desc_capital - } - first_valid = { - triggered_desc = { - trigger = { scope:teentribal.martial > scope:teentribal.learning } - desc = bp2_yearly.7025.desc_fight - } - desc = bp2_yearly.7025.desc_outwit - } - } - theme = family - override_background = { - reference = wilderness - } - left_portrait = { - character = scope:teentribal - triggered_animation = { - trigger = { scope:teentribal.martial > scope:teentribal.learning } - animation = hunting_shortbow_aim_arrow_default - } - animation = hunting_carcass_start - outfit_tags = { beggar_rags } - remove_default_outfit = no - } - - immediate = { - scope:teentribal = { - select_local_animal_effect = { TYPE = dangerous } - } - if = { #set scope that should receive the toast notification of the outcome - limit = { exists = scope:liege } - scope:liege = { - save_scope_as = receiver - } - } - else = { - save_scope_as = receiver - } - } - - option = { #try to outsmart the animal - name = bp2_yearly.7025.a - duel = { - skills = { learning intrigue } - value = average_skill_rating - 50 = { #you outsmart the animal - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = bp2_yearly.7025.a_win - scope:receiver = { - send_interface_toast = { - title = bp2_yearly.7025.tt - left_icon = scope:teentribal - scope:teentribal = { - if = { - limit = { NOT = { has_trait = lifestyle_traveler } } - add_trait = lifestyle_traveler - } - add_trait_xp = { - trait = lifestyle_traveler - track = danger - value = { - value = 0 - if = { - limit = {scope:rite_location ?= scope:seclusion_location } - add = 10 - } - if = { - limit = { scope:realm_location ?= scope:seclusion_location } - add = 20 - } - if = { - limit = { scope:abroad_location ?= scope:seclusion_location } - add = 30 - } - } - } - add_character_modifier = { - modifier = proven_adult_modifier - years = 10 - } - add_prestige = { - value = 0 - if = { - limit = {scope:rite_location ?= scope:seclusion_location } - add = minor_prestige_value - } - if = { - limit = { scope:realm_location ?= scope:seclusion_location } - add = medium_prestige_value - } - if = { - limit = { scope:abroad_location ?= scope:seclusion_location } - add = major_prestige_value - } - } - } - } - } - } - 50 = { #you are not smarter than a predator animal - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - modifier = { - add = 10 - scope:abroad_location ?= scope:seclusion_location - } - modifier = { - add = 5 - scope:realm_location ?= scope:seclusion_location - } - desc = bp2_yearly.7025.a_lose - scope:receiver = { - send_interface_toast = { - title = bp2_yearly.7025.tt - left_icon = scope:teentribal - scope:teentribal = { - increase_wounds_no_death_effect = { REASON = wild_animal } - add_character_modifier = { - modifier = insecure_adult_modifier - years = 10 - } - } - } - } - } - } - stress_impact = { - compassionate = minor_stress_impact_loss - craven = minor_stress_impact_loss - callous = minor_stress_impact_gain - brave = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - has_trait = callous - add = -10 - } - modifier = { - has_trait = brave - add = -10 - } - modifier = { - has_trait = compassionate - add = 10 - } - modifier = { - has_trait = craven - add = 10 - } - } - } - - option = { #try to shoot the animal - name = bp2_yearly.7025.b - duel = { - skills = { prowess martial } - value = average_skill_rating - 50 = { #You knock out the animal - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = bp2_yearly.7025.b_win - scope:receiver = { - send_interface_toast = { - title = bp2_yearly.7025.tt - left_icon = scope:teentribal - scope:teentribal = { - if = { - limit = { - location = { terrain = jungle } - NOT = { has_trait = jungle_stalker } - } - add_trait = jungle_stalker - } - else_if = { - limit = { - location = { terrain = desert } - NOT = { has_trait = desert_warrior } - } - add_trait = desert_warrior - } - else_if = { - limit = { - location = { terrain = drylands } - NOT = { has_trait = desert_warrior } - } - add_trait = desert_warrior - } - else_if = { - limit = { - location = { terrain = desert_mountains } - NOT = { has_trait = desert_warrior } - } - add_trait = desert_warrior - } - else_if = { - limit = { - location = { terrain = oasis } - NOT = { has_trait = desert_warrior } - } - add_trait = desert_warrior - } - else_if = { - limit = { - location = { terrain = mountains } - NOT = { has_trait = rough_terrain_expert } - } - add_trait = rough_terrain_expert - } - else_if = { - limit = { - location = { terrain = wetlands } - NOT = { has_trait = rough_terrain_expert } - } - add_trait = rough_terrain_expert - } - else_if = { - limit = { - location = { terrain = hills } - NOT = { has_trait = rough_terrain_expert } - } - add_trait = rough_terrain_expert - } - else_if = { - limit = { - location = { terrain = farmlands } - NOT = { has_trait = open_terrain_expert } - } - add_trait = open_terrain_expert - } - else_if = { - limit = { - location = { terrain = plains } - NOT = { has_trait = open_terrain_expert } - } - add_trait = open_terrain_expert - } - else_if = { - limit = { - location = { terrain = steppe } - NOT = { has_trait = open_terrain_expert } - } - add_trait = open_terrain_expert - } - else_if = { - limit = { - location = { terrain = forest } - NOT = { has_trait = forest_fighter } - } - add_trait = forest_fighter - } - else_if = { - limit = { - location = { terrain = taiga } - NOT = { has_trait = forest_fighter } - } - add_trait = forest_fighter - } - else_if = { - limit = { - NOT = { has_trait = lifestyle_traveler } - } - add_trait = lifestyle_traveler - add_trait_xp = { - trait = lifestyle_traveler - track = danger - value = { - value = 0 - if = { - limit = {scope:rite_location ?= scope:seclusion_location } - add = 10 - } - if = { - limit = { scope:realm_location ?= scope:seclusion_location } - add = 20 - } - if = { - limit = { scope:abroad_location ?= scope:seclusion_location } - add = 30 - } - } - } - } - add_character_modifier = { - modifier = proven_adult_modifier - years = 10 - } - } - } - } - } - 50 = { #you are not stronger than a predator animal - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - modifier = { - add = 10 - scope:abroad_location ?= scope:seclusion_location - } - modifier = { - add = 5 - scope:realm_location ?= scope:seclusion_location - } - desc = bp2_yearly.7025.b_lose - scope:receiver = { - send_interface_toast = { - title = bp2_yearly.7025.tt - left_icon = scope:teentribal - scope:teentribal = { - increase_wounds_no_death_effect = { REASON = wild_animal } - add_character_modifier = { - modifier = insecure_adult_modifier - years = 10 - } - } - } - } - } - } - stress_impact = { - wrathful = minor_stress_impact_loss - callous = minor_stress_impact_loss - compassionate = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - has_trait = compassionate - add = -10 - } - modifier = { - has_trait = callous - add = 10 - } - modifier = { - has_trait = wrathful - add = 10 - } - } - } - - after = { - clean_rites_flags_success = yes - } -} - -bp2_yearly.7026 = { #hair shaving - type = character_event - content_source = dlc_009 - title = bp2_yearly.7026.t - desc = { - first_valid = { - triggered_desc = { - trigger = { scope:teentribal = root } - desc = bp2_yearly.7026.desc_child - } - desc = bp2_yearly.7026.desc - } - } - theme = family - override_background = { - reference = throne_room - } - left_portrait = { - character = scope:teentribal - animation = throne_room_curtsey_1 - remove_default_outfit = no - outfit_tags = { nightgown } - } - right_portrait = { - character = scope:priest - animation = assassin - } - - option = { #Shave it - name = bp2_yearly.7026.a - flavor = bp2_yearly.7026.a.tt - send_interface_toast = { - title = bp2_yearly.7026.a.toast - left_icon = scope:teentribal - scope:teentribal = { - passage_rites_effect = { - TRAIT = humble - OPPOSITE_TRAIT = arrogant - LIFESTYLE = diplomacy - SKILL = diplomacy - } - } - } - scope:teentribal = { - add_character_modifier = { - modifier = proven_adult_modifier - years = 10 - } - add_character_modifier = { - modifier = shaven_bald_modifier - years = 3 - } - add_piety = medium_piety_gain - } - clean_rites_flags_success = yes - stress_impact = { - compassionate = minor_stress_impact_loss - callous = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - has_trait = arrogant - add = -10 - } - modifier = { - has_trait = humble - add = 10 - } - } - } - - option = { #Just a bowl-cut please! - name = bp2_yearly.7026.b - flavor = bp2_yearly.7026.b.tt - send_interface_toast = { - title = bp2_yearly.7026.b.toast - left_icon = scope:teentribal - scope:teentribal = { - passage_rites_effect = { - TRAIT = content - OPPOSITE_TRAIT = ambitious - LIFESTYLE = stewardship - SKILL = stewardship - } - } - } - scope:teentribal = { - add_character_modifier = { - modifier = insecure_adult_modifier - years = 10 - } - create_artifact = { - name = tribal_hair - description = tribal_hair.desc - type = miscellaneous - visuals = pocket_pouch - modifier = artifact_prowess_1_modifier - modifier = artifact_stress_gain_1_modifier - } - } - clean_rites_flags_success = yes - stress_impact = { - humble = minor_stress_impact_loss - arrogant = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - has_trait = ambitious - add = -10 - } - modifier = { - has_trait = content - add = 10 - } - } - } - - option = { #I changed my mind - name = bp2_yearly.7026.c - custom_tooltip = bp2_yearly.7026.c.tt - clean_rites_flags_failure = yes - ai_chance = { #there is no reason for the AI to back out at this point - base = 0 - } - } -} - -bp2_yearly.7027 = { #cleansing with water - type = character_event - content_source = dlc_009 - title = bp2_yearly.7027.t - desc = bp2_yearly.7027.desc - theme = family - override_background = { - reference = fp1_runestone_circle - } - - left_portrait = { - character = scope:teentribal - animation = throne_room_kneel_2 - remove_default_outfit = no - outfit_tags = { beggar_rags } - } - right_portrait = { - character = scope:priest - animation = toast_goblet - camera = camera_body_left - } - - option = { #Submerge completely in the water - name = bp2_yearly.7027.a - flavor = bp2_yearly.7027.a.tt - if = { - limit = { - scope:teentribal = { num_sinful_traits > 0 } - } - random_list = { - 1 = { - desc = passage_rites_effect.trait - send_interface_toast = { - title = bp2_yearly.7027.tt - left_icon = scope:teentribal - scope:teentribal = { - flip_sinful_trait_effect = yes - } - } - } - 1 = { - desc = passage_rites_effect.xp - send_interface_toast = { - title = bp2_yearly.7027.tt - left_icon = scope:teentribal - scope:teentribal = { - add_learning_lifestyle_xp = major_lifestyle_xp - } - } - } - 1 = { - desc = passage_rites_effect.skill - send_interface_toast = { - title = bp2_yearly.7027.tt - left_icon = scope:teentribal - scope:teentribal = { - add_learning_skill = 1 - } - } - } - } - } - else = { - send_interface_toast = { - title = bp2_yearly.7027.tt - left_icon = scope:teentribal - scope:teentribal = { - passage_rites_effect = { - TRAIT = zealous - OPPOSITE_TRAIT = cynical - LIFESTYLE = learning - SKILL = learning - } - } - } - } - scope:teentribal = { - add_character_modifier = { - modifier = proven_adult_modifier - years = 10 - } - add_piety = medium_piety_gain - add_stress = minor_stress_gain - } - clean_rites_flags_success = yes - stress_impact = { - patient = minor_stress_impact_loss - impatient = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - has_trait = impatient - add = -10 - } - modifier = { - has_trait = patient - add = 10 - } - } - } - option = { #Pour some water on the head - name = bp2_yearly.7027.b - flavor = bp2_yearly.7027.b.tt - send_interface_toast = { - title = bp2_yearly.7027.tt - left_icon = scope:teentribal - scope:teentribal = { - passage_rites_effect = { - TRAIT = patient - OPPOSITE_TRAIT = impatient - LIFESTYLE = diplomacy - SKILL = diplomacy - } - } - } - scope:teentribal = { - add_character_modifier = { - modifier = insecure_adult_modifier - years = 10 - } - } - clean_rites_flags_success = yes - stress_impact = { - cynical = minor_stress_impact_loss - zealous = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - has_trait = zealous - add = -10 - } - modifier = { - has_trait = cynical - add = 10 - } - } - } - option = { #I changed my mind - name = bp2_yearly.7027.c - custom_tooltip = bp2_yearly.7027.c.tt - clean_rites_flags_failure = yes - ai_chance = { #there is no reason for the AI to back out at this point - base = 0 - } - } -} - -bp2_yearly.7028 = { #cleansing with fire - type = character_event - content_source = dlc_009 - title = bp2_yearly.7028.t - desc = bp2_yearly.7028.desc - theme = family - override_background = { - reference = bp1_bonfire - } - - left_portrait = { - character = scope:teentribal - animation = manic - } - right_portrait = { - character = scope:priest - animation = throne_room_two_handed_passive_1 - } - - option = { #Run through the fire pit - name = bp2_yearly.7028.a - flavor = bp2_yearly.7028.a.tt - if = { - limit = { - scope:teentribal = { num_sinful_traits > 0 } - } - random_list = { - 1 = { - desc = passage_rites_effect.trait - send_interface_toast = { - title = bp2_yearly.7028.tt - left_icon = scope:teentribal - scope:teentribal = { - flip_sinful_trait_effect = yes - } - } - } - 1 = { - desc = passage_rites_effect.xp - send_interface_toast = { - title = bp2_yearly.7028.tt - left_icon = scope:teentribal - scope:teentribal = { - add_learning_lifestyle_xp = major_lifestyle_xp - } - } - } - 1 = { - desc = passage_rites_effect.skill - send_interface_toast = { - title = bp2_yearly.7028.tt - left_icon = scope:teentribal - scope:teentribal = { - add_learning_skill = 1 - } - } - } - } - } - else = { - send_interface_toast = { - title = bp2_yearly.7028.tt - left_icon = scope:teentribal - scope:teentribal = { - passage_rites_effect = { - TRAIT = zealous - OPPOSITE_TRAIT = cynical - LIFESTYLE = learning - SKILL = learning - } - } - } - } - scope:teentribal = { - add_character_modifier = { - modifier = proven_adult_modifier - years = 10 - } - add_character_modifier = { - modifier = scorched_soles_modifier - years = 5 - } - add_piety = medium_piety_gain - } - clean_rites_flags_success = yes - stress_impact = { - cynical = minor_stress_impact_loss - zealous = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - scope:teentribal = { - has_trait = zealous - } - add = -10 - } - modifier = { - scope:teentribal = { - has_trait = cynical - } - add = 10 - } - } - } - - option = { #Put just a single step in the fire pit - name = bp2_yearly.7028.b - flavor = bp2_yearly.7028.b.tt - send_interface_toast = { - title = bp2_yearly.7028.tt - left_icon = scope:teentribal - scope:teentribal = { - passage_rites_effect = { - TRAIT = patient - OPPOSITE_TRAIT = impatient - LIFESTYLE = diplomacy - SKILL = diplomacy - } - } - } - scope:teentribal = { - add_character_modifier = { - modifier = insecure_adult_modifier - years = 10 - } - } - clean_rites_flags_success = yes - stress_impact = { - patient = minor_stress_impact_loss - impatient = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - has_trait = impatient - add = -10 - } - modifier = { - has_trait = patient - add = 10 - } - } - } - - option = { #I changed my mind - name = bp2_yearly.7028.c - custom_tooltip = bp2_yearly.7028.c.tt - clean_rites_flags_failure = yes - ai_chance = { #there is no reason for the AI to back out at this point - base = 0 - } - } -} - -bp2_yearly.7029 = { #Completed rite memory follow up event - other tribal child does the rite, you can encourage them or let them back out - type = character_event - content_source = dlc_009 - title = bp2_yearly.7029.t - desc = { - desc = bp2_yearly.7029.desc - switch = { - trigger = scope:rite_memory.var:rites_of_passage_type - flag:dueling_rite_memory = { - desc = bp2_yearly.7029.desc_duel - } - flag:scarification_rite_memory = { - desc = bp2_yearly.7029.desc_scarification - } - flag:seclusion_rite_memory = { - desc = bp2_yearly.7029.desc_seclusion - } - flag:shaving_hair_rite_memory = { - desc = bp2_yearly.7029.desc_hair_shaving - } - flag:fire_cleanse_rite_memory = { - desc = bp2_yearly.7029.desc_fire_cleanse - } - flag:water_cleanse_rite_memory = { - desc = bp2_yearly.7029.desc_water_cleanse - } - } - } - theme = family - override_background = { - trigger = { - scope:rite_memory.var:rites_of_passage_type = flag:dueling_rite_memory - } - reference = ep2_tournament - } - override_background = { - trigger = { - scope:rite_memory.var:rites_of_passage_type = flag:scarification_rite_memory - } - reference = fp1_runestone_circle - } - override_background = { - trigger = { - scope:rite_memory.var:rites_of_passage_type = flag:seclusion_rite_memory - } - reference = terrain_travel - } - override_background = { - trigger = { - scope:rite_memory.var:rites_of_passage_type = flag:shaving_hair_rite_memory - } - reference = throne_room - } - override_background = { - trigger = { - scope:rite_memory.var:rites_of_passage_type = flag:fire_cleanse_rite_memory - } - reference = bp1_bonfire - } - override_background = { - trigger = { - scope:rite_memory.var:rites_of_passage_type = flag:water_cleanse_rite_memory - } - reference = fp1_runestone_circle - } - - left_portrait = { - character = root - animation = personality_rational - } - right_portrait = { - character = scope:teentribal - animation = crying - } - - cooldown = { years = 5 } - - trigger = { - has_bp2_dlc_trigger = yes - is_landed = yes - government_has_flag = government_is_tribal - any_memory = { - memory_type = completed_rites_of_passage - has_variable = rites_of_passage_type - } - any_courtier_or_guest = { - character_can_rites_of_passage_trigger = yes - is_available_ai = yes - NOR = { - is_close_or_extended_family_of = root - this = root - is_hostage_of = root - } - } - } - - immediate = { - random_memory = { - memory_type = completed_rites_of_passage - limit = { - has_variable = rites_of_passage_type - } - save_scope_as = rite_memory - } - random_courtier_or_guest = { - limit = { - character_can_rites_of_passage_trigger = yes - is_available_ai = yes - NOR = { - is_close_or_extended_family_of = root - this = root - is_hostage_of = root - } - } - save_scope_as = teentribal - } - } - - option = { - name = bp2_yearly.7029.a - flavor = bp2_yearly.7029.a.tt - random_list = { - 10 = { - send_interface_toast = { - title = bp2_yearly.7029.a.teaching - left_icon = scope:teentribal - switch = { - trigger = scope:rite_memory.var:rites_of_passage_type - flag:dueling_rite_memory = { - scope:teentribal = { - add_martial_skill = 3 - } - } - flag:scarification_rite_memory = { - scope:teentribal = { - add_intrigue_skill = 3 - } - } - flag:seclusion_rite_memory = { - scope:teentribal = { - add_stewardship_skill = 3 - } - } - flag:shaving_hair_rite_memory = { - scope:teentribal = { - add_diplomacy_skill = 3 - add_character_modifier = { - modifier = shaven_bald_modifier - years = 1 - } - } - } - flag:fire_cleanse_rite_memory = { - scope:teentribal = { - add_learning_skill = 3 - } - } - flag:water_cleanse_rite_memory = { - scope:teentribal = { - add_learning_skill = 3 - } - } - } - } - modifier = { - add = 10 - switch = { - trigger = scope:rite_memory.var:rites_of_passage_type - flag:dueling_rite_memory = { - martial >= decent_skill_rating - } - flag:scarification_rite_memory = { - intrigue >= decent_skill_rating - } - flag:seclusion_rite_memory = { - stewardship >= decent_skill_rating - } - flag:shaving_hair_rite_memory = { - diplomacy >= decent_skill_rating - } - flag:fire_cleanse_rite_memory = { - learning >= decent_skill_rating - } - flag:water_cleanse_rite_memory = { - learning >= decent_skill_rating - } - } - } - modifier = { - add = 10 - switch = { - trigger = scope:rite_memory.var:rites_of_passage_type - flag:dueling_rite_memory = { - martial >= very_high_skill_rating - } - flag:scarification_rite_memory = { - intrigue >= very_high_skill_rating - } - flag:seclusion_rite_memory = { - stewardship >= very_high_skill_rating - } - flag:shaving_hair_rite_memory = { - diplomacy >= very_high_skill_rating - } - flag:fire_cleanse_rite_memory = { - learning >= very_high_skill_rating - } - flag:water_cleanse_rite_memory = { - learning >= very_high_skill_rating - } - } - } - } - 20 = { - send_interface_toast = { - title = bp2_yearly.7029.a.inspiration - left_icon = scope:teentribal - add_prestige = minor_prestige_gain - } - modifier = { - add = 10 - prestige_level >= 3 - } - modifier = { - add = 10 - prestige_level >= 4 - } - } - } - - if = { - limit = { has_character_modifier = insecure_adult_modifier } - remove_character_modifier = insecure_adult_modifier - } - stress_impact = { - compassionate = minor_stress_impact_loss - callous = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - add = -10 - has_trait = callous - } - modifier = { - add = 10 - has_trait = compassionate - } - } - } - - option = { - name = bp2_yearly.7029.b - flavor = bp2_yearly.7029.b.tt - random_list = { - 20 = { - send_interface_toast = { - title = bp2_yearly.7029.b.success - left_icon = scope:teentribal - switch = { - trigger = scope:rite_memory.var:rites_of_passage_type - flag:dueling_rite_memory = { - scope:teentribal = { - add_prowess_skill = 3 - } - } - flag:scarification_rite_memory = { - scope:teentribal = { - add_prowess_skill = 3 - } - } - flag:seclusion_rite_memory = { - scope:teentribal = { - add_prowess_skill = 3 - } - } - flag:shaving_hair_rite_memory = { - scope:teentribal = { - add_character_modifier = { - modifier = tough_and_confident_modifier - years = 10 - } - add_character_modifier = { - modifier = shaven_bald_modifier - years = 1 - } - } - } - flag:fire_cleanse_rite_memory = { - scope:teentribal = { - add_character_modifier = { - modifier = tough_and_confident_modifier - years = 10 - } - } - } - flag:water_cleanse_rite_memory = { - scope:teentribal = { - add_character_modifier = { - modifier = tough_and_confident_modifier - years = 10 - } - } - } - } - } - modifier = { - add = 10 - switch = { - trigger = scope:rite_memory.var:rites_of_passage_type - flag:dueling_rite_memory = { - scope:teentribal = { martial >= medium_skill_rating } - } - flag:scarification_rite_memory = { - scope:teentribal = { intrigue >= medium_skill_rating } - } - flag:seclusion_rite_memory = { - scope:teentribal = { stewardship >= medium_skill_rating } - } - flag:shaving_hair_rite_memory = { - scope:teentribal = { diplomacy >= medium_skill_rating } - } - flag:fire_cleanse_rite_memory = { - scope:teentribal = { learning >= medium_skill_rating } - } - flag:water_cleanse_rite_memory = { - scope:teentribal = { learning >= medium_skill_rating } - } - } - } - } - 10 = { - send_interface_toast = { - title = bp2_yearly.7029.b.fail - left_icon = scope:teentribal - scope:teentribal = { - add_character_modifier = { - modifier = backdown_from_rite_modifier - years = 10 - } - } - } - modifier = { - add = 10 - switch = { - trigger = scope:rite_memory.var:rites_of_passage_type - flag:dueling_rite_memory = { - scope:teentribal = { martial < low_skill_rating } - } - flag:scarification_rite_memory = { - scope:teentribal = { intrigue < low_skill_rating } - } - flag:seclusion_rite_memory = { - scope:teentribal = { stewardship < low_skill_rating } - } - flag:shaving_hair_rite_memory = { - scope:teentribal = { diplomacy < low_skill_rating } - } - flag:fire_cleanse_rite_memory = { - scope:teentribal = { learning < low_skill_rating } - } - flag:water_cleanse_rite_memory = { - scope:teentribal = { learning < low_skill_rating } - } - } - } - } - } - stress_impact = { - callous = minor_stress_impact_loss - compassionate = minor_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - add = 10 - has_trait = callous - } - modifier = { - add = -10 - has_trait = compassionate - } - } - } -} diff --git a/events/dlc/bp2/bp2_yearly_events_6.txt b/events/dlc/bp2/bp2_yearly_events_6.txt deleted file mode 100644 index 64c420566..000000000 --- a/events/dlc/bp2/bp2_yearly_events_6.txt +++ /dev/null @@ -1,15018 +0,0 @@ -#Events run from the yearly_pulse on_action -namespace = bp2_yearly - -# List of events in this file: -# -# -# 6000 Not the Italian Way -# 6010 No Man Imprisoned -# 6020 Children Say Such Funny Things -# 6030 Eyes of the Family -# 6040 All We Are Not -# 6050 Stone, Iron, Clay and Wattle -# 6060 Studies in Eternity -# 6070 Where All the World Gazes -# 6080 Bulgarian Blood -# 6090 A Birthright, Renewed -# 6091 A People, Immutable -# 6100 Moldavia, Reborn! -# 6110 Foreign Reforms -# 6120 Where Bonds Are Tested -# 6121 The Forgone Son -# 6122 Not Forgotten -# 6123 The Scion of Peace -# 6130 Captive, Captivated -# 6140 For Amity, Too Young -# 6150 The Assurance Speaks -# 6160 Worst of my Riders -# 6170 A Pact with the Uncivilized -# 6180-6199 Foreign-Raised Reformer feed events -# 6200-6203 Where the Knights Know Peace -# 6204 A Plea From My Blood -# 6205 To Lands of Strife -# 6210-6215 Foreign-Raised Reformer feed events - -##################################### -# Not the Italian Way # -# by Jason Cantalini # -# 60000 # -##################################### - -scripted_trigger bp2_yearly_6000_valid_educator = { - is_available = yes - culture = root.culture - NOR = { - has_trait = cynical - has_trait = calm - has_trait = eccentric - } - OR = { - has_relation_guardian = scope:hosted_child - has_court_position = court_tutor_court_position - AND = { - root.culture = { - has_cultural_pillar = ethos_bellicose - } - OR = { - is_knight_of = root - root.cp:councillor_marshal ?= this - root.cp:councillor_spymaster ?= this - } - } - AND = { - root.culture = { - has_cultural_pillar = ethos_bureaucratic - } - OR = { - root.cp:councillor_steward ?= this - has_court_position = seneschal_court_position - root.cp:councillor_court_chaplain ?= this - } - } - AND = { - root.culture = { - has_cultural_pillar = ethos_communal - } - OR = { - root.cp:councillor_chancellor ?= this - root.cp:councillor_court_chaplain ?= this - has_court_position = court_poet_court_position - } - } - AND = { - root.culture = { - has_cultural_pillar = ethos_courtly - } - OR = { - root.cp:councillor_chancellor ?= this - has_court_position = seneschal_court_position - has_court_position = court_poet_court_position - root.cp:councillor_court_chaplain ?= this - } - } - AND = { - root.culture = { - has_cultural_pillar = ethos_egalitarian - } - OR = { - root.cp:councillor_chancellor ?= this - has_court_position = seneschal_court_position - root.cp:councillor_court_chaplain ?= this - } - } - AND = { - root.culture = { - has_cultural_pillar = ethos_spiritual - } - root.cp:councillor_court_chaplain ?= this - } - - AND = { - root.culture = { - has_cultural_pillar = ethos_stoic - } - OR = { - is_knight_of = root - root.cp:councillor_marshal ?= this - root.cp:councillor_chancellor ?= this - has_court_position = court_poet_court_position - root.cp:councillor_court_chaplain ?= this - } - } - } -} - -scripted_trigger bp2_yearly_6000_good_at_ethos = { - trigger_if = { - limit = { - root.culture = { - has_cultural_pillar = ethos_bellicose - } - } - OR = { - martial >= high_skill_rating - ai_boldness >= medium_positive_ai_value - ai_compassion <= high_negative_ai_value - has_trait = rowdy - has_trait = aggressive_attacker - has_trait = reaver - has_trait = adventurer - } - } - trigger_else_if = { - limit = { - root.culture = { - has_cultural_pillar = ethos_bureaucratic - } - } - OR = { - stewardship >= high_skill_rating - ai_greed >= high_positive_ai_value - ai_rationality >= medium_positive_ai_value - has_trait = pensive - has_trait = overseer - has_trait = administrator - has_trait = architect - } - } - trigger_else_if = { - limit = { - root.culture = { - has_cultural_pillar = ethos_communal - } - } - OR = { - ai_vengefulness >= medium_positive_ai_value - ai_honor >= high_positive_ai_value - has_trait = charming - has_trait = family_first - } - } - trigger_else_if = { - limit = { - root.culture = { - has_cultural_pillar = ethos_courtly - } - } - OR = { - diplomacy >= high_skill_rating - ai_sociability >= medium_positive_ai_value - ai_honor >= high_positive_ai_value - has_trait = charming - has_trait = august - has_trait = lifestyle_poet - } - } - trigger_else_if = { - limit = { - root.culture = { - has_cultural_pillar = ethos_egalitarian - } - } - OR = { - diplomacy >= high_skill_rating - ai_sociability >= high_positive_ai_value - ai_compassion >= medium_positive_ai_value - has_trait = curious - has_trait = diplomat - } - } - trigger_else_if = { - limit = { - root.culture = { - has_cultural_pillar = ethos_spiritual - } - } - OR = { - has_trait = zealous - piety_level >= 3 - has_trait = pensive - has_trait = theologian - has_trait = scholar - has_trait = lifestyle_mystic - } - } - trigger_else = { - OR = { - ai_compassion >= high_positive_ai_value - ai_zeal >= medium_positive_ai_value - has_trait = unyielding_defender - has_trait = gallant - has_trait = loyal - } - } -} - -bp2_yearly.6000 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.6000.t - override_background = { - reference = relaxing_room - } - desc = { - #Standard intro - desc = bp2_yearly.6000.desc.intro - first_valid = { - triggered_desc = { - trigger = { - culture = { - has_cultural_pillar = ethos_bellicose - } - } - desc = bp2_yearly.6000.desc.fault.bellicose - } - triggered_desc = { - trigger = { - culture = { - has_cultural_pillar = ethos_bureaucratic - } - } - desc = bp2_yearly.6000.desc.fault.bureaucratic - } - triggered_desc = { - trigger = { - culture = { - has_cultural_pillar = ethos_communal - } - } - desc = bp2_yearly.6000.desc.fault.communal - } - triggered_desc = { - trigger = { - culture = { - has_cultural_pillar = ethos_courtly - } - } - desc = bp2_yearly.6000.desc.fault.courtly - } - triggered_desc = { - trigger = { - culture = { - has_cultural_pillar = ethos_egalitarian - } - exists = scope:realm_minority - } - desc = bp2_yearly.6000.desc.fault.egalitarian - } - triggered_desc = { - trigger = { - culture = { - has_cultural_pillar = ethos_egalitarian - } - } - desc = bp2_yearly.6000.desc.fault.egalitarian_no_culture - } - triggered_desc = { - trigger = { - culture = { - has_cultural_pillar = ethos_spiritual - } - } - desc = bp2_yearly.6000.desc.fault.spiritual - } - triggered_desc = { - trigger = { - culture = { - has_cultural_pillar = ethos_stoic - } - } - desc = bp2_yearly.6000.desc.fault.stoic - } - } - desc = bp2_yearly.6000.desc.mid - first_valid = { - triggered_desc = { - trigger = { - culture = { - has_cultural_pillar = ethos_bellicose - } - } - desc = bp2_yearly.6000.desc.value.bellicose - } - triggered_desc = { - trigger = { - culture = { - has_cultural_pillar = ethos_bureaucratic - } - } - desc = bp2_yearly.6000.desc.value.bureaucratic - } - triggered_desc = { - trigger = { - culture = { - has_cultural_pillar = ethos_communal - } - } - desc = bp2_yearly.6000.desc.value.communal - } - triggered_desc = { - trigger = { - culture = { - has_cultural_pillar = ethos_courtly - } - } - desc = bp2_yearly.6000.desc.value.courtly - } - triggered_desc = { - trigger = { - culture = { - has_cultural_pillar = ethos_egalitarian - } - } - desc = bp2_yearly.6000.desc.value.egalitarian - } - triggered_desc = { - trigger = { - culture = { - has_cultural_pillar = ethos_spiritual - } - } - desc = bp2_yearly.6000.desc.value.spiritual - } - triggered_desc = { - trigger = { - culture = { - has_cultural_pillar = ethos_stoic - } - } - desc = bp2_yearly.6000.desc.value.stoic - } - } - desc = bp2_yearly.6000.desc.outro - } - theme = hostage - left_portrait = { - character = scope:tutor - animation = stressed_teacher - } - right_portrait = { - character = scope:hosted_child - animation = boredom - } - lower_right_portrait = { - character = scope:childs_home_liege - } - - cooldown = { - years = 5 - } - - trigger = { - has_bp2_dlc_trigger = yes - is_available_adult = yes - #Do you have a same-culture hostage or ward from another court? - OR = { - any_warden_hostage = { - is_imprisoned = no - culture = root.culture - age > 5 - is_adult = no - bp2_yearly_6000_good_at_ethos = no - home_court ?= { - bp2_yearly_6000_good_at_ethos = no - culture = root.culture - NOT = { - has_character_flag = accused_of_bad_cultural_education - } - is_adult = yes - } - } - any_foreign_court_guest = { - is_imprisoned = no - culture = root.culture - age > 5 - is_adult = no - bp2_yearly_6000_good_at_ethos = no - liege ?= { - bp2_yearly_6000_good_at_ethos = no - culture = root.culture - NOT = { - has_character_flag = accused_of_bad_cultural_education - } - is_adult = yes - } - } - } - - #Is there a valid tutor, appropriate for the cultural issue? - any_courtier = { - is_available_adult = yes - culture = root.culture - NOR = { - has_trait = cynical - has_trait = eccentric - has_trait = calm - } - } - - # add character flag on target so they don't get spammed - } - weight_multiplier = { - base = 1 - modifier = { - culture = { - OR = { - has_cultural_parameter = harder_to_hybridize - has_cultural_parameter = dislikes_marrying_outside_of_culture - } - } - add = 2 - } - modifier = { - culture = { - OR = { - has_cultural_parameter = life_is_a_joke_trait_same_culture_opinion - has_cultural_parameter = cheaper_to_hybridize - } - } - add = -2 - } - modifier = { - # More likely if root is big on cultural tradition - bp2_yearly_6000_good_at_ethos = yes - add = 3 - } - } - immediate = { - root = { - save_scope_as = childs_host - } - if = { - limit = { - any_warden_hostage = { - is_imprisoned = no - culture = root.culture - age > 5 - is_adult = no - bp2_yearly_6000_good_at_ethos = no - home_court ?= { - bp2_yearly_6000_good_at_ethos = no - culture = root.culture - NOT = { - has_character_flag = accused_of_bad_cultural_education - } - is_adult = yes - } - } - } - random_warden_hostage = { - limit = { - is_imprisoned = no - culture = root.culture - age > 5 - is_adult = no - bp2_yearly_6000_good_at_ethos = no - home_court ?= { - bp2_yearly_6000_good_at_ethos = no - culture = root.culture - NOT = { - has_character_flag = accused_of_bad_cultural_education - } - is_adult = yes - } - } - save_scope_as = hosted_child - home_court = { - save_scope_as = childs_home_liege - } - } - } - else = { - random_foreign_court_guest = { - limit = { - is_imprisoned = no - culture = root.culture - age > 5 - is_adult = no - bp2_yearly_6000_good_at_ethos = no - liege ?= { - bp2_yearly_6000_good_at_ethos = no - culture = root.culture - NOT = { - has_character_flag = accused_of_bad_cultural_education - } - is_adult = yes - } - } - save_scope_as = hosted_child - liege = { - save_scope_as = childs_home_liege - } - } - } - #try to get someone who would be teaching child about ethos - if = { - limit = { - any_courtier = { - bp2_yearly_6000_valid_educator = yes - } - } - random_courtier = { - limit = { - bp2_yearly_6000_valid_educator = yes - } - save_scope_as = tutor - } - } - #try to get anyone who would freak out in an appropriate way - else = { - random_courtier = { - limit = { - is_available_adult = yes - culture = root.culture - NOR = { - has_trait = cynical - has_trait = calm - has_trait = eccentric - } - } - save_scope_as = tutor - } - } - - # try to save a minority culture to refer to - if = { - limit = { - any_culture_global = { - this != root.culture - culture_number_of_counties > 0 - trigger_if = { - limit = { - exists = root.capital_county - root = { - highest_held_title_tier > tier_duchy - } - } - any_culture_county = { - empire = root.capital_county.empire - } - } - trigger_else = { - exists = root.capital_county - any_culture_county = { - kingdom = root.capital_county.kingdom - } - } - } - } - random_culture_global = { - limit = { - this != root.culture - culture_number_of_counties > 0 - trigger_if = { - limit = { - exists = root.capital_county - root = { - highest_held_title_tier > tier_duchy - } - } - any_culture_county = { - empire = root.capital_county.empire - } - } - trigger_else = { - exists = root.capital_county - any_culture_county = { - kingdom = root.capital_county.kingdom - } - } - } - weight = { - base = 1 - modifier = { - add = 2 - NOT = { has_same_culture_heritage = root.culture } - } - modifier = { - add = 2 - NOT = { has_same_culture_language = root.culture } - } - } - save_scope_as = realm_minority - } - } - } - # Everybody needs to hear about this: the kid's liege will change their ways or face shaming - option = { - name = bp2_yearly.6000.a - flavor = bp2_yearly.6000.a.tt - scope:childs_home_liege = { - add_character_flag = { - flag = accused_of_bad_cultural_education - years = 20 - } - } - progress_towards_rival_effect = { - CHARACTER = scope:childs_home_liege - OPINION = -30 - REASON = rival_accused_of_cultural_impropriety - } - scope:childs_home_liege = { - trigger_event = { - id = bp2_yearly.6001 - days = 1 - } - } - custom_tooltip = bp2_yearly.6000.a.response - if = { - limit = { - culture = { - has_cultural_pillar = ethos_bellicose - } - } - add_character_modifier = { - modifier = defender_of_bellicose_ways_modifier - years = 10 - } - - } - else_if = { - limit = { - culture = { - has_cultural_pillar = ethos_bureaucratic - } - } - add_character_modifier = { - modifier = defender_of_bureaucratic_ways_modifier - years = 10 - } - } - else_if = { - limit = { - culture = { - has_cultural_pillar = ethos_communal - } - } - add_character_modifier = { - modifier = defender_of_communal_ways_modifier - years = 10 - } - } - else_if = { - limit = { - culture = { - has_cultural_pillar = ethos_courtly - } - } - add_character_modifier = { - modifier = defender_of_courtly_ways_modifier - years = 10 - } - } - else_if = { - limit = { - culture = { - has_cultural_pillar = ethos_egalitarian - } - } - add_character_modifier = { - modifier = defender_of_egalitarian_ways_modifier - years = 10 - } - } - else_if = { - limit = { - culture = { - has_cultural_pillar = ethos_spiritual - } - } - add_character_modifier = { - modifier = defender_of_spiritual_ways_modifier - years = 10 - } - } - else_if = { - limit = { - culture = { - has_cultural_pillar = ethos_stoic - } - } - add_character_modifier = { - modifier = defender_of_stoic_ways_modifier - years = 10 - } - } - - stress_impact = { - forgiving = major_stress_impact_gain - eccentric = minor_stress_impact_gain - arbitrary = minor_stress_impact_gain - content = minor_stress_impact_gain - fickle = minor_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = 1 - ai_boldness = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = forgiving - has_trait = eccentric - has_trait = arbitrary - } - } - } - } - # step in and address this poor cultural education head on - it's the only hope of raising a real Italian! - option = { - name = bp2_yearly.6000.b - #bellicose education - if = { - limit = { - culture = { - has_cultural_pillar = ethos_bellicose - } - } - duel = { - skills = { martial intrigue } - value = decent_skill_rating - 50 = { #It works well - desc = bp2_yearly.6000.b.success - compare_modifier = { - value = scope:duel_value - multiplier = 2 - } - modifier = { - culture = { - OR = { - has_cultural_parameter = harder_to_hybridize - has_cultural_parameter = dislikes_marrying_outside_of_culture - } - } - add = 20 - } - modifier = { - culture = { - OR = { - has_cultural_parameter = life_is_a_joke_trait_same_culture_opinion - has_cultural_parameter = cheaper_to_hybridize - } - } - add = -20 - } - - send_interface_toast = { - title = bp2_yearly.6000.b.success - left_icon = root - right_icon = scope:hosted_child - if = { - limit = { has_lifestyle = martial_lifestyle } - add_martial_lifestyle_xp = medium_lifestyle_xp - } - else_if = { - limit = { has_lifestyle = intrigue_lifestyle } - add_intrigue_lifestyle_xp = medium_lifestyle_xp - } - else_if = { - limit = { has_royal_court = yes has_dlc_feature = royal_court } - change_current_court_grandeur = medium_court_grandeur_gain - } - else = { - add_prestige = medium_prestige_gain - } - scope:hosted_child = { - add_martial_skill = 1 - add_intrigue_skill = 1 - add_diplomacy_skill = -1 - } - } - } - 50 = { #It doesn't go well - desc = bp2_yearly.6000.b.failure - compare_modifier = { - value = scope:duel_value - multiplier = -2 - } - send_interface_toast = { - title = bp2_yearly.6000.b.failure - left_icon = root - right_icon = scope:hosted_child - progress_towards_rival_effect = { - CHARACTER = scope:hosted_child - OPINION = -30 - REASON = rival_enforced_cultural_norms - } - } - } - } - } - #bureaucratic education - else_if = { - limit = { - culture = { - has_cultural_pillar = ethos_bureaucratic - } - } - duel = { - skills = { martial stewardship } - value = decent_skill_rating - 55 = { #It works well - desc = bp2_yearly.6000.b.success - compare_modifier = { - value = scope:duel_value - multiplier = 2 - min = -54 - } - modifier = { - culture = { - OR = { - has_cultural_parameter = harder_to_hybridize - has_cultural_parameter = dislikes_marrying_outside_of_culture - } - } - add = 20 - } - modifier = { - culture = { - OR = { - has_cultural_parameter = life_is_a_joke_trait_same_culture_opinion - has_cultural_parameter = cheaper_to_hybridize - } - } - add = -20 - } - - send_interface_toast = { - title = bp2_yearly.6000.b.success - left_icon = root - right_icon = scope:hosted_child - scope:hosted_child = { - add_martial_skill = 1 - add_stewardship_skill = 1 - add_learning_skill = -1 - } - if = { - limit = { has_lifestyle = martial_lifestyle } - add_martial_lifestyle_xp = medium_lifestyle_xp - } - else_if = { - limit = { has_lifestyle = stewardship_lifestyle } - add_stewardship_lifestyle_xp = medium_lifestyle_xp - } - else_if = { - limit = { has_royal_court = yes has_dlc_feature = royal_court } - change_current_court_grandeur = medium_court_grandeur_gain - } - else = { - add_prestige = medium_prestige_gain - } - } - } - 45 = { #It doesn't go well - desc = bp2_yearly.6000.b.failure - compare_modifier = { - value = scope:duel_value - multiplier = -2 - min = -44 - } - send_interface_toast = { - title = bp2_yearly.6000.b.failure - left_icon = root - right_icon = scope:hosted_child - progress_towards_rival_effect = { - CHARACTER = scope:hosted_child - OPINION = -30 - REASON = rival_enforced_cultural_norms - } - } - } - } - } - #communal education - else_if = { - limit = { - culture = { - has_cultural_pillar = ethos_communal - } - } - duel = { - skills = { stewardship intrigue } - value = decent_skill_rating - 55 = { #It works well - desc = bp2_yearly.6000.b.success - compare_modifier = { - value = scope:duel_value - multiplier = 2 - min = -54 - } - modifier = { - culture = { - OR = { - has_cultural_parameter = harder_to_hybridize - has_cultural_parameter = dislikes_marrying_outside_of_culture - } - } - add = 20 - } - modifier = { - culture = { - OR = { - has_cultural_parameter = life_is_a_joke_trait_same_culture_opinion - has_cultural_parameter = cheaper_to_hybridize - } - } - add = -20 - } - - send_interface_toast = { - title = bp2_yearly.6000.b.success - left_icon = root - right_icon = scope:hosted_child - scope:hosted_child = { - add_intrigue_skill = 1 - add_stewardship_skill = 1 - add_prowess_skill = -2 - } - if = { - limit = { has_lifestyle = intrigue_lifestyle } - add_intrigue_lifestyle_xp = medium_lifestyle_xp - } - else_if = { - limit = { has_lifestyle = stewardship_lifestyle } - add_stewardship_lifestyle_xp = medium_lifestyle_xp - } - else_if = { - limit = { has_royal_court = yes has_dlc_feature = royal_court } - change_current_court_grandeur = medium_court_grandeur_gain - } - else = { - add_prestige = medium_prestige_gain - } - } - } - 45 = { #It doesn't go well - desc = bp2_yearly.6000.b.failure - compare_modifier = { - value = scope:duel_value - multiplier = -2 - min = -44 - } - send_interface_toast = { - title = bp2_yearly.6000.b.failure - left_icon = root - right_icon = scope:hosted_child - progress_towards_rival_effect = { - CHARACTER = scope:hosted_child - OPINION = -30 - REASON = rival_enforced_cultural_norms - } - } - } - } - } - #courtly education - else_if = { - limit = { - culture = { - has_cultural_pillar = ethos_courtly - } - } - duel = { - skills = { diplomacy learning } - value = decent_skill_rating - 55 = { #It works well - desc = bp2_yearly.6000.b.success - compare_modifier = { - value = scope:duel_value - multiplier = 2 - min = -54 - } - modifier = { - culture = { - OR = { - has_cultural_parameter = harder_to_hybridize - has_cultural_parameter = dislikes_marrying_outside_of_culture - } - } - add = 20 - } - modifier = { - culture = { - OR = { - has_cultural_parameter = life_is_a_joke_trait_same_culture_opinion - has_cultural_parameter = cheaper_to_hybridize - } - } - add = -20 - } - - send_interface_toast = { - title = bp2_yearly.6000.b.success - left_icon = root - right_icon = scope:hosted_child - scope:hosted_child = { - add_diplomacy_skill = 1 - add_learning_skill = 1 - add_stewardship_skill = -1 - } - if = { - limit = { has_lifestyle = diplomacy_lifestyle } - add_diplomacy_lifestyle_xp = medium_lifestyle_xp - } - else_if = { - limit = { has_lifestyle = learning_lifestyle } - add_learning_lifestyle_xp = medium_lifestyle_xp - } - else_if = { - limit = { has_royal_court = yes has_dlc_feature = royal_court } - change_current_court_grandeur = medium_court_grandeur_gain - } - else = { - add_prestige = medium_prestige_gain - } - } - } - 45 = { #It doesn't go well - desc = bp2_yearly.6000.b.failure - compare_modifier = { - value = scope:duel_value - multiplier = -2 - min = -44 - } - send_interface_toast = { - title = bp2_yearly.6000.b.failure - left_icon = root - right_icon = scope:hosted_child - progress_towards_rival_effect = { - CHARACTER = scope:hosted_child - OPINION = -30 - REASON = rival_enforced_cultural_norms - } - } - } - } - } - #egalitarian education - else_if = { - limit = { - culture = { - has_cultural_pillar = ethos_egalitarian - } - } - duel = { - skills = { diplomacy stewardship } - value = decent_skill_rating - 55 = { #It works well - desc = bp2_yearly.6000.b.success - compare_modifier = { - value = scope:duel_value - multiplier = 2 - min = -54 - } - modifier = { - culture = { - OR = { - has_cultural_parameter = harder_to_hybridize - has_cultural_parameter = dislikes_marrying_outside_of_culture - } - } - add = 20 - } - modifier = { - culture = { - OR = { - has_cultural_parameter = life_is_a_joke_trait_same_culture_opinion - has_cultural_parameter = cheaper_to_hybridize - } - } - add = -20 - } - - send_interface_toast = { - title = bp2_yearly.6000.b.success - left_icon = root - right_icon = scope:hosted_child - scope:hosted_child = { - add_diplomacy_skill = 1 - add_stewardship_skill = 1 - add_martial_skill = -1 - } - if = { - limit = { has_lifestyle = diplomacy_lifestyle } - add_diplomacy_lifestyle_xp = medium_lifestyle_xp - } - else_if = { - limit = { has_lifestyle = stewardship_lifestyle } - add_stewardship_lifestyle_xp = medium_lifestyle_xp - } - else_if = { - limit = { has_royal_court = yes has_dlc_feature = royal_court } - change_current_court_grandeur = medium_court_grandeur_gain - } - else = { - add_prestige = medium_prestige_gain - } - } - } - 45 = { #It doesn't go well - desc = bp2_yearly.6000.b.failure - compare_modifier = { - value = scope:duel_value - multiplier = -2 - min = -44 - } - send_interface_toast = { - title = bp2_yearly.6000.b.failure - left_icon = root - right_icon = scope:hosted_child - progress_towards_rival_effect = { - CHARACTER = scope:hosted_child - OPINION = -30 - REASON = rival_enforced_cultural_norms - } - } - } - } - } - #spiritual education - else_if = { - limit = { - culture = { - has_cultural_pillar = ethos_spiritual - } - } - duel = { - skills = { learning stewardship } - value = decent_skill_rating - 55 = { #It works well - desc = bp2_yearly.6000.b.success - compare_modifier = { - value = scope:duel_value - multiplier = 2 - min = -54 - } - modifier = { - culture = { - OR = { - has_cultural_parameter = harder_to_hybridize - has_cultural_parameter = dislikes_marrying_outside_of_culture - } - } - add = 20 - } - modifier = { - culture = { - OR = { - has_cultural_parameter = life_is_a_joke_trait_same_culture_opinion - has_cultural_parameter = cheaper_to_hybridize - } - } - add = -20 - } - - send_interface_toast = { - title = bp2_yearly.6000.b.success - left_icon = root - right_icon = scope:hosted_child - scope:hosted_child = { - add_learning_skill = 1 - add_stewardship_skill = 1 - add_stress = medium_stress_impact_gain - } - if = { - limit = { has_lifestyle = learning_lifestyle } - add_learning_lifestyle_xp = medium_lifestyle_xp - } - else_if = { - limit = { has_lifestyle = stewardship_lifestyle } - add_stewardship_lifestyle_xp = medium_lifestyle_xp - } - else_if = { - limit = { has_royal_court = yes has_dlc_feature = royal_court } - change_current_court_grandeur = medium_court_grandeur_gain - } - else = { - add_prestige = medium_prestige_gain - } - } - } - 45 = { #It doesn't go well - desc = bp2_yearly.6000.b.failure - compare_modifier = { - value = scope:duel_value - multiplier = -2 - min = -44 - } - send_interface_toast = { - title = bp2_yearly.6000.b.failure - left_icon = root - right_icon = scope:hosted_child - progress_towards_rival_effect = { - CHARACTER = scope:hosted_child - OPINION = -30 - REASON = rival_enforced_cultural_norms - } - } - } - } - } - #stoic education - else_if = { - limit = { - culture = { - has_cultural_pillar = ethos_stoic - } - } - duel = { - skills = { diplomacy martial } - value = decent_skill_rating - 55 = { #It works well - desc = bp2_yearly.6000.b.success - compare_modifier = { - value = scope:duel_value - multiplier = 2 - min = -54 - } - modifier = { - culture = { - OR = { - has_cultural_parameter = harder_to_hybridize - has_cultural_parameter = dislikes_marrying_outside_of_culture - } - } - add = 20 - } - modifier = { - culture = { - OR = { - has_cultural_parameter = life_is_a_joke_trait_same_culture_opinion - has_cultural_parameter = cheaper_to_hybridize - } - } - add = -20 - } - - send_interface_toast = { - title = bp2_yearly.6000.b.success - left_icon = root - right_icon = scope:hosted_child - scope:hosted_child = { - add_diplomacy_skill = 1 - add_martial_skill = 1 - add_intrigue_skill = -1 - } - if = { - limit = { has_lifestyle = diplomacy_lifestyle } - add_diplomacy_lifestyle_xp = medium_lifestyle_xp - } - else_if = { - limit = { has_lifestyle = martial_lifestyle } - add_martial_lifestyle_xp = medium_lifestyle_xp - } - else_if = { - limit = { has_royal_court = yes has_dlc_feature = royal_court } - change_current_court_grandeur = medium_court_grandeur_gain - } - else = { - add_prestige = medium_prestige_gain - } - } - } - 45 = { #It doesn't go well - desc = bp2_yearly.6000.b.failure - compare_modifier = { - value = scope:duel_value - multiplier = -2 - min = -44 - } - send_interface_toast = { - title = bp2_yearly.6000.b.failure - left_icon = root - right_icon = scope:hosted_child - progress_towards_rival_effect = { - CHARACTER = scope:hosted_child - OPINION = -30 - REASON = rival_enforced_cultural_norms - } - } - } - } - } - - if = { - limit = { - culture = { - has_cultural_pillar = ethos_bellicose - } - } - stress_impact = { - eccentric = medium_stress_impact_gain - craven = minor_stress_impact_gain - humble = minor_stress_impact_gain - content = minor_stress_impact_gain - forgiving = minor_stress_impact_gain - compassionate = minor_stress_impact_gain - } - } - else_if = { - limit = { - culture = { - has_cultural_pillar = ethos_bureaucratic - } - } - stress_impact = { - eccentric = medium_stress_impact_gain - arbitrary = minor_stress_impact_gain - fickle = minor_stress_impact_gain - impatient = minor_stress_impact_gain - lazy = minor_stress_impact_gain - } - } - else_if = { - limit = { - culture = { - has_cultural_pillar = ethos_communal - } - } - stress_impact = { - eccentric = medium_stress_impact_gain - forgiving = minor_stress_impact_gain - arrogant = minor_stress_impact_gain - fickle = minor_stress_impact_gain - ambitious = minor_stress_impact_gain - } - } - else_if = { - limit = { - culture = { - has_cultural_pillar = ethos_courtly - } - } - stress_impact = { - eccentric = medium_stress_impact_gain - shy = medium_stress_impact_gain - wrathful = minor_stress_impact_gain - stubborn = minor_stress_impact_gain - } - } - else_if = { - limit = { - culture = { - has_cultural_pillar = ethos_egalitarian - } - } - stress_impact = { - eccentric = medium_stress_impact_gain - sadistic = minor_stress_impact_gain - callous = minor_stress_impact_gain - paranoid = minor_stress_impact_gain - zealous = minor_stress_impact_gain - arrogant = minor_stress_impact_gain - } - } - else_if = { - limit = { - culture = { - has_cultural_pillar = ethos_spiritual - } - } - stress_impact = { - eccentric = medium_stress_impact_gain - cynical = medium_stress_impact_gain - impatient = minor_stress_impact_gain - fickle = minor_stress_impact_gain - arbitrary = minor_stress_impact_gain - } - } - else_if = { - limit = { - culture = { - has_cultural_pillar = ethos_stoic - } - } - stress_impact = { - eccentric = medium_stress_impact_gain - callous = minor_stress_impact_gain - fickle = minor_stress_impact_gain - craven = minor_stress_impact_gain - arbitrary = minor_stress_impact_gain - ambitious = minor_stress_impact_gain - } - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 1 - ai_zeal = 1 - } - modifier = { - add = -50 - OR = { - AND = { - culture = { - has_cultural_pillar = ethos_bellicose - } - OR = { - martial < 9 - intrigue < 9 - } - } - AND = { - culture = { - has_cultural_pillar = ethos_bureaucratic - } - OR = { - stewardship < 9 - martial < 9 - } - } - AND = { - culture = { - has_cultural_pillar = ethos_communal - } - OR = { - stewardship < 9 - intrigue < 9 - } - } - AND = { - culture = { - has_cultural_pillar = ethos_courtly - } - OR = { - diplomacy < 9 - learning < 9 - } - } - AND = { - culture = { - has_cultural_pillar = ethos_egalitarian - } - OR = { - diplomacy < 9 - stewardship < 9 - } - } - AND = { - culture = { - has_cultural_pillar = ethos_spiritual - } - OR = { - learning < 9 - stewardship < 9 - } - } - AND = { - culture = { - has_cultural_pillar = ethos_stoic - } - OR = { - martial < 9 - diplomacy < 9 - } - } - } - } - modifier = { - factor = 0 - - OR = { - has_trait = eccentric - AND = { - culture = { - has_cultural_pillar = ethos_bellicose - } - OR = { - has_trait = craven - has_trait = humble - has_trait = content - martial < 6 - intrigue < 6 - } - } - AND = { - culture = { - has_cultural_pillar = ethos_bureaucratic - } - OR = { - has_trait = arbitrary - has_trait = fickle - has_trait = impatient - stewardship < 6 - martial < 6 - } - } - AND = { - culture = { - has_cultural_pillar = ethos_communal - } - OR = { - has_trait = forgiving - has_trait = arrogant - has_trait = fickle - stewardship < 6 - intrigue < 6 - } - } - AND = { - culture = { - has_cultural_pillar = ethos_courtly - } - OR = { - has_trait = shy - has_trait = wrathful - diplomacy < 6 - learning < 6 - } - } - AND = { - culture = { - has_cultural_pillar = ethos_egalitarian - } - OR = { - has_trait = sadistic - has_trait = callous - has_trait = paranoid - diplomacy < 6 - stewardship < 6 - } - } - AND = { - culture = { - has_cultural_pillar = ethos_spiritual - } - OR = { - has_trait = cynical - has_trait = impatient - learning < 6 - stewardship < 6 - } - } - AND = { - culture = { - has_cultural_pillar = ethos_stoic - } - OR = { - has_trait = callous - has_trait = fickle - has_trait = craven - martial < 6 - diplomacy < 6 - } - } - } - } - } - } - # IDGAF about being Italian my man - option = { - name = bp2_yearly.6000.c - - progress_towards_friend_effect = { - CHARACTER = scope:hosted_child - OPINION = 20 - REASON = friend_mutual_disinterest_in_tradition - } - scope:tutor = { - add_opinion = { - target = root - modifier = angry_opinion - opinion = -20 - } - } - - if = { - limit = { - culture = { - has_cultural_pillar = ethos_bellicose - } - } - stress_impact = { - eccentric = miniscule_stress_impact_loss - loyal = medium_stress_impact_gain - arrogant = minor_stress_impact_gain - ambitious = medium_stress_impact_gain - vengeful = minor_stress_impact_gain - sadistic = minor_stress_impact_gain - } - } - else_if = { - limit = { - culture = { - has_cultural_pillar = ethos_bureaucratic - } - } - stress_impact = { - eccentric = miniscule_stress_impact_loss - loyal = medium_stress_impact_gain - just = medium_stress_impact_gain - patient = minor_stress_impact_gain - diligent = medium_stress_impact_gain - } - } - else_if = { - limit = { - culture = { - has_cultural_pillar = ethos_communal - } - } - stress_impact = { - eccentric = miniscule_stress_impact_loss - loyal = major_stress_impact_gain - vengeful = medium_stress_impact_gain - humble = minor_stress_impact_gain - just = minor_stress_impact_gain - trusting = minor_stress_impact_gain - } - } - else_if = { - limit = { - culture = { - has_cultural_pillar = ethos_courtly - } - } - stress_impact = { - eccentric = miniscule_stress_impact_loss - loyal = medium_stress_impact_gain - gregarious = medium_stress_impact_gain - arrogant = minor_stress_impact_gain - patient = minor_stress_impact_gain - diligent = minor_stress_impact_gain - } - } - else_if = { - limit = { - culture = { - has_cultural_pillar = ethos_egalitarian - } - } - stress_impact = { - eccentric = miniscule_stress_impact_loss - loyal = medium_stress_impact_gain - compassionate = minor_stress_impact_gain - trusting = medium_stress_impact_gain - generous = minor_stress_impact_gain - humble = minor_stress_impact_gain - } - } - else_if = { - limit = { - culture = { - has_cultural_pillar = ethos_spiritual - } - } - stress_impact = { - eccentric = miniscule_stress_impact_loss - zealous = medium_stress_impact_gain - loyal = medium_stress_impact_gain - patient = minor_stress_impact_gain - just = minor_stress_impact_gain - paranoid = minor_stress_impact_gain - } - } - else_if = { - limit = { - culture = { - has_cultural_pillar = ethos_stoic - } - } - stress_impact = { - eccentric = miniscule_stress_impact_loss - loyal = medium_stress_impact_gain - compassionate = minor_stress_impact_gain - brave = minor_stress_impact_gain - just = medium_stress_impact_gain - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = -1 - ai_energy = -1 - } - modifier = { - factor = 0 - - OR = { - has_trait = loyal - AND = { - culture = { - has_cultural_pillar = ethos_bellicose - } - OR = { - has_trait = arrogant - has_trait = ambitious - } - } - AND = { - culture = { - has_cultural_pillar = ethos_bureaucratic - } - OR = { - has_trait = just - has_trait = diligent - } - } - AND = { - culture = { - has_cultural_pillar = ethos_communal - } - OR = { - has_trait = vengeful - has_trait = humble - } - } - AND = { - culture = { - has_cultural_pillar = ethos_courtly - } - has_trait = gregarious - } - AND = { - culture = { - has_cultural_pillar = ethos_egalitarian - } - OR = { - has_trait = compassionate - has_trait = trusting - } - } - AND = { - culture = { - has_cultural_pillar = ethos_spiritual - } - OR = { - has_trait = zealous - has_trait = patient - } - } - AND = { - culture = { - has_cultural_pillar = ethos_stoic - } - OR = { - has_trait = brave - has_trait = just - } - } - } - } - } - } -} - -bp2_yearly.6001 = { - type = letter_event - opening = bp2_yearly.6001.opening - desc = { - desc = bp2_yearly.6001.desc - first_valid = { - triggered_desc = { - trigger = { - culture = { - has_cultural_pillar = ethos_bellicose - } - } - desc = bp2_yearly.6001.desc.insult.bellicose - } - triggered_desc = { - trigger = { - culture = { - has_cultural_pillar = ethos_bureaucratic - } - } - desc = bp2_yearly.6001.desc.insult_bureaucratic - } - triggered_desc = { - trigger = { - culture = { - has_cultural_pillar = ethos_communal - } - } - desc = bp2_yearly.6001.desc.insult.communal - } - triggered_desc = { - trigger = { - culture = { - has_cultural_pillar = ethos_courtly - } - } - desc = bp2_yearly.6001.desc.insult.courtly - } - triggered_desc = { - trigger = { - culture = { - has_cultural_pillar = ethos_egalitarian - } - } - desc = bp2_yearly.6001.desc.insult.egalitarian - } - triggered_desc = { - trigger = { - culture = { - has_cultural_pillar = ethos_spiritual - } - } - desc = bp2_yearly.6001.desc.insult.spiritual - } - triggered_desc = { - trigger = { - culture = { - has_cultural_pillar = ethos_stoic - } - } - desc = bp2_yearly.6001.desc.insult.stoic - } - } - desc = bp2_yearly.6001.desc.outro - } - sender = scope:childs_host - - - option = { - name = bp2_yearly.6001.a - flavor = bp2_yearly.6001.a.tt - add_character_modifier = { - modifier = enforcing_cultural_values_modifier - years = 10 - } - stress_impact = { - base = minor_stress_impact_gain - arrogant = major_stress_impact_gain - wrathful = medium_stress_impact_gain - vengeful = major_stress_impact_gain - stubborn = medium_stress_impact_gain - calm = minor_stress_impact_gain - content = minor_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = -1 - ai_rationality = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = arrogant - has_trait = wrathful - has_trait = vengeful - has_trait = stubborn - } - } - } - } - option = { - name = bp2_yearly.6001.b - flavor = bp2_yearly.6001.b.tt - if = { - limit = { - culture = { - has_cultural_pillar = ethos_bellicose - } - } - add_character_modifier = { - modifier = rejecting_bellicose_ways_modifier - years = 10 - } - } - else_if = { - limit = { - culture = { - has_cultural_pillar = ethos_bureaucratic - } - } - add_character_modifier = { - modifier = rejecting_bureaucratic_ways_modifier - years = 10 - } - } - else_if = { - limit = { - culture = { - has_cultural_pillar = ethos_communal - } - } - add_character_modifier = { - modifier = rejecting_communal_ways_modifier - years = 10 - } - } - else_if = { - limit = { - culture = { - has_cultural_pillar = ethos_courtly - } - } - add_character_modifier = { - modifier = rejecting_courtly_ways_modifier - years = 10 - } - } - else_if = { - limit = { - culture = { - has_cultural_pillar = ethos_egalitarian - } - } - add_character_modifier = { - modifier = rejecting_egalitarian_ways_modifier - years = 10 - } - } - else_if = { - limit = { - culture = { - has_cultural_pillar = ethos_spiritual - } - } - add_character_modifier = { - modifier = rejecting_spiritual_ways_modifier - years = 10 - } - } - else_if = { - limit = { - culture = { - has_cultural_pillar = ethos_stoic - } - } - add_character_modifier = { - modifier = rejecting_stoic_ways_modifier - years = 10 - } - } - - stress_impact = { - paranoid = medium_stress_impact_gain - humble = medium_stress_impact_gain - trusting = minor_stress_impact_gain - } - ai_chance = { - base = 100 - - ai_value_modifier = { - ai_vengefulness = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = paranoid - has_trait = humble - } - } - } - } -} - -##################################### -# No Man Imprisoned # -# by Jason Cantalini # -# 6010 # -##################################### - -scripted_trigger 6010_eligible_hostage_trigger = { - home_court ?= { - is_ai = yes - } - is_hostage = yes - opinion = { - target = root - value <= 0 - } - age > 9 - NOR = { - is_in_prison_type = dungeon - has_trait = shy - has_trait = content - has_trait = humble - } -} - -scripted_trigger 6010_eligible_foreign_ward_trigger = { - liege ?= { - is_ai = yes - NOT = { this = root } - } - has_relation_ward = root - opinion = { - target = root - value <= 0 - } - age > 9 - NOR = { - is_in_prison_type = dungeon - is_close_family_of = root - has_trait = shy - has_trait = humble - has_trait = content - } -} - -bp2_yearly.6010 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.6010.t - override_background = { - reference = garden - } - desc = { - desc = bp2_yearly.6010.desc - first_valid = { - triggered_desc = { - trigger = { - scope:sad_boi = { - is_adult = yes - } - } - desc = bp2_yearly.6010.adult - } - triggered_desc = { - trigger = { - scope:sad_boi = { - is_adult = no - } - } - desc = bp2_yearly.6010.child - } - } - desc = bp2_yearly.6010.outro - } - theme = hostage - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_trait = greedy - has_trait = avaricious - has_trait = deceitful - has_trait = callous - has_trait = sadistic - has_trait = schemer - has_trait = vengeful - } - NOR = { - has_trait = compassionate - has_trait = generous - has_trait = improvident - } - } - animation = stunned - } - triggered_animation = { - trigger = { - OR = { - has_trait = compassionate - has_trait = generous - has_trait = improvident - } - } - animation = personality_content - } - camera = camera_event_very_left - } - right_portrait = { - character = scope:sad_boi - override_imprisonment_visuals = yes - animation = crying - } - - cooldown = { years = 10 } - - trigger = { - has_bp2_dlc_trigger = yes - #Standard checks - is_available_adult = yes - #Do you have a hostage or ward from another court? - OR = { - any_warden_hostage = { 6010_eligible_hostage_trigger = yes } - any_foreign_court_guest = { 6010_eligible_foreign_ward_trigger = yes } - } - } - immediate = { - play_music_cue = mx_cue_seduction - if = { - limit = { - any_warden_hostage = { 6010_eligible_hostage_trigger = yes } - } - random_warden_hostage = { - limit = { 6010_eligible_hostage_trigger = yes } - save_scope_as = sad_boi - add_character_flag = sad_hostage - home_court = { - save_scope_as = home_court_liege - } - } - } - else = { - random_foreign_court_guest = { - limit = { 6010_eligible_foreign_ward_trigger = yes } - save_scope_as = sad_boi - add_character_flag = sad_ward - liege = { - save_scope_as = home_court_liege - } - } - } - - } - # help him get money sent... and take it yourself - option = { - trigger = { - OR = { - has_trait = greedy - has_trait = avaricious - has_trait = deceitful - has_trait = callous - has_trait = sadistic - has_trait = schemer - has_trait = vengeful - } - NOR = { - has_trait = compassionate - has_trait = generous - has_trait = improvident - } - scope:home_court_liege = { - can_make_expensive_purchase_trigger = { - PRICE = scope:home_court_liege.medium_gold_value - } - is_ai = yes - } - } - - name = bp2_yearly.6010.a - flavor = bp2_yearly.6010.a.tt - - scope:home_court_liege = { - pay_short_term_gold = { - target = root - gold = medium_gold_value - } - add_opinion = { - target = root - opinion = -25 - modifier = angry_opinion - } - } - progress_towards_rival_effect = { - REASON = rival_stole_gifts_from_hostage - CHARACTER = scope:sad_boi - OPINION = -40 - } - - random = { - chance = 50 - scope:sad_boi = { - add_trait = depressed_1 - } - } - - if = { - limit = { - scope:sad_boi = { - is_adult = no - } - } - scope:sad_boi = { - create_character_memory = { - type = host_stole_aid - participants = { - court_owner = root - } - } - } - } - - stress_impact = { - greedy = minor_stress_impact_loss - honest = major_stress_impact_gain - just = medium_stress_impact_gain - forgiving = minor_stress_impact_gain - loyal = minor_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 1 - ai_honor = -1 - ai_vengefulness = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = greedy - has_trait = honest - has_trait = forgiving - has_trait = just - has_trait = loyal - } - } - } - } - # awww what can I do to make this life better for you??? - option = { - trigger = { - OR = { - has_trait = compassionate - has_trait = generous - has_trait = improvident - } - } - name = bp2_yearly.6010.b - flavor = bp2_yearly.6010.b.tt - - progress_towards_friend_effect = { - REASON = friend_provided_for_hostage - CHARACTER = scope:sad_boi - OPINION = 60 - } - remove_short_term_gold = minor_gold_value - - if = { - limit = { - has_royal_court = yes - has_dlc_feature = royal_court - } - change_current_court_grandeur = medium_court_grandeur_gain - } - else = { - every_courtier = { - custom = custom.every_courtier - add_opinion = { - target = root - modifier = admiration_opinion - opinion = 10 - } - } - } - - if = { - limit = { - scope:sad_boi = { - is_adult = no - } - } - scope:sad_boi = { - create_character_memory = { - type = cared_for_by_host - participants = { - court_owner = root - } - } - } - } - - #miiight still become a poet - random = { - chance = { - value = 20 - if = { - limit = { - scope:sad_boi = { is_adult = yes } - } - add = 20 - } - if = { - limit = { - scope:sad_boi = { diplomacy > medium_skill_rating } - } - add = 40 - } - if = { - limit = { - scope:sad_boi = { has_focus = education_diplomacy } - } - add = 30 - } - } - scope:sad_boi = { - add_trait = lifestyle_poet - } - } - - #fix depression if he has it - if = { - limit = { - scope:sad_boi = { - has_trait = depressed_1 - } - } - random = { - chance = 20 - scope:sad_boi = { - remove_trait = depressed_1 - } - } - } - - - stress_impact = { - improvident = minor_stress_impact_loss - sadistic = medium_stress_impact_gain - callous = medium_stress_impact_gain - vengeful = medium_stress_impact_gain - greedy = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - just = minor_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - ai_greed = -1 - } - modifier = { - factor = 0 - OR = { - has_trait = sadistic - has_trait = callous - has_trait = vengeful - has_trait = greedy - has_trait = arrogant - has_trait = just - } - } - } - } - - # the sad boi should face hardships with some dang dignity and strength - option = { - name = bp2_yearly.6010.c - flavor = bp2_yearly.6010.c.tt - - duel = { - skills = { learning diplomacy } - value = mediocre_skill_rating - 70 = { #It works well - desc = bp2_yearly.6010.c.success - compare_modifier = { - value = scope:duel_value - multiplier = 2 - } - modifier = { - scope:sad_boi = { - OR = { - has_trait = just - has_trait = pensive - has_trait = forgiving - has_trait = trusting - has_trait = loyal - } - } - add = 30 - } - - send_interface_toast = { - title = bp2_yearly.6010.c.success - left_icon = root - right_icon = scope:sad_boi - scope:sad_boi = { - add_opinion = { - target = root - opinion = 25 - modifier = impressed_opinion - } - } - if = { - limit = { - scope:sad_boi = { - is_adult = no - } - } - custom_tooltip = bp2_yearly.6010.c.tt_education - hidden_effect = { - education_point_acquisition_effect = yes - } - } - else = { - scope:sad_boi = { - add_trait = loyal - } - } - stress_impact = { - base = minor_stress_impact_loss - } - - } - } - 30 = { #It doesn't go well - desc = bp2_yearly.6010.c.failure - compare_modifier = { - value = scope:duel_value - multiplier = -2 - } - modifier = { - scope:sad_boi = { - OR = { - has_trait = arbitrary - has_trait = bossy - has_trait = arrogant - has_trait = cynical - has_trait = stubborn - has_trait = disloyal - } - } - add = 30 - } - send_interface_toast = { - title = bp2_yearly.6010.c.failure - left_icon = root - right_icon = scope:sad_boi - scope:sad_boi = { - add_opinion = { - target = root - opinion = -25 - modifier = angry_opinion - } - } - scope:sad_boi = { - add_stress = minor_stress_impact_gain - } - scope:sad_boi = { - add_trait = depressed_1 - } - } - } - } - - stress_impact = { - lazy = medium_stress_impact_gain - humble = minor_stress_impact_gain - depressed_genetic = minor_stress_impact_gain - depressed_1 = minor_stress_impact_gain - arbitrary = miniscule_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 1 - ai_honor = 1 - ai_energy = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = lazy - has_trait = humble - has_trait = depressed_genetic - has_trait = depressed_1 - diplomacy < 4 - learning < 4 - AND = { - diplomacy < 8 - learning < 8 - } - AND = { - diplomacy < 4 - learning < 14 - } - AND = { - diplomacy < 4 - learning < 14 - } - } - - } - } - } - # This is... surprisingly lovely - option = { - name = bp2_yearly.6010.d - flavor = bp2_yearly.6010.d.tt - - scope:sad_boi = { - add_opinion = { - target = root - opinion = 40 - modifier = grateful_opinion - } - } - - scope:home_court_liege = { - add_opinion = { - target = root - opinion = -10 - modifier = annoyed_opinion - } - } - - if = { - limit = { - scope:home_court_liege = { - can_make_expensive_purchase_trigger = { - PRICE = scope:home_court_liege.minor_gold_value - } - is_ai = yes - } - } - scope:home_court_liege = { - pay_short_term_gold = { - target = scope:sad_boi - gold = minor_gold_value - } - } - } - - - if = { - limit = { - OR = { - scope:sad_boi = { diplomacy > medium_skill_rating } - scope:sad_boi = { has_focus = education_diplomacy } - } - } - scope:sad_boi = { - add_trait = lifestyle_poet - create_character_memory = { - type = became_homesick_poet - participants = { - court_owner = root - } - } - } - } - else = { - random = { - chance = { - value = 20 - if = { - limit = { - scope:sad_boi = { is_adult = yes } - } - add = 30 - } - } - scope:sad_boi = { - add_trait = lifestyle_poet - create_character_memory = { - type = became_homesick_poet - participants = { - court_owner = root - } - } - } - - } - } - - random = { - chance = 10 - scope:sad_boi = { - add_trait = depressed_1 - } - } - - stress_impact = { - lifestyle_poet = minor_stress_impact_loss - depressed_1 = minor_stress_impact_loss - depressed_genetic = minor_stress_impact_loss - vengeful = medium_stress_impact_gain - callous = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - paranoid = minor_stress_impact_gain - just = miniscule_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = 1 - ai_compassion = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = vengeful - has_trait = callous - has_trait = arrogant - has_trait = paranoid - } - } - } - } - after = { - if = { - limit = { - scope:sad_boi = { - has_character_flag = sad_hostage - } - } - } - scope:sad_boi = { - remove_character_flag = sad_hostage - } - if = { - limit = { - scope:sad_boi = { - has_character_flag = sad_ward - } - } - } - scope:sad_boi = { - remove_character_flag = sad_ward - } - } -} - -##################################### -# Children Say Such Funny Things # -# by Jason Cantalini # -# 60020 # -##################################### - -scripted_trigger bp2_yearly_6020_snitch = { - age > 4 - age < root.age - is_adult = no - NOR = { - has_trait = loyal - has_trait = paranoid - has_trait = shrewd - has_trait = shy - } - opinion = { - target = root - value > -50 - } - home_court ?= { - OR = { - has_any_secrets = yes - any_courtier = { - is_close_family_of = liege - has_any_secrets = yes - } - any_spouse = { - has_any_secrets = yes - } - } - } -} - -bp2_yearly.6020 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.6020.t - override_background = { - reference = garden - } - desc = { - desc = bp2_yearly.6020.desc - first_valid = { - triggered_desc = { - trigger = { - scope:snitch = { - age <= 10 - } - } - desc = bp2_yearly.6020.child - } - desc = bp2_yearly.6020.youth - } - first_valid = { - triggered_desc = { - trigger = { - scope:snitch.home_court = { - is_close_family_of = scope:snitch - } - } - desc = bp2_yearly.6020.family - } - desc = bp2_yearly.6020.liege - } - } - theme = hostage - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_trait = arbitrary - has_trait = callous - has_trait = deceitful - has_trait = sadistic - has_trait = torturer - has_trait = schemer - has_trait = vengeful - } - } - animation = scheme - } - triggered_animation = { - trigger = { - NOR = { - has_trait = arbitrary - has_trait = callous - has_trait = deceitful - has_trait = sadistic - has_trait = torturer - has_trait = schemer - has_trait = vengeful - } - } - animation = throne_room_conversation_4 - } - - } - right_portrait = { - character = scope:snitch - animation = happiness - } - - lower_right_portrait = { - character = scope:snitch.home_court - } - - cooldown = { years = 10 } - - trigger = { - has_bp2_dlc_trigger = yes - #Standard checks - is_available = yes - age > 10 - #Do you have a hostage from another court? - any_warden_hostage = { - bp2_yearly_6020_snitch = yes - } - } - immediate = { - random_warden_hostage = { - limit = { - bp2_yearly_6020_snitch = yes - } - save_scope_as = snitch - } - random_list = { - 10 = { - trigger = { - scope:snitch.home_court = { - has_any_secrets = yes - } - } - scope:snitch.home_court = { - save_scope_as = no_no_doer - } - } - 10 = { - trigger = { - scope:snitch.home_court = { - any_close_family_member = { - has_any_secrets = yes - is_courtier_of = scope:snitch.home_court - } - } - } - scope:snitch.home_court = { - random_close_family_member = { - limit = { - has_any_secrets = yes - is_courtier_of = scope:snitch.home_court - } - save_scope_as = no_no_doer - } - } - } - 10 = { - trigger = { - scope:snitch.home_court = { - any_spouse = { - has_any_secrets = yes - } - } - } - scope:snitch.home_court = { - random_spouse = { - limit = { - has_any_secrets = yes - } - save_scope_as = no_no_doer - } - } - } - } - } - # I MUST KNOW - option = { - name = bp2_yearly.6020.a - if = { - limit = { - has_character_modifier = honorable_warden_modifier - } - add_tyranny = medium_tyranny_gain - } - if = { - limit = { - scope:snitch = { - opinion = { - target = root - value > 90 - } - } - } - show_as_tooltip = { - if = { - limit = { - scope:no_no_doer = { - is_close_family_of = scope:snitch - } - } - custom_tooltip = bp2_yearly.6020.a.secret - } - else = { - custom_tooltip = bp2_yearly.6020.a.non_family_secret - } - scope:snitch = { - add_intrigue_skill = 1 - } - } - hidden_effect = { - send_interface_toast = { - title = bp2_yearly.6020.a.success - left_icon = root - right_icon = scope:snitch - scope:no_no_doer = { - random_secret = { - reveal_to = root - } - } - scope:snitch = { - add_intrigue_skill = 1 - } - } - } - } - else = { - duel = { - skill = intrigue - value = medium_skill_rating - 55 = { #You learn a juicy secret - desc = bp2_yearly.6020.a.success - compare_modifier = { - value = scope:duel_value - multiplier = 2 - } - modifier = { - scope:snitch = { - opinion = { - target = root - value >= 50 - } - } - add = 35 - } - modifier = { - scope:snitch = { - opinion = { - target = root - value >= 0 - } - } - add = 35 - } - show_as_tooltip = { - if = { - limit = { - scope:no_no_doer = { - is_close_family_of = scope:snitch - } - } - custom_tooltip = bp2_yearly.6020.a.secret - } - else = { - custom_tooltip = bp2_yearly.6020.a.non_family_secret - } - } - hidden_effect = { - send_interface_toast = { - title = bp2_yearly.6020.a.success - left_icon = root - right_icon = scope:snitch - - hidden_effect = { - scope:no_no_doer = { - random_secret = { - reveal_to = root - } - } - } - scope:snitch = { - add_intrigue_skill = 1 - } - } - } - } - 45 = { #The "secret" is just foolish kid stuff - desc = bp2_yearly.6020.a.failure - compare_modifier = { - value = scope:duel_value - multiplier = -2 - } - modifier = { - scope:snitch = { - opinion = { - target = root - value <= -30 - } - } - add = 35 - } - modifier = { - scope:snitch = { - opinion = { - target = root - value < 0 - } - } - add = 35 - } - send_interface_toast = { - title = bp2_yearly.6020.a.failure - left_icon = root - right_icon = scope:snitch - custom_tooltip = bp2_yearly.6020.a.no_secret - if = { - limit = { - scope:snitch = { - age > 6 - NOR = { - has_trait = loyal - has_trait = honest - has_trait = just - has_trait = compassionate - has_trait = trusting - has_trait = generous - has_trait = forgiving - has_trait = content - has_trait = humble - } - } - } - scope:snitch = { - add_trait = disloyal - } - } - } - } - } - } - stress_impact = { - just = minor_stress_impact_gain - forgiving = miniscule_stress_impact_gain - honest = minor_stress_impact_gain - trusting = miniscule_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = -1 - ai_vengefulness = 1 - ai_sociability = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = just - has_trait = honest - has_character_modifier = honorable_warden_modifier - } - } - } - } - # Teach the kid the value of discrection... might come in handy later - option = { - name = bp2_yearly.6020.b - flavor = bp2_yearly.6020.b.tt - - custom_tooltip = bp2_yearly.6020.b.discretion - scope:snitch = { - create_character_memory = { - type = hostage_taught_discretion - participants = { - hostage_owner = root - } - } - } - if = { - limit = { - scope:snitch.faith = { - trait_is_virtue = honest - } - } - add_piety = miniscule_piety_gain - scope:snitch = { - add_piety = minor_piety_gain - } - } - if = { - limit = { - scope:snitch = { - NOR = { - has_trait = deceitful - has_trait = arbitrary - has_trait = sadistic - } - } - } - scope:snitch = { - add_opinion = { - target = root - modifier = respect_opinion - opinion = 10 - } - } - } - if = { - limit = { - scope:snitch = { - age > 6 - NOR = { - has_trait = disloyal - has_trait = deceitful - has_trait = arbitrary - has_trait = sadistic - has_trait = callous - has_trait = greedy - has_trait = vengeful - has_trait = ambitious - has_trait = arrogant - } - } - } - random = { - chance = 50 - scope:snitch = { - add_trait = loyal - } - } - } - - stress_impact = { - arbitrary = minor_stress_impact_gain - deceitful = minor_stress_impact_gain - ambitious = minor_stress_impact_gain - greedy = miniscule_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = 1 - ai_vengefulness = -1 - ai_sociability = -1 - } - modifier = { - factor = 0 - OR = { - has_trait = arbitrary - has_trait = deceitful - has_trait = ambitious - } - } - } - } -} - -##################################### -# Eyes of the Family # -# by Jason Cantalini # -# 6030 # -##################################### - -scripted_trigger bp2_yearly_6030_willing_snitch_trigger = { - opinion = { - target = scope:warden - value <= 50 - } - OR = { - intrigue >= decent_skill_rating - has_trait = vengeful - has_trait = sadistic - has_trait = callous - has_trait = arbitrary - has_trait = disloyal - opinion = { - target = scope:warden - value <= -50 - } - } - NOR = { - has_trait = loyal - any_memory = { - memory_type = hostage_taught_discretion - } - } -} - -scripted_trigger bp2_yearly_6030_potential_snitch_trigger = { - is_available = yes - is_imprisoned = no - is_ai = yes - is_courtier_of = root - house = liege.house - age > 11 -} - - -bp2_yearly.6030 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.6030.t - override_background = { - reference = ep2_hunt_foggy_forest - } - desc = { - desc = bp2_yearly.6030.desc - first_valid = { - triggered_desc = { - trigger = { - scope:snitch = { - any_memory = { - memory_type = hostage_taught_discretion - } - } - } - desc = bp2_yearly.6030.hostage_reticent - } - triggered_desc = { - trigger = { - scope:snitch = { - NOT = { - any_memory = { - memory_type = hostage_taught_discretion - } - } - } - } - desc = bp2_yearly.6030.hostage_normal - } - } - } - theme = hostage - left_portrait = { - character = root - triggered_animation = { - trigger = { - ai_compassion <= low_negative_ai_value - } - animation = personality_cynical - } - triggered_animation = { - trigger = { - ai_compassion > low_negative_ai_value - } - animation = personality_rational - } - } - right_portrait = { - character = scope:snitch - triggered_animation = { - trigger = { - bp2_yearly_6030_willing_snitch_trigger = yes - } - animation = personality_callous - } - triggered_animation = { - trigger = { - bp2_yearly_6030_willing_snitch_trigger = no - } - animation = personality_coward - } - } - lower_right_portrait = { - character = scope:warden - } - - cooldown = { years = 5 } - - trigger = { - has_bp2_dlc_trigger = yes - exists = scope:warden - exists = scope:hostage - basic_is_valid_for_yearly_events_trigger = yes - NOR = { - has_trait = trusting - has_trait = honest - } - #Do you have a former hostage who just returned with a secret? - scope:hostage = { - bp2_yearly_6030_potential_snitch_trigger = yes - } - #Is their former warden still a living ruler? - scope:warden ?= { - is_alive = yes - is_landed_or_landless_administrative = yes - } - exists = scope:wardens_court_secret - } - immediate = { - scope:hostage = { - save_scope_as = snitch - } - } - # Use your cunning to draw a secret out - option = { - name = bp2_yearly.6030.a - - if = { - limit = { - has_character_modifier = honorable_warden_modifier - } - add_tyranny = medium_tyranny_gain - } - duel = { - skill = intrigue - target = scope:snitch - 55 = { #You MIGHT learn a juicy secret - desc = bp2_yearly.6030.a.success - compare_modifier = { - value = scope:duel_value - multiplier = 3 - } - modifier = { - add = 20 - scope:snitch = { - bp2_yearly_6030_willing_snitch_trigger = yes - } - } - show_as_tooltip = { - custom_tooltip = bp2_yearly.6030.maybe_secret - } - hidden_effect = { - send_interface_toast = { - title = bp2_yearly.6030.a.success - left_icon = root - right_icon = scope:snitch - - if = { - limit = { - exists = scope:wardens_court_secret - } - scope:wardens_court_secret = { - reveal_to = root - } - } - else = { - custom_tooltip = bp2_yearly.6030.a.no_secret - } - } - } - } - 45 = { #The hostage is cagy - desc = bp2_yearly.6030.a.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3 - } - modifier = { - add = 20 - scope:snitch = { - bp2_yearly_6030_willing_snitch_trigger = no - } - } - modifier = { - factor = 4 - scope:snitch = { - any_memory = { - memory_type = hostage_taught_discretion - } - } - } - send_interface_toast = { - title = bp2_yearly.6030.a.failure - left_icon = root - right_icon = scope:snitch - custom_tooltip = bp2_yearly.6030.a.evade - } - } - } - stress_impact = { - honest = medium_stress_impact_gain - just = medium_stress_impact_gain - generous = minor_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = -1 - ai_greed = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = honest - has_trait = just - has_trait = generous - has_character_modifier = honorable_warden_modifier - } - } - } - } - # Offer generous reward in exchange for information - option = { - name = bp2_yearly.6030.b - flavor = bp2_yearly.6030.b.tt - - if = { - limit = { - has_character_modifier = honorable_warden_modifier - } - add_tyranny = medium_tyranny_gain - } - pay_short_term_gold = { - target = scope:snitch - gold = tiny_gold_value - } - - - random_list = { - 60 = { - show_as_tooltip = { - custom_tooltip = bp2_yearly.6030.maybe_secret - custom_tooltip = bp2_yearly.6030.b.rewarded - scope:snitch = { - add_intrigue_skill = 1 - } - } - hidden_effect = { - send_interface_toast = { - title = bp2_yearly.6030.a.success - left_icon = root - right_icon = scope:snitch - - if = { - limit = { - exists = scope:wardens_court_secret - } - scope:wardens_court_secret = { - reveal_to = root - } - } - else = { - custom_tooltip = bp2_yearly.6030.a.no_secret - } - } - scope:snitch = { - set_variable = { - name = family_schemer - value = root - years = 20 - } - } - scope:snitch = { - add_intrigue_skill = 1 - } - } - modifier = { - add = -30 - scope:snitch = { - bp2_yearly_6030_willing_snitch_trigger = no - } - } - modifier = { - add = 25 - scope:snitch = { - OR = { - has_trait = greedy - has_trait = arbitrary - } - } - } - modifier = { - factor = 0.1 - scope:snitch = { - any_memory = { - memory_type = hostage_taught_discretion - } - } - } - } - - 40 = { - send_interface_toast = { - title = bp2_yearly.6030.b.failure - left_icon = root - right_icon = scope:snitch - - custom_tooltip = bp2_yearly.6030.refuse_reward - } - modifier = { - add = -25 - scope:snitch = { - opinion = { - target = root - value > 40 - } - } - } - modifier = { - add = 25 - scope:snitch = { - OR = { - has_trait = just - has_trait = content - } - } - } - } - } - - stress_impact = { - greedy = medium_stress_impact_gain - fickle = minor_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -1 - } - modifier = { - factor = 0 - OR = { - has_trait = greedy - has_trait = fickle - has_character_modifier = honorable_warden_modifier - } - } - } - } - # Treat the hostage agreement with respect and don't pry - option = { - name = bp2_yearly.6030.c - flavor = bp2_yearly.6030.c.tt - - add_character_modifier = { - modifier = honorable_warden_modifier - years = 20 - } - #above modifier makes it more likely ai will offer and demand hostages from root, but root gets tyranny if they choose option a in future - custom_tooltip = bp2_yearly.6030.c.honor - custom_tooltip = bp2_yearly.6030.c.hostage_secrets - - stress_impact = { - arbitrary = medium_stress_impact_gain - deceitful = medium_stress_impact_gain - greedy = minor_stress_impact_gain - ambitious = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = arbitrary - has_trait = deceitful - has_trait = greedy - has_trait = ambitious - } - } - } - } -} - -scripted_trigger bp2_yearly_6031_potential_snitch_trigger = { - is_ai = yes - is_courtier_of = scope:home_court - house = liege.house - age > 11 - OR = { - intrigue >= mediocre_skill_rating - has_focus = education_intrigue - has_trait = disloyal - } -} - -#Saves secrets for bp2_yearly.6030 (yes, they're out of order) -# by Jason Cantalini -bp2_yearly.6031 = { - hidden = yes - - trigger = { - has_bp2_dlc_trigger = yes - exists = scope:home_court - OR = { - scope:warden ?= { - has_any_secrets = yes - } - scope:warden ?= { - any_close_family_member = { - has_any_secrets = yes - } - } - scope:warden ?= { - any_spouse = { - has_any_secrets = yes - } - } - } - scope:hostage = { - bp2_yearly_6031_potential_snitch_trigger = yes - } - } - - immediate = { - random_list = { - 10 = { - trigger = { - scope:warden ?= { - has_any_secrets = yes - } - } - scope:warden ?= { - random_secret = { - save_scope_as = wardens_court_secret - } - } - } - 10 = { - trigger = { - scope:warden ?= { - any_close_family_member = { - has_any_secrets = yes - } - } - } - scope:warden ?= { - random_close_family_member = { - random_secret = { - save_scope_as = wardens_court_secret - } - } - } - } - 10 = { - trigger = { - scope:warden ?= { - any_spouse = { - has_any_secrets = yes - } - } - } - scope:warden ?= { - random_spouse = { - random_secret = { - save_scope_as = wardens_court_secret - } - } - } - } - } - scope:home_court = { - trigger_event = { - id = bp2_yearly.6030 - days = { 300 400 } - } - } - } -} - -##################################### -# All We Are Not # -# by Jason Cantalini # -# 6040 # -##################################### - -scripted_trigger bp2_yearly_6040_higher_cultural_era_trigger = { - OR = { - AND = { - NOT = { - root.culture = { has_cultural_era_or_later = culture_era_early_medieval } - } - has_cultural_era_or_later = culture_era_early_medieval - } - AND = { - NOT = { - root.culture = { has_cultural_era_or_later = culture_era_high_medieval } - } - has_cultural_era_or_later = culture_era_high_medieval - } - AND = { - NOT = { - root.culture = { has_cultural_era_or_later = culture_era_late_medieval } - } - has_cultural_era_or_later = culture_era_late_medieval - } - } -} - -scripted_trigger bp2_yearly_6040_equal_or_higher_cultural_era_trigger = { - OR = { - AND = { - root.culture = { has_cultural_era_or_later = culture_era_tribal } - has_cultural_era_or_later = culture_era_tribal - } - AND = { - root.culture = { has_cultural_era_or_later = culture_era_early_medieval } - has_cultural_era_or_later = culture_era_early_medieval - } - AND = { - root.culture = { has_cultural_era_or_later = culture_era_high_medieval } - has_cultural_era_or_later = culture_era_high_medieval - } - AND = { - root.culture = { has_cultural_era_or_later = culture_era_late_medieval } - has_cultural_era_or_later = culture_era_late_medieval - } - } -} - -scripted_trigger bp2_yearly_6040_better_capital_trigger = { - #the culture head of the other culture is more magnificent than root's culture head - OR = { - AND = { - culture_head = { - has_royal_court = yes - } - root.culture.culture_head ?= { - has_royal_court = no - } - } - AND = { - root.culture.culture_head ?= { - has_royal_court = yes - } - culture_head = { - has_royal_court = yes - court_grandeur_current > root.court_grandeur_current - } - } - AND = { - culture_head.capital_province.county = { - county.development_level >= root.capital_province.county.development_level - } - culture_head.capital_province.county = { - county.development_level >= root.culture.culture_head.capital_province.county.development_level - } - } - } -} - -# You consider integrating the ways and advancements of the culture that raised you into your realm -bp2_yearly.6040 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.6040.t - desc = { - desc = bp2_yearly.6040.desc - first_valid = { - triggered_desc = { - trigger = { - has_character_flag = hostage_childhood - } - desc = bp2_yearly.6040.hostage - } - desc = bp2_yearly.6040.education - } - desc = bp2_yearly.6040.outro - } - theme = culture_change - override_background = bp2_nursery - left_portrait = { - character = root - animation = chancellor - } - - trigger = { - NOT = { has_government = landless_adventurer_government } - has_bp2_dlc_trigger = yes - is_valid_for_narrow_yearly_events_adult = yes - #you need to be in a position where you can reform your culture and realm at once - culture = capital_province.culture - highest_held_title_tier >= tier_duchy - is_landed = yes - #Learned enough to get the idea - learning >= low_skill_rating - #Didn't say no to this event before - NOT = { has_character_flag = had_event_bp2_yearly_6040 } - #you were raised in a foreign court, as a hostage or ward - OR = { - any_memory = { - OR = { - has_memory_type = childhood_education_guardian - has_memory_type = childhood_education_no_guardian - } - has_variable = education_location - has_variable = education_location_culture - has_variable = education_host_culture - save_temporary_scope_as = ward_memory_temp - - #Check you were educated in a foreign place by foreigners - scope:ward_memory_temp.var:education_location_culture = { - save_temporary_scope_as = education_location_culture - } - scope:ward_memory_temp.var:education_host_culture = { - has_same_culture_heritage = scope:education_location_culture - } - scope:education_location_culture = { - save_temporary_scope_as = foreign_culture - this != root.culture - #culture has a ruler - exists = culture_head - - #figure out if they're more advanced - OR = { - bp2_yearly_6040_higher_cultural_era_trigger = yes - AND = { - root = { - government_has_flag = government_is_tribal - } - culture_head = { - NOT = { - government_has_flag = government_is_tribal - } - } - } - bp2_yearly_6040_better_capital_trigger = yes - } - NOT = { - culture_head = { - government_has_flag = government_is_tribal - } - } - bp2_yearly_6040_equal_or_higher_cultural_era_trigger = yes - - root.culture = { - can_get_innovation_from = scope:foreign_culture - } - } - - scope:ward_memory_temp.var:education_location = { - county.development_level >= root.capital_province.county.development_level - } - } - any_memory = { - memory_type = hostage_returned_hostage - has_variable = hostage_location - has_variable = hostage_location_culture - has_variable = hostage_warden_culture - save_temporary_scope_as = hostage_memory_temp - #Check you were educated in a foreign place by foreigners - scope:hostage_memory_temp.var:hostage_warden_culture = { - has_same_culture_heritage = scope:hostage_memory_temp.var:hostage_location_culture - } - scope:hostage_memory_temp.var:hostage_location_culture = { - save_temporary_scope_as = foreign_culture - this != root.culture - #culture has a ruler - exists = culture_head - - #figure out if they're more advanced - OR = { - bp2_yearly_6040_higher_cultural_era_trigger = yes - AND = { - root = { - government_has_flag = government_is_tribal - } - culture_head = { - NOT = { - government_has_flag = government_is_tribal - } - } - } - bp2_yearly_6040_better_capital_trigger = yes - } - NOT = { - culture_head = { - government_has_flag = government_is_tribal - } - } - bp2_yearly_6040_equal_or_higher_cultural_era_trigger = yes - - root.culture = { - can_get_innovation_from = scope:foreign_culture - } - } - - scope:hostage_memory_temp.var:hostage_location = { - county.development_level >= root.capital_province.county.development_level - } - } - } - } - - weight_multiplier = { - base = 1 - #If you got this event before and chose to delay it for later, this should pretty much ensure you will get the event again - modifier = { - factor = 5 - has_character_flag = delayed_event_bp2_yearly_6040 - } - modifier = { - factor = 2 - culture = { - has_cultural_pillar = ethos_egalitarian - } - } - modifier = { - factor = 0.5 - culture = { - has_cultural_parameter = ai_doesnt_marry_outside_culture - } - } - modifier = { - factor = 0.5 - culture = { - has_cultural_parameter = harder_to_hybridize - } - } - modifier = { - factor = 0.5 - learning < medium_skill_rating - } - modifier = { - factor = 2 - learning > very_high_skill_rating - } - } - - immediate = { - #Either triggered from hostage memory type or ward one; need to save their variables as scopes - if = { - limit = { - any_memory = { - memory_type = hostage_returned_hostage - has_variable = hostage_location - has_variable = hostage_location_culture - } - } - random_memory = { - memory_type = hostage_returned_hostage - limit = { - has_variable = hostage_location - has_variable = hostage_location_culture - } - save_scope_as = foreign_court_memory - var:hostage_location = { - save_scope_as = childhood_location - } - var:hostage_location_culture = { - save_scope_as = advanced_culture - } - var:hostage_realm ?= { - save_scope_as = advanced_realm - } - var:hostage_warden_faith ?= { - save_scope_as = advanced_culture_faith - } - memory_participant:warden ?= { - save_scope_as = foreign_warden - } - } - } - else = { - random_memory = { - limit = { - OR = { - has_memory_type = childhood_education_guardian - has_memory_type = childhood_education_no_guardian - } - has_variable = education_location - has_variable = education_location_culture - } - save_scope_as = foreign_court_memory - var:education_location = { - save_scope_as = childhood_location - } - var:education_location_culture = { - save_scope_as = advanced_culture - } - var:education_realm ?= { - save_scope_as = advanced_realm - } - var:education_host_faith ?= { - save_scope_as = advanced_culture_faith - } - memory_participant:guardian ?= { - save_scope_as = foreign_educator - } - } - } - - - if = { - limit = { - scope:foreign_court_memory = { - has_memory_type = hostage_returned_hostage - has_variable = hostage_location - has_variable = hostage_location_culture - } - } - add_character_flag = hostage_childhood - } - else = { - add_character_flag = education_childhood - } - } - - #There is much we could learn from them - option = { - name = bp2_yearly.6040.a - flavor = bp2_yearly.6040.a.tt - custom_tooltip = bp2_yearly.6040.a.reforms - if = { - limit = { - root = root.culture.culture_head - } - culture = { - change_cultural_acceptance = { - target = scope:advanced_culture - value = miniscule_positive_culture_acceptance - desc = cultural_acceptance_gain_beginning_reforms - } - } - } - custom_tooltip = bp2_yearly.6040.a.warning - - add_prestige = major_prestige_loss - create_story = story_foreign_raised_reformer - #So there isn't a second reform in one lifetime - add_character_flag = had_event_bp2_yearly_6040 - - #save variables for the story - set_variable = { - name = childhood_location - value = scope:childhood_location - } - set_variable = { - name = advanced_culture - value = scope:advanced_culture - } - if = { - limit = { - exists = scope:advanced_realm - } - set_variable = { - name = advanced_realm - value = scope:advanced_realm - } - } - if = { - limit = { - exists = scope:foreign_educator - } - set_variable = { - name = foreign_educator - value = scope:foreign_educator - } - } - if = { - limit = { - exists = scope:advanced_culture_faith - } - set_variable = { - name = advanced_culture_faith - value = scope:advanced_culture_faith - } - } - - hidden_effect_new_object = { - random_owned_story = { - type = story_foreign_raised_reformer - set_variable = { - name = childhood_location - value = scope:childhood_location - } - set_variable = { - name = advanced_culture - value = scope:advanced_culture - } - if = { - limit = { - exists = scope:advanced_realm - } - set_variable = { - name = advanced_realm - value = scope:advanced_realm - } - } - if = { - limit = { - exists = scope:foreign_educator - } - set_variable = { - name = foreign_educator - value = scope:foreign_educator - } - } - if = { - limit = { - exists = scope:advanced_culture_faith - } - set_variable = { - name = advanced_culture_faith - value = scope:advanced_culture_faith - } - } - } - } - - stress_impact = { - profligate = minor_stress_impact_loss - scholar = miniscule_stress_impact_loss - content = medium_stress_impact_gain - lazy = medium_stress_impact_gain - humble = minor_stress_impact_gain - paranoid = minor_stress_impact_gain - } - ai_chance = { - base = 20 - ai_value_modifier = { - ai_energy = 1 - ai_boldness = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = content - has_trait = lazy - has_trait = humble - has_trait = paranoid - } - } - } - } - - #NEVER! My people are proud and unique - option = { - name = bp2_yearly.6040.b - flavor = bp2_yearly.6040.b.tt - add_character_flag = had_event_bp2_yearly_6040 - - add_character_modifier = { - modifier = devoted_to_tradition_modifier - years = 25 - } - custom_tooltip = bp2_yearly.6040.b.promote_culture - custom_tooltip = bp2_yearly.6040.b.no_reforms - - if = { - limit = { - has_character_flag = hostage_childhood - } - remove_character_flag = hostage_childhood - } - if = { - limit = { - has_character_flag = education_childhood - } - remove_character_flag = education_childhood - } - - stress_impact = { - arrogant = miniscule_stress_impact_loss - zealous = miniscule_stress_impact_loss - eccentric = major_stress_impact_gain - diligent = minor_stress_impact_gain - cynical = minor_stress_impact_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_zeal = 1 - ai_sociability = -1 - } - modifier = { - factor = 0 - OR = { - has_trait = eccentric - has_trait = diligent - has_trait = cynical - } - } - } - } - - #Perhaps... but now is not the right time - option = { - name = bp2_yearly.6040.c - custom_tooltip = bp2_yearly.6040.c.recurring - add_character_flag = delayed_event_bp2_yearly_6040 - - if = { - limit = { - has_character_flag = hostage_childhood - } - remove_character_flag = hostage_childhood - } - if = { - limit = { - has_character_flag = education_childhood - } - remove_character_flag = education_childhood - } - - stress_impact = { - impatient = medium_stress_impact_gain - ambitious = medium_stress_impact_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_energy = -1 - ai_zeal = -1 - } - modifier = { - factor = 0 - OR = { - has_trait = impatient - has_trait = ambitious - has_trait = fickle - } - } - } - } -} - -##################################### -# Stone, Iron, Clay and Wattle # -# by Jason Cantalini # -# 6050 # -##################################### - -scripted_trigger bp2_yearly_6050_noble_representative = { - is_imprisoned = no - is_available = yes - is_incapable = no - culture = root.culture - age > 14 - NOT = { - government_has_flag = government_is_republic - } -} - -scripted_effect bp2_yearly_6020_pay_powerful_vassals_effect = { - custom_tooltip = bp2_yearly.6020.pay_vassals - hidden_effect = { - remove_treasury_or_gold = minor_treasury_or_gold_value - if = { - limit = { - exists = scope:recipient_1 - } - pay_treasury_or_gold = { - target = scope:recipient_1 - value = minor_treasury_or_gold_value - } - } - if = { - limit = { - exists = scope:recipient_2 - } - pay_treasury_or_gold = { - target = scope:recipient_2 - value = minor_treasury_or_gold_value - } - } - if = { - limit = { - exists = scope:recipient_3 - } - pay_treasury_or_gold = { - target = scope:recipient_3 - value = minor_treasury_or_gold_value - } - } - if = { - limit = { - exists = scope:recipient_4 - } - pay_treasury_or_gold = { - target = scope:recipient_4 - value = minor_treasury_or_gold_value - } - } - if = { - limit = { - exists = scope:recipient_5 - } - pay_treasury_or_gold = { - target = scope:recipient_5 - value = minor_treasury_or_gold_value - } - } - } -} - -# You plan out an ambitious investment in the realm... or its lords -bp2_yearly.6050 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.6050.t - desc = bp2_yearly.6050.desc - theme = culture_change - override_background = { - reference = terrain_travel - } - left_portrait = { - character = root - animation = steward - } - - right_portrait = { - character = scope:noble_representative - animation = war_defender - } - - lower_right_portrait = { - character = scope:foreign_architect - } - - lower_left_portrait = { - character = scope:loyal_knight - } - - trigger = { - has_bp2_dlc_trigger = yes - basic_is_valid_for_yearly_events_trigger = yes - - NOT = { capital_province.culture = var:advanced_culture } - #Learned enough to get the idea - NOT = { has_character_flag = had_event_bp2_yearly_6050 } - OR = { - any_vassal = { - bp2_yearly_6050_noble_representative = yes - OR = { - has_vassal_stance = glory_hound - has_vassal_stance = parochial - has_vassal_stance = courtly - has_vassal_stance = barons_and_minor_landholders - } - } - any_courtier = { - bp2_yearly_6050_noble_representative = yes - is_lowborn = no - } - } - - } - - weight_multiplier = { - base = 1 - #If you got this event before and chose to delay it for later, this should pretty much ensure you will get the event again - modifier = { - factor = 2 - var:advanced_culture = { - culture_head.capital_province.county = { - development_level > root.culture.culture_head.capital_province.county.development_level - } - } - } - modifier = { - factor = 2 - var:advanced_culture = { - culture_head.capital_province.county = { - development_level > root.capital_province.county.development_level - } - } - } - modifier = { - factor = 0.5 - var:advanced_culture = { - culture_head.capital_province.county = { - development_level <= root.capital_province.county.development_level - } - } - } - modifier = { - factor = 0.5 - var:advanced_culture = { - culture_head.capital_province.county = { - development_level <= root.culture.culture_head.capital_province.county.development_level - } - } - } - modifier = { - factor = 2 - var:advanced_culture = { - culture_head.capital_province.county = { - development_level > root.capital_province.county.development_level - } - } - } - modifier = { - factor = 1.5 - var:advanced_culture = { - OR = { - has_cultural_pillar = ethos_bureaucratic - has_cultural_pillar = ethos_communal - has_cultural_pillar = ethos_egalitarian - has_cultural_pillar = ethos_spiritual - } - } - } - modifier = { - factor = 0.75 - culture = { - OR = { - has_cultural_pillar = ethos_bureaucratic - has_cultural_pillar = ethos_communal - has_cultural_pillar = ethos_egalitarian - has_cultural_pillar = ethos_spiritual - } - } - } - } - - immediate = { - add_character_flag = had_event_bp2_yearly_6050 - save_scope_as = root_scope - if = { - limit = { - any_vassal = { - bp2_yearly_6050_noble_representative = yes - OR = { - has_vassal_stance = glory_hound - has_vassal_stance = parochial - has_vassal_stance = courtly - has_vassal_stance = barons_and_minor_landholders - } - } - } - random_vassal = { - limit = { - bp2_yearly_6050_noble_representative = yes - OR = { - has_vassal_stance = glory_hound - has_vassal_stance = parochial - has_vassal_stance = courtly - has_vassal_stance = barons_and_minor_landholders - } - is_powerful_vassal = yes - } - alternative_limit = { - bp2_yearly_6050_noble_representative = yes - OR = { - has_vassal_stance = glory_hound - has_vassal_stance = parochial - has_vassal_stance = courtly - has_vassal_stance = barons_and_minor_landholders - } - } - save_scope_as = noble_representative - } - } - else = { - random_courtier = { - limit = { - bp2_yearly_6050_noble_representative = yes - is_lowborn = no - } - save_scope_as = noble_representative - } - } - var:advanced_culture = { - save_scope_as = advanced_culture - } - var:childhood_location = { - save_scope_as = childhood_location - } - #A little beginning on development work - capital_county = { - change_development_progress_with_overflow = medium_development_progress_gain - } - #Save powerful vassals so you can pay them gold - if = { - limit = { - any_powerful_vassal = { - is_ai = yes - NOR = { - is_at_war_with = root - is_imprisoned_by = root - } - } - } - random_powerful_vassal = { - limit = { - is_ai = yes - NOR = { - is_at_war_with = root - is_imprisoned_by = root - } - } - save_scope_as = recipient_1 - } - } - if = { - limit = { - any_powerful_vassal = { - is_ai = yes - NOR = { - is_at_war_with = root - is_imprisoned_by = root - this = scope:recipient_1 - } - } - } - random_powerful_vassal = { - limit = { - is_ai = yes - NOR = { - is_at_war_with = root - is_imprisoned_by = root - this = scope:recipient_1 - } - } - save_scope_as = recipient_2 - } - } - if = { - limit = { - any_powerful_vassal = { - is_ai = yes - NOR = { - is_at_war_with = root - is_imprisoned_by = root - this = scope:recipient_1 - this = scope:recipient_2 - } - } - } - random_powerful_vassal = { - limit = { - is_ai = yes - NOR = { - is_at_war_with = root - is_imprisoned_by = root - this = scope:recipient_1 - this = scope:recipient_2 - } - } - save_scope_as = recipient_3 - } - } - if = { - limit = { - any_powerful_vassal = { - is_ai = yes - NOR = { - is_at_war_with = root - is_imprisoned_by = root - this = scope:recipient_1 - this = scope:recipient_2 - this = scope:recipient_3 - } - } - } - random_powerful_vassal = { - limit = { - is_ai = yes - NOR = { - is_at_war_with = root - is_imprisoned_by = root - this = scope:recipient_1 - this = scope:recipient_2 - this = scope:recipient_3 - } - } - save_scope_as = recipient_4 - } - } - if = { - limit = { - any_powerful_vassal = { - is_ai = yes - NOR = { - is_at_war_with = root - is_imprisoned_by = root - this = scope:recipient_1 - this = scope:recipient_2 - this = scope:recipient_3 - this = scope:recipient_4 - } - } - } - random_powerful_vassal = { - limit = { - is_ai = yes - NOR = { - is_at_war_with = root - is_imprisoned_by = root - this = scope:recipient_1 - this = scope:recipient_2 - this = scope:recipient_3 - this = scope:recipient_4 - } - } - save_scope_as = recipient_5 - } - } - #save gold value for use in loc - save_scope_value_as = { - name = gold_gift_amount - value = root.minor_gold_value - } - #Create a foreign architect - create_character = { - template = foreign_architect_template - culture = scope:advanced_culture - faith = scope:advanced_culture.culture_head.faith - location = root.location - gender_female_chance = root_faith_dominant_gender_adjusted_female_chance - save_scope_as = foreign_architect - } - #Create a noble knight, a fine example of your culture - create_character = { - template = culture_defender_knight_template - culture = root.culture - faith = root.faith - location = root.location - gender_female_chance = root_soldier_female_chance - save_scope_as = loyal_knight - } - } - - #My capital is all that matters! - option = { - name = bp2_yearly.6050.a - flavor = bp2_yearly.6050.a.tt - capital_county = { - change_development_level = 4 - add_county_modifier = { - modifier = massive_construction_efforts_modifier - years = 20 - } - } - #modifier to make it easier to build in the capital - - if = { - limit = { - root = root.culture.culture_head - } - culture = { - change_cultural_acceptance = { - target = scope:advanced_culture - value = miniscule_positive_culture_acceptance - desc = cultural_acceptance_gain_building_familiar_settlements - } - } - } - - add_courtier = scope:foreign_architect - #pisses off nobles majorly - if = { - limit = { - any_targeting_faction = { - exists = yes - NOT = { exists = faction_war } - NOT = { faction_is_type = peasant_faction } - } - } - add_targeting_factions_discontent = 30 - } - every_vassal = { - vassal_stance = courtly - custom = custom.every_courtly_vassal - add_opinion = { - target = root - modifier = hate_opinion - opinion = -50 - } - } - - remove_treasury_or_gold = monumental_treasury_or_gold_value - custom_tooltip = bp2_yearly.6050.reform_path - random_owned_story = { - type = story_foreign_raised_reformer - change_variable = { - name = reform_counter - add = 1 - } - } - - # make it possible to get new realm traditions in the tradition event - add_character_flag = foreign_realm_reforms - - stress_impact = { - arrogant = miniscule_stress_impact_loss - profligate = minor_stress_impact_loss - humble = massive_stress_impact_gain - content = major_stress_impact_gain - } - ai_chance = { - base = 10 - min = 0 - ai_value_modifier = { - ai_energy = 1 - ai_boldness = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = content - has_trait = humble - } - } - } - } - - #I'm not spending money on the realm - I'm spending tax money on the realm - option = { - name = bp2_yearly.6050.b - flavor = bp2_yearly.6050.b.tt - custom_tooltip = bp2_yearly.6050.every_county_development - hidden_effect = { - every_realm_county = { - limit = { - holder = root - } - change_development_level = 1 - change_county_control = major_county_control_loss - } - } - #modifier to make it easier to build anywhere - add_character_modifier = { - modifier = great_builder_modifier - } - if = { - limit = { - root = root.culture.culture_head - } - culture = { - change_cultural_acceptance = { - target = scope:advanced_culture - value = miniscule_positive_culture_acceptance - desc = cultural_acceptance_gain_building_familiar_settlements - } - } - } - add_courtier = scope:foreign_architect - - custom_tooltip = bp2_yearly.6050.county_control_loss - custom_tooltip = bp2_yearly.6050.county_opinion_modifier - hidden_effect = { - #big county opinion and control loss - every_realm_county = { - limit = { - holder = root - culture != scope:advanced_culture - } - add_county_modifier = { - modifier = unprecedented_taxation_modifier - years = 15 - } - } - } - - #pisses off nobles a bit less than first option - if = { - limit = { - any_targeting_faction = { - exists = yes - NOT = { exists = faction_war } - } - } - add_targeting_factions_discontent = 30 - } - every_vassal = { - vassal_stance = courtly - custom = custom.every_courtly_vassal - add_opinion = { - target = root - modifier = hate_opinion - opinion = -25 - } - } - custom_tooltip = bp2_yearly.6050.reform_path - random_owned_story = { - type = story_foreign_raised_reformer - change_variable = { - name = reform_counter - add = 1 - } - } - - #make it possible to get new realm traditions in the tradition event - add_character_flag = foreign_realm_reforms - - stress_impact = { - greedy = miniscule_stress_impact_loss - generous = major_stress_impact_gain - compassionate = medium_stress_impact_gain - just = medium_stress_impact_gain - paranoid = medium_stress_impact_gain - } - - ai_chance = { - base = 10 - min = 0 - ai_value_modifier = { - ai_greed = 1 - ai_compassion = -1 - } - modifier = { - factor = 0 - OR = { - has_trait = generous - has_trait = compassionate - has_trait = just - has_trait = paranoid - } - } - } - } - - #My peoples' leaders matter more than the realm - option = { - name = bp2_yearly.6050.c - flavor = bp2_yearly.6050.c.tt - - add_character_modifier = { - modifier = loyal_realm_nobility_modifier - } - add_legitimacy = minor_legitimacy_gain - add_courtier = scope:loyal_knight - bp2_yearly_6020_pay_powerful_vassals_effect = yes - - culture = { - change_cultural_acceptance = { - target = scope:advanced_culture - value = miniscule_negative_culture_acceptance - desc = cultural_acceptance_turned_away_trade - } - } - - custom_tooltip = bp2_yearly.6050.reaffirmation_path - random_owned_story = { - type = story_foreign_raised_reformer - change_variable = { - name = reaffirmation_counter - add = 1 - } - } - - add_character_flag = rejecting_foreign_realm_reforms - - stress_impact = { - loyal = medium_stress_impact_loss - trusting = minor_stress_impact_loss - generous = minor_stress_impact_loss - greedy = major_stress_impact_gain - disloyal = medium_stress_impact_gain - diligent = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - stubborn = medium_stress_impact_gain - } - - ai_chance = { - base = 10 - min = 0 - ai_value_modifier = { - ai_greed = -1 - ai_sociability = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = greedy - has_trait = disloyal - has_trait = diligent - has_trait = arrogant - has_trait = stubborn - } - } - } - } - after = { - if = { - limit = { - scope:foreign_architect = { - NOT = { - is_courtier_of = root - } - } - } - scope:foreign_architect = { - silent_disappearance_effect = yes - } - } - if = { - limit = { - scope:loyal_knight = { - NOT = { - is_courtier_of = root - } - } - } - scope:loyal_knight = { - silent_disappearance_effect = yes - } - } - } -} - -##################################### -# Studies in Eternity # -# by Jason Cantalini # -# 6060 # -##################################### - -scripted_trigger bp2_yearly_6060_clergy_representative = { - is_imprisoned = no - is_adult = yes - faith = root.faith -} - -# You question how your people could approach their faith in a new, more learned and organized way -bp2_yearly.6060 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.6060.t - desc = { - desc = bp2_yearly.6060.desc - first_valid = { - triggered_desc = { - trigger = { - scope:advanced_culture_faith = root.faith - } - desc = bp2_yearly.6060.same_faith - } - desc = bp2_yearly.6060.different_faith - } - } - - theme = learning_theology_focus - override_background = { - reference = holy_site_generic_scope - } - left_portrait = { - character = root - animation = boredom - } - - right_portrait = { - character = scope:clergy_representative - animation = wedding_priest - } - - lower_right_portrait = { - character = scope:foreign_cleric - } - - lower_left_portrait = { - character = scope:foreign_scholar - } - - trigger = { - has_bp2_dlc_trigger = yes - basic_is_valid_for_yearly_events_trigger = yes - - exists = var:advanced_culture_faith - exists = var:advanced_culture - var:advanced_culture = { - save_temporary_scope_as = temp_advanced_culture - } - NOT = { has_character_flag = had_event_bp2_yearly_6060 } - OR = { - any_vassal = { - bp2_yearly_6060_clergy_representative = yes - government_has_flag = government_is_theocracy - culture != scope:temp_advanced_culture - } - any_courtier = { - bp2_yearly_6060_clergy_representative = yes - is_clergy = yes - culture != scope:temp_advanced_culture - } - any_pool_character = { - province = root.location - bp2_yearly_6060_clergy_representative = yes - is_clergy = yes - culture != scope:temp_advanced_culture - } - } - #if your faith is organized, the advanced faith must be organized too - OR = { - faith = { - has_doctrine_parameter = unreformed - } - AND = { - faith = { - NOT = { has_doctrine_parameter = unreformed } - } - var:advanced_culture_faith = { - NOT = { has_doctrine_parameter = unreformed } - } - } - } - } - - weight_multiplier = { - base = 1 - #If you got this event before and chose to delay it for later, this should pretty much ensure you will get the event again - modifier = { - factor = 1.5 - var:advanced_culture = { - OR = { - has_cultural_pillar = ethos_courtly - has_cultural_pillar = ethos_spiritual - } - } - } - modifier = { - factor = 0.75 - culture = { - OR = { - has_cultural_pillar = ethos_courtly - has_cultural_pillar = ethos_spiritual - } - } - } - } - - immediate = { - capital_province = { - save_scope_as = holy_site_scope - } - var:advanced_culture = { - save_scope_as = advanced_culture - } - var:childhood_location = { - save_scope_as = childhood_location - } - var:advanced_culture_faith = { - save_scope_as = advanced_culture_faith - } - add_character_flag = had_event_bp2_yearly_6060 - save_scope_as = root_scope - if = { - limit = { - any_powerful_vassal = { - bp2_yearly_6060_clergy_representative = yes - government_has_flag = government_is_theocracy - culture != scope:advanced_culture - } - } - random_powerful_vassal = { - limit = { - bp2_yearly_6060_clergy_representative = yes - government_has_flag = government_is_theocracy - culture != scope:advanced_culture - } - save_scope_as = clergy_representative - } - } - else_if = { - limit = { - any_vassal = { - bp2_yearly_6060_clergy_representative = yes - government_has_flag = government_is_theocracy - culture != scope:advanced_culture - } - } - random_vassal = { - limit = { - bp2_yearly_6060_clergy_representative = yes - government_has_flag = government_is_theocracy - culture != scope:advanced_culture - } - save_scope_as = clergy_representative - } - } - else_if = { - limit = { - any_courtier = { - bp2_yearly_6060_clergy_representative = yes - is_clergy = yes - culture != scope:advanced_culture - } - } - random_courtier = { - limit = { - bp2_yearly_6060_clergy_representative = yes - is_clergy = yes - culture != scope:advanced_culture - } - save_scope_as = clergy_representative - } - } - else = { - random_pool_character = { - province = root.location - limit = { - bp2_yearly_6060_clergy_representative = yes - is_clergy = yes - culture != scope:advanced_culture - } - save_scope_as = clergy_representative - } - } - #Create a foreign cleric - create_character = { - template = foreign_cleric_template - culture = scope:advanced_culture - faith = scope:advanced_culture_faith - location = root.location - gender_female_chance = root_faith_clergy_gender_female_chance - save_scope_as = foreign_cleric - } - if = { - limit = { - scope:advanced_culture_faith = { - has_doctrine_parameter = take_vows_active - } - } - scope:foreign_cleric = { add_trait = devoted } - } - if = { - limit = { - scope:advanced_culture_faith = { - NOT = { has_doctrine_parameter = forbidden_from_pilgrimage } - } - } - scope:foreign_cleric = { add_trait = pilgrim } - } - - #Create a foreign scholar - create_character = { - template = foreign_scholar_template - culture = scope:advanced_culture - faith = scope:advanced_culture.culture_head.faith - location = root.location - gender_female_chance = root_faith_clergy_gender_female_chance - save_scope_as = foreign_scholar - } - } - - #I SHALL LEAD THE WAY WITH A GLORIOUS CONVERSION - option = { - trigger = { - faith != scope:advanced_culture_faith - is_ai = no - } - name = bp2_yearly.6060.a - flavor = bp2_yearly.6060.a.tt - - add_courtier = scope:foreign_cleric - - - scope:advanced_culture_faith = { - change_fervor = { - value = 20 - desc = fervor_gain_reformer_converts - } - } - add_piety = major_piety_gain - #replace piety with same culture opinion modifier...? - - set_character_faith_with_conversion = scope:advanced_culture_faith - if = { - limit = { - scope:advanced_culture_faith = { has_doctrine = doctrine_monotheist } - } - custom_description_no_bullet = { text = mandala_monotheist_warning_tt } - } - - custom_tooltip = bp2_yearly.6050.reform_path - random_owned_story = { - type = story_foreign_raised_reformer - change_variable = { - name = reform_counter - add = 1 - } - } - - # make it possible to get new ritual traditions in the tradition event - add_character_flag = foreign_ritual_reforms - - stress_impact = { - loyal = medium_stress_impact_gain - content = minor_stress_impact_gain - craven = minor_stress_impact_gain - paranoid = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_boldness = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = loyal - has_trait = content - has_trait = craven - has_trait = paranoid - scope:advanced_culture_faith = { - has_doctrine_parameter = unreformed - } - } - } - } - } - - #We should be conducting religion is such a grand and organized manner - option = { - name = bp2_yearly.6060.b - flavor = bp2_yearly.6060.b.tt - - custom_tooltip = bp2_yearly.6060.b.conversion_bonus - add_character_flag = reformer_conversion - - if = { - limit = { - scope:advanced_culture_faith = root.faith - } - add_courtier = scope:foreign_cleric - } - add_character_modifier = { - modifier = adapted_rituals_modifier - } - - if = { - limit = { - capital_county = { - any_county_province = { - has_holding = no - NOR = { - has_construction_with_flag = temple - has_construction_with_flag = castle - has_construction_with_flag = city - has_construction_with_flag = tribe - } - } - } - } - capital_county = { - random_county_province = { - limit = { - has_holding = no - NOR = { - has_construction_with_flag = temple - has_construction_with_flag = castle - has_construction_with_flag = city - has_construction_with_flag = tribe - } - } - begin_create_holding = { - type = church_holding - refund_cost = { gold = hold_court_holding_cost_half_value } - } - } - } - add_piety = massive_piety_loss - } - else_if = { - limit = { - any_held_title = { - title_tier = county - any_county_province = { - has_holding = no - NOR = { - has_construction_with_flag = temple - has_construction_with_flag = castle - has_construction_with_flag = city - has_construction_with_flag = tribe - } - } - } - } - random_held_title = { - title_tier = county - limit = { - any_county_province = { - has_holding = no - NOR = { - has_construction_with_flag = temple - has_construction_with_flag = castle - has_construction_with_flag = city - has_construction_with_flag = tribe - } - } - } - random_county_province = { - limit = { - has_holding = no - NOR = { - has_construction_with_flag = temple - has_construction_with_flag = castle - has_construction_with_flag = city - has_construction_with_flag = tribe - } - } - begin_create_holding = { - type = church_holding - refund_cost = { gold = hold_court_holding_cost_half_value } - } - } - } - add_piety = massive_piety_loss - } - - custom_tooltip = bp2_yearly.6050.reform_path - random_owned_story = { - type = story_foreign_raised_reformer - change_variable = { - name = reform_counter - add = 1 - } - } - - # make it possible to get new ritual traditions in the tradition event - add_character_flag = foreign_ritual_reforms - - stress_impact = { - theologian = minor_stress_impact_loss - humble = medium_stress_impact_gain - cynical = medium_stress_impact_gain - arbitrary = minor_stress_impact_gain - eccentric = minor_stress_impact_gain - } - - ai_chance = { - base = 20 - ai_value_modifier = { - ai_greed = 1 - ai_zeal = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = humble - has_trait = zealous - has_trait = arbitrary - has_trait = eccentric - } - } - } - } - - #It is their studiousness that gives them such access to the mysteries of faith - option = { - name = bp2_yearly.6060.c - flavor = bp2_yearly.6060.c.tt - if = { - limit = { - capital_province = { - has_special_building_slot = no - } - } - capital_province = { - add_special_building_slot = generic_university - } - if = { - limit = { - government_has_flag = government_is_tribal - } - custom_tooltip = bp2_yearly.6060.c.tribal_warning - } - } - else_if = { - limit = { - any_held_county = { - any_county_province = { has_special_building_slot = no } - } - } - ordered_held_county = { - limit = { - any_county_province = { has_special_building_slot = no } - } - order_by = { - value = development_level - multiply = 1 - } - save_scope_as = most_developed_county - } - scope:most_developed_county.title_province = { - add_special_building_slot = generic_university - } - if = { - limit = { - government_has_flag = government_is_tribal - } - custom_tooltip = bp2_yearly.6060.c.tribal_warning - } - } - else = { - add_character_modifier = { - modifier = court_of_scholars_modifier - } - primary_heir ?= { - add_character_modifier = { - modifier = court_of_scholars_modifier - } - } - } - - add_learning_skill = 4 - custom_tooltip = bp2_yearly.6060.c.nerd - hidden_effect = { - add_intrigue_skill = -2 - add_diplomacy_skill = -2 - add_martial_skill = -2 - add_stewardship_skill = -2 - add_prowess_skill = -2 - } - add_courtier = scope:foreign_scholar - - add_legitimacy = minor_legitimacy_loss - - custom_tooltip = bp2_yearly.6050.reform_path - random_owned_story = { - type = story_foreign_raised_reformer - change_variable = { - name = reform_counter - add = 1 - } - } - - # make it possible to get new ritual traditions in the tradition event - add_character_flag = foreign_ritual_reforms - - stress_impact = { - scholar = minor_stress_impact_loss - lazy = major_stress_impact_gain - impatient = medium_stress_impact_gain - content = minor_stress_impact_gain - sadistic = minor_stress_impact_gain - } - - ai_chance = { - base = 20 - ai_value_modifier = { - ai_rationality = 1 - ai_energy = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = lazy - has_trait = impatient - has_trait = content - has_trait = sadistic - } - } - } - } - - #We are the true believers, now that I think about it - option = { - name = bp2_yearly.6060.d - flavor = bp2_yearly.6060.d.tt - - #same faith bonus modifier - - add_piety = major_piety_gain - - every_vassal = { - limit = { - OR = { - has_vassal_stance = zealot - has_vassal_stance = parochial - } - } - custom = custom.every_zealot_or_parochial_vassal - add_opinion = { - target = root - modifier = admiration_opinion - opinion = 25 - } - } - - faith = { - change_fervor = { - value = 10 - desc = fervor_gain_reformer_champions_faith - } - } - scope:advanced_culture_faith = { - change_fervor = { - value = -10 - desc = fervor_loss_reformer_rejects_faith - } - } - - custom_tooltip = bp2_yearly.6050.reaffirmation_path - random_owned_story = { - type = story_foreign_raised_reformer - change_variable = { - name = reaffirmation_counter - add = 1 - } - } - - add_character_flag = rejecting_foreign_ritual_reforms - - stress_impact = { - zealous = minor_stress_impact_loss - fickle = medium_stress_impact_gain - ambitious = medium_stress_impact_gain - diligent = minor_stress_impact_gain - cynical = minor_stress_impact_gain - } - - ai_chance = { - base = 20 - ai_value_modifier = { - ai_zeal = 1 - ai_energy = -1 - } - modifier = { - factor = 0 - OR = { - has_trait = fickle - has_trait = ambitious - has_trait = diligent - has_trait = cynical - } - } - } - } - after = { - if = { - limit = { - scope:foreign_cleric ?= { - NOT = { - is_courtier_of = root - } - } - } - scope:foreign_cleric = { - silent_disappearance_effect = yes - } - } - if = { - limit = { - scope:foreign_scholar ?= { - NOT = { - is_courtier_of = root - } - } - } - scope:foreign_scholar = { - silent_disappearance_effect = yes - } - } - } -} - -##################################### -# Where All the World Gazes # -# by Jason Cantalini # -# 6070 # -##################################### - -# You consider pursuing fancy foreign court manners -bp2_yearly.6070 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.6070.t - desc = bp2_yearly.6070.desc - - - theme = diplomacy_majesty_focus - override_background = { - reference = throne_room - } - left_portrait = { - character = root - animation = shame - } - - right_portrait = { - character = scope:foreign_official - animation = throne_room_bow_1 - } - - lower_right_portrait = { - character = scope:advanced_court_owner - } - - trigger = { - has_bp2_dlc_trigger = yes - basic_is_valid_for_yearly_events_trigger = yes - exists = var:advanced_culture.culture_head - NOT = { capital_province.culture = var:advanced_culture } - NOT = { has_character_flag = had_event_bp2_yearly_6070 } - } - - weight_multiplier = { - base = 1 - #If you got this event before and chose to delay it for later, this should pretty much ensure you will get the event again - modifier = { - factor = 2 - var:advanced_culture.culture_head = { - has_royal_court = yes - } - OR = { - has_royal_court = no - var:advanced_culture.culture_head = { - court_grandeur_current > root.court_grandeur_current - } - } - } - modifier = { - factor = 0.5 - OR = { - var:advanced_culture.culture_head = { - has_royal_court = no - } - var:advanced_culture.culture_head = { - AND = { - has_royal_court = yes - court_grandeur_current <= root.court_grandeur_current - } - } - } - } - modifier = { - factor = 1.5 - var:advanced_culture = { - OR = { - has_cultural_pillar = ethos_courtly - has_cultural_pillar = ethos_egalitarian - has_cultural_pillar = ethos_stoic - } - } - } - modifier = { - factor = 0.75 - culture = { - OR = { - has_cultural_pillar = ethos_courtly - has_cultural_pillar = ethos_egalitarian - has_cultural_pillar = ethos_stoic - } - } - } - } - - immediate = { - add_character_flag = had_event_bp2_yearly_6070 - save_scope_as = root_scope - - var:advanced_culture = { - save_scope_as = advanced_culture - } - var:childhood_location = { - save_scope_as = childhood_location - } - scope:advanced_culture.culture_head = { - save_scope_as = advanced_court_owner - } - - #Create a foreign visitor - create_character = { - template = foreign_official_template - culture = scope:advanced_culture - faith = scope:advanced_court_owner.faith - location = root.location - gender_female_chance = root_faith_dominant_gender_adjusted_female_chance - save_scope_as = foreign_official - } - #He needs gold to confiscate - hidden_effect = { - scope:foreign_official = { - add_gold = root.medium_gold_value - } - } - hidden_effect_new_object = { - scope:foreign_official = { - save_scope_as = owner - #Create fancy regalia - set_artifact_rarity_illustrious = yes - create_artifact = { - name = artifact_admired_culture_regalia - description = placeholder # Will be updated in the post-creation effects - creator = scope:foreign_official - visuals = regalia - type = regalia - template = regalia_template - modifier = artifact_placeholder_modifier - wealth = scope:wealth - quality = scope:quality - save_scope_as = newly_created_artifact_1 - history = { - type = created_before_history - } - } - scope:newly_created_artifact_1 = { - set_artifact_description = artifact_famed_culture_regalia_desc - add_scaled_artifact_modifier_grandeur_small_effect = yes - add_scaled_artifact_modifier_minor_prestige_effect = yes - add_scaled_artifact_modifier_rulership_effect = yes - } - #Create fancy crown - set_artifact_rarity_illustrious = yes - create_artifact = { - name = artifact_admired_culture_crown - description = placeholder # Will be updated in the post-creation effects - creator = scope:foreign_official - visuals = crown - template = crown_wearable_template - type = helmet - modifier = artifact_placeholder_modifier - wealth = scope:wealth - quality = scope:quality - save_scope_as = newly_created_artifact_2 - history = { - type = created_before_history - } - } - scope:newly_created_artifact_2 = { - set_artifact_description = artifact_famed_culture_crown_desc - add_scaled_artifact_modifier_intrigue_effect = yes - add_scaled_artifact_modifier_majesty_effect = yes - } - } - if = { - limit = { - scope:advanced_culture = { - has_cultural_pillar = ethos_bellicose - } - } - set_artifact_rarity_famed = yes - create_artifact_book_effect = { - OWNER = scope:foreign_official - CREATOR = scope:foreign_official - SET_SUBJECT = flag:martial - SET_TOPIC = flag:no - } - } - else_if = { - limit = { - scope:advanced_culture = { - OR = { - has_cultural_pillar = ethos_bureaucratic - has_cultural_pillar = ethos_egalitarian - } - } - } - set_artifact_rarity_famed = yes - create_artifact_book_effect = { - OWNER = scope:foreign_official - CREATOR = scope:foreign_official - SET_SUBJECT = flag:stewardship - SET_TOPIC = flag:no - } - } - else_if = { - limit = { - scope:advanced_culture = { - has_cultural_pillar = ethos_stoic - } - } - set_artifact_rarity_famed = yes - create_artifact_book_effect = { - OWNER = scope:foreign_official - CREATOR = scope:foreign_official - SET_SUBJECT = flag:diplomacy - SET_TOPIC = flag:no - } - } - else_if = { - limit = { - scope:advanced_culture = { - OR = { - has_cultural_pillar = ethos_courtly - has_cultural_pillar = ethos_spiritual - } - } - } - set_artifact_rarity_famed = yes - create_artifact_book_effect = { - OWNER = scope:foreign_official - CREATOR = scope:foreign_official - SET_SUBJECT = flag:learning - SET_TOPIC = flag:no - } - } - else_if = { - limit = { - scope:advanced_culture = { - has_cultural_pillar = ethos_communal - } - } - set_artifact_rarity_famed = yes - create_artifact_book_effect = { - OWNER = scope:foreign_official - CREATOR = scope:foreign_official - SET_SUBJECT = flag:intrigue - SET_TOPIC = flag:no - } - } - scope:newly_created_artifact = { - set_artifact_name = artifact_advanced_culture_treatise - } - } - } - - #Try to actually learn from them instead of just copying them - option = { - trigger = { - OR = { - learning >= high_skill_rating - stewardship >= high_skill_rating - } - culture.culture_head = root - } - name = bp2_yearly.6070.a - flavor = bp2_yearly.6070.a.tt - culture = { - get_random_innovation_from = scope:advanced_culture - } - add_courtier = scope:foreign_official - scope:advanced_culture = { - change_cultural_acceptance = { - target = root.culture - value = miniscule_positive_culture_acceptance - desc = cultural_acceptance_learning_from_culture - } - } - add_prestige_level = -1 - add_prestige = medium_prestige_loss - - # make it possible to get new maa traditions in the tradition event - add_character_flag = foreign_social_reforms - - custom_tooltip = bp2_yearly.6050.reform_path - random_owned_story = { - type = story_foreign_raised_reformer - change_variable = { - name = reform_counter - add = 1 - } - } - - stress_impact = { - humble = miniscule_stress_impact_loss - arrogant = medium_stress_impact_gain - impatient = medium_stress_impact_gain - greedy = minor_stress_impact_gain - lazy = minor_stress_impact_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_rationality = 1 - ai_greed = -1 - } - modifier = { - factor = 0 - OR = { - has_trait = greedy - has_trait = arrogant - has_trait = impatient - has_trait = lazy - } - } - } - } - #The finest foreign fashion! Teach us the fanciest foreign manners - option = { - name = bp2_yearly.6070.b - flavor = bp2_yearly.6070.b.tt - - scope:newly_created_artifact_1 = { - set_owner = { - target = root - history = { - location = root.capital_province - actor = scope:foreign_official - recipient = root - type = purchased - } - } - } - - scope:newly_created_artifact_2 = { - set_owner = { - target = root - history = { - location = root.capital_province - actor = scope:foreign_official - recipient = root - type = purchased - } - } - } - # somebody might want them back - custom_tooltip = bp2_yearly.6070.artifact_warning - hidden_effect = { - random = { - chance = 75 - scope:advanced_court_owner = { - add_personal_artifact_claim = scope:newly_created_artifact_1 - add_personal_artifact_claim = scope:newly_created_artifact_2 - } - } - } - #so they don't get destroyed - add_character_flag = chose_artifacts - - add_courtier = scope:foreign_official - every_vassal = { - limit = { - OR = { - has_vassal_stance = courtly - has_vassal_stance = parochial - } - } - custom = custom.every_parochial_or_courtly_vassal - add_opinion = { - target = root - modifier = hate_opinion - opinion = -25 - } - } - pay_short_term_gold = { - target = scope:foreign_official - gold = monumental_gold_value - } - - - - if = { - limit = { - culture.culture_head = root - } - adopt_cultural_fashion_effect = yes - } - else_if = { # Error suppression - limit = { always = no } - set_variable = { - name = adopted_cultural_style - value = flag:western - } - } - - custom_tooltip = bp2_yearly.6050.reform_path - random_owned_story = { - type = story_foreign_raised_reformer - change_variable = { - name = reform_counter - add = 1 - } - } - # make it possible to get new social traditions in the tradition event - add_character_flag = foreign_social_reforms - - stress_impact = { - arrogant = minor_stress_impact_loss - just = medium_stress_impact_gain - humble = medium_stress_impact_gain - honest = minor_stress_impact_gain - content = minor_stress_impact_gain - } - ai_chance = { - base = 10 - ai_value_modifier = { - ai_honor = -1 - ai_boldness = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = just - has_trait = humble - has_trait = honest - has_trait = content - } - } - } - } - - #It's language that will change our fortunes - option = { - name = bp2_yearly.6070.c - flavor = bp2_yearly.6070.c.tt - - scope:newly_created_artifact = { - add_artifact_history = { - type = given - actor = scope:foreign_official - recipient = root - } - } - scope:newly_created_artifact = { - set_owner = root - } - #so it doesn't get destroyed - add_character_flag = chose_book - - - scope:advanced_court_owner = { - add_opinion = { - target = root - opinion = 20 - modifier = friendliness_opinion - } - } - - if = { - limit = { - NOT = { - knows_language_of_culture = scope:advanced_culture - } - } - learn_language_of_culture = scope:advanced_culture - } - if = { - limit = { - primary_heir ?= { - age > 5 - opinion = { - target = root - value >= 50 - } - NOT = { - knows_language_of_culture = scope:advanced_culture - } - } - } - primary_heir = { - learn_language_of_culture = scope:advanced_culture - } - } - - #make it super cheap to change court language - custom_tooltip = bp2_yearly.6070.court_language_discount - add_character_flag = foreign_language_reformer - - add_courtier = scope:foreign_official - - pay_short_term_gold = { - target = scope:foreign_official - gold = medium_gold_value - } - custom_tooltip = bp2_yearly.6050.reform_path - random_owned_story = { - type = story_foreign_raised_reformer - change_variable = { - name = reform_counter - add = 1 - } - } - - # make it possible to get new social traditions in the tradition event - add_character_flag = foreign_social_reforms - - - - if = { - limit = { - NOT = { - scope:advanced_culture = { - has_same_culture_language = root.culture - } - } - } - stress_impact = { - scholar = medium_stress_impact_loss - lifestyle_traveler = medium_stress_impact_loss - intellect_good_3 = medium_stress_impact_loss - diplomat = medium_stress_impact_loss - diligent = minor_stress_impact_loss - base = major_stress_impact_gain - lazy = medium_stress_impact_gain - impatient = medium_stress_impact_gain - arrogant = minor_stress_impact_gain - } - } - else = { - stress_impact = { - scholar = miniscule_stress_impact_loss - intellect_good_3 = miniscule_stress_impact_loss - diplomat = miniscule_stress_impact_loss - base = minor_stress_impact_gain - lazy = medium_stress_impact_gain - impatient = medium_stress_impact_gain - arrogant = minor_stress_impact_gain - } - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_energy = 1 - ai_rationality = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = lazy - has_trait = impatient - has_trait = arrogant - } - } - } - } - - #This desperate imitation is kinda turning my stomach - option = { - name = bp2_yearly.6070.d - flavor = bp2_yearly.6070.d.tt - - scope:foreign_official = { - pay_short_term_gold = { - target = root - gold = root.medium_gold_value - } - } - - rightfully_imprison_character_effect = { - TARGET = scope:foreign_official - IMPRISONER = root - } - - every_vassal = { - vassal_stance = courtly - custom = custom.every_courtly_vassal - add_opinion = { - target = root - modifier = respect_opinion - opinion = 25 - } - } - - custom_tooltip = bp2_yearly.6050.reaffirmation_path - random_owned_story = { - type = story_foreign_raised_reformer - change_variable = { - name = reaffirmation_counter - add = 1 - } - } - - add_character_flag = rejecting_foreign_social_reforms - - stress_impact = { - fickle = miniscule_stress_impact_loss - trusting = medium_stress_impact_gain - forgiving = minor_stress_impact_gain - compassionate = minor_stress_impact_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_honor = 1 - ai_vengefulness = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = trusting - has_trait = forgiving - has_trait = compassionate - } - } - } - } - after = { - if = { - limit = { - scope:foreign_official ?= { - NOR = { - is_courtier_of = root - is_imprisoned_by = root - } - } - } - scope:foreign_official = { - silent_disappearance_effect = yes - } - } - hidden_effect = { - if = { - limit = { - exists = scope:newly_created_artifact_1 - NOT = { has_character_flag = chose_artifacts } - } - destroy_artifact = scope:newly_created_artifact_1 - } - if = { - limit = { - exists = scope:newly_created_artifact_2 - NOT = { has_character_flag = chose_artifacts } - } - destroy_artifact = scope:newly_created_artifact_2 - } - if = { - limit = { - exists = scope:newly_created_artifact - NOT = { has_character_flag = chose_book } - } - destroy_artifact = scope:newly_created_artifact - } - remove_character_flag ?= chose_artifacts - remove_character_flag ?= chose_book - } - scope:foreign_official = { - silent_disappearance_ai_effect = yes - } - } -} - -##################################### -# Where the Knights Know Peace # -# by Chad Uhl & Jason Cantalini # -# 6200 # -##################################### - -scripted_trigger bp2_yearly_6200_basic_knight = { - is_imprisoned = no - is_incapable = no - NOT = { exists = involved_activity } - opinion = { - target = root - value > -80 - } - highest_held_title_tier < tier_county - is_ai = yes - NOR = { - this = scope:hostage - this = scope:home_court - } -} - -# Fired from the on_war_started_on_action -bp2_yearly.6200 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.6200.t - desc = bp2_yearly.6200.desc - theme = hostage - - override_background = { - reference = army_camp - } - - left_portrait = { - character = root - animation = marshal - } - right_portrait = { - character = scope:hostage - animation = throne_room_bow_2 - } - lower_left_portrait = scope:target_knight - lower_right_portrait = scope:hostage.home_court - - trigger = { - scope:hostage = { - is_alive = yes - } - is_alive = yes - } - - immediate = { - if = { - limit = { - any_knight = { - bp2_yearly_6200_basic_knight = yes - is_commanding_army = no - opinion = { - target = root - value >= 0 - } - } - } - random_knight = { - limit = { - bp2_yearly_6200_basic_knight = yes - is_commanding_army = no - opinion = { - target = root - value >= 0 - } - } - save_scope_as = target_knight - } - } - else_if = { - limit = { - any_knight = { - bp2_yearly_6200_basic_knight = yes - } - } - random_knight = { - limit = { - bp2_yearly_6200_basic_knight = yes - } - save_scope_as = target_knight - } - } - } - - option = { # Send normal - name = bp2_yearly.6200.a - flavor = bp2_yearly.6200.a.tt - scope:hostage = { - start_travel_plan = { - destination = home_court.capital_province - on_arrival_event = bp2_yearly.6201 - } - } - custom_tooltip = bp2_yearly.6200.hostage_travel - custom_tooltip = bp2_yearly.6200.war_positive - custom_tooltip = bp2_yearly.6200.hostage_warning - - stress_impact = { - arrogant = minor_stress_impact_gain - paranoid = minor_stress_impact_gain - stubborn = minor_stress_impact_gain - } - - ai_chance = { - base = 20 - modifier = { - factor = 0 - OR = { - has_trait = arrogant - has_trait = stubborn - has_trait = paranoid - } - } - } - } - - option = { # Send with gift - name = bp2_yearly.6200.b - flavor = bp2_yearly.6200.b.tt - scope:hostage = { - start_travel_plan = { - destination = home_court.capital_province - on_arrival_event = bp2_yearly.6201 - } - set_variable = { - name = hostage_aid_request_gold - value = root.major_gold_value - } - } - remove_short_term_gold = major_gold_value - custom_tooltip = bp2_yearly.6200.hostage_travel - custom_tooltip = bp2_yearly.6200.war_very_positive - custom_tooltip = bp2_yearly.6200.hostage_warning - - stress_impact = { - arrogant = medium_stress_impact_gain - greedy = medium_stress_impact_gain - paranoid = minor_stress_impact_gain - stubborn = minor_stress_impact_gain - } - - ai_chance = { - base = 20 - modifier = { - factor = 0 - OR = { - has_trait = arrogant - has_trait = greedy - has_trait = stubborn - has_trait = paranoid - } - } - } - } - - option = { # Send with knight - name = bp2_yearly.6200.c - flavor = bp2_yearly.6200.c.tt - show_as_unavailable = { - NOT = { - any_knight = { - bp2_yearly_6200_basic_knight = yes - is_commanding_army = no - opinion = { - target = root - value >= 0 - } - } - } - } - custom_tooltip = bp2_yearly.6200.hostage_travel_knight - custom_tooltip = bp2_yearly.6200.hostage_positive - custom_tooltip = bp2_yearly.6200.hostage_warning - custom_tooltip = bp2_yearly.6200.imprison_warning - - scope:hostage = { - start_travel_plan = { - destination = home_court.capital_province - on_arrival_event = bp2_yearly.6201 - } - set_variable = { - name = hostage_aid_request_chaperone - value = scope:target_knight - } - } - scope:target_knight = { - start_travel_plan = { - destination = scope:hostage.home_court.capital_province - } - } - - stress_impact = { - arrogant = minor_stress_impact_gain - trusting = medium_stress_impact_gain - stubborn = minor_stress_impact_gain - } - - ai_chance = { - base = 20 - modifier = { - factor = 0 - OR = { - has_trait = arrogant - has_trait = trusting - has_trait = stubborn - } - } - } - } - - option = { # Don't send - name = bp2_yearly.6200.d - flavor = bp2_yearly.6200.d.tt - - scope:hostage = { - add_opinion = { - target = root - modifier = hurt_opinion - opinion = -15 - } - } - - stress_impact = { - craven = medium_stress_impact_gain - trusting = minor_stress_impact_gain - } - - ai_chance = { - base = 20 - modifier = { - factor = 0 - OR = { - has_trait = craven - has_trait = trusting - } - } - } - } -} - -# Arrival event where we delay the travel plan and decide what happens -bp2_yearly.6201 = { - hidden = yes - - immediate = { - if = { # Ensure the warden hasn't died in the war - limit = { - warden ?= { - is_alive = yes - is_participant_in_war = scope:war - is_imprisoned = no - } - is_alive = yes - } - if = { - limit = { - home_court = { is_ai = yes } - } - # Decide how the home court owner will respond - random_list = { - 10 = { # Home Court Joins War - trigger = { - home_court = { - NOR = { - liege = scope:attacker - top_liege = scope:attacker - any_vassal = { - this = scope:attacker - this = scope:hostage.warden - } - } - } - } - set_variable = { - name = home_court_response - value = flag:join_war - } - - # Modifiers - modifier = { - add = 10 - home_court = { - OR = { - opinion = { - target = scope:attacker - value < -20 - } - has_relation_rival = scope:attacker - } - } - } - modifier = { - add = 10 - home_court = { - opinion = { - target = scope:defender - value > 20 - } - } - } - modifier = { - add = 20 - home_court = { - OR = { - has_relation_friend = scope:defender - has_relation_best_friend = scope:defender - } - } - } - modifier = { - add = 30 - home_court = { - OR = { - has_relation_nemesis = scope:attacker - has_relation_rival = scope:attacker - } - } - } - modifier = { - factor = 0 - home_court = { is_at_war = yes } - } - modifier = { - add = 30 - has_variable = hostage_aid_request_gold - } - modifier = { - add = 10 - scope:hostage = { - diplomacy > 10 - } - } - } - 40 = { # Home Court Provides Assistance - set_variable = { - name = home_court_response - value = flag:assist - } - modifier = { - add = 10 - scope:hostage = { - diplomacy > 10 - } - } - modifier = { - add = 10 - has_variable = hostage_aid_request_gold - } - } - 50 = { # Home Court Declines - set_variable = { - name = home_court_response - value = flag:decline - } - modifier = { - add = 30 - home_court = { has_relation_friend = scope:attacker } - } - modifier = { - add = 30 - home_court = { - OR = { - liege = scope:attacker - top_liege = scope:attacker - } - } - } - } - } - random_list = { - 40 = { # Home Court keeps Hostage - trigger = { scope:hostage.var:home_court_response = flag:decline } - set_variable = { - name = home_court_hostage_action - value = flag:keep - } - modifier = { - add = -30 - has_variable = hostage_aid_request_chaperone - } - modifier = { - add = 20 - home_court = { - OR = { - has_relation_rival = scope:defender - has_relation_nemesis = scope:defender - } - } - } - } - 60 = { # Home Court does not keep Hostage - set_variable = { - name = home_court_hostage_action - value = flag:dont_keep - } - modifier = { - add = 10 - home_court = { - opinion = { - target = scope:defender - value > 20 - } - } - } - modifier = { - add = 10 - home_court = { - OR = { - has_relation_friend = scope:defender - has_relation_best_friend = scope:defender - } - } - } - } - } - # Fire letter event to warden that the hostage has arrived - warden = { - trigger_event = bp2_yearly.6202 - } - # Delay travel plan - current_travel_plan = { - delay_travel_plan = { days = 20 } - } - #delay knight's travel plan - scope:target_knight ?= { - current_travel_plan = { - delay_travel_plan = { days = 20 } - } - } - # Set up the event telling the warden of the home court decision - warden = { - trigger_event = { id = bp2_yearly.6203 days = 19 } - } - } - else = { # If the home court character is a player, we let them decide how to respond - save_scope_as = target_hostage - # Fire letter event to warden that the hostage has arrived - warden = { - trigger_event = bp2_yearly.6202 - } - # Delay travel plan - current_travel_plan = { - delay_travel_plan = { days = 20 } - } - #delay knight's travel plan - scope:target_knight ?= { - current_travel_plan = { - delay_travel_plan = { days = 20 } - } - } - home_court = { - trigger_event = { id = bp2_yearly.6204 days = 18 } - } - } - } - } -} - -# Letter Event informing the warden that the hostage has arrived -bp2_yearly.6202 = { - type = letter_event - opening = bp2_yearly.6202.t - desc = { - desc = bp2_yearly.6202.opening - random_valid = { - triggered_desc = { - trigger = { - OR = { - scope:hostage.var:home_court_hostage_action = flag:dont_keep - scope:hostage.var:home_court_response = flag:assist - scope:hostage.var:home_court_response = flag:join_war - } - } - desc = bp2_yearly.6202.assembled_nobles - } - triggered_desc = { - trigger = { - OR = { - scope:hostage.var:home_court_hostage_action = flag:dont_keep - scope:hostage.var:home_court_response = flag:decline - scope:hostage.var:home_court_response = flag:assist - #this is the only one that triggers between players - scope:warden = { is_ai = no } - } - } - desc = bp2_yearly.6202.impatient - } - triggered_desc = { - trigger = { - OR = { - scope:hostage.var:home_court_hostage_action = flag:keep - scope:hostage.var:home_court_response = flag:decline - scope:hostage.var:home_court_response = flag:assist - } - } - desc = bp2_yearly.6202.nostalgia - } - } - random_valid = { - triggered_desc = { - trigger = { - OR = { - scope:hostage.var:home_court_response = flag:assist - scope:hostage.var:home_court_response = flag:join_war - } - } - desc = bp2_yearly.6202.received_empathy - } - triggered_desc = { - trigger = { - OR = { - scope:hostage.var:home_court_hostage_action = flag:dont_keep - scope:hostage.var:home_court_response = flag:assist - scope:hostage.var:home_court_response = flag:join_war - scope:hostage.var:home_court_response = flag:decline - } - } - desc = bp2_yearly.6202.received_debate - } - triggered_desc = { - trigger = { - OR = { - scope:hostage.var:home_court_hostage_action = flag:keep - scope:hostage.var:home_court_response = flag:decline - scope:hostage.var:home_court_response = flag:dont_keep - scope:hostage.var:home_court_response = flag:assist - #this is the only one that triggers between players - scope:warden = { is_ai = no } - } - } - desc = bp2_yearly.6202.received_apathy - } - triggered_desc = { - trigger = { - OR = { - scope:hostage.var:home_court_hostage_action = flag:keep - scope:hostage.var:home_court_response = flag:decline - } - } - desc = bp2_yearly.6202.received_scorn - } - } - random_valid = { - triggered_desc = { - trigger = { - scope:hostage.var:home_court_hostage_action = flag:keep - scope:hostage.var:home_court_response = flag:assist - } - desc = bp2_yearly.6202.want_to_return - } - triggered_desc = { - trigger = { - OR = { - scope:hostage.var:home_court_hostage_action = flag:dont_keep - scope:hostage.var:home_court_response = flag:assist - scope:hostage.var:home_court_response = flag:join_war - scope:hostage.var:home_court_response = flag:decline - scope:hostage.var:home_court_hostage_action = flag:keep - #this is the only one that triggers between players - scope:warden = { is_ai = no } - } - } - desc = bp2_yearly.6202.awaiting - } - triggered_desc = { - trigger = { - OR = { - scope:hostage.var:home_court_hostage_action = flag:keep - scope:hostage.var:home_court_response = flag:decline - scope:hostage.var:home_court_response = flag:dont_keep - scope:hostage.var:home_court_response = flag:assist - scope:hostage.var:home_court_response = flag:join_war - } - } - desc = bp2_yearly.6202.want_to_stay - } - triggered_desc = { - trigger = { - OR = { - scope:hostage.var:home_court_hostage_action = flag:keep - scope:hostage.var:home_court_response = flag:decline - scope:hostage.var:home_court_response = flag:assist - } - } - desc = bp2_yearly.6202.fears_returning - } - } - } - - - sender = scope:hostage - - trigger = { - is_participant_in_war = scope:war - } - - immediate = { - - } - - option = { - name = bp2_yearly.6202.a - ai_chance = { - base = 10 - } - } -} - - -# Letter Event giving the Warden the Home Court's answer -bp2_yearly.6203 = { - type = letter_event - opening = bp2_yearly.6203.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - scope:hostage.var:home_court_response = flag:join_war - } - desc = bp2_yearly.6203.join_war - } - triggered_desc = { - trigger = { - scope:hostage.var:home_court_response = flag:assist - } - desc = bp2_yearly.6203.assist - } - triggered_desc = { - trigger = { - scope:hostage.var:home_court_response = flag:decline - exists = scope:home_court_joins_as_attacker - } - desc = bp2_yearly.6203.betray - } - triggered_desc = { - trigger = { - scope:hostage.var:home_court_response = flag:decline - } - desc = bp2_yearly.6203.decline - } - } - first_valid = { - triggered_desc = { - trigger = { - scope:hostage.var:home_court_hostage_action = flag:dont_keep - exists = scope:target_knight - scope:target_knight = { - is_alive = yes - is_imprisoned = no - liege = root - } - } - desc = bp2_yearly.6203.dont_keep_knight - } - triggered_desc = { - trigger = { - scope:hostage.var:home_court_hostage_action = flag:dont_keep - } - desc = bp2_yearly.6203.dont_keep - } - triggered_desc = { - trigger = { - scope:hostage.var:home_court_hostage_action = flag:keep - } - desc = bp2_yearly.6203.keep - } - } - } - - sender = scope:hostage - - trigger = { - is_participant_in_war = scope:war - } - - immediate = { - if = { - limit = { - scope:hostage.home_court = { is_ai = yes } - } - switch = { - trigger = scope:hostage.var:home_court_response - flag:join_war = { - play_music_cue = mx_cue_positive_effect - scope:war = { - add_defender = scope:hostage.home_court - } - # Keep money if you sent a gift - if = { - limit = { scope:hostage = { has_variable = hostage_aid_request_gold } } - scope:hostage.home_court = { - add_gold = scope:hostage.var:hostage_aid_request_gold - } - } - } - flag:assist = { - play_music_cue = mx_cue_positive_effect - set_variable = { - name = bp2_yearly_6203_army_name_origin - value = scope:hostage - } - # Your armies await - spawn_army = { - name = bp2_yearly_6203_army_name - uses_supply = yes - levies = bp2_yearly_6203_levy_size - men_at_arms = { - type = light_footmen - stacks = bp2_yearly_6203_skirmishers_size - } - # can't spawn units over water. Will be possible on FP3 - location = scope:hostage.home_court.capital_province - war = scope:war - } - } - flag:decline = {} - } - - switch = { - trigger = scope:hostage.var:home_court_hostage_action - flag:keep = { - # Righteously imprison the knight with them if they are - save_scope_as = actor - scope:hostage.home_court = { save_scope_as = recipient } - if = { - limit = { scope:hostage = { has_variable = hostage_aid_request_chaperone } } - hidden_effect = { - scope:hostage.var:hostage_aid_request_chaperone = { - current_travel_plan = { - if = { - limit = { can_cancel = yes } - cancel_travel_plan = yes - } - } - } - } - imprison_character_effect = { - TARGET = scope:hostage.var:hostage_aid_request_chaperone - IMPRISONER = scope:hostage.home_court - } - } - # End hostageship - bp2_return_hostage_no_travel_effect = { HOSTAGE = scope:hostage } - # Keep money if you sent a gift - if = { - limit = { scope:hostage = { has_variable = hostage_aid_request_gold } } - scope:hostage.home_court = { - add_gold = scope:hostage.var:hostage_aid_request_gold - } - } - if = { - limit = { - scope:war = { - defender_war_score <= 60 - } - } - random_list = { - 75 = {} - 25 = { # Home Court joins enemy - scope:war = { add_attacker = scope:hostage.home_court } - play_music_cue = mx_cue_war_declared - root = { save_scope_as = home_court_joins_as_attacker } - } - } - } - } - flag:dont_keep = {} - } - } - else = { # If the home court is a player, we still show the effects of their decision as a tooltip, but we don't run them again - show_as_tooltip = { - switch = { - trigger = scope:hostage.var:home_court_response - flag:join_war = { - play_music_cue = mx_cue_positive_effect - scope:war = { - add_defender = scope:hostage.home_court - } - # Keep money if you sent a gift - if = { - limit = { scope:hostage = { has_variable = hostage_aid_request_gold } } - scope:hostage.home_court = { - add_gold = scope:hostage.var:hostage_aid_request_gold - } - } - } - flag:assist = { - play_music_cue = mx_cue_positive_effect - set_variable = { - name = bp2_yearly_6203_army_name_origin - value = scope:hostage - } - # Your armies await - spawn_army = { - name = bp2_yearly_6203_army_name - uses_supply = yes - levies = bp2_yearly_6203_levy_size - men_at_arms = { - type = light_footmen - stacks = bp2_yearly_6203_skirmishers_size - } - # can't spawn units over water. Will be possible on FP3 - location = scope:hostage.home_court.capital_province - war = scope:war - } - } - flag:decline = {} - } - switch = { - trigger = scope:hostage.var:home_court_hostage_action - flag:keep = { - # Righteously imprison the knight with them if they are - save_scope_as = actor - scope:hostage.home_court = { save_scope_as = recipient } - if = { - limit = { scope:hostage = { has_variable = hostage_aid_request_chaperone } } - hidden_effect = { - scope:hostage.var:hostage_aid_request_chaperone = { - current_travel_plan = { - if = { - limit = { can_cancel = yes } - cancel_travel_plan = yes - } - } - } - } - imprison_character_effect = { - TARGET = scope:hostage.var:hostage_aid_request_chaperone - IMPRISONER = scope:hostage.home_court - } - } - # End hostageship - bp2_return_hostage_no_travel_effect = { HOSTAGE = scope:hostage } - # Keep money if you sent a gift - if = { - limit = { scope:hostage = { has_variable = hostage_aid_request_gold } } - scope:hostage.home_court = { - add_gold = scope:hostage.var:hostage_aid_request_gold - } - } - if = { - limit = { - exists = scope:home_court_joins_as_attacker - } - scope:war = { add_attacker = scope:hostage.home_court } - play_music_cue = mx_cue_war_declared - } - } - flag:dont_keep = {} - } - } - } - } - - option = { # Grateful response - name = bp2_yearly.6203.a - flavor = bp2_yearly.6203.a.tt - trigger = { - scope:hostage.var:home_court_response = flag:join_war - } - # progress towards friend - progress_towards_friend_effect = { - REASON = friend_hostage_sent_for_aid - CHARACTER = scope:hostage - OPINION = default_friend_opinion - } - - stress_impact = { - callous = medium_stress_impact_gain - paranoid = medium_stress_impact_gain - shy = minor_stress_impact_gain - arrogant = miniscule_stress_impact_gain - } - ai_chance = { - base = 10 - ai_value_modifier = { - ai_compassion = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = callous - has_trait = paranoid - has_trait = shy - has_trait = arrogant - } - } - } - } - - option = { # Vengeful response - name = bp2_yearly.6203.b - flavor = bp2_yearly.6203.b.tt - trigger = { - scope:hostage.var:home_court_hostage_action = flag:keep - } - # rivalry - progress_towards_rival_effect = { - REASON = rival_disregarded_plea_for_help - CHARACTER = scope:home_court - OPINION = -30 - } - # positive war modifier for vengeance - add_character_modifier = { - modifier = from_victory_vengeance_modifier - years = 10 - } - - stress_impact = { - forgiving = major_stress_impact_gain - compassionate = medium_stress_impact_gain - calm = minor_stress_impact_gain - craven = minor_stress_impact_gain - } - ai_chance = { - base = 10 - ai_value_modifier = { - ai_vengefulness = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = forgiving - has_trait = compassionate - has_trait = calm - has_trait = craven - } - } - } - } - - option = { # Acknowledge - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { - OR = { - scope:hostage.var:home_court_response = flag:join_war - scope:hostage.var:home_court_response = flag:assist - } - } - desc = bp2_yearly.6203.c.positive - } - triggered_desc = { - trigger = { - scope:hostage.var:home_court_response = flag:decline - } - desc = bp2_yearly.6203.c.negative - } - } - } - } - if = { - limit = { - scope:hostage.var:home_court_response = flag:join_war - } - add_prestige = medium_prestige_gain - stress_impact = { - trusting = minor_stress_impact_gain - gregarious = minor_stress_impact_gain - } - } - else_if = { - limit = { - scope:hostage.var:home_court_hostage_action = flag:keep - } - stress_impact = { - vengeful = medium_stress_impact_gain - sadistic = minor_stress_impact_gain - wrathful = minor_stress_impact_gain - just = minor_stress_impact_gain - } - } - ai_chance = { - base = 10 - modifier = { - factor = 0 - OR = { - scope:hostage.var:home_court_hostage_action = flag:keep - has_trait = vengeful - has_trait = sadistic - has_trait = wrathful - has_trait = just - } - } - modifier = { - factor = 0 - OR = { - scope:hostage.var:home_court_response = flag:join_war - has_trait = trusting - has_trait = gregarious - } - } - } - } - - after = { - # Clean up the variables - if = { - limit = { has_variable = bp2_yearly_6203_army_name_origin } - remove_variable = bp2_yearly_6203_army_name_origin - } - scope:hostage = { - if = { - limit = { has_variable = hostage_aid_request_gold } - remove_variable = hostage_aid_request_gold - } - if = { - limit = { has_variable = hostage_aid_request_chaperone } - remove_variable = hostage_aid_request_chaperone - } - if = { - limit = { has_variable = home_court_response } - remove_variable = home_court_response - } - if = { - limit = { has_variable = home_court_hostage_action } - remove_variable = home_court_hostage_action - } - } - } -} - -# Bilateral event for a player character home court where the player gets to decide if they will help out their hostage's warden in the war -bp2_yearly.6204 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.6204.t - desc = { - desc = bp2_yearly.6204.desc - first_valid = { - triggered_desc = { - trigger = { - scope:hostage = { - has_variable = hostage_aid_request_gold - } - } - desc = bp2_yearly.6204.desc_gift - } - triggered_desc = { - trigger = { - scope:hostage = { - has_variable = hostage_aid_request_chaperone - } - scope:target_knight ?= { - is_alive = yes - is_imprisoned = no - } - } - desc = bp2_yearly.6204.desc_chaperone - } - desc = bp2_yearly.6204.desc_none - } - desc = bp2_yearly.6204.desc_outro - } - theme = hostage - override_background = { reference = courtyard } - - left_portrait = { - character = root - animation = personality_honorable - } - right_portrait = { - character = scope:hostage - triggered_animation = { - trigger = { - NOT = { - scope:hostage = { - has_variable = hostage_aid_request_chaperone - } - } - } - animation = throne_room_messenger_3 - } - animation = beg - } - lower_center_portrait = { - trigger = { - scope:hostage = { - has_variable = hostage_aid_request_chaperone - } - } - character = scope:target_knight - } - lower_right_portrait = { - character = scope:warden - } - lower_left_portrait = { - character = scope:attacker - } - - immediate = { - scope:hostage.warden = { - save_scope_as = warden - } - if = { - limit = { - scope:hostage = { - has_variable = hostage_aid_request_gold - } - } - root = { - add_gold = scope:hostage.var:hostage_aid_request_gold - } - } - } - - option = { # Join the War - name = bp2_yearly.6204.a - flavor = bp2_yearly.6204.a.tt - trigger = { - NOR = { - liege = scope:attacker - top_liege = scope:attacker - any_vassal = { - this = scope:attacker - this = scope:warden - } - } - } - scope:hostage = { - set_variable = { - name = home_court_response - value = flag:join_war - } - set_variable = { - name = home_court_hostage_action - value = flag:dont_keep - } - } - scope:war = { - add_defender = root - } - add_character_modifier = { - modifier = a_noble_fight_modifier - years = 5 - } - reverse_add_opinion = { - target = scope:hostage.warden - opinion = 30 - modifier = grateful_opinion - } - reverse_add_opinion = { - target = scope:hostage - opinion = 30 - modifier = grateful_opinion - } - - # Fire the event letting the warden know of the decision - # This is also where the actual effects are run - scope:hostage.warden = { - trigger_event = { - id = bp2_yearly.6203 - days = 1 - } - } - stress_impact = { - craven = medium_stress_impact_gain - content = medium_stress_impact_gain - callous = minor_stress_impact_gain - calm = miniscule_stress_impact_gain - paranoid = minor_stress_impact_gain - } - } - - option = { # Just provide assistance - name = bp2_yearly.6204.b - flavor = bp2_yearly.6204.b.tt - capital_county = { - change_county_control = 15 - } - reverse_add_opinion = { - target = scope:hostage.warden - opinion = 20 - modifier = grateful_opinion - } - reverse_add_opinion = { - target = scope:hostage - opinion = 20 - modifier = grateful_opinion - } - scope:hostage = { - set_variable = { - name = home_court_response - value = flag:assist - } - set_variable = { - name = home_court_hostage_action - value = flag:dont_keep - } - warden = { - set_variable = { - name = bp2_yearly_6203_army_name_origin - value = scope:hostage - } - # spawn some armies - spawn_army = { - name = bp2_yearly_6203_army_name - uses_supply = yes - levies = bp2_yearly_6203_levy_size - men_at_arms = { - type = light_footmen - stacks = bp2_yearly_6203_skirmishers_size - } - location = scope:hostage.location - war = scope:war - } - } - } - remove_short_term_gold = medium_gold_value - - # Fire the event letting the warden know of the decision - # This is also where the actual effects are run - scope:hostage.warden = { - trigger_event = bp2_yearly.6203 - } - stress_impact = { - brave = miniscule_stress_impact_gain - just = minor_stress_impact_gain - greedy = medium_stress_impact_gain - } - } - - option = { # Decline - name = bp2_yearly.6204.c - flavor = bp2_yearly.6204.c.tt - scope:hostage = { - set_variable = { - name = home_court_response - value = flag:decline - } - } - add_character_modifier = { - modifier = peace_over_honor_modifier - years = 10 - } - reverse_add_opinion = { - target = scope:hostage - opinion = -30 - modifier = disappointed_opinion - } - if = { - limit = { - scope:hostage = { - has_variable = hostage_aid_request_gold - NOR = { - has_relation_friend = scope:hostage.warden - has_relation_best_friend = scope:hostage.warden - } - } - } - reverse_add_opinion = { - target = scope:hostage.warden - opinion = -20 - modifier = disappointed_opinion - } - } - #decide whether to return hostage event - trigger_event = bp2_yearly.6205 - if = { - limit = { - OR = { - has_relation_friend = scope:hostage.warden - has_relation_best_friend = scope:hostage.warden - } - } - reverse_add_opinion = { - target = scope:hostage.warden - opinion = -40 - modifier = disappointed_opinion - } - stress_impact = { - base = minor_stress_impact_gain - compassionate = medium_stress_impact_gain - generous = medium_stress_impact_gain - loyal = minor_stress_impact_gain - diligent = miniscule_stress_impact_gain - brave = minor_stress_impact_gain - } - } - else = { - stress_impact = { - content = miniscule_stress_impact_loss - compassionate = medium_stress_impact_gain - generous = medium_stress_impact_gain - diligent = miniscule_stress_impact_gain - brave = minor_stress_impact_gain - } - } - } -} - -# Oh? I could just take my hostage back -bp2_yearly.6205 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.6205.t - desc = { - desc = bp2_yearly.6205.desc - first_valid = { - triggered_desc = { - trigger = { - scope:hostage = { - has_variable = hostage_aid_request_gold - } - } - desc = bp2_yearly.6205.desc_none - } - triggered_desc = { - trigger = { - scope:hostage = { - has_variable = hostage_aid_request_chaperone - } - scope:target_knight ?= { - is_alive = yes - is_imprisoned = no - } - } - desc = bp2_yearly.6205.desc_chaperone - } - desc = bp2_yearly.6205.desc_none - } - desc = bp2_yearly.6205.desc_outro - } - theme = hostage - override_background = { - trigger = { - root.location = { graphical_wilderness_desert_trigger = yes } - } - reference = wilderness_desert - } - override_background = { - trigger = { - root.location = { - OR = { - terrain = forest - terrain = taiga - } - NOR = { - geographical_region = world_africa - geographical_region = world_india - geographical_region = world_europe_west_iberia - geographical_region = world_middle_east - } - } - } - reference = ep2_hunt_forest_hut - } - override_background = { - trigger = { - root.location = { - OR = { - terrain = forest - terrain = taiga - } - OR = { - geographical_region = world_africa - geographical_region = world_india - geographical_region = world_europe_west_iberia - geographical_region = world_middle_east - } - } - } - reference = wilderness_forest - } - override_background = { - trigger = { - root.location = { graphical_wilderness_jungle_trigger = yes } - } - reference = wilderness_jungle - } - - override_background = { - trigger = { - root.location = { graphical_wilderness_steppe_trigger = yes } - } - reference = ep2_travel_settlement_steppe - } - override_background = { - trigger = { - root.location = { graphical_wilderness_desert_trigger = yes } - } - reference = ep2_travel_settlement_desert - } - override_background = { - trigger = { - root.location = { graphical_hills_trigger = yes } - } - reference = ep2_travel_settlement_hills - } - override_background = { - trigger = { - root.location = { graphical_wilderness_mountains_trigger = yes } - } - reference = ep2_travel_settlement_mountains - } - override_background = { - trigger = { - root.location = { - OR = { - terrain = farmlands - terrain = plains - terrain = floodplains - } - } - } - reference = ep2_travel_settlement_farm - } - override_background = { - reference = terrain - } - - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_trait = craven - has_trait = compassionate - has_trait = forgiving - } - } - animation = personality_coward - } - animation = personality_vengeful - } - right_portrait = { - character = scope:hostage - animation = jockey_idle - camera = camera_event_horse_right - } - lower_left_portrait = { - character = scope:attacker - } - lower_right_portrait = { - character = scope:warden - } - lower_center_portrait = { - trigger = { - scope:hostage = { - has_variable = hostage_aid_request_chaperone - } - } - character = scope:target_knight - } - - immediate = { - #saving scopes for return effect - scope:hostage.warden = { save_scope_as = actor } - save_scope_as = recipient - } - - option = { # Keep hostage - name = bp2_yearly.6205.a - scope:hostage = { - set_variable = { - name = home_court_hostage_action - value = flag:keep - } - } - # End hostageship - bp2_return_hostage_no_travel_effect = { HOSTAGE = scope:hostage } - every_close_family_member = { - custom = all_close_family_members - add_opinion = { - target = root - modifier = loyalty_opinion - opinion = 15 - } - } - #Imprison the knight with them if they are - if = { - limit = { scope:hostage = { has_variable = hostage_aid_request_chaperone } } - imprison_character_effect = { - TARGET = scope:hostage.var:hostage_aid_request_chaperone - IMPRISONER = root - } - } - reverse_add_opinion = { - target = scope:hostage.warden - opinion = -30 - modifier = stole_hostage_opinion - } - scope:hostage.warden = { - trigger_event = bp2_yearly.6203 - } - stress_impact = { - paranoid = minor_stress_impact_loss - compassionate = minor_stress_impact_loss - trusting = minor_stress_impact_gain - just = medium_stress_impact_gain - humble = miniscule_stress_impact_gain - honest = miniscule_stress_impact_gain - } - } - - option = { # Keep hostage and join war as attacker - trigger = { - NOR = { - liege = scope:hostage.warden - top_liege = scope:hostage.warden - any_vassal = { - this = scope:hostage.warden - this = scope:attacker - } - } - } - name = bp2_yearly.6205.b - scope:war = { add_attacker = root } - add_character_modifier = { - modifier = aggressive_unpredictable_modifier - years = 10 - } - scope:hostage = { - set_variable = { - name = home_court_hostage_action - value = flag:keep - } - } - # End hostageship - bp2_return_hostage_no_travel_effect = { HOSTAGE = scope:hostage } - #Imprison the knight with them if they are - if = { - limit = { scope:hostage = { has_variable = hostage_aid_request_chaperone } } - imprison_character_effect = { - TARGET = scope:hostage.var:hostage_aid_request_chaperone - IMPRISONER = root - } - } - if = { - limit = { - has_character_modifier = peace_over_honor_modifier - } - remove_character_modifier = peace_over_honor_modifier - } - reverse_add_opinion = { - target = scope:hostage.warden - opinion = -50 - modifier = stole_hostage_opinion - } - root = { save_scope_as = home_court_joins_as_attacker } - scope:warden = { - trigger_event = bp2_yearly.6203 - } - stress_impact = { - vengeful = medium_stress_impact_loss - wrathful = minor_stress_impact_loss - sadistic = minor_stress_impact_loss - fickle = minor_stress_impact_loss - disloyal = minor_stress_impact_loss - compassionate = medium_stress_impact_gain - forgiving = major_stress_impact_gain - just = medium_stress_impact_gain - trusting = minor_stress_impact_gain - content = miniscule_stress_impact_gain - humble = minor_stress_impact_gain - calm = minor_stress_impact_gain - loyal = minor_stress_impact_gain - } - } - - option = { # Don't keep hostage - name = bp2_yearly.6205.c - scope:hostage = { - set_variable = { - name = home_court_hostage_action - value = flag:dont_keep - } - } - every_close_family_member = { - custom = all_close_family_members - add_opinion = { - target = root - modifier = estranged_opinion - opinion = -10 - } - } - scope:hostage.warden = { - trigger_event = bp2_yearly.6203 - } - if = { - limit = { - OR = { - has_trait = callous - has_trait = sadistic - } - } - stress_impact = { - vengeful = minor_stress_impact_gain - wrathful = minor_stress_impact_gain - paranoid = miniscule_stress_impact_gain - } - } - else = { - stress_impact = { - base = minor_stress_impact_gain - compassionate = minor_stress_impact_gain - vengeful = minor_stress_impact_gain - wrathful = minor_stress_impact_gain - paranoid = minor_stress_impact_gain - } - } - } -} - -##################################### -# Bulgarian Blood # -# by Jason Cantalini # -# 6080 # -##################################### - -scripted_trigger bp2_yearly_6080_vassal = { - is_imprisoned = no - age > 13 - is_at_war = no - opinion = { - target = root - value < 0 - } - is_ai = yes -} - -# You are about to get some sweet foreign mercenary bodyguards... and it's a breaking point for your resentful nobility -bp2_yearly.6080 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.6080.t - desc = bp2_yearly.6080.desc - - theme = war - override_background = { - reference = courtyard - } - left_portrait = { - character = root - animation = disbelief - } - - right_portrait = { - character = scope:angry_vassal - animation = anger - } - - lower_right_portrait = { - character = scope:foreign_mercenary_1 - } - - lower_left_portrait = { - character = scope:foreign_mercenary_2 - } - - trigger = { - has_bp2_dlc_trigger = yes - basic_is_valid_for_yearly_events_trigger = yes - - NOT = { has_character_flag = had_event_bp2_yearly_6080 } - var:advanced_culture = { - save_temporary_scope_as = temp_advanced_culture - } - any_vassal = { - bp2_yearly_6080_vassal = yes - culture != scope:temp_advanced_culture - } - } - - weight_multiplier = { - base = 1 - #If you got this event before and chose to delay it for later, this should pretty much ensure you will get the event again - modifier = { - factor = 2 - culture = { - OR = { - has_cultural_pillar = ethos_communal - has_cultural_pillar = ethos_stoic - } - } - } - modifier = { - factor = 0.5 - NOT = { - any_targeting_faction = { - faction_power = halved_faction_power_threshold - } - } - } - modifier = { - factor = 1.5 - var:advanced_culture = { - OR = { - has_cultural_pillar = ethos_bellicose - has_cultural_pillar = ethos_stoic - has_cultural_pillar = ethos_bureaucratic - } - } - } - modifier = { - factor = 0.75 - culture = { - OR = { - has_cultural_pillar = ethos_bellicose - has_cultural_pillar = ethos_bureaucratic - } - } - } - } - - immediate = { - add_character_flag = had_event_bp2_yearly_6080 - save_scope_as = root_scope - var:advanced_culture = { - save_scope_as = advanced_culture - } - if = { - limit = { - any_powerful_vassal = { - bp2_yearly_6080_vassal = yes - opinion = { - target = root - value <= -40 - } - culture != scope:advanced_culture - } - } - random_powerful_vassal = { - limit = { - bp2_yearly_6080_vassal = yes - opinion = { - target = root - value <= -40 - } - culture != scope:advanced_culture - } - save_scope_as = angry_vassal - } - } - else_if = { - limit = { - any_powerful_vassal = { - bp2_yearly_6080_vassal = yes - culture != scope:advanced_culture - } - } - random_powerful_vassal = { - limit = { - bp2_yearly_6080_vassal = yes - culture != scope:advanced_culture - } - save_scope_as = angry_vassal - } - } - else_if = { - limit = { - any_vassal = { - bp2_yearly_6080_vassal = yes - opinion = { - target = root - value <= -40 - } - culture != scope:advanced_culture - } - } - random_vassal = { - limit = { - bp2_yearly_6080_vassal = yes - opinion = { - target = root - value <= -40 - } - culture != scope:advanced_culture - } - save_scope_as = angry_vassal - } - } - else = { - random_vassal = { - limit = { - bp2_yearly_6080_vassal = yes - culture != scope:advanced_culture - } - save_scope_as = angry_vassal - } - } - - #Create two foreign fighting dudes - create_character = { - template = foreign_mercenary_template - culture = scope:advanced_culture - faith = scope:advanced_culture.culture_head.faith - location = root.location - gender_female_chance = root_soldier_female_chance - save_scope_as = foreign_mercenary_1 - } - scope:foreign_mercenary_1 = { - add_character_flag = wear_armor - } - create_character = { - template = foreign_mercenary_template - culture = scope:advanced_culture - faith = scope:advanced_culture.culture_head.faith - location = root.location - gender_female_chance = root_soldier_female_chance - save_scope_as = foreign_mercenary_2 - } - scope:foreign_mercenary_2 = { - add_character_flag = wear_armor - } - #save a province to resettle them, if any available - #One to build things in - if = { - limit = { - any_held_title = { - title_tier = county - this != root.capital_county - any_county_province = { - has_holding = no - NOR = { - has_construction_with_flag = temple - has_construction_with_flag = castle - has_construction_with_flag = city - has_construction_with_flag = tribe - } - } - } - } - random_held_title = { - title_tier = county - limit = { - this != root.capital_county - any_county_province = { - has_holding = no - NOR = { - has_construction_with_flag = temple - has_construction_with_flag = castle - has_construction_with_flag = city - has_construction_with_flag = tribe - } - } - } - save_scope_as = resettlement_county - } - } - #One that things can't be built in - else_if = { - limit = { - any_held_title = { - title_tier = county - this != root.capital_county - } - } - random_held_title = { - title_tier = county - limit = { - this != root.capital_county - } - save_scope_as = resettlement_county - } - } - } - - #Try to find a compromise that still lets you keep these skilled Greeks - option = { - trigger = { - OR = { - diplomacy >= high_skill_rating - intrigue >= high_skill_rating - } - } - name = bp2_yearly.6080.a - flavor = bp2_yearly.6080.a.tt - if = { - limit = { - exists = scope:resettlement_county - scope:resettlement_county = { - any_county_province = { - has_holding = no - NOR = { - has_construction_with_flag = temple - has_construction_with_flag = castle - has_construction_with_flag = city - has_construction_with_flag = tribe - } - } - } - } - scope:resettlement_county = { - random_county_province = { - limit = { - has_holding = no - NOR = { - has_construction_with_flag = temple - has_construction_with_flag = castle - has_construction_with_flag = city - has_construction_with_flag = tribe - } - } - if = { - limit = { - scope:advanced_culture.culture_head ?= { - government_has_flag = government_is_tribal - } - } - begin_create_holding = { - type = tribal_holding - refund_cost = { gold = hold_court_holding_cost_half_value } - } - } - else_if = { - limit = { - scope:advanced_culture = { - has_cultural_pillar = ethos_spiritual - } - } - begin_create_holding = { - type = church_holding - refund_cost = { gold = hold_court_holding_cost_half_value } - } - } - else_if = { - limit = { - scope:advanced_culture = { - OR = { - has_cultural_pillar = ethos_bellicose - has_cultural_pillar = ethos_courtly - has_cultural_pillar = ethos_stoic - } - } - } - begin_create_holding = { - type = castle_holding - refund_cost = { gold = hold_court_holding_cost_half_value } - } - } - else = { - begin_create_holding = { - type = city_holding - } - } - } - change_development_level = 1 - set_county_culture = scope:advanced_culture - } - } - else_if = { - limit = { - exists = scope:resettlement_county - } - scope:resettlement_county = { - change_development_level = 2 - change_county_control = major_county_control_gain - set_county_culture = scope:advanced_culture - } - } - else = { - capital_county = { - change_development_level = 1 - } - capital_county = { - change_county_control = major_county_control_gain - } - } - custom_tooltip = bp2_yearly.6080.pop_opinion_modifier - hidden_effect = { - if = { - limit = { - exists = scope:resettlement_county - } - scope:resettlement_county.duchy = { - every_de_jure_county = { - limit = { - NOR = { - culture = scope:advanced_culture - this = scope:resettlement_county - } - holder.top_liege = root - } - add_county_modifier = { - modifier = forcible_resettlement_modifier - years = 10 - } - } - } - } - else = { - capital_county.duchy = { - every_de_jure_county = { - limit = { - NOR = { - culture = scope:advanced_culture - this = root.capital_county - } - holder.top_liege = root - } - add_county_modifier = { - modifier = forcible_resettlement_modifier - years = 10 - } - } - } - } - } - - add_tyranny = medium_tyranny_gain - - # make it possible to get new maa traditions in the tradition event - add_character_flag = foreign_maa_reforms - - custom_tooltip = bp2_yearly.6050.reform_path - random_owned_story = { - type = story_foreign_raised_reformer - change_variable = { - name = reform_counter - add = 1 - } - } - - stress_impact = { - stubborn = medium_stress_impact_gain - wrathful = medium_stress_impact_gain - vengeful = medium_stress_impact_gain - } - - ai_chance = { - base = 0 - } - } - - #Try to capture the noble and disrupt the nascent rebellion - option = { - name = bp2_yearly.6080.b - flavor = bp2_yearly.6080.b.tt - - if = { - limit = { - government_has_flag = government_is_tribal - NOT = { has_realm_law = tribal_authority_3 } - } - increase_tribal_authority_effect = yes - } - # Everyone else increases CA. - else_if = { - limit = { - NOT = { government_has_flag = government_is_tribal } - NOT = { has_realm_law = crown_authority_3 } - } - increase_crown_authority_effect = yes - } - else = { - add_dread = major_dread_gain - } - capital_province = { - add_province_modifier = { - modifier = elite_foreign_guard_modifier - } - } - - custom_tooltip = bp2_yearly.6080.add_both_courtiers - hidden_effect = { - add_courtier = scope:foreign_mercenary_1 - add_courtier = scope:foreign_mercenary_2 - } - - if = { - limit = { - can_set_relation_rival_trigger = { CHARACTER = scope:angry_vassal } - } - scope:angry_vassal = { - set_relation_rival = { - target = root - reason = rival_attacked_dissent - } - } - } - else = { - scope:angry_vassal = { - add_opinion = { - target = root - opinion = -40 - modifier = hate_opinion - } - } - } - - random_owned_story = { - type = story_foreign_raised_reformer - change_variable = { - name = reform_counter - add = 1 - } - } - - duel = { - skills = { martial prowess } - target = scope:angry_vassal - 55 = { #It works well - desc = bp2_yearly.6080.b.success - compare_modifier = { - value = scope:duel_value - multiplier = 3 - } - - send_interface_toast = { - title = bp2_yearly.6080.b.success - left_icon = root - right_icon = scope:angry_vassal - rightfully_imprison_character_less_verbose_effect = { - TARGET = scope:angry_vassal - IMPRISONER = root - } - every_vassal = { - limit = { - culture != scope:advanced_culture - } - custom = custom.every_non_advanced_culture_vassal - add_opinion = { - target = root - modifier = angry_opinion - opinion = -10 - } - } - } - } - 45 = { #It doesn't go well - desc = bp2_yearly.6080.b.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3 - min = -40 - } - send_interface_toast = { - title = bp2_yearly.6080.b.failure - left_icon = root - right_icon = scope:angry_vassal - - scope:angry_vassal = { - start_war = { - casus_belli = refused_liege_demand_war - target = root - } - } - if = { - limit = { - any_targeting_faction = { - exists = yes - NOT = { exists = faction_war } - } - } - add_targeting_factions_discontent = major_discontent_gain - } - add_tyranny = massive_tyranny_gain - add_legitimacy = minor_legitimacy_loss - } - } - } - - custom_tooltip = bp2_yearly.6050.reform_path - - # make it possible to get new maa traditions in the tradition event - add_character_flag = foreign_maa_reforms - - stress_impact = { - forgiving = major_stress_impact_gain - calm = medium_stress_impact_gain - patient = medium_stress_impact_gain - trusting = medium_stress_impact_gain - compassionate = medium_stress_impact_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_vengefulness = 1 - ai_energy = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = forgiving - has_trait = calm - has_trait = patient - has_trait = trusting - has_trait = compassionate - } - } - } - } - - #I am unstoppable. I am changing things. - option = { - name = bp2_yearly.6080.c - flavor = bp2_yearly.6080.c.tt - - if = { - limit = { - government_has_flag = government_is_tribal - NOT = { has_realm_law = tribal_authority_3 } - } - increase_tribal_authority_effect = yes - } - # Everyone else increases CA. - else_if = { - limit = { - NOT = { government_has_flag = government_is_tribal } - NOT = { has_realm_law = crown_authority_3 } - } - increase_crown_authority_effect = yes - } - else = { - add_dread = major_dread_gain - } - capital_province = { - add_province_modifier = { - modifier = elite_foreign_guard_modifier - } - } - custom_tooltip = bp2_yearly.6080.add_both_courtiers - hidden_effect = { - add_courtier = scope:foreign_mercenary_1 - add_courtier = scope:foreign_mercenary_2 - } - custom_tooltip = bp2_yearly.6080.hook_removal_vassals - custom_tooltip = bp2_yearly.6080.hook_removal - custom_tooltip = bp2_yearly.6080.truce_removal - hidden_effect = { - every_vassal = { - limit = { - has_hook = root - is_ai = yes - culture != scope:advanced_culture - } - remove_hook = { target = root } - } - every_vassal = { - limit = { - root = { - has_hook = prev - } - culture != scope:advanced_culture - is_ai = yes - } - root = { - remove_hook = { target = prev} - } - } - - every_vassal = { - limit = { - has_truce = root - culture != scope:advanced_culture - is_ai = yes - } - cancel_truce_both_ways = root - } - - every_vassal = { - limit = { - root = { - has_truce = prev - } - culture != scope:advanced_culture - is_ai = yes - } - root = { - cancel_truce_both_ways = prev - } - } - } - add_legitimacy = major_legitimacy_loss - - custom_tooltip = bp2_yearly.6050.reform_path - random_owned_story = { - type = story_foreign_raised_reformer - change_variable = { - name = reform_counter - add = 1 - } - } - - # make it possible to get new maa traditions in the tradition event - add_character_flag = foreign_maa_reforms - - stress_impact = { - just = major_stress_impact_gain - fickle = medium_stress_impact_gain - content = medium_stress_impact_gain - craven = medium_stress_impact_gain - humble = medium_stress_impact_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_boldness = 1 - ai_honor = -1 - } - modifier = { - factor = 0 - OR = { - has_trait = just - has_trait = fickle - has_trait = content - has_trait = craven - has_trait = humble - } - } - } - } - - #I don't want to see violence break out between my people - option = { - name = bp2_yearly.6080.d - flavor = bp2_yearly.6080.d.tt - - add_character_modifier = { - modifier = common_noble_cause_modifier - years = 30 - } - add_prestige = medium_prestige_gain - - custom_tooltip = bp2_yearly.6050.reaffirmation_path - random_owned_story = { - type = story_foreign_raised_reformer - change_variable = { - name = reaffirmation_counter - add = 1 - } - } - - add_character_flag = rejecting_foreign_maa_reforms - - stress_impact = { - vengeful = major_stress_impact_gain - sadistic = medium_stress_impact_gain - arbitrary = medium_stress_impact_gain - ambitious = medium_stress_impact_gain - wrathful = medium_stress_impact_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_compassion = 1 - ai_honor = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = vengeful - has_trait = sadistic - has_trait = arbitrary - has_trait = ambitious - has_trait = wrathful - } - } - } - } - - after = { - if = { - limit = { - NOR = { - scope:foreign_mercenary_1 ?= { - is_courtier_of = root - } - scope:foreign_mercenary_2 ?= { - is_courtier_of = root - } - } - } - scope:foreign_mercenary_1 = { - silent_disappearance_effect = yes - } - scope:foreign_mercenary_2 = { - silent_disappearance_effect = yes - } - } - else = { - scope:foreign_mercenary_1 = { - remove_character_flag = wear_armor - } - scope:foreign_mercenary_2 = { - remove_character_flag = wear_armor - } - } - } -} - -##################################### -# A Birthright, Renewed # -# by Jason Cantalini # -# 6090 # -##################################### - -scripted_trigger bp2_yearly_6090_vassal = { - is_imprisoned = no - age > 13 - is_at_war = no - culture = root.culture -} - -# You've chosen enough reaffirmation options to engender disinterest from the admired culture and the devotion of your people -bp2_yearly.6090 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.6090.t - desc = { - desc = bp2_yearly.6090.desc - first_valid = { - triggered_desc = { - trigger = { - exists = scope:advanced_court_owner - } - desc = bp2_yearly.6090.burn_letters - } - desc = bp2_yearly.6090.burn_else - } - triggered_desc = { - trigger = { - has_character_flag = had_event_bp2_yearly_6070 - } - desc = bp2_yearly.6090.reaffirm_social - } - triggered_desc = { - trigger = { - has_character_flag = had_event_bp2_yearly_6050 - } - desc = bp2_yearly.6090.reaffirm_realm - } - triggered_desc = { - trigger = { - has_character_flag = had_event_bp2_yearly_6060 - } - desc = bp2_yearly.6090.reaffirm_ritual - } - triggered_desc = { - trigger = { - has_character_flag = had_event_bp2_yearly_6080 - } - desc = bp2_yearly.6090.reaffirm_maa - } - desc = bp2_yearly.6090.outro - } - - theme = vassal - override_background = { - reference = bp1_bonfire - } - left_portrait = { - character = root - animation = sword_coup_degrace - } - - right_portrait = { - character = scope:celebrating_noble - animation = throne_room_cheer_2 - } - - lower_right_portrait = { - character = scope:advanced_court_owner - } - - immediate = { - play_music_cue = "mx_cue_epic_sacral_moment" - add_character_flag = had_event_bp2_yearly_6090 - remove_variable = adopted_cultural_fashion - save_scope_as = root_scope - if = { - limit = { - any_powerful_vassal = { - bp2_yearly_6090_vassal = yes - opinion = { - target = root - value >= 0 - } - } - } - random_powerful_vassal = { - limit = { - bp2_yearly_6090_vassal = yes - opinion = { - target = root - value >= 0 - } - } - save_scope_as = celebrating_noble - } - } - else_if = { - limit = { - any_vassal = { - bp2_yearly_6090_vassal = yes - opinion = { - target = root - value >= 0 - } - } - } - random_vassal = { - limit = { - bp2_yearly_6090_vassal = yes - opinion = { - target = root - value >= 0 - } - } - save_scope_as = celebrating_noble - } - } - else_if = { - limit = { - any_powerful_vassal = { - bp2_yearly_6090_vassal = yes - } - } - random_powerful_vassal = { - limit = { - bp2_yearly_6090_vassal = yes - } - save_scope_as = celebrating_noble - } - } - else_if = { - limit = { - any_vassal = { - bp2_yearly_6090_vassal = yes - } - } - random_vassal = { - limit = { - bp2_yearly_6090_vassal = yes - } - save_scope_as = celebrating_noble - } - } - else_if = { - limit = { - any_courtier = { - bp2_yearly_6090_vassal = yes - opinion = { - target = root - value >= 0 - } - } - } - random_courtier = { - limit = { - bp2_yearly_6090_vassal = yes - opinion = { - target = root - value >= 0 - } - } - save_scope_as = celebrating_noble - } - } - else_if = { - limit = { - any_courtier = { - bp2_yearly_6090_vassal = yes - } - } - random_courtier = { - limit = { - bp2_yearly_6090_vassal = yes - } - save_scope_as = celebrating_noble - } - } - var:advanced_culture = { - save_scope_as = advanced_culture - } - var:childhood_location = { - save_scope_as = childhood_location - } - scope:advanced_culture.culture_head = { - save_scope_as = advanced_court_owner - } - if = { - limit = { - culture.culture_head = root - } - culture = { - change_cultural_acceptance = { - target = scope:advanced_culture - value = low_negative_culture_acceptance - desc = cultural_acceptance_loss_rejected_influence - } - } - } - - give_nickname = nick_the_true_culture - create_character_memory = { - type = reaffirmed_cultural_identity - participants = { other_culture_head = scope:advanced_court_owner } - } - } - - #Your culture is still born anew - as united conquerors! - option = { - name = { - trigger = { - culture = { - has_cultural_pillar = ethos_courtly - } - } - text = bp2_yearly.6090.a.virtue - } - name = { - trigger = { - culture = { - OR = { - has_cultural_pillar = ethos_bureaucratic - has_cultural_pillar = ethos_egalitarian - } - } - } - text = bp2_yearly.6090.a.governed - } - name = { - trigger = { - culture = { - has_cultural_pillar = ethos_communal - } - } - text = bp2_yearly.6090.a.kin - } - - name = { - trigger = { - culture = { - has_cultural_pillar = ethos_bellicose - } - } - text = bp2_yearly.6090.a.bow - } - name = { - trigger = { - culture = { - has_cultural_pillar = ethos_spiritual - } - } - text = bp2_yearly.6090.a.zeal - } - name = { - trigger = { - culture = { - NOR = { - has_cultural_pillar = ethos_courtly - has_cultural_pillar = ethos_egalitarian - has_cultural_pillar = ethos_communal - has_cultural_pillar = ethos_bureaucratic - has_cultural_pillar = ethos_bellicose - has_cultural_pillar = ethos_spiritual - } - } - } - text = bp2_yearly.6090.a.strength - } - flavor = bp2_yearly.6090.a.tt - - add_character_modifier = { - modifier = uniter_and_conqueror_modifier - } - if = { - limit = { - has_character_flag = used_lifetime_invasion - } - custom_tooltip = bp2_yearly.6090.tribal_invasion - } - else_if = { - limit = { - NOR = { - government_has_flag = government_is_tribal - faith = { - has_doctrine_parameter = invasion_cb_enabled - } - } - } - custom_tooltip = bp2_yearly.6090.non_tribal_invasion - } - else_if = { - limit = { - NOT = { - has_trait = flexible_leader - } - } - add_trait = flexible_leader - } - else_if = { - limit = { - NOT = { - has_trait = holy_warrior - } - } - add_trait = holy_warrior - } - else_if = { - limit = { - NOT = { - has_trait = aggressive_attacker - } - } - add_trait = aggressive_attacker - } - else_if = { - limit = { - NOT = { - has_trait = organizer - } - } - add_trait = organizer - } - custom_tooltip = bp2_yearly.6090.no_invasion_req - - #unlock invasion cb - if = { - limit = { - has_character_flag = used_lifetime_invasion - } - remove_character_flag = used_lifetime_invasion - } - add_character_flag = bp2_inspired_culture_for_conquest - - if = { - limit = { - highest_held_title_tier >= tier_empire - } - spawn_army = { - name = event_troop_default_name - levies = 4264 - location = root.capital_province - origin = root.capital_province - } - } - else_if = { - limit = { - highest_held_title_tier = tier_kingdom - } - spawn_army = { - name = event_troop_default_name - levies = 3126 - location = root.capital_province - origin = root.capital_province - } - } - else_if = { - limit = { - highest_held_title_tier = tier_duchy - } - spawn_army = { - name = event_troop_default_name - levies = 2123 - location = root.capital_province - origin = root.capital_province - } - } - else = { - spawn_army = { - name = event_troop_default_name - levies = 1067 - location = root.capital_province - origin = root.capital_province - } - } - - add_prestige = medium_prestige_gain - - if = { - limit = { - exists = scope:advanced_court_owner - can_set_relation_rival_trigger = { CHARACTER = scope:advanced_court_owner } - scope:advanced_court_owner = { - is_ai = yes - } - } - set_relation_rival = { - target = scope:advanced_court_owner - reason = rival_rejected_culture_influence - } - } - - if = { - limit = { - culture.culture_head = root - } - trigger_event = { - id = bp2_yearly.6091 - days = { 10 20 } - } - } - - stress_impact = { - ambitious = minor_stress_impact_loss - greedy = miniscule_stress_impact_loss - arrogant = miniscule_stress_impact_loss - content = major_stress_impact_gain - craven = major_stress_impact_gain - humble = major_stress_impact_gain - compassionate = minor_stress_impact_gain - forgiving = minor_stress_impact_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_vengefulness = 1 - ai_boldness = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = content - has_trait = craven - has_trait = humble - has_trait = forgiving - has_trait = compassionate - } - } - } - } - - #Focus on preserving your family and your culture - option = { - name = bp2_yearly.6090.b - flavor = bp2_yearly.6090.b.tt - - add_character_modifier = { - modifier = a_cultures_great_defender_modifier - } - - every_held_title = { - title_tier = county - limit = { - culture = root.culture - } - custom = custom.every_same_culture_held_county - add_county_modifier = { - modifier = inspired_defenders_modifier - years = 30 - } - } - - dynasty = { - add_dynasty_prestige = massive_dynasty_prestige_gain - } - - if = { - limit = { - culture.culture_head = root - } - trigger_event = { - id = bp2_yearly.6091 - days = { 10 20 } - } - } - - stress_impact = { - compassionate = minor_stress_impact_loss - content = minor_stress_impact_loss - paranoid = minor_stress_impact_loss - ambitious = major_stress_impact_gain - greedy = medium_stress_impact_gain - vengeful = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_compassion = 1 - ai_energy = -1 - } - modifier = { - factor = 0 - OR = { - has_trait = ambitious - has_trait = arrogant - has_trait = greedy - has_trait = vengeful - } - } - } - } - - after = { - random_owned_story = { - type = story_foreign_raised_reformer - end_story = yes - } - } -} - -##################################### -# A People Immutable # -# by Jason Cantalini # -# 6091 # -##################################### - -# Informing you which traditions are now cheaper -bp2_yearly.6091 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.6091.t - desc = { - desc = bp2_yearly.6091 - first_valid = { - triggered_desc = { - trigger = { - has_character_modifier = uniter_and_conqueror_modifier - } - desc = bp2_yearly.6091.dominance - } - desc = bp2_yearly.6091.defense - } - } - - theme = vassal - override_background = { - reference = throne_room - } - left_portrait = { - character = root - animation = chaplain - } - - trigger = { - culture.culture_head = root - is_imprisoned = no - is_incapable = no - OR = { - has_character_modifier = uniter_and_conqueror_modifier - has_character_modifier = a_cultures_great_defender_modifier - } - NOT = { has_character_flag = had_event_bp2_yearly_6091 } - } - - immediate = { - add_character_flag = had_event_bp2_yearly_6091 - save_scope_as = root_scope - } - - #Your culture is still born anew - as united conquerors! - option = { - name = bp2_yearly.6091.a - flavor = bp2_yearly.6091.a.tt - - if = { - limit = { - has_character_modifier = uniter_and_conqueror_modifier - } - custom_tooltip = bp2_yearly.6091.aggressive - culture = { - set_variable = aggressive_traditionalist_discount - } - } - - if = { - limit = { - has_character_modifier = a_cultures_great_defender_modifier - } - custom_tooltip = bp2_yearly.6091.defensive - culture = { - set_variable = defensive_traditionalist_discount - } - } - - stress_impact = { - } - - ai_chance = { - base = 10 - } - } -} - -##################################### -# My Bulgarians, Reborn! # -# by Jason Cantalini # -# 6100 # -##################################### - -# You've chosen enough reform options to complete your series of reforms! -bp2_yearly.6100 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.6100.t - desc = { - desc = bp2_yearly.6100.desc - triggered_desc = { - trigger = { - has_character_flag = foreign_social_reforms - } - desc = bp2_yearly.6100.reform_court - } - triggered_desc = { - trigger = { - has_character_flag = foreign_maa_reforms - } - desc = bp2_yearly.6100.reform_maa - } - triggered_desc = { - trigger = { - has_character_flag = foreign_ritual_reforms - } - desc = bp2_yearly.6100.reform_faith - } - triggered_desc = { - trigger = { - has_character_flag = foreign_realm_reforms - } - desc = bp2_yearly.6100.reform_realm - } - desc = bp2_yearly.6100.outro - } - - theme = realm - override_background = { - reference = throne_room - } - left_portrait = { - character = root - animation = wedding_happy_cry - } - lower_right_portrait = { - character = scope:advanced_court_owner - } - - trigger = { - NOT = { has_character_flag = had_event_bp2_yearly_6100 } - } - - immediate = { - play_music_cue = "mx_cue_epic_sacral_moment" - add_character_flag = had_event_bp2_yearly_6100 - save_scope_as = root_scope - var:advanced_culture = { - save_scope_as = advanced_culture - } - var:childhood_location = { - save_scope_as = childhood_location - } - scope:advanced_culture.culture_head = { - save_scope_as = advanced_court_owner - } - if = { - limit = { - culture.culture_head = root - } - culture = { - change_cultural_acceptance = { - target = scope:advanced_culture - value = medium_positive_culture_acceptance - desc = cultural_acceptance_gain_completed_reform - } - } - if = { - limit = { - culture = { - can_get_innovation_from = scope:advanced_culture - } - } - hidden_effect = { - culture = { - get_random_innovation_from = scope:advanced_culture - } - } - } - if = { - limit = { - culture = { - can_get_innovation_from = scope:advanced_culture - } - } - custom_tooltip = bp2_yearly.6100.gained_2_innovations - hidden_effect = { - culture = { - get_random_innovation_from = scope:advanced_culture - } - } - } - else = { - custom_tooltip = bp2_yearly.6100.gained_1_innovation - } - } - give_nickname = nick_the_reformer - create_character_memory = { - type = reformed_culture_and_realm - participants = { other_culture_head = scope:advanced_court_owner } - } - } - - #Spend a final investment to make sure your reforms reach your whole culture - option = { - name = bp2_yearly.6100.a - flavor = bp2_yearly.6100.a.tt - - if = { - limit = { - culture.culture_head = root - culture = { - can_get_innovation_from = scope:advanced_culture - } - } - hidden_effect = { - culture = { - get_random_innovation_from = scope:advanced_culture - } - } - if = { - limit = { - culture = { - can_get_innovation_from = scope:advanced_culture - } - } - custom_tooltip = bp2_yearly.6100.2_more_innovations - hidden_effect = { - culture = { - get_random_innovation_from = scope:advanced_culture - } - } - } - else = { - custom_tooltip = bp2_yearly.6100.1_more_innovation - } - remove_treasury_or_gold = massive_treasury_or_gold_value - add_legitimacy = major_legitimacy_loss - } - - every_held_title = { - title_tier = county - limit = { - culture = root.culture - } - custom = custom.every_same_culture_held_county - add_county_modifier = { - modifier = flourishing_settlements_modifier - years = 50 - } - } - - dynasty = { - add_dynasty_prestige = major_dynasty_prestige_gain - } - - add_prestige = monumental_prestige_loss - - - stress_impact = { - content = major_stress_impact_gain - fickle = minor_stress_impact_gain - greedy = minor_stress_impact_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_boldness = 1 - ai_energy = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = content - has_trait = fickle - has_trait = greedy - } - } - } - } - - #You've already done enough - option = { - name = bp2_yearly.6100.b - flavor = bp2_yearly.6100.b.tt - - capital_county = { - add_county_modifier = { - modifier = flourishing_settlements_modifier - years = 50 - } - } - - dynasty = { - add_dynasty_prestige = medium_dynasty_prestige_gain - } - - stress_impact = { - ambitious = medium_stress_impact_gain - stubborn = medium_stress_impact_gain - diligent = minor_stress_impact_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_energy = -1 - ai_zeal = -1 - } - modifier = { - factor = 0 - OR = { - has_trait = ambitious - has_trait = stubborn - has_trait = diligent - } - } - } - } - - after = { - random_owned_story = { - type = story_foreign_raised_reformer - end_story = yes - } - } -} - -##################################### -# Foreign Reform # -# by Jason Cantalini # -# 6110 # -##################################### - -# Recurring tradition gain event, changing culture to be like foreign one -bp2_yearly.6110 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.6110.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - has_character_flag = considering_reform_realm - } - desc = bp2_yearly.6110.realm - } - triggered_desc = { - trigger = { - has_character_flag = considering_reform_maa - } - desc = bp2_yearly.6110.combat - } - triggered_desc = { - trigger = { - has_character_flag = considering_reform_social - } - desc = bp2_yearly.6110.social - } - triggered_desc = { - trigger = { - has_character_flag = considering_reform_ritual - } - desc = bp2_yearly.6110.ritual - } - desc = bp2_yearly.6110.regional - } - } - - theme = diplomacy - override_background = { - trigger = { - has_character_flag = considering_reform_realm - } - reference = relaxing_room - } - override_background = { - trigger = { - has_character_flag = considering_reform_maa - } - reference = courtyard - } - override_background = { - trigger = { - has_character_flag = considering_reform_ritual - } - reference = temple - } - override_background = { - trigger = { - has_character_flag = considering_reform_social - } - reference = market - } - override_background = { - trigger = { - has_character_flag = considering_reform_regional - } - reference = throne_room - } - left_portrait = { - character = root - triggered_animation = { - trigger = { - has_character_flag = considering_reform_realm - } - animation = worry - } - triggered_animation = { - trigger = { - has_character_flag = considering_reform_maa - } - animation = throne_room_two_handed_passive_1 - } - triggered_animation = { - trigger = { - has_character_flag = considering_reform_ritual - } - animation = personality_cynical - } - triggered_animation = { - trigger = { - has_character_flag = considering_reform_social - } - animation = stress - } - triggered_animation = { - trigger = { - has_character_flag = considering_reform_regional - } - animation = thinking - } - } - - trigger = { - has_bp2_dlc_trigger = yes - is_landed = yes - is_imprisoned = no - is_incapable = no - is_at_war = no - - culture.culture_head = { - this = root - } - OR = { - NOT = { exists = var:new_traditions } - #Have you gained the max # of traditions (3) from this cycle already? - var:new_traditions < 3 - } - exists = var:advanced_culture - var:advanced_culture = { - save_temporary_scope_as = temp_advanced_culture - } - - culture = { - free_tradition_slot > 0 - } - - OR = { - AND = { - has_character_flag = foreign_realm_reforms - scope:temp_advanced_culture = { - any_tradition = { - root = { - can_embrace_tradition = { - tradition = prev - } - } - has_tradition_category = realm - NOR = { - root = { - is_target_in_variable_list = { - name = rejected_traditions - target = prev - } - } - root.culture = { - has_cultural_tradition = prev - } - } - } - } - } - AND = { - has_character_flag = foreign_maa_reforms - scope:temp_advanced_culture = { - any_tradition = { - root = { - can_embrace_tradition = prev - } - has_tradition_category = combat - NOR = { - root = { - is_target_in_variable_list = { - name = rejected_traditions - target = prev - } - } - root.culture = { - has_cultural_tradition = prev - } - } - } - } - } - AND = { - has_character_flag = foreign_social_reforms - scope:temp_advanced_culture = { - any_tradition = { - root = { - can_embrace_tradition = { - tradition = prev - } - } - has_tradition_category = societal - NOR = { - root = { - is_target_in_variable_list = { - name = rejected_traditions - target = prev - } - } - root.culture = { - has_cultural_tradition = prev - } - } - } - } - } - AND = { - has_character_flag = foreign_ritual_reforms - scope:temp_advanced_culture = { - any_tradition = { - root = { - can_embrace_tradition = { - tradition = prev - } - } - has_tradition_category = ritual - NOR = { - root = { - is_target_in_variable_list = { - name = rejected_traditions - target = prev - } - } - root.culture = { - has_cultural_tradition = prev - } - } - } - } - } - #Regional traditions aren't triggered by another event, no character flag needed - THEY ARE TOO ICONIC - AND = { - scope:temp_advanced_culture = { - any_tradition = { - root = { - can_embrace_tradition = { - tradition = prev - } - } - has_tradition_category = regional - NOR = { - root = { - is_target_in_variable_list = { - name = rejected_traditions - target = prev - } - } - root.culture = { - has_cultural_tradition = prev - } - } - } - } - } - } - } - - immediate = { - if = { - limit = { - NOT = { exists = var:new_traditions } - } - set_variable = { - name = new_traditions - value = 0 - } - } - save_scope_as = root_scope - var:advanced_culture = { - save_scope_as = advanced_culture - } - var:childhood_location = { - save_scope_as = childhood_location - } - #Save the shiny new traditions - bp2_save_traditions_to_consider_effect = yes - } - - #We do this thing now too - option = { - name = bp2_yearly.6110.a - - culture = { - add_culture_tradition = scope:considered_tradition_1 - } - - add_to_variable_list = { - name = new_traditions - target = scope:considered_tradition_1 - } - scope:advanced_culture = { - change_cultural_acceptance = { - target = root.culture - value = miniscule_positive_culture_acceptance - desc = cultural_acceptance_gain_adapted_tradition - } - } - - if = { - limit = { - NOR = { - has_character_modifier = introduced_foreign_custom_modifier - has_character_modifier = repeated_foreign_reforms_modifier - has_character_modifier = assault_on_tradition_modifier - } - } - add_character_modifier = { - modifier = introduced_foreign_custom_modifier - years = 10 - } - } - else_if = { - limit = { - has_character_modifier = introduced_foreign_custom_modifier - } - remove_character_modifier = introduced_foreign_custom_modifier - add_character_modifier = { - modifier = repeated_foreign_reforms_modifier - years = 10 - } - } - else_if = { - limit = { - has_character_modifier = repeated_foreign_reforms_modifier - } - add_character_modifier = { - modifier = assault_on_tradition_modifier - years = 10 - } - } - - custom_tooltip = bp2_yearly.6050.reform_path - random_owned_story = { - type = story_foreign_raised_reformer - change_variable = { - name = reform_counter - add = 1 - } - } - - stress_impact = { - base = medium_stress_impact_gain - } - ai_chance = { - base = 10 - ai_value_modifier = { - ai_energy = 1 - ai_boldness = 1 - } - } - } - - #We do this thing... instead of something we used to do - option = { - trigger = { - exists = scope:considered_tradition_2 - } - name = bp2_yearly.6110.b - - culture = { - add_culture_tradition = scope:considered_tradition_2 - } - - add_to_variable_list = { - name = new_traditions - target = scope:considered_tradition_2 - } - scope:advanced_culture = { - change_cultural_acceptance = { - target = root.culture - value = miniscule_positive_culture_acceptance - desc = cultural_acceptance_gain_adapted_tradition - } - } - - if = { - limit = { - NOR = { - has_character_modifier = introduced_foreign_custom_modifier - has_character_modifier = repeated_foreign_reforms_modifier - has_character_modifier = assault_on_tradition_modifier - } - } - add_character_modifier = { - modifier = introduced_foreign_custom_modifier - years = 10 - } - } - else_if = { - limit = { - has_character_modifier = introduced_foreign_custom_modifier - } - remove_character_modifier = introduced_foreign_custom_modifier - add_character_modifier = { - modifier = repeated_foreign_reforms_modifier - years = 10 - } - } - else_if = { - limit = { - has_character_modifier = repeated_foreign_reforms_modifier - } - add_character_modifier = { - modifier = assault_on_tradition_modifier - years = 10 - } - } - - custom_tooltip = bp2_yearly.6050.reform_path - random_owned_story = { - type = story_foreign_raised_reformer - change_variable = { - name = reform_counter - add = 1 - } - } - - stress_impact = { - base = medium_stress_impact_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_energy = 1 - ai_boldness = 1 - } - } - } - - #We do this thing... instead of some other thing we used to do - option = { - trigger = { - exists = scope:considered_tradition_3 - } - name = bp2_yearly.6110.c - - culture = { - add_culture_tradition = scope:considered_tradition_3 - } - - add_to_variable_list = { - name = new_traditions - target = scope:considered_tradition_3 - } - scope:advanced_culture = { - change_cultural_acceptance = { - target = root.culture - value = miniscule_positive_culture_acceptance - desc = cultural_acceptance_gain_adapted_tradition - } - } - - if = { - limit = { - NOR = { - has_character_modifier = introduced_foreign_custom_modifier - has_character_modifier = repeated_foreign_reforms_modifier - has_character_modifier = assault_on_tradition_modifier - } - } - add_character_modifier = { - modifier = introduced_foreign_custom_modifier - years = 10 - } - } - else_if = { - limit = { - has_character_modifier = introduced_foreign_custom_modifier - } - remove_character_modifier = introduced_foreign_custom_modifier - add_character_modifier = { - modifier = repeated_foreign_reforms_modifier - years = 10 - } - } - else_if = { - limit = { - has_character_modifier = repeated_foreign_reforms_modifier - } - add_character_modifier = { - modifier = assault_on_tradition_modifier - years = 10 - } - } - - custom_tooltip = bp2_yearly.6050.reform_path - random_owned_story = { - type = story_foreign_raised_reformer - change_variable = { - name = reform_counter - add = 1 - } - } - - stress_impact = { - base = medium_stress_impact_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_energy = 1 - ai_boldness = 1 - } - } - } - - #We do this thing... instead of some other thing we used to do - option = { - trigger = { - exists = scope:considered_tradition_4 - } - name = bp2_yearly.6110.d - - culture = { - add_culture_tradition = scope:considered_tradition_4 - } - - add_to_variable_list = { - name = new_traditions - target = scope:considered_tradition_4 - } - scope:advanced_culture = { - change_cultural_acceptance = { - target = root.culture - value = miniscule_positive_culture_acceptance - desc = cultural_acceptance_gain_adapted_tradition - } - } - - if = { - limit = { - NOR = { - has_character_modifier = introduced_foreign_custom_modifier - has_character_modifier = repeated_foreign_reforms_modifier - has_character_modifier = assault_on_tradition_modifier - } - } - add_character_modifier = { - modifier = introduced_foreign_custom_modifier - years = 10 - } - } - else_if = { - limit = { - has_character_modifier = introduced_foreign_custom_modifier - } - remove_character_modifier = introduced_foreign_custom_modifier - add_character_modifier = { - modifier = repeated_foreign_reforms_modifier - years = 10 - } - } - else_if = { - limit = { - has_character_modifier = repeated_foreign_reforms_modifier - } - add_character_modifier = { - modifier = assault_on_tradition_modifier - years = 10 - } - } - - custom_tooltip = bp2_yearly.6050.reform_path - random_owned_story = { - type = story_foreign_raised_reformer - change_variable = { - name = reform_counter - add = 1 - } - } - - stress_impact = { - base = medium_stress_impact_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_energy = 1 - ai_boldness = 1 - } - } - } - - #This is not something we want to start doing - option = { - name = bp2_yearly.6110.e - flavor = bp2_yearly.6110.e.tt - - add_to_variable_list = { - name = rejected_traditions - target = scope:considered_tradition_1 - } - add_to_variable_list = { - name = rejected_traditions - target = scope:considered_tradition_2 - } - add_to_variable_list = { - name = rejected_traditions - target = scope:considered_tradition_3 - } - add_to_variable_list = { - name = rejected_traditions - target = scope:considered_tradition_4 - } - - stress_impact = { - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = -1 - ai_boldness = -1 - } - } - } - - after = { - if = { - limit = { - has_character_flag = considering_reform_realm - } - remove_character_flag = considering_reform_realm - } - if = { - limit = { - has_character_flag = considering_reform_maa - } - remove_character_flag = considering_reform_maa - } - if = { - limit = { - has_character_flag = considering_reform_social - } - remove_character_flag = considering_reform_social - } - if = { - limit = { - has_character_flag = considering_reform_ritual - } - remove_character_flag = considering_reform_ritual - } - if = { - limit = { - has_character_flag = considering_reform_regional - } - remove_character_flag = considering_reform_regional - } - } -} - -##################################### -# Where Bonds Are Tested # -# by Jason Cantalini # -# 6120 # -##################################### - -# Your hostage and his hostage-giver could be reunited... if you allow it -bp2_yearly.6120 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.6120.t - desc = bp2_yearly.6120.desc - - theme = hostage - override_background = { - trigger = { - OR = { - location = root.capital_province - location = scope:hostage_giver.capital_province - } - } - reference = corridor_day - } - override_background = { - trigger = { - NOR = { - location = root.capital_province - location = scope:hostage_giver.capital_province - } - } - reference = terrain_travel - } - left_portrait = { - character = root - animation = personality_dishonorable - } - right_portrait = { - character = scope:hostage - triggered_animation = { - trigger = { - scope:hostage = { age < 10 } - } - animation = clutching_toy - } - animation = personality_compassionate - } - lower_right_portrait = { - character = scope:hostage_giver - } - - cooldown = { - years = 5 - } - - trigger = { - has_bp2_dlc_trigger = yes - is_adult = yes - is_landed_or_landless_administrative = yes - is_imprisoned = no - is_incapable = no - any_warden_hostage = { - age > 3 - age <= 20 - age < root.age - is_incapable = no - is_imprisoned = no - exists = home_court - is_close_or_extended_family_of = home_court - opinion = { - target = home_court - value > -30 - } - home_court = { - age > 12 - is_incapable = no - is_imprisoned = no - NOT = { is_at_war_with = root } - } - location = home_court.location - location = root.location - NOT = { has_character_flag = had_event_bp2_yearly_6120 } - } - NOT = { - location = { - NOT = { is_raided = no } - } - } - } - - immediate = { - save_scope_as = warden - random_warden_hostage = { - limit = { - age > 3 - age <= 20 - is_incapable = no - is_imprisoned = no - exists = home_court - is_close_or_extended_family_of = home_court - opinion = { - target = home_court - value > -30 - } - home_court = { - age > 12 - is_incapable = no - is_imprisoned = no - } - location = home_court.location - location = root.location - NOT = { has_character_flag = had_event_bp2_yearly_6120 } - } - save_scope_as = hostage - home_court ?= { - save_scope_as = hostage_giver - } - } - scope:hostage = { add_character_flag = had_event_bp2_yearly_6120 } - } - #You are a sweetheart and are totally cool with this - option = { - trigger = { - OR = { - OR = { - has_trait = generous - has_trait = compassionate - has_trait = trusting - has_trait = content - has_trait = humble - has_trait = just - } - NOT = { - can_add_hook = { - type = favor_hook - target = scope:hostage_giver - } - } - } - } - name = bp2_yearly.6120.a - flavor = bp2_yearly.6120.a.tt - - add_character_flag = allowing_hostage_reunion - - scope:hostage = { - save_scope_as = right_portrait_character - } - save_scope_as = lower_portrait_character - - scope:hostage = { - add_opinion = { - target = root - opinion = 20 - modifier = grateful_opinion - } - } - scope:hostage_giver = { - add_opinion = { - target = root - opinion = 20 - modifier = grateful_opinion - } - } - - stress_impact = { - sadistic = medium_stress_impact_gain - callous = medium_stress_impact_gain - paranoid = medium_stress_impact_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_compassion = 1 - ai_vengefulness = -1 - } - modifier = { - factor = 0 - OR = { - has_trait = sadistic - has_trait = callous - has_trait = paranoid - } - } - } - } - #You're a jerk and consider letting the relatives meet a favor on your part - option = { - trigger = { - can_add_hook = { - type = favor_hook - target = scope:hostage_giver - } - NOR = { - has_trait = generous - has_trait = compassionate - has_trait = trusting - has_trait = content - has_trait = humble - has_trait = just - } - } - name = bp2_yearly.6120.b - flavor = bp2_yearly.6120.b.tt - - save_scope_as = right_portrait_character - scope:hostage = { - save_scope_as = lower_portrait_character - } - - add_character_flag = hook_for_reunion - - custom_tooltip = bp2_yearly.6120.hook - custom_tooltip = bp2_yearly.6120.hook_acceptance - - scope:hostage_giver = { - add_opinion = { - target = root - opinion = -20 - modifier = angry_opinion - } - } - - stress_impact = { - generous = major_stress_impact_gain - compassionate = medium_stress_impact_gain - content = minor_stress_impact_gain - just = minor_stress_impact_gain - forgiving = medium_stress_impact_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_greed = 1 - ai_boldness = 1 - } - modifier = { - factor = 2 - scope:hostage_giver = { - ai_compassion >= low_positive_ai_value - } - } - modifier = { - factor = 0 - OR = { - has_trait = forgiving - has_trait = compassionate - has_trait = content - has_trait = just - has_trait = forgiving - scope:hostage_giver = { - ai_compassion <= low_negative_ai_value - } - } - } - } - } - #You will try to outshine the hostage's relative in the encounter, affirming you've replaced them - option = { - name = bp2_yearly.6120.c - flavor = bp2_yearly.61020.c.tt - - scope:hostage = { - save_scope_as = right_portrait_character - } - save_scope_as = lower_portrait_character - - add_character_flag = intruding_on_reunion - - duel = { - skill = diplomacy - target = scope:hostage_giver - 45 = { #It works well - desc = bp2_yearly.6120.c.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - - send_interface_toast = { - title = bp2_yearly.6120.c.success - left_icon = root - right_icon = scope:hostage_giver - scope:hostage_giver = { - add_opinion = { - target = root - opinion = 20 - modifier = grateful_opinion - } - } - progress_towards_friend_effect = { - CHARACTER = scope:hostage - OPINION = 30 - REASON = friend_love_more_than_home_court - } - } - } - 55 = { #It doesn't go well - desc = bp2_yearly.6120.c.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - send_interface_toast = { - title = bp2_yearly.6120.c.failure - left_icon = root - right_icon = scope:hostage_giver - scope:hostage = { - add_opinion = { - target = root - opinion = -20 - modifier = annoyed_opinion - } - } - scope:hostage_giver = { - add_opinion = { - target = root - opinion = -20 - modifier = annoyed_opinion - } - } - } - } - } - - stress_impact = { - shy = major_stress_impact_gain - content = minor_stress_impact_gain - honest = minor_stress_impact_gain - humble = minor_stress_impact_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_sociability = 1 - ai_energy = 1 - } - modifier = { - factor = 2 - diplomacy >= 15 - } - modifier = { - factor = 0 - OR = { - has_trait = shy - has_trait = content - has_trait = honest - has_trait = humble - diplomacy < 5 - } - } - modifier = { - factor = 0.5 - diplomacy <= 10 - } - } - } - #Contact with someone who's given you to me is forbidden - option = { - name = bp2_yearly.6120.d - flavor = bp2_yearly.6120.d.tt - - save_scope_as = right_portrait_character - scope:hostage = { - save_scope_as = lower_portrait_character - } - - add_character_flag = forbidding_reunion - - add_dread = minor_dread_gain - scope:hostage = { - add_opinion = { - target = root - opinion = -30 - modifier = angry_opinion - } - add_stress = medium_stress_impact_gain - random = { - chance = 10 - increase_wounds_effect = { REASON = beaten } - } - } - scope:hostage_giver = { - add_opinion = { - target = root - opinion = -30 - modifier = angry_opinion - } - } - - stress_impact = { - trusting = major_stress_impact_gain - compassionate = medium_stress_impact_gain - generous = medium_stress_impact_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_boldness = -1 - ai_compassion = -1 - } - modifier = { - factor = 0 - OR = { - has_trait = trusting - has_trait = compassionate - has_trait = generous - } - } - } - } - after = { - scope:hostage_giver = { - trigger_event = bp2_yearly.6121 - } - } -} - -##################################### -# The Forgone Son # -# by Jason Cantalini # -# 6121 # -##################################### - -#You might be reunited with a hostage you gave away -bp2_yearly.6121 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.6121.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - scope:warden = { - has_character_flag = allowing_hostage_reunion - } - } - desc = bp2_yearly.6121.reunion - } - triggered_desc = { - trigger = { - scope:warden = { - has_character_flag = intruding_on_reunion - } - - } - desc = bp2_yearly.6121.intrusion - } - triggered_desc = { - trigger = { - scope:warden = { - has_character_flag = hook_for_reunion - } - } - desc = bp2_yearly.6121.hook - } - triggered_desc = { - trigger = { - scope:warden = { - has_character_flag = forbidding_reunion - } - } - desc = bp2_yearly.6121.forbidden - } - } - } - - theme = hostage - override_background = { - trigger = { - OR = { - location = root.capital_province - location = scope:hostage_giver.capital_province - } - } - reference = throne_room - } - override_background = { - trigger = { - NOR = { - location = root.capital_province - location = scope:hostage_giver.capital_province - } - } - reference = terrain_travel - } - left_portrait = { - character = root - triggered_animation = { - trigger = { - scope:warden = { - OR = { - has_character_flag = allowing_hostage_reunion - has_character_flag = intruding_on_reunion - } - } - has_trait = compassionate - } - animation = admiration - } - triggered_animation = { - trigger = { - scope:warden = { - OR = { - has_character_flag = allowing_hostage_reunion - has_character_flag = intruding_on_reunion - } - NOT = { has_trait = compassionate } - } - } - animation = personality_content - } - triggered_animation = { - trigger = { - scope:warden = { - OR = { - has_character_flag = hook_for_reunion - has_character_flag = forbidding_reunion - } - } - } - animation = war_attacker - } - } - right_portrait = { - character = scope:right_portrait_character - triggered_animation = { - trigger = { - scope:warden = { - OR = { - has_character_flag = allowing_hostage_reunion - has_character_flag = intruding_on_reunion - } - } - } - animation = wedding_happy_cry - } - triggered_animation = { - trigger = { - scope:warden = { - has_character_flag = hook_for_reunion - } - } - animation = scheme - } - triggered_animation = { - trigger = { - scope:warden = { - has_character_flag = forbidding_reunion - } - } - animation = dismissal - } - } - lower_right_portrait = { - character = scope:lower_portrait_character - } - - trigger = { - has_bp2_dlc_trigger = yes - scope:hostage = { - is_alive = yes - is_hostage_of = scope:warden - } - scope:warden = { - is_alive = yes - } - } - - immediate = { - } - #You're coming with me, kid - option = { - trigger = { - scope:warden = { - has_character_flag = allowing_hostage_reunion - } - OR = { - has_trait = compassionate - has_trait = arbitrary - has_trait = eccentric - has_relation_friend = scope:hostage - } - NOR = { - has_trait = just - has_relation_friend = scope:warden - location.county.holder = scope:warden - location.county.holder.liege = scope:warden - location.county.holder.top_liege = scope:warden - } - } - name = bp2_yearly.6121.a - flavor = bp2_yearly.6121.a.tt - - add_character_flag = rescuing_hostage - trigger_event = bp2_yearly.6122 - - bp2_return_hostage_effect = { HOSTAGE = scope:hostage } - - add_prestige = major_prestige_loss - if = { - limit = { - can_set_relation_rival_trigger = { CHARACTER = scope:warden } - } - set_relation_rival = { - reason = rival_stole_hostage - target = scope:warden - } - } - if = { - limit = { - can_set_relation_friend_trigger = { CHARACTER = scope:hostage } - } - set_relation_friend = { - reason = friend_defied_warden_for_love - target = scope:hostage - } - } - else = { - scope:hostage = { - add_opinion = { - target = root - opinion = 40 - modifier = love_opinion - } - } - } - - stress_impact = { - callous = medium_stress_impact_gain - content = minor_stress_impact_gain - craven = medium_stress_impact_gain - calm = minor_stress_impact_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_boldness = 1 - ai_compassion = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = callous - has_trait = content - has_trait = craven - has_trait = calm - } - } - } - } - #A big gift to make hostage happy and flex on their warden - option = { - trigger = { - scope:warden = { - OR = { - has_character_flag = allowing_hostage_reunion - has_character_flag = intruding_on_reunion - } - } - } - name = bp2_yearly.6121.b - flavor = bp2_yearly.6121.b.tt - scope:warden = { - trigger_event = bp2_yearly.6123 - } - dynasty = { - add_dynasty_prestige = miniscule_dynasty_prestige_gain - } - scope:hostage = { - add_opinion = { - target = root - opinion = 30 - modifier = love_opinion - } - } - pay_short_term_gold = { - target = scope:hostage - gold = medium_gold_value - } - scope:warden = { - add_opinion = { - target = root - opinion = -20 - modifier = annoyed_opinion - } - } - - stress_impact = { - greedy = major_stress_impact_gain - temperate = minor_stress_impact_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_greed = -1 - } - modifier = { - factor = 0 - OR = { - NOT = { - short_term_gold >= medium_gold_value - } - has_trait = greedy - has_trait = temperate - } - } - } - } - #Just makes me so happy to see the lil guy - option = { - trigger = { - scope:warden = { - OR = { - has_character_flag = allowing_hostage_reunion - has_character_flag = intruding_on_reunion - } - } - } - name = bp2_yearly.6121.c - scope:warden = { - trigger_event = bp2_yearly.6123 - } - - scope:hostage = { - add_opinion = { - target = root - opinion = 15 - modifier = pleased_opinion - } - } - if = { - limit = { - NOR = { - has_trait = sadistic - has_trait = callous - } - } - stress_impact = { - base = medium_stress_impact_loss - generous = minor_stress_impact_gain - } - } - else = { - stress_impact = { - generous = minor_stress_impact_gain - } - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_greed = 1 - ai_energy = -1 - } - modifier = { - factor = 0 - has_trait = generous - - } - } - } - #I'll give the hook. It's worth seeing my family member - option = { - trigger = { - scope:warden = { - has_character_flag = hook_for_reunion - } - } - name = bp2_yearly.6121.d - flavor = bp2_yearly.6121.d.tt - - add_character_flag = favor_for_hostage - trigger_event = bp2_yearly.6122 - - scope:hostage = { - add_opinion = { - target = root - opinion = 30 - modifier = love_opinion - } - } - dynasty = { - add_dynasty_prestige = miniscule_dynasty_prestige_gain - } - scope:warden = { - add_hook = { - target = root - type = favor_hook - } - } - - stress_impact = { - paranoid = major_stress_impact_gain - callous = medium_stress_impact_gain - arbitrary = minor_stress_impact_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_compassion = 1 - ai_greed = -1 - } - modifier = { - factor = 0 - OR = { - has_trait = paranoid - has_trait = callous - has_trait = arbitrary - } - } - } - } - #I'll sneakily see my family member! - option = { - trigger = { - scope:warden = { - OR = { - has_character_flag = hook_for_reunion - has_character_flag = forbidding_reunion - } - } - } - name = bp2_yearly.6121.e - flavor = bp2_yearly.6121.e.tt - - duel = { - skill = intrigue - target = scope:warden - 50 = { #It works well - desc = bp2_yearly.6121.e.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - - send_interface_toast = { - title = bp2_yearly.6121.e.success - left_icon = root - right_icon = scope:hostage - add_stress = minor_stress_impact_loss - if = { - limit = { - can_set_relation_friend_trigger = { CHARACTER = scope:hostage } - } - set_relation_friend = { - reason = friend_defied_warden_for_love - target = scope:hostage - } - } - else = { - scope:hostage = { - add_opinion = { - target = root - opinion = 40 - modifier = love_opinion - } - } - } - add_character_flag = sneaking_to_hostage - trigger_event = bp2_yearly.6122 - } - } - 50 = { #It doesn't go well - desc = bp2_yearly.6121.e.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - send_interface_toast = { - title = bp2_yearly.6121.e.failure - left_icon = root - right_icon = scope:hostage - add_prestige = medium_prestige_loss - scope:warden = { - add_opinion = { - target = root - opinion = -20 - modifier = angry_opinion - } - } - scope:hostage = { - add_opinion = { - target = root - opinion = 20 - modifier = love_opinion - } - } - add_character_flag = failed_sneaking_to_hostage - scope:warden = { - trigger_event = bp2_yearly.6123 - } - } - } - } - - stress_impact = { - just = major_stress_impact_gain - honest = major_stress_impact_gain - content = minor_stress_impact_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_honor = -1 - ai_boldness = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = just - has_trait = honest - has_trait = content - intrigue <= 5 - } - } - } - } - #I didn't need to see the hostage anyway, who cares... - option = { - trigger = { - scope:warden = { - OR = { - has_character_flag = hook_for_reunion - has_character_flag = forbidding_reunion - } - } - } - name = bp2_yearly.6121.f - flavor = bp2_yearly.6121.f.tt - scope:warden = { - trigger_event = bp2_yearly.6123 - } - - if = { - limit = { - scope:warden = { - has_character_flag = hook_for_reunion - } - } - scope:hostage = { - add_opinion = { - target = root - opinion = -20 - modifier = disappointed_opinion - } - } - } - if = { - limit = { - opinion = { - target = scope:hostage - value >= 0 - } - } - stress_impact = { - sadistic = minor_stress_impact_loss - callous = minor_stress_impact_loss - fickle = minor_stress_impact_loss - base = minor_stress_impact_gain - compassionate = miniscule_stress_impact_gain - loyal = miniscule_stress_impact_gain - } - } - else = { - stress_impact = { - compassionate = minor_stress_impact_gain - forgiving = miniscule_stress_impact_gain - } - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_compassion = -1 - ai_energy = -1 - } - modifier = { - factor = 0 - OR = { - has_trait = compassionate - has_trait = loyal - has_trait = forgiving - } - } - } - } -} - -##################################### -# Not Forgotten # -# by Jason Cantalini # -# 6122 # -##################################### - -#You did something worth following up to see your hostage - or rescue them -bp2_yearly.6122 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.6122.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - has_character_flag = rescuing_hostage - } - desc = bp2_yearly.6122.rescue - } - triggered_desc = { - trigger = { - has_character_flag = favor_for_hostage - } - desc = bp2_yearly.6121.intrusion - } - triggered_desc = { - trigger = { - has_character_flag = sneaking_to_hostage - } - desc = bp2_yearly.6122.sneaking - } - } - } - - theme = hostage - override_background = { - trigger = { - OR = { - location = root.capital_province - location = scope:hostage_giver.capital_province - } - } - reference = corridor_night - } - override_background = { - trigger = { - NOR = { - location = root.capital_province - location = scope:hostage_giver.capital_province - } - } - reference = ep2_hunt_foggy_forest - } - left_portrait = { - character = root - animation = personality_forgiving - } - right_portrait = { - character = scope:hostage - animation = ecstasy - } - lower_right_portrait = { - character = scope:warden - } - - trigger = { - has_bp2_dlc_trigger = yes - scope:hostage = { - is_alive = yes - } - scope:warden = { - is_alive = yes - } - } - - #You're coming with me, kid - option = { - trigger = { - OR = { - has_trait = compassionate - has_trait = arbitrary - has_trait = eccentric - has_relation_friend = scope:hostage - } - NOR = { - has_trait = just - has_relation_friend = scope:warden - location.county.holder = scope:warden - location.county.holder.liege = scope:warden - location.county.holder.top_liege = scope:warden - has_character_flag = rescuing_hostage - has_character_flag = favor_for_hostage - - } - } - name = bp2_yearly.6121.a - flavor = bp2_yearly.6121.a.tt - - add_character_flag = rescuing_hostage - scope:warden = { - trigger_event = bp2_yearly.6123 - } - - bp2_return_hostage_effect = { HOSTAGE = scope:hostage } - - add_prestige = major_prestige_loss - - if = { - limit = { - can_set_relation_rival_trigger = { CHARACTER = scope:warden } - } - set_relation_rival = { - reason = rival_stole_hostage - target = scope:warden - } - } - if = { - limit = { - can_set_relation_friend_trigger = { CHARACTER = scope:hostage } - } - set_relation_friend = { - reason = friend_defied_warden_for_love - target = scope:hostage - } - } - else = { - scope:hostage = { - add_opinion = { - target = root - opinion = 40 - modifier = love_opinion - } - } - } - - stress_impact = { - callous = medium_stress_impact_gain - content = minor_stress_impact_gain - craven = medium_stress_impact_gain - calm = minor_stress_impact_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_boldness = 1 - ai_compassion = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = callous - has_trait = content - has_trait = craven - has_trait = calm - } - } - } - } - #Just makes me so happy to see the lil guy - option = { - trigger = { - OR = { - has_character_flag = sneaking_to_hostage - has_character_flag = favor_for_hostage - } - } - name = bp2_yearly.6121.c - - scope:warden = { - trigger_event = bp2_yearly.6123 - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_boldness = -1 - ai_compassion = -1 - } - } - } - #You have rescued the hostage, nothing else to be done... for now - option = { - trigger = { - has_character_flag = rescuing_hostage - } - name = bp2_yearly.6122.c - - scope:warden = { - trigger_event = bp2_yearly.6123 - } - - stress_impact = { - } - - ai_chance = { - base = 10 - } - } -} - -##################################### -# The Scion of Peace # -# by Jason Cantalini # -# 6123 # -##################################### - -#You did something worth following up to see your hostage - or rescue them -bp2_yearly.6123 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.6123.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - scope:hostage_giver = { has_character_flag = rescuing_hostage } - } - desc = bp2_yearly.6123.stolen_hostage - } - triggered_desc = { - trigger = { - scope:hostage_giver = { has_character_flag = favor_for_hostage } - } - desc = bp2_yearly.6123.favor_accepted - } - triggered_desc = { - trigger = { - scope:hostage_giver = { - has_character_flag = failed_sneaking_to_hostage - } - } - desc = bp2_yearly.6123.sneaker - } - triggered_desc = { - trigger = { - OR = { - scope:warden = { - OR = { - has_character_flag = forbidding_reunion - has_character_flag = hook_for_reunion - } - } - scope:hostage_giver = { - has_character_flag = sneaking_to_hostage - } - } - } - desc = bp2_yearly.6123.forbidden_desc - } - desc = bp2_yearly.6123.desc - } - } - - theme = hostage - override_background = { - trigger = { - OR = { - location = root.capital_province - location = scope:hostage_giver.capital_province - } - } - reference = courtyard - } - override_background = { - trigger = { - NOR = { - location = root.capital_province - location = scope:hostage_giver.capital_province - } - } - reference = ep2_hunt_foggy_forest - } - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - scope:hostage_giver = { has_character_flag = rescuing_hostage } - scope:hostage_giver = { - has_character_flag = failed_sneaking_to_hostage - } - } - } - animation = anger - } - triggered_animation = { - trigger = { - NOR = { - scope:hostage_giver = { has_character_flag = rescuing_hostage } - scope:hostage_giver = { - has_character_flag = failed_sneaking_to_hostage - } - } - } - animation = personality_honorable - } - } - right_portrait = { - character = scope:hostage_giver - animation = war_defender - } - lower_right_portrait = { - character = scope:hostage - } - - trigger = { - has_bp2_dlc_trigger = yes - scope:hostage = { - is_alive = yes - } - scope:hostage_giver = { - is_alive = yes - } - } - - immediate = { - if = { - limit = { - has_relation_rival = scope:hostage_giver - } - show_as_tooltip = { - set_relation_rival = { - reason = rival_stole_hostage - target = scope:hostage_giver - } - } - } - if = { - limit = { - scope:hostage = { - liege = scope:hostage_giver - } - } - custom_tooltip = bp2_yearly.6123.return_hostage - show_as_tooltip = { - scope:hostage_giver = { - add_prestige = major_prestige_loss - } - } - } - if = { - limit = { - scope:hostage_giver = { has_character_flag = failed_sneaking_to_hostage } - } - show_as_tooltip = { - scope:hostage_giver = { - add_prestige = medium_prestige_loss - } - } - } - if = { - limit = { - scope:hostage_giver = { has_character_flag = favor_for_hostage } - } - show_as_tooltip = { - scope:warden = { - add_hook = { - target = scope:hostage_giver - type = favor_hook - } - } - } - } - } - #You have rescued the hostage, nothing else to be done... for now - option = { - name = bp2_yearly.6123.a - - remove_character_flag ?= forbidding_reunion - remove_character_flag ?= hook_for_reunion - remove_character_flag ?= hook_for_reunion - remove_character_flag ?= intruding_on_reunion - scope:hostage_giver = { - remove_character_flag ?= failed_sneaking_to_hostage - remove_character_flag ?= rescuing_hostage - remove_character_flag ?= sneaking_to_hostage - remove_character_flag ?= favor_for_hostage - } - - if = { - limit = { - scope:hostage_giver = { - OR = { - has_character_flag = rescuing_hostage - has_character_flag = failed_sneaking_to_hostage - } - } - } - stress_impact = { - wrathful = minor_stress_impact_gain - vengeful = minor_stress_impact_gain - just = minor_stress_impact_gain - trusting = minor_stress_impact_gain - } - } - - - ai_chance = { - base = 10 - } - } -} - -##################################### -# Captive, Captivated # -# by Jason Cantalini # -# 6130 # -##################################### - -scripted_trigger bp2_yearly_6130_hostage_trigger = { - is_adult = no - age > 5 - is_incapable = no - is_imprisoned = no - save_temporary_scope_as = potential_hostage - root = { - any_close_family_member = { - bp2_yearly_6130_family_trigger = { HOSTAGE = scope:potential_hostage } - OR = { - AND = { - opinion = { - target = scope:potential_hostage - value >= 5 - } - scope:potential_hostage = { - opinion = { - target = prev - value >= 5 - } - } - } - has_relation_friend = scope:potential_hostage - } - } - } -} - -scripted_trigger bp2_yearly_6130_family_trigger = { - NOT = { $HOSTAGE$ = this } - is_ai = yes - age > 5 - is_adult = no - is_incapable = no - is_imprisoned = no -} - -#Your hostage and one of your family members are becoming friends -bp2_yearly.6130 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.6130.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - OR = { - scope:hostage = { - age >= scope:kin.age_plus_5 - } - scope:kin = { - age >= scope:hostage.age_plus_5 - } - } - } - desc = bp2_yearly.6130.desc.different_ages - } - desc = bp2_yearly.6130.desc - } - } - - theme = hostage - override_background = { - reference = study - } - left_portrait = { - character = scope:kin - triggered_animation = { - trigger = { - age >= scope:hostage.age_plus_5 - } - animation = personality_forgiving - } - triggered_animation = { - trigger = { - age < scope:hostage.age_plus_5 - } - animation = laugh - } - } - right_portrait = { - character = scope:hostage - triggered_animation = { - trigger = { - age >= scope:kin.age_plus_5 - } - animation = happy_teacher - } - triggered_animation = { - trigger = { - age < scope:kin.age_plus_5 - } - animation = child_hobby_horse - } - } - - cooldown = { - years = 10 - } - - trigger = { - has_bp2_dlc_trigger = yes - age > 14 - is_incapable = no - is_imprisoned = no - is_landed_or_landless_administrative = yes - is_available = yes - any_warden_hostage = { - bp2_yearly_6130_hostage_trigger = yes - save_temporary_scope_as = hostage_temp - root = { - any_close_family_member = { - bp2_yearly_6130_family_trigger = { HOSTAGE = scope:hostage_temp } - } - } - } - } - - immediate = { - random_warden_hostage = { - limit = { - bp2_yearly_6130_hostage_trigger = yes - save_temporary_scope_as = hostage_temp - root = { - any_close_family_member = { - bp2_yearly_6130_family_trigger = { HOSTAGE = scope:hostage_temp } - } - } - } - save_scope_as = hostage - } - #first try to get a future ruler who is friends with the hostage - random_close_family_member = { - limit = { - is_heir_of = root - has_relation_friend = scope:hostage - bp2_yearly_6130_family_trigger = { HOSTAGE = scope:hostage } - opinion = { - target = scope:hostage - value >= 5 - } - scope:hostage = { - opinion = { - target = prev - value >= 5 - } - } - } - alternative_limit = { - is_heir_of = root - bp2_yearly_6130_family_trigger = { HOSTAGE = scope:hostage } - opinion = { - target = scope:hostage - value >= 5 - } - scope:hostage = { - opinion = { - target = prev - value >= 5 - } - } - } - alternative_limit = { - has_relation_friend = scope:hostage - bp2_yearly_6130_family_trigger = { HOSTAGE = scope:hostage } - opinion = { - target = scope:hostage - value >= 5 - } - scope:hostage = { - opinion = { - target = prev - value >= 5 - } - } - } - alternative_limit = { - bp2_yearly_6130_family_trigger = { HOSTAGE = scope:hostage } - } - save_scope_as = kin - } - } - #You encourage their burgeoning friendship - option = { - name = bp2_yearly.6130.a - flavor = bp2_yearly.6130.a.tt - - scope:kin = { - create_character_memory = { - type = hostage_oath_of_friendship - participants = { friend = scope:hostage } - } - } - scope:hostage = { - create_character_memory = { - type = hostage_oath_of_friendship - participants = { friend = scope:kin } - } - } - custom_tooltip = bp2_yearly.6130.alliance - - scope:hostage = { - add_opinion = { - target = root - opinion = 10 - modifier = grateful_opinion - } - } - - if = { - limit = { - scope:kin = { - has_relation_friend = scope:hostage - } - } - scope:kin = { - set_relation_best_friend = scope:hostage - } - - } - else_if = { - limit = { - scope:kin = { - can_set_relation_friend_trigger = { CHARACTER = scope:hostage } - } - } - scope:kin = { - set_relation_friend = scope:hostage - } - } - else = { - scope:hostage = { - add_opinion = { - target = scope:kin - opinion = 40 - modifier = friendliness_opinion - } - } - scope:kin = { - add_opinion = { - target = scope:hostage - opinion = 40 - modifier = friendliness_opinion - } - } - } - - - - if = { - limit = { - exists = scope:hostage.home_court - OR = { - has_relation_rival = scope:hostage.home_court - has_relation_nemesis = scope:hostage.home_court - opinion = { - target = scope:hostage.home_court - value <= -90 - } - } - NOT = { - has_trait = forgiving - } - } - stress_impact = { - base = medium_stress_impact_gain - vengeful = medium_stress_impact_gain - paranoid = medium_stress_impact_gain - wrathful = minor_stress_impact_gain - stubborn = minor_stress_impact_gain - } - } - else = { - stress_impact = { - paranoid = minor_stress_impact_gain - disloyal = minor_stress_impact_gain - deceitful = minor_stress_impact_gain - } - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_vengefulness = -1 - ai_sociability = 1 - } - modifier = { - factor = 0.5 - exists = scope:hostage.home_court - OR = { - has_relation_rival = scope:hostage.home_court - has_relation_nemesis = scope:hostage.home_court - opinion = { - target = scope:hostage.home_court - value <= -90 - } - } - NOT = { - has_trait = forgiving - } - } - modifier = { - factor = 0 - exists = scope:hostage.home_court - OR = { - has_relation_rival = scope:hostage.home_court - has_relation_nemesis = scope:hostage.home_court - opinion = { - target = scope:hostage.home_court - value <= -90 - } - } - NOT = { - has_trait = forgiving - } - OR = { - has_trait = vengeful - has_trait = paranoid - has_trait = wrathful - has_trait = stubborn - } - } - modifier = { - factor = 0 - has_trait = deceitful - - } - } - } - #You think the child should focus on fitting in with your family instead - option = { - name = bp2_yearly.6130.b - flavor = bp2_yearly.6130.b.tt - - scope:kin = { - every_close_family_member = { - custom = all_close_family_members - add_opinion = { - target = scope:kin - modifier = love_opinion - opinion = 20 - } - } - } - custom_tooltip = bp2_yearly.6130.family_opinion - hidden_effect = { - scope:kin = { - every_close_family_member = { - reverse_add_opinion = { - target = scope:kin - modifier = love_opinion - opinion = 30 - } - } - } - } - scope:hostage = { - add_opinion = { - target = root - opinion = -20 - modifier = angry_opinion - } - } - - if = { - limit = { - scope:kin = { - has_relation_friend = scope:hostage - } - } - scope:kin = { - remove_relation_friend = scope:hostage - } - } - else = { - scope:hostage = { - add_opinion = { - target = scope:kin - opinion = -20 - modifier = angry_opinion - } - } - } - - stress_impact = { - trusting = medium_stress_impact_gain - gregarious = minor_stress_impact_gain - ambitious = minor_stress_impact_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_boldness = -1 - ai_honor = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = trusting - has_trait = gregarious - has_trait = ambitious - } - } - } - } -} - -##################################### -# For Amity, Too Young # -# by Jason Cantalini # -# 6140 # -##################################### - -scripted_trigger bp2_yearly_6140_hostage_trigger = { - is_adult = no - age > 5 - is_incapable = no - is_imprisoned = no - save_temporary_scope_as = potential_hostage - root = { - any_close_family_member = { - bp2_yearly_6140_family_trigger = yes - OR = { - NOT = { has_relation_friend = scope:potential_hostage } - has_relation_victim = scope:potential_hostage - } - } - } -} - - -scripted_trigger bp2_yearly_6140_family_trigger = { - is_ai = yes - age > 5 - is_adult = no - is_incapable = no - is_imprisoned = no - NOT = { has_trait = compassionate } -} - -#Your hostage and one of your family members are becoming rivals -bp2_yearly.6140 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.6140.t - desc = bp2_yearly.6140.desc - - theme = hostage - override_background = { - trigger = { - NOR = { - faith = { religion = religion:hinduism_religion } - faith = { religion = religion:buddhism_religion } - faith = { religion = religion:jainism_religion } - } - } - reference = temple - } - override_background = { - trigger = { - OR = { - faith = { religion = religion:hinduism_religion } - faith = { religion = religion:buddhism_religion } - faith = { religion = religion:jainism_religion } - } - } - reference = ep2_holy_site_indian - } - left_portrait = { - character = scope:kin - animation = war_attacker - } - right_portrait = { - character = scope:hostage - animation = personality_vengeful - } - - cooldown = { - years = 10 - } - - trigger = { - has_bp2_dlc_trigger = yes - age > 14 - is_incapable = no - is_imprisoned = no - is_landed_or_landless_administrative = yes - is_available = yes - any_warden_hostage = { - exists = home_court - bp2_yearly_6140_hostage_trigger = yes - } - - } - - immediate = { - save_scope_as = root_scope - random_warden_hostage = { - limit = { - bp2_yearly_6140_hostage_trigger = yes - } - save_scope_as = hostage - } - scope:hostage.home_court = { - save_scope_as = home_court - } - #first try to get a future ruler who is bullies with the hostage - random_close_family_member = { - limit = { - is_heir_of = root - has_relation_victim = scope:hostage - bp2_yearly_6140_family_trigger = yes - AND = { - opinion = { - target = scope:hostage - value <= -5 - } - scope:hostage = { - opinion = { - target = prev - value <= -5 - } - } - } - } - alternative_limit = { - is_heir_of = root - bp2_yearly_6140_family_trigger = yes - AND = { - opinion = { - target = scope:hostage - value <= -5 - } - scope:hostage = { - opinion = { - target = prev - value <= -5 - } - } - } - } - alternative_limit = { - has_relation_victim = scope:hostage - bp2_yearly_6140_family_trigger = yes - AND = { - opinion = { - target = scope:hostage - value <= -5 - } - scope:hostage = { - opinion = { - target = prev - value <= -5 - } - } - } - } - alternative_limit = { - bp2_yearly_6140_family_trigger = yes - } - save_scope_as = kin - } - } - #You encourage their burgeoning hatred - option = { - name = bp2_yearly.6140.a - flavor = bp2_yearly.6140.a.tt - - scope:kin = { - add_intrigue_skill = 1 - } - scope:kin = { - add_opinion = { - target = root - opinion = 20 - modifier = love_opinion - } - } - scope:hostage = { - add_opinion = { - target = root - opinion = -20 - modifier = hate_opinion - } - } - - if = { - limit = { - scope:kin = { - can_set_relation_victim_trigger = { CHARACTER = scope:hostage } - } - } - scope:kin = { - set_relation_victim = scope:hostage - } - } - else = { - scope:hostage = { - add_opinion = { - target = scope:kin - opinion = -40 - modifier = hate_opinion - } - } - scope:kin = { - add_opinion = { - target = scope:hostage - opinion = -40 - modifier = hate_opinion - } - } - } - - stress_impact = { - compassionate = medium_stress_impact_gain - forgiving = minor_stress_impact_gain - trusting = minor_stress_impact_gain - craven = minor_stress_impact_gain - humble = miniscule_stress_impact_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_compassion = -1 - ai_boldness = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = forgiving - has_trait = compassionate - has_trait = trusting - has_trait = craven - } - } - } - } - #You try to teach the child about peace instead - option = { - name = bp2_yearly.6140.b - flavor = bp2_yearly.6140.b.tt - - add_piety = minor_piety_gain - - scope:hostage = { - add_opinion = { - target = root - opinion = 20 - modifier = grateful_opinion - } - } - if = { - limit = { - scope:kin = { - has_relation_victim = scope:hostage - } - } - scope:kin = { - remove_relation_victim = scope:hostage - } - } - else = { - scope:hostage = { - add_opinion = { - target = scope:kin - opinion = 30 - modifier = forgiven_opinion - } - } - scope:kin = { - add_opinion = { - target = scope:hostage - opinion = 30 - modifier = forgiven_opinion - } - } - } - - stress_impact = { - sadistic = minor_stress_impact_gain - callous = minor_stress_impact_gain - arbitrary = minor_stress_impact_gain - vengeful = minor_stress_impact_gain - wrathful = minor_stress_impact_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - } - modifier = { - factor = 0 - OR = { - has_trait = sadistic - has_trait = callous - has_trait = arbitrary - has_trait = vengeful - has_trait = wrathful - } - } - } - } -} - -##################################### -# The Assurance Speaks # -# by Jason Cantalini # -# 6150 # -##################################### - -scripted_trigger bp2_yearly_6150_hostage_trigger = { - age > 5 - is_incapable = no - is_imprisoned = no - location = root.location - OR = { - has_trait = shy - has_trait = fickle - has_trait = paranoid - has_trait = depressed_1 - has_trait = depressed_genetic - has_trait = hunchbacked - has_trait = scaly - has_trait = clubfooted - has_trait = albino - has_trait = dwarf - has_trait = beauty_bad_2 - has_trait = beauty_bad_3 - has_trait = pensive - stress_level >= 1 - } - NOR = { - has_trait = gregarious - has_trait = brave - has_trait = diligent - has_trait = arrogant - has_trait = charming - } -} - -#Your antisocial hostage is reticent to be stand by you, as a hostage should during ceremonies and petitions -bp2_yearly.6150 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.6150.t - desc = bp2_yearly.6150.desc - - theme = hostage - override_background = { - reference = throne_room - } - left_portrait = { - character = root - animation = personality_content - } - right_portrait = { - character = scope:hostage - animation = personality_coward - } - - cooldown = { - years = 10 - } - - trigger = { - has_bp2_dlc_trigger = yes - age > 10 - is_incapable = no - is_imprisoned = no - is_landed_or_landless_administrative = yes - is_at_war = no - is_available = yes - any_warden_hostage = { - exists = home_court - bp2_yearly_6150_hostage_trigger = yes - } - } - - immediate = { - save_scope_as = root_scope - random_warden_hostage = { - limit = { - bp2_yearly_6150_hostage_trigger = yes - } - save_scope_as = hostage - } - scope:hostage.home_court = { - save_scope_as = home_court - } - } - #You tell the hostage being presented as part of your family will make them feel better - option = { - name = bp2_yearly.6150.a - flavor = bp2_yearly.6150.a.tt - - add_character_modifier = { - modifier = hostages_accepted_into_family_modifier - years = 20 - } - - every_close_family_member = { - custom = all_close_family_members - add_opinion = { - target = scope:hostage - modifier = friendliness_opinion - opinion = 20 - } - } - custom_tooltip = bp2_yearly.6150.family_opinion_hostage - hidden_effect = { - every_close_family_member = { - reverse_add_opinion = { - target = scope:hostage - modifier = friendliness_opinion - opinion = 10 - } - } - } - - stress_impact = { - paranoid = minor_stress_impact_gain - shy = miniscule_stress_impact_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_sociability = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = paranoid - has_trait = shy - } - } - } - } - #You're fine with them spending more time studying with prelates instead - option = { - name = bp2_yearly.6150.b - flavor = bp2_yearly.6150.b.tt - - add_character_modifier = { - modifier = eschews_flaunting_of_hostages_modifier - years = 20 - } - - scope:hostage = { - add_learning_skill = 1 - add_diplomacy_skill = -1 - } - - stress_impact = { - stubborn = minor_stress_impact_gain - arrogant = minor_stress_impact_gain - ambitious = miniscule_stress_impact_gain - gregarious = miniscule_stress_impact_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_greed = -1 - } - modifier = { - factor = 0 - OR = { - has_trait = stubborn - has_trait = arrogant - has_trait = ambitious - has_trait = arrogant - } - } - } - } - #Tell them to sit down and shut up - option = { - name = bp2_yearly.6150.c - flavor = bp2_yearly.6150.c.tt - - add_prestige = minor_prestige_gain - - scope:hostage = { - add_opinion = { - target = root - modifier = cruelty_opinion - opinion = -20 - } - } - - stress_impact = { - arrogant = minor_stress_impact_loss - sadistic = minor_stress_impact_loss - callous = minor_stress_impact_loss - compassionate = minor_stress_impact_gain - forgiving = minor_stress_impact_gain - gregarious = miniscule_stress_impact_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_compassion = -1 - } - } - } -} - -##################################### -# Worst of my Riders # -# by Jason Cantalini # -# 6160 # -##################################### - -scripted_trigger bp2_yearly_6160_hostage_trigger = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - is_adult = no - age > 6 - is_incapable = no - is_imprisoned = no - NOR = { - has_trait = just - has_trait = craven - } - save_temporary_scope_as = potential_hostage - root = { - any_close_family_member = { - bp2_yearly_6160_family_trigger = yes - age <= scope:potential_hostage.age - OR = { - AND = { - opinion = { - target = scope:potential_hostage - value >= -5 - } - scope:potential_hostage = { - opinion = { - target = prev - value >= -5 - } - } - } - has_relation_friend = scope:potential_hostage - } - } - } -} - -scripted_trigger bp2_yearly_6160_family_trigger = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - is_ai = yes - age > 6 - is_adult = no - is_incapable = no - is_imprisoned = no - NOR = { - has_trait = just - has_trait = craven - } -} - -# your kid and your hostage snuck out of the palace to see your capital and rode a horse into a ditch trying to escape being caught -bp2_yearly.6160 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.6160.t - desc = bp2_yearly.6160.desc - content_source = dlc_009 - - theme = hostage - override_background = { - reference = ep2_hunt_foggy_forest - } - left_portrait = { - character = scope:kin - animation = crying - } - right_portrait = { - character = scope:hostage - animation = jockey_loss - camera = camera_event_horse_right - } - - cooldown = { - years = 5 - } - - trigger = { - has_bp2_dlc_trigger = yes - is_available_adult = yes - is_landed_or_landless_administrative = yes - any_warden_hostage = { - bp2_yearly_6160_hostage_trigger = yes - } - } - - immediate = { - random_warden_hostage = { - limit = { - bp2_yearly_6160_hostage_trigger = yes - } - save_scope_as = hostage - } - #first try to get a future ruler who is friends with the hostage - random_close_family_member = { - limit = { - is_heir_of = root - has_relation_friend = scope:hostage - bp2_yearly_6160_family_trigger = yes - age <= scope:hostage.age - } - alternative_limit = { - is_heir_of = root - bp2_yearly_6160_family_trigger = yes - age <= scope:hostage.age - opinion = { - target = scope:hostage - value >= -5 - } - scope:hostage = { - opinion = { - target = prev - value >= -5 - } - } - } - alternative_limit = { - has_relation_friend = scope:hostage - bp2_yearly_6160_hostage_trigger = yes - age <= scope:hostage.age - } - alternative_limit = { - bp2_yearly_6160_family_trigger = yes - age <= scope:hostage.age - AND = { - opinion = { - target = scope:hostage - value >= -5 - } - scope:hostage = { - opinion = { - target = prev - value >= -5 - } - } - } - } - save_scope_as = kin - } - scope:kin = { - increase_wounds_no_death_effect = { REASON = horse_riding_accident } - } - } - #You will work off your debt to the horse's owner, wayward princes - option = { - name = bp2_yearly.6160.a - flavor = bp2_yearly.6160.a.tt - scope:kin = { - add_opinion = { - target = root - opinion = -25 - modifier = angry_opinion - } - add_prestige = minor_prestige_loss - add_character_modifier = { - modifier = labored_with_the_commons_modifier - years = 30 - } - random_list = { - 10 = { - add_trait = strong - modifier = { - add = 10 - OR = { - has_trait = brave - has_trait = rowdy - } - } - modifier = { - add = 10 - has_focus = education_martial - - } - } - 20 = { - trigger = { - OR = { - has_trait = compassionate - has_trait = curious - has_trait = trusting - has_trait = calm - has_focus = education_learning - } - } - add_trait = lifestyle_herbalist - } - 40 = { } - } - } - scope:hostage = { - add_opinion = { - target = root - opinion = -25 - modifier = angry_opinion - } - add_prestige = minor_prestige_loss - add_character_modifier = { - modifier = labored_with_the_commons_modifier - years = 30 - } - random_list = { - 10 = { - add_trait = strong - modifier = { - add = 10 - OR = { - has_trait = brave - has_trait = rowdy - } - } - modifier = { - add = 10 - has_focus = education_martial - - } - } - 20 = { - trigger = { - OR = { - has_trait = compassionate - has_trait = curious - has_trait = trusting - has_trait = calm - has_focus = education_learning - } - } - add_trait = lifestyle_herbalist - } - 40 = { } - } - } - - stress_impact = { - arrogant = medium_stress_impact_gain - forgiving = minor_stress_impact_gain - lazy = miniscule_stress_impact_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_energy = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = arrogant - has_trait = forgiving - has_trait = lazy - } - } - } - } - #You cast the hostage out - option = { - trigger = { - OR = { - has_trait = vengeful - has_trait = arbitrary - has_trait = loyal - has_trait = paranoid - has_trait = wrathful - } - NOR = { - has_trait = lifestyle_herbalist - has_trait = lifestyle_physician - } - } - name = bp2_yearly.6160.b - flavor = bp2_yearly.6160.b.tt - house = { - every_house_member = { - custom = all_house_members - limit = { - this != root - } - add_opinion = { - modifier = respect_opinion - target = root - opinion = 10 - } - } - } - add_dread = miniscule_dread_gain - - bp2_return_hostage_effect = { HOSTAGE = scope:hostage } - - stress_impact = { - forgiving = major_stress_impact_gain - just = minor_stress_impact_gain - trusting = minor_stress_impact_gain - calm = medium_stress_impact_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_vengefulness = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = forgiving - has_trait = just - has_trait = trusting - has_trait = calm - } - } - - } - } - #You repay the debt - option = { - trigger = { - NOR = { - has_trait = vengeful - has_trait = arbitrary - has_trait = loyal - has_trait = paranoid - has_trait = wrathful - has_trait = lifestyle_herbalist - has_trait = lifestyle_physician - } - } - name = bp2_yearly.6160.c - scope:kin = { - add_opinion = { - target = root - opinion = 10 - modifier = grateful_opinion - } - } - scope:hostage = { - add_opinion = { - target = root - opinion = 10 - modifier = grateful_opinion - } - } - remove_short_term_gold = minor_gold_value - - stress_impact = { - greedy = minor_stress_impact_gain - callous = miniscule_stress_impact_gain - sadistic = miniscule_stress_impact_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_honor = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = greedy - has_trait = callous - has_trait = sadistic - } - } - - } - } - #I'll just heal it - option = { - trigger = { - OR = { - has_trait = lifestyle_herbalist - has_trait = lifestyle_physician - } - } - name = bp2_yearly.6160.d - - if = { - limit = { - capital_province.county = { - county_control < 100 - } - } - capital_province.county = { - change_county_control = minor_county_control_gain - } - } - else_if = { - limit = { - has_lifestyle = learning_lifestyle - } - add_learning_lifestyle_xp = medium_lifestyle_xp - } - else = { - add_character_modifier = { - modifier = renowned_knowledge_of_horses_modifier - years = 20 - } - } - - stress_impact = { - vengeful = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_vengefulness = -1 - } - modifier = { - factor = 0 - has_trait = vengeful - } - - } - } - #No harm done! - option = { - name = bp2_yearly.6160.e - flavor = bp2_yearly.6160.e.tt - scope:kin = { - add_opinion = { - target = root - opinion = 20 - modifier = grateful_opinion - } - } - scope:hostage = { - add_opinion = { - target = root - opinion = 20 - modifier = grateful_opinion - } - } - - capital_province.county = { - change_county_control = minor_county_control_loss - } - - stress_impact = { - just = medium_stress_impact_gain - diligent = minor_stress_impact_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_honor = -1 - } - modifier = { - factor = 0 - OR = { - has_trait = just - has_trait = diligent - } - } - } - } -} - -##################################### -# A Pact with the Uncivilized # -# by Jason Cantalini # -# 6170 # -##################################### - -scripted_trigger bp2_yearly_6170_hostage_trigger = { - age < 30 - NOT = { - has_character_flag = had_event_bp2_yearly_6170 - } - warden.culture = { - NOR = { - this = prev.culture - this = root.culture - } - } - OR = { - #Either root is not tribal and the warden is - AND = { - warden = { - government_has_flag = government_is_tribal - } - root = { - NOT = { - government_has_flag = government_is_tribal - } - } - } - #OR warden culture is in an earlier cultural era - AND = { - NOT = { - warden.culture = { has_cultural_era_or_later = culture_era_early_medieval } - } - root.culture = { has_cultural_era_or_later = culture_era_early_medieval } - } - AND = { - NOT = { - warden.culture = { has_cultural_era_or_later = culture_era_high_medieval } - } - root.culture = { has_cultural_era_or_later = culture_era_high_medieval } - } - AND = { - NOT = { - warden.culture = { has_cultural_era_or_later = culture_era_late_medieval } - } - root.culture = { has_cultural_era_or_later = culture_era_late_medieval } - } - #Or root has more innovations than the warden in the given era and a nicer capital - AND = { - #more innovations - root.culture.num_discovered_innovations > warden.culture.num_discovered_innovations - OR = { - # nicer court - warden = { - has_royal_court = yes - court_grandeur_current < root.court_grandeur_current - } - # is just straight up more important yo - AND = { - root = { - has_royal_court = yes - } - warden = { - has_royal_court = no - } - } - #more developed capital - # Does this need to be a larger value...? - warden.capital_province.county = { - development_level > root.capital_province.county.development_level - } - } - } - } - save_temporary_scope_as = potential_hostage - root = { - OR = { - any_spouse = { - is_parent_of = scope:potential_hostage - bp2_yearly_6170_potential_kin_trigger = yes - } - any_concubine = { - is_parent_of = scope:potential_hostage - bp2_yearly_6170_potential_kin_trigger = yes - } - any_close_family_member = { - age >= 14 - bp2_yearly_6170_potential_kin_trigger = yes - } - any_courtier_or_guest = { - bp2_yearly_6170_potential_kin_trigger = yes - age >= 14 - house = root.house - } - } - } -} - -scripted_trigger bp2_yearly_6170_kin_trigger = { - NOR = { - has_trait = just - has_trait = humble - has_trait = calm - } - is_available = yes - opinion = { - target = scope:hostage - value > -50 - } - culture != scope:warden.culture -} - -scripted_trigger bp2_yearly_6170_potential_kin_trigger = { - NOR = { - has_trait = just - has_trait = humble - has_trait = calm - } - is_available = yes - opinion = { - target = scope:potential_hostage - value > -50 - } - culture != scope:potential_hostage.warden.culture -} - -#A family member is upset you sent kin as hostage to an uncivilized land -bp2_yearly.6170 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly.6170.t - desc = bp2_yearly.6170.desc - content_source = dlc_009 - - theme = hostage - override_background = { - reference = relaxing_room - } - left_portrait = { - character = root - animation = stressed_teacher - } - right_portrait = { - character = scope:kin - animation = rage - } - lower_right_portrait = { - character = scope:hostage - } - lower_left_portrait = { - character = scope:warden - } - - cooldown = { - years = 10 - } - - trigger = { - has_bp2_dlc_trigger = yes - age >= 13 - is_landed_or_landless_administrative = yes - is_available = yes - any_home_court_hostage = { - bp2_yearly_6170_hostage_trigger = yes - } - - } - - immediate = { - save_scope_as = root_scope - random_home_court_hostage = { - limit = { - bp2_yearly_6170_hostage_trigger = yes - } - save_scope_as = hostage - } - - scope:hostage.warden = { - save_scope_as = warden - } - #Save an upset family member, starting with those closest to you/the hostage - if = { - limit = { - any_spouse = { - is_parent_of = scope:hostage - bp2_yearly_6170_kin_trigger = yes - } - } - random_spouse = { - limit = { - is_parent_of = scope:hostage - bp2_yearly_6170_kin_trigger = yes - } - save_scope_as = kin - } - } - else_if = { - limit = { - any_concubine = { - is_parent_of = scope:hostage - bp2_yearly_6170_kin_trigger = yes - } - } - random_concubine = { - limit = { - is_parent_of = scope:hostage - bp2_yearly_6170_kin_trigger = yes - } - save_scope_as = kin - } - } - else_if = { - limit = { - any_close_family_member = { - bp2_yearly_6170_kin_trigger = yes - age >= 14 - } - } - random_close_family_member = { - limit = { - bp2_yearly_6170_kin_trigger = yes - age >= 14 - } - save_scope_as = kin - } - } - else_if = { - limit = { - any_courtier_or_guest = { - bp2_yearly_6170_kin_trigger = yes - age >= 14 - house = root.house - } - } - random_courtier_or_guest = { - limit = { - bp2_yearly_6170_kin_trigger = yes - age >= 14 - house = root.house - } - save_scope_as = kin - } - } - scope:hostage = { - add_character_flag = had_event_bp2_yearly_6170 - } - } - #Fine, they shall represent our glory and sophistication in style - option = { - name = bp2_yearly.6170.a - flavor = bp2_yearly.6170.a.tt - - scope:hostage = { - add_character_modifier = { - modifier = lavish_care_modifier - years = 10 - } - } - if = { - limit = { - has_royal_court = yes - has_dlc_feature = royal_court - } - change_current_court_grandeur = minor_court_grandeur_gain - } - else = { - add_prestige = minor_prestige_gain - } - - remove_short_term_gold = medium_gold_value - stress_impact = { - humble = medium_stress_impact_gain - greedy = minor_stress_impact_gain - temperate = minor_stress_impact_gain - content = minor_stress_impact_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_greed = -1 - ai_compassion = 1 - } - modifier = { - factor = 0 - OR = { - short_term_gold < medium_gold_value - has_trait = humble - has_trait = greedy - has_trait = temperate - has_trait = content - } - } - } - } - #They serve our family, as do you - option = { - name = bp2_yearly.6170.b - flavor = bp2_yearly.6170.b.tt - - add_character_modifier = { - modifier = united_family_modifier - years = 10 - } - custom_tooltip = bp2_yearly.6170.scheme_bonus - custom_tooltip = bp2_yearly.6170.leave_court_bonus - scope:kin = { - add_opinion = { - target = root - modifier = angry_opinion - opinion = -20 - } - } - - - stress_impact = { - arbitrary = minor_stress_impact_gain - cynical = minor_stress_impact_gain - fickle = medium_stress_impact_gain - generous = minor_stress_impact_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_honor = 1 - ai_sociability = -1 - } - modifier = { - factor = 0 - OR = { - has_trait = arbitrary - has_trait = cynical - has_trait = fickle - has_trait = generous - } - } - } - } - - #It will harden him and teach him to be brave - option = { - name = bp2_yearly.6170.c - flavor = bp2_yearly.6170.c.tt - - if = { - limit = { - OR = { - culture = { - culture_head = root - } - scope:warden.culture = { - culture_head = scope:warden - } - } - } - culture = { - change_cultural_acceptance = { - target = scope:warden.culture - value = miniscule_positive_culture_acceptance - desc = cultural_acceptance_hostage_exchange - } - } - } - else = { - scope:kin = { - add_opinion = { - target = root - modifier = respect_opinion - opinion = 20 - } - } - } - - scope:hostage = { - add_character_modifier = { - modifier = trained_by_the_uncivilized_modifier - years = 30 - } - } - - scope:kin = { - add_opinion = { - target = root - modifier = annoyed_opinion - opinion = -20 - } - } - - stress_impact = { - paranoid = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - lazy = minor_stress_impact_gain - gluttonous = miniscule_stress_impact_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_boldness = 1 - ai_energy = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = paranoid - has_trait = arrogant - has_trait = lazy - } - } - } - } -} - -#Foreign-Raised Reformer feed notification events -# by Jason Cantalini - -#Foreign ruler is pleased you're emulating them -scripted_trigger bp2_yearly_6180_ruler_trigger = { - OR = { - highest_held_title_tier >= tier_duchy - this = culture.culture_head - } - NOT = { - government_has_flag = government_is_mercenary - } - age > 8 - is_imprisoned = no - NOR = { - has_relation_rival = root - has_relation_nemesis = root - is_at_war_with = root - } - is_ai = yes - this != root -} - -bp2_yearly.6180 = { - hidden = yes - - trigger = { - is_landed = yes - exists = var:advanced_culture - var:advanced_culture = { - save_temporary_scope_as = temp_advanced_culture - } - OR = { - has_character_flag = foreign_realm_reforms - has_character_flag = foreign_ritual_reforms - has_character_flag = foreign_social_reforms - has_character_flag = foreign_maa_reforms - AND = { - exists = var:new_traditions - var:new_traditions >= 1 - } - } - any_ruler = { - culture = scope:temp_advanced_culture - bp2_yearly_6180_ruler_trigger = yes - } - } - - immediate = { - var:advanced_culture = { - save_scope_as = advanced_culture - } - random_ruler = { - limit = { - culture = scope:advanced_culture - bp2_yearly_6180_ruler_trigger = yes - } - save_scope_as = pleased_ruler - } - - send_interface_message = { - type = event_diplomacy_good_with_text - title = bp2_yearly.6180.notification_high - desc = bp2_yearly.6180_notification_tooltip_high - left_icon = scope:pleased_ruler - reverse_add_opinion = { - target = scope:pleased_ruler - modifier = emulating_culture_opinion - opinion = 25 - } - } - } -} - -#foreign parochials are upset at rejecting realm reforms -scripted_trigger bp2_yearly_6181_ruler_trigger = { - OR = { - trigger_if = { - limit = { top_liege != this } - has_vassal_stance = parochial - } - highest_held_title_tier >= tier_kingdom - this = culture.culture_head - AND = { - is_vassal_of = root - highest_held_title_tier >= tier_county - } - } - NOR = { - government_has_flag = government_is_mercenary - is_at_war_with = root - } - age > 8 - is_imprisoned = no - is_ai = yes - opinion = { - target = root - value >= -95 - } - this != root -} - -bp2_yearly.6181 = { - hidden = yes - - trigger = { - is_landed = yes - exists = var:advanced_culture - var:advanced_culture = { - save_temporary_scope_as = temp_advanced_culture - } - root = { - has_character_flag = rejecting_foreign_realm_reforms - } - any_ruler = { - culture = scope:temp_advanced_culture - bp2_yearly_6181_ruler_trigger = yes - } - } - - immediate = { - var:advanced_culture = { - save_scope_as = advanced_culture - } - random_ruler = { - limit = { - culture = scope:advanced_culture - bp2_yearly_6181_ruler_trigger = yes - } - save_scope_as = disappointed_ruler - } - - send_interface_message = { - type = event_stewardship_bad_with_text - title = bp2_yearly.6181.notification_high - desc = bp2_yearly.6181_notification_tooltip_high - left_icon = scope:disappointed_ruler - reverse_add_opinion = { - target = scope:disappointed_ruler - modifier = disappointed_opinion - opinion = -25 - } - add_stress = miniscule_stress_gain - } - } -} - -#foreign zealots are upset at rejecting ritual reforms -scripted_trigger bp2_yearly_6182_ruler_trigger = { - OR = { - trigger_if = { - limit = { top_liege != this } - has_vassal_stance = zealot - } - highest_held_title_tier >= tier_kingdom - this = culture.culture_head - AND = { - is_vassal_of = root - highest_held_title_tier >= tier_county - } - } - NOR = { - government_has_flag = government_is_mercenary - is_at_war_with = root - } - age > 8 - is_imprisoned = no - is_ai = yes - opinion = { - target = root - value >= -95 - } - this != root -} - -bp2_yearly.6182 = { - hidden = yes - - trigger = { - is_landed = yes - exists = var:advanced_culture - var:advanced_culture = { - save_temporary_scope_as = temp_advanced_culture - } - root = { - has_character_flag = rejecting_foreign_ritual_reforms - } - any_ruler = { - culture = scope:temp_advanced_culture - bp2_yearly_6182_ruler_trigger = yes - } - } - - immediate = { - var:advanced_culture = { - save_scope_as = advanced_culture - } - random_ruler = { - limit = { - culture = scope:advanced_culture - bp2_yearly_6182_ruler_trigger = yes - } - save_scope_as = disappointed_ruler - } - - send_interface_message = { - type = event_learning_bad_with_text - title = bp2_yearly.6182.notification_high - desc = bp2_yearly.6182_notification_tooltip_high - left_icon = scope:disappointed_ruler - reverse_add_opinion = { - target = scope:disappointed_ruler - modifier = disappointed_opinion - opinion = -25 - } - add_stress = miniscule_stress_gain - } - } -} - -#foreign courtlies are upset at rejecting social reforms -scripted_trigger bp2_yearly_6183_ruler_trigger = { - OR = { - trigger_if = { - limit = { top_liege != this } - has_vassal_stance = courtly - } - highest_held_title_tier >= tier_kingdom - this = culture.culture_head - AND = { - is_vassal_of = root - highest_held_title_tier >= tier_county - } - } - NOR = { - government_has_flag = government_is_mercenary - is_at_war_with = root - } - age > 8 - is_imprisoned = no - is_ai = yes - opinion = { - target = root - value >= -95 - } - this != root -} - -bp2_yearly.6183 = { - hidden = yes - - trigger = { - is_landed = yes - exists = var:advanced_culture - var:advanced_culture = { - save_temporary_scope_as = temp_advanced_culture - } - root = { - has_character_flag = rejecting_foreign_social_reforms - } - any_ruler = { - culture = scope:temp_advanced_culture - bp2_yearly_6183_ruler_trigger = yes - } - } - - immediate = { - var:advanced_culture = { - save_scope_as = advanced_culture - } - random_ruler = { - limit = { - culture = scope:advanced_culture - bp2_yearly_6183_ruler_trigger = yes - } - save_scope_as = disappointed_ruler - } - - send_interface_message = { - type = event_diplomacy_bad_with_text - title = bp2_yearly.6183.notification_high - desc = bp2_yearly.6183_notification_tooltip_high - left_icon = scope:disappointed_ruler - reverse_add_opinion = { - target = scope:disappointed_ruler - modifier = disappointed_opinion - opinion = -25 - } - add_stress = miniscule_stress_gain - } - } -} - -#foreign glory hounds are upset at rejecting maa reforms -scripted_trigger bp2_yearly_6184_ruler_trigger = { - OR = { - AND = { - is_vassal_of = root - highest_held_title_tier >= tier_county - } - AND = { - this != top_liege - has_vassal_stance = glory_hound - } - this = culture.culture_head - } - NOR = { - government_has_flag = government_is_mercenary - is_at_war_with = root - } - age > 8 - is_imprisoned = no - is_ai = yes - opinion = { - target = root - value >= -95 - } - this != root -} - -bp2_yearly.6184 = { - hidden = yes - - trigger = { - is_landed = yes - exists = var:advanced_culture - var:advanced_culture = { - save_temporary_scope_as = temp_advanced_culture - } - root = { - has_character_flag = rejecting_foreign_maa_reforms - } - any_ruler = { - culture = scope:temp_advanced_culture - bp2_yearly_6184_ruler_trigger = yes - } - } - - immediate = { - var:advanced_culture = { - save_scope_as = advanced_culture - } - random_ruler = { - limit = { - culture = scope:advanced_culture - bp2_yearly_6184_ruler_trigger = yes - } - save_scope_as = disappointed_ruler - } - - send_interface_message = { - type = event_martial_bad_with_text - title = bp2_yearly.6184.notification_high - desc = bp2_yearly.6184_notification_tooltip_high - left_icon = scope:disappointed_ruler - reverse_add_opinion = { - target = scope:disappointed_ruler - modifier = disappointed_opinion - opinion = -25 - } - add_stress = miniscule_stress_gain - } - } -} - -#knight attacked and beaten by rampaging mercenaries -scripted_trigger bp2_yearly_6185_knight_trigger = { - is_alive = yes - is_acclaimed = yes - accolade = { - accolade_rank >= 1 - } - is_imprisoned = no - is_incapable = no - NOT = { - exists = involved_activity - } - is_ai = yes -} - -bp2_yearly.6185 = { - hidden = yes - - trigger = { - is_landed = yes - exists = var:advanced_culture - root = { - has_character_flag = rejecting_foreign_maa_reforms - } - any_knight = { - bp2_yearly_6185_knight_trigger = yes - } - } - - immediate = { - var:advanced_culture = { - save_scope_as = advanced_culture - } - random_knight = { - limit = { - bp2_yearly_6185_knight_trigger = yes - } - save_scope_as = beaten_knight - } - - send_interface_message = { - type = event_martial_bad_with_text - title = bp2_yearly.6185.notification_high - desc = bp2_yearly.6185_notification_tooltip_high - left_icon = scope:beaten_knight - scope:beaten_knight = { - increase_wounds_effect = { REASON = fight } - accolade = { - add_glory = medium_glory_loss - } - } - } - } -} - -#rumours spread of court's barbarism -bp2_yearly.6186 = { - hidden = yes - - trigger = { - exists = var:advanced_culture - root = { - has_character_flag = rejecting_foreign_social_reforms - } - } - - immediate = { - var:advanced_culture = { - save_scope_as = advanced_culture - } - - send_interface_message = { - type = event_diplomacy_bad_with_text - title = bp2_yearly.6186.notification_high - desc = bp2_yearly.6186_notification_tooltip_high - if = { - limit = { - has_royal_court = yes - has_dlc_feature = royal_court - } - change_current_court_grandeur = medium_court_grandeur_loss - } - else = { - add_prestige = medium_prestige_loss - add_stress = miniscule_stress_gain - } - } - } -} - -#foreign functionaries and scholars attacked by zealots -bp2_yearly.6187 = { - hidden = yes - - trigger = { - exists = var:advanced_culture - root = { - has_character_flag = rejecting_foreign_ritual_reforms - } - culture.culture_head = root - } - - immediate = { - var:advanced_culture = { - save_scope_as = advanced_culture - } - - if = { - limit = { - any_vassal = { - vassal_stance = zealot - is_adult = yes - is_available = yes - } - } - random_vassal = { - vassal_stance = zealot - limit = { - is_adult = yes - is_available = yes - } - save_scope_as = zealot_vassal - } - send_interface_message = { - type = event_learning_bad_with_text - title = bp2_yearly.6187.notification_high - desc = bp2_yearly.6187_notification_tooltip_high - left_icon = scope:zealot_vassal - if = { - limit = { - NOT = { - has_character_modifier = dearth_of_intellectuals_modifier - } - } - add_character_modifier = { - modifier = dearth_of_intellectuals_modifier - years = 20 - } - } - else_if = { - limit = { - has_character_modifier = dearth_of_intellectuals_modifier - NOT = { - has_character_modifier = bereft_of_intellectuals_modifier - } - } - remove_character_modifier = dearth_of_intellectuals_modifier - add_character_modifier = { - modifier = bereft_of_intellectuals_modifier - years = 20 - } - } - else = { - add_learning_lifestyle_xp = -200 - add_stress = miniscule_stress_gain - } - } - } - else = { - send_interface_message = { - type = event_learning_bad_with_text - title = bp2_yearly.6187.notification_high - desc = bp2_yearly.6187_no_vassal_notification_tooltip_high - if = { - limit = { - NOT = { - has_character_modifier = dearth_of_intellectuals_modifier - } - } - add_character_modifier = { - modifier = dearth_of_intellectuals_modifier - years = 20 - } - } - else_if = { - limit = { - has_character_modifier = dearth_of_intellectuals_modifier - NOT = { - has_character_modifier = bereft_of_intellectuals_modifier - } - } - remove_character_modifier = dearth_of_intellectuals_modifier - add_character_modifier = { - modifier = bereft_of_intellectuals_modifier - years = 20 - } - } - else = { - add_learning_lifestyle_xp = -200 - add_stress = miniscule_stress_gain - } - } - } - } -} - -scripted_trigger bp2_yearly_6188_county_trigger = { - holder = { - OR = { - this = root - is_ai = yes - } - } -} - -#nobles consolidate local control -bp2_yearly.6188 = { - hidden = yes - - trigger = { - exists = var:advanced_culture - root = { - has_character_flag = rejecting_foreign_realm_reforms - } - any_realm_county = { - bp2_yearly_6188_county_trigger = yes - } - } - - immediate = { - var:advanced_culture = { - save_scope_as = advanced_culture - } - - random_realm_county = { - limit = { - bp2_yearly_6188_county_trigger = yes - development_level >= 1 - } - alternative_limit = { - bp2_yearly_6188_county_trigger = yes - } - save_scope_as = isolating_county - } - - - send_interface_message = { - type = event_stewardship_bad_with_text - title = bp2_yearly.6188.notification_high - desc = bp2_yearly.6188_notification_tooltip_high - left_icon = scope:isolating_county - if = { - limit = { - scope:isolating_county = { - development_level >= 1 - } - } - scope:isolating_county = { - change_development_level = -1 - } - } - else = { - scope:isolating_county = { - change_development_progress_with_overflow = -50 - } - } - } - } -} - -scripted_trigger bp2_yearly_6189_province_trigger = { - OR = { - county = { has_county_modifier = great_builder_modifier } - county = { has_county_modifier = massive_construction_efforts_modifier } - has_holding = yes - } -} - -#a series of new buildings collapse -bp2_yearly.6189 = { - hidden = yes - - trigger = { - exists = var:advanced_culture - root = { - has_character_flag = foreign_realm_reforms - } - any_realm_province = { - bp2_yearly_6189_province_trigger = yes - } - } - - immediate = { - var:advanced_culture = { - save_scope_as = advanced_culture - } - - random_realm_province = { - limit = { - bp2_yearly_6189_province_trigger = yes - } - save_scope_as = affected_province - } - - - send_interface_message = { - type = event_stewardship_bad_with_text - title = bp2_yearly.6189.notification_high - desc = bp2_yearly.6189_notification_tooltip_high - if = { - limit = { - NOT = { - scope:affected_province.county = { - has_county_modifier = grand_buildings_collapsed_modifier - } - } - } - scope:affected_province.county = { - add_county_modifier = { - modifier = grand_buildings_collapsed_modifier - years = 10 - } - } - } - else = { - scope:affected_province.county = { - change_county_control = minor_county_control_loss - } - } - if = { - limit = { - NOT = { - scope:affected_province = { - has_province_modifier = conscripted_warriors_modifier - } - } - } - scope:affected_province = { - add_province_modifier = { - modifier = conscripted_warriors_modifier - years = 5 - } - } - } - } - } -} - -scripted_trigger bp2_yearly_6190_county_trigger = { - holder = root -} - -#priest mob destroys new icons and ritual items -bp2_yearly.6190 = { - hidden = yes - - trigger = { - exists = var:advanced_culture - var:advanced_culture = { - save_temporary_scope_as = temp_advanced_culture - } - root = { - has_character_flag = foreign_ritual_reforms - } - any_realm_county = { - bp2_yearly_6190_county_trigger = yes - culture != scope:temp_advanced_culture - } - } - - immediate = { - var:advanced_culture = { - save_scope_as = advanced_culture - } - - random_realm_county = { - limit = { - bp2_yearly_6190_county_trigger = yes - development_level >= 1 - culture != scope:advanced_culture - } - alternative_limit = { - bp2_yearly_6190_county_trigger = yes - culture != scope:advanced_culture - } - save_scope_as = affected_county - } - - - send_interface_message = { - type = event_learning_bad_with_text - title = bp2_yearly.6190.notification_high - desc = bp2_yearly.6190_notification_tooltip_high - left_icon = scope:affected_county - remove_treasury_or_gold = medium_treasury_or_gold_value - } - } -} - -#a related culture is mad at you -scripted_trigger bp2_yearly_6191_culture_trigger = { - has_same_culture_heritage = root.culture - this != root.culture -} - -bp2_yearly.6191 = { - hidden = yes - - trigger = { - root = culture.culture_head - exists = var:advanced_culture - var:advanced_culture = { - save_temporary_scope_as = temp_advanced_culture - } - culture != scope:temp_advanced_culture - root = { - has_character_flag = foreign_social_reforms - } - any_culture_global = { - NOR = { - this = scope:temp_advanced_culture - has_same_culture_heritage = scope:temp_advanced_culture - } - bp2_yearly_6191_culture_trigger = yes - } - } - - immediate = { - var:advanced_culture = { - save_scope_as = advanced_culture - } - random_culture_global = { - limit = { - NOR = { - this = scope:advanced_culture - has_same_culture_heritage = scope:advanced_culture - } - bp2_yearly_6191_culture_trigger = yes - } - save_scope_as = annoyed_culture - } - - if = { - limit = { - exists = scope:annoyed_culture.culture_head - } - send_interface_message = { - type = event_diplomacy_bad_with_text - title = bp2_yearly.6191.notification_high - desc = bp2_yearly.6191_notification_tooltip_high - left_icon = scope:annoyed_culture.culture_head - culture = { - change_cultural_acceptance = { - target = scope:annoyed_culture - value = medium_cultural_acceptance_loss - desc = cultural_acceptance_diverging_court - } - } - add_stress = miniscule_stress_gain - } - } - else = { - send_interface_message = { - type = event_diplomacy_bad_with_text - title = bp2_yearly.6191.notification_high - desc = bp2_yearly.6191_notification_tooltip_high - culture = { - change_cultural_acceptance = { - target = scope:annoyed_culture - value = medium_cultural_acceptance_loss - desc = cultural_acceptance_diverging_court - } - } - add_stress = miniscule_stress_gain - } - } - } -} - -#Your vassals grow ever-more cynical about loyalty -scripted_trigger bp2_yearly_6192_ruler_trigger = { - age >= 13 - is_incapable = no - is_imprisoned = no - is_ai = yes - opinion = { - target = root - value <= 30 - } - NOR = { - has_trait = loyal - has_trait = trusting - has_trait = humble - } - this != root -} - -bp2_yearly.6192 = { - hidden = yes - - trigger = { - is_landed_or_landless_administrative = yes - exists = var:advanced_culture - var:advanced_culture = { - save_temporary_scope_as = temp_advanced_culture - } - root = { - has_character_flag = foreign_maa_reforms - } - any_vassal = { - culture != scope:temp_advanced_culture - bp2_yearly_6192_ruler_trigger = yes - } - } - - immediate = { - var:advanced_culture = { - save_scope_as = advanced_culture - } - random_vassal = { - limit = { - NOR = { - culture = scope:advanced_culture - highest_held_title_tier >= tier_county - } - bp2_yearly_6192_ruler_trigger = yes - } - alternative_limit = { - culture != scope:advanced_culture - bp2_yearly_6192_ruler_trigger = yes - } - save_scope_as = vassal - } - - send_interface_message = { - type = event_martial_bad_with_text - title = bp2_yearly.6192.notification_high - desc = bp2_yearly.6192_notification_tooltip_high - left_icon = scope:vassal - scope:vassal = { - add_trait = disloyal - add_opinion = { - target = root - modifier = angry_opinion - opinion = -15 - } - } - } - } -} - -#Your ability to extract taxes increases -scripted_trigger bp2_yearly_6193_ruler_trigger = { - is_imprisoned = no - NOT = { is_at_war_with = root } - is_ai = yes - NOT = { has_relation_friend = root } -} - -bp2_yearly.6193 = { - hidden = yes - - trigger = { - is_landed = yes - exists = var:advanced_culture - root = { - has_character_flag = foreign_realm_reforms - } - } - - immediate = { - var:advanced_culture = { - save_scope_as = advanced_culture - } - random_vassal = { - limit = { - bp2_yearly_6193_ruler_trigger = yes - } - save_scope_as = vassal - } - if = { - limit = { - exists = scope:vassal - scope:vassal = { vassal_contract_obligation_level_can_be_increased = feudal_government_taxes } - } - send_interface_message = { - type = event_stewardship_good_with_text - title = bp2_yearly.6193.notification_high - desc = bp2_yearly.6193_notification_tooltip_high - left_icon = scope:vassal - scope:vassal = { - vassal_contract_increase_obligation_level = feudal_government_taxes - } - } - } - else = { - send_interface_message = { - type = event_stewardship_good_with_text - title = bp2_yearly.6193.notification_high - desc = bp2_yearly.6193_notification_tooltip_high - add_stewardship_skill = 1 - } - } - } -} - -#Your vassals praise you -scripted_trigger bp2_yearly_6194_ruler_trigger = { - is_imprisoned = no - is_incapable = no - age > 11 - NOR = { - is_at_war_with = root - has_relation_rival = root - has_relation_nemesis = root - } - opinion = { - target = root - value >= 0 - } - this != root -} - -bp2_yearly.6194 = { - hidden = yes - - trigger = { - is_landed_or_landless_administrative = yes - exists = var:advanced_culture - root = { - has_character_flag = rejecting_foreign_realm_reforms - } - any_vassal = { - bp2_yearly_6194_ruler_trigger = yes - } - } - - immediate = { - var:advanced_culture = { - save_scope_as = advanced_culture - } - random_vassal = { - limit = { - bp2_yearly_6194_ruler_trigger = yes - culture = root.culture - highest_held_title_tier >= tier_county - } - alternative_limit = { - bp2_yearly_6194_ruler_trigger = yes - highest_held_title_tier >= tier_county - } - alternative_limit = { - bp2_yearly_6194_ruler_trigger = yes - } - save_scope_as = vassal - } - send_interface_message = { - type = event_stewardship_good_with_text - title = bp2_yearly.6194.notification_high - desc = bp2_yearly.6194_notification_tooltip_high - left_icon = scope:vassal - add_prestige = minor_prestige_gain - scope:vassal = { - add_opinion = { - target = root - opinion = 15 - modifier = admiration_opinion - } - } - } - } -} - -#You feel the embrace of your faith -bp2_yearly.6195 = { - hidden = yes - - trigger = { - is_landed = yes - exists = var:advanced_culture - root = { - has_character_flag = foreign_ritual_reforms - } - } - - immediate = { - var:advanced_culture = { - save_scope_as = advanced_culture - } - send_interface_message = { - type = event_learning_good_with_text - title = bp2_yearly.6195.notification_high - desc = bp2_yearly.6195_notification_tooltip_high - random_list = { - 10 = { - add_piety_experience = major_piety_value - } - 50 = { - add_piety_experience = medium_piety_value - } - 50 = { - add_stress = medium_stress_impact_loss - } - } - } - } -} - -scripted_trigger bp2_yearly_6196_priest_trigger = { - is_alive = yes - is_imprisoned = no - is_incapable = no - faith = root.faith - culture = root.culture -} - -#A priest "finds" a benediction from the divine -bp2_yearly.6196 = { - hidden = yes - - trigger = { - is_landed_or_landless_administrative = yes - exists = var:advanced_culture - root = { - has_character_flag = rejecting_foreign_ritual_reforms - } - OR = { - any_vassal = { - bp2_yearly_6196_priest_trigger = yes - government_has_flag = government_is_theocracy - } - any_courtier_or_guest = { - bp2_yearly_6196_priest_trigger = yes - is_clergy = yes - } - } - } - - immediate = { - var:advanced_culture = { - save_scope_as = advanced_culture - } - if = { - limit = { - any_vassal = { - bp2_yearly_6196_priest_trigger = yes - government_has_flag = government_is_theocracy - } - } - random_vassal = { - limit = { - bp2_yearly_6196_priest_trigger = yes - government_has_flag = government_is_theocracy - } - save_scope_as = priest - } - } - else = { - random_courtier_or_guest = { - limit = { - bp2_yearly_6196_priest_trigger = yes - is_clergy = yes - } - save_scope_as = priest - } - } - send_interface_message = { - type = event_learning_good_with_text - title = bp2_yearly.6196.notification_high - desc = bp2_yearly.6196_notification_tooltip_high - left_icon = scope:priest - add_treasury_or_gold = medium_treasury_or_gold_value - } - } -} - -scripted_trigger bp2_yearly_6197_ruler_trigger = { - is_imprisoned = no - is_incapable = no - is_ai = yes - age > 11 - NOR = { - is_at_war_with = root - has_relation_rival = root - has_relation_nemesis = root - } - opinion = { - target = root - value >= -70 - } - this != root -} - -#Vassal reacts in awe of new court splendour -bp2_yearly.6197 = { - hidden = yes - - trigger = { - is_landed_or_landless_administrative = yes - exists = var:advanced_culture - var:advanced_culture = { - save_temporary_scope_as = temp_advanced_culture - } - root = { - has_character_flag = foreign_social_reforms - } - any_vassal = { - culture != scope:temp_advanced_culture - bp2_yearly_6197_ruler_trigger = yes - } - } - - immediate = { - var:advanced_culture = { - save_scope_as = advanced_culture - } - random_vassal = { - vassal_stance = courtly - limit = { - bp2_yearly_6197_ruler_trigger = yes - highest_held_title_tier >= tier_county - culture != scope:advanced_culture - } - alternative_limit = { - bp2_yearly_6197_ruler_trigger = yes - highest_held_title_tier >= tier_county - culture != scope:advanced_culture - } - alternative_limit = { - bp2_yearly_6197_ruler_trigger = yes - culture != scope:advanced_culture - } - save_scope_as = vassal - } - send_interface_message = { - type = event_diplomacy_good_with_text - title = bp2_yearly.6197.notification_high - desc = bp2_yearly.6197_notification_tooltip_high - left_icon = scope:vassal - if = { - limit = { - has_royal_court = yes - has_dlc_feature = royal_court - } - change_current_court_grandeur = medium_court_grandeur_gain - } - else = { - add_prestige = medium_prestige_gain - } - } - } -} - -#Courtiers are grateful you're keeping the power-hungry out -scripted_trigger bp2_yearly_6198_courtier_trigger = { - is_available = yes - is_adult = yes - culture = root.culture - NOR = { - is_close_family_of = root - is_hostage_of = root - } -} - -bp2_yearly.6198 = { - hidden = yes - - trigger = { - is_landed = yes - exists = var:advanced_culture - root = { - has_character_flag = rejecting_foreign_social_reforms - } - any_courtier = { - bp2_yearly_6198_courtier_trigger = yes - } - } - - immediate = { - var:advanced_culture = { - save_scope_as = advanced_culture - } - random_courtier = { - limit = { - bp2_yearly_6198_courtier_trigger = yes - } - save_scope_as = courtier - } - send_interface_message = { - type = event_diplomacy_good_with_text - title = bp2_yearly.6198.notification_high - desc = bp2_yearly.6198_notification_tooltip_high - left_icon = scope:courtier - random_list = { - 33 = { - dynasty = { add_dynasty_prestige = miniscule_dynasty_prestige_gain } - } - 66 = { - every_courtier = { - limit = { culture != scope:advanced_culture } - custom = custom.every_non_advanced_culture_courtier - add_opinion = { - target = root - modifier = loyalty_opinion - opinion = 10 - } - } - } - } - } - } -} - -#Your knight is learning from the advanced culture mercenaries -scripted_trigger bp2_yearly_6199_knight_trigger = { - is_acclaimed = yes - is_imprisoned = no -} - -bp2_yearly.6199 = { - hidden = yes - - trigger = { - is_landed = yes - exists = var:advanced_culture - root = { - has_character_flag = foreign_maa_reforms - } - any_knight = { - bp2_yearly_6199_knight_trigger = yes - } - } - - immediate = { - var:advanced_culture = { - save_scope_as = advanced_culture - } - random_knight = { - limit = { - bp2_yearly_6199_knight_trigger = yes - } - save_scope_as = knight - } - send_interface_message = { - type = event_martial_good_with_text - title = bp2_yearly.6199.notification_high - desc = bp2_yearly.6199_notification_tooltip_high - left_icon = scope:knight - - random_list = { - 20 = { - scope:knight.accolade = { add_glory = major_glory_gain } - } - 40 = { - scope:knight.accolade = { add_glory = medium_glory_gain } - } - 40 = { - scope:knight.accolade = { add_glory = minor_glory_gain } - } - } - } - } -} - -#Your culture head/other independent ruler is proud of you -scripted_trigger bp2_yearly_6210_ruler_trigger = { - culture = root.culture - is_adult = yes - is_imprisoned = no - is_incapable = no - NOR = { - is_at_war_with = root - has_relation_rival = root - has_relation_nemesis = root - } - opinion = { - target = root - value >= -75 - } - NOR = { - government_has_flag = government_is_mercenary - this = root - } -} - -bp2_yearly.6210 = { - hidden = yes - - trigger = { - is_landed = yes - exists = var:advanced_culture - root = { - has_character_flag = rejecting_foreign_maa_reforms - } - any_ruler = { - bp2_yearly_6210_ruler_trigger = yes - OR = { - culture.culture_head = this - AND = { - is_vassal_of = root - highest_held_title_tier >= tier_kingdom - } - AND = { - NOT = { is_vassal_of = root } - highest_held_title_tier >= tier_duchy - } - } - } - } - - immediate = { - var:advanced_culture = { - save_scope_as = advanced_culture - } - random_ruler = { - limit = { - bp2_yearly_6210_ruler_trigger = yes - culture.culture_head = this - } - alternative_limit = { - bp2_yearly_6210_ruler_trigger = yes - is_vassal_of = root - highest_held_title_tier >= tier_kingdom - } - alternative_limit = { - bp2_yearly_6210_ruler_trigger = yes - NOT = { is_vassal_of = root } - } - save_scope_as = ruler - } - send_interface_message = { - type = event_martial_good_with_text - title = bp2_yearly.6210.notification_high - desc = bp2_yearly.6210_notification_tooltip_high - left_icon = scope:ruler - random_list = { - 30 = { - scope:ruler = { - add_opinion = { - target = root - modifier = pleased_opinion - opinion = 25 - } - } - } - 10 = { - trigger = { - can_add_hook = { - target = scope:ruler - type = favor_hook - } - } - add_hook = { - target = scope:ruler - type = favor_hook - } - } - } - } - } -} - -#a related culture is pleased you're affirming your identity -scripted_trigger bp2_yearly_6211_culture_trigger = { - has_same_culture_heritage = root.culture - this != root.culture -} - -bp2_yearly.6211 = { - hidden = yes - - trigger = { - root = culture.culture_head - exists = var:advanced_culture - var:advanced_culture = { - save_temporary_scope_as = temp_advanced_culture - } - culture != scope:temp_advanced_culture - root = { - OR = { - has_character_flag = rejecting_foreign_social_reforms - has_character_flag = rejecting_foreign_maa_reforms - has_character_flag = rejecting_foreign_ritual_reforms - has_character_flag = rejecting_foreign_realm_reforms - } - - } - any_culture_global = { - NOR = { - this = scope:temp_advanced_culture - has_same_culture_heritage = scope:temp_advanced_culture - } - bp2_yearly_6211_culture_trigger = yes - } - } - - immediate = { - var:advanced_culture = { - save_scope_as = advanced_culture - } - random_culture_global = { - limit = { - NOR = { - this = scope:advanced_culture - has_same_culture_heritage = scope:advanced_culture - } - bp2_yearly_6211_culture_trigger = yes - } - save_scope_as = pleased_culture - } - - if = { - limit = { - exists = scope:pleased_culture.culture_head - } - send_interface_message = { - type = event_diplomacy_good_with_text - title = bp2_yearly.6211.notification_high - desc = bp2_yearly.6211_notification_tooltip_high - left_icon = scope:pleased_culture.culture_head - culture = { - change_cultural_acceptance = { - target = scope:pleased_culture - value = medium_cultural_acceptance_gain - desc = cultural_acceptance_embracing_identity - } - } - } - } - else = { - send_interface_message = { - type = event_diplomacy_good_with_text - title = bp2_yearly.6211.notification_high - desc = bp2_yearly.6211_notification_tooltip_high - culture = { - change_cultural_acceptance = { - target = scope:pleased_culture - value = medium_cultural_acceptance_gain - desc = cultural_acceptance_embracing_identity - } - } - } - } - } -} - -#advanced culture are settling in your land -bp2_yearly.6212 = { - hidden = yes - - trigger = { - root = culture.culture_head - exists = var:advanced_culture - var:advanced_culture = { - save_temporary_scope_as = temp_advanced_culture - } - culture != scope:temp_advanced_culture - any_owned_story = { - type = story_foreign_raised_reformer - exists = var:reaffirmation_counter - var:reaffirmation_counter < 2 - } - } - - immediate = { - var:advanced_culture = { - save_scope_as = advanced_culture - } - - if = { - limit = { - exists = scope:advanced_culture.culture_head - } - send_interface_message = { - type = event_stewardship_good_with_text - title = bp2_yearly.6212.notification_high - desc = { - random_valid = { - desc = bp2_yearly.6212_notification_tooltip_high - desc = bp2_yearly.6212_2_notification_tooltip_high - } - } - left_icon = scope:advanced_culture.culture_head - culture = { - change_cultural_acceptance = { - target = scope:advanced_culture - value = medium_cultural_acceptance_gain - desc = cultural_acceptance_reformer_migration - } - } - } - } - else = { - send_interface_message = { - type = event_stewardship_good_with_text - title = bp2_yearly.6212.notification_high - desc = { - random_valid = { - desc = bp2_yearly.6212_notification_tooltip_high - desc = bp2_yearly.6212_2_notification_tooltip_high - } - } - culture = { - change_cultural_acceptance = { - target = scope:advanced_culture - value = medium_cultural_acceptance_gain - desc = cultural_acceptance_reformer_migration - } - } - } - } - } -} - -#tyranny from ruling methods -bp2_yearly.6213 = { - hidden = yes - - trigger = { - root = culture.culture_head - exists = var:advanced_culture - var:advanced_culture = { - save_temporary_scope_as = temp_advanced_culture - } - any_owned_story = { - type = story_foreign_raised_reformer - exists = var:reaffirmation_counter - var:reaffirmation_counter < 2 - } - } - - immediate = { - var:advanced_culture = { - save_scope_as = advanced_culture - } - - send_interface_message = { - type = event_martial_bad_with_text - title = bp2_yearly.6213.notification_high - desc = { - random_valid = { - desc = bp2_yearly.6213_notification_tooltip_high - desc = bp2_yearly.6213_notification_2_tooltip_high - } - } - add_tyranny = minor_tyranny_gain - } - } -} - -scripted_trigger bp2_yearly_6214_county_trigger = { - holder = root - save_temporary_scope_as = county - NOT = { - root = { - any_targeting_faction = { - any_faction_county_member = { - this = scope:county - } - } - } - } -} - -#reforms taking effect on the local level -bp2_yearly.6214 = { - hidden = yes - - trigger = { - exists = var:advanced_culture - var:advanced_culture = { - save_temporary_scope_as = temp_advanced_culture - } - any_owned_story = { - type = story_foreign_raised_reformer - exists = var:reaffirmation_counter - var:reaffirmation_counter < 2 - } - any_realm_county = { - bp2_yearly_6214_county_trigger = yes - culture != scope:temp_advanced_culture - } - } - - immediate = { - var:advanced_culture = { - save_scope_as = advanced_culture - } - - random_realm_county = { - limit = { - bp2_yearly_6214_county_trigger = yes - culture != scope:advanced_culture - } - save_scope_as = affected_county - } - - send_interface_message = { - type = event_stewardship_good_with_text - title = bp2_yearly.6214.notification_high - desc = { - random_valid = { - #enforcing new trade agreements and circulating new coins - triggered_desc = { - trigger = { - culture = { - OR = { - has_cultural_pillar = ethos_bureaucratic - has_cultural_pillar = ethos_communal - has_cultural_pillar = ethos_egalitarian - } - } - } - desc = bp2_yearly.6214_notification_1_tooltip_high - } - #laying out terms of service and fealty with local warriors - triggered_desc = { - trigger = { - culture = { - OR = { - has_cultural_pillar = ethos_bellicose - has_cultural_pillar = ethos_stoic - } - } - } - desc = bp2_yearly.6214_notification_2_tooltip_high - } - #putting men of refinement and learning in charge - triggered_desc = { - trigger = { - culture = { - OR = { - has_cultural_pillar = ethos_courtly - has_cultural_pillar = ethos_spiritual - } - } - } - desc = bp2_yearly.6214_notification_3_tooltip_high - } - } - } - left_icon = scope:affected_county - random_list = { - 50 = { - scope:affected_county = { - change_development_progress_with_overflow = minor_development_progress_gain - } - } - 50 = { - scope:affected_county = { - change_development_progress_with_overflow = minimal_development_progress_gain - } - } - } - } - } -} - -#rumour spreads of improvements -bp2_yearly.6215 = { - hidden = yes - - trigger = { - exists = var:advanced_culture - var:advanced_culture = { - save_temporary_scope_as = temp_advanced_culture - } - any_owned_story = { - type = story_foreign_raised_reformer - exists = var:reaffirmation_counter - exists = var:reform_counter - OR = { - var:reaffirmation_counter >= 1 - var:reform_counter >= 1 - } - } - } - - immediate = { - var:advanced_culture = { - save_scope_as = advanced_culture - } - - send_interface_message = { - type = event_diplomacy_good_with_text - title = bp2_yearly.6215.notification_high - desc = { - random_valid = { - #enforcing new trade agreements and circulating new coins - triggered_desc = { - trigger = { - culture = { - OR = { - has_cultural_pillar = ethos_bureaucratic - has_cultural_pillar = ethos_communal - has_cultural_pillar = ethos_egalitarian - } - } - } - desc = bp2_yearly.6215_notification_1_tooltip_high - } - #laying out terms of service and fealty with local warriors - triggered_desc = { - trigger = { - culture = { - OR = { - has_cultural_pillar = ethos_bellicose - has_cultural_pillar = ethos_stoic - } - } - } - desc = bp2_yearly.6215_notification_2_tooltip_high - } - #putting men of refinement and learning in charge - triggered_desc = { - trigger = { - culture = { - OR = { - has_cultural_pillar = ethos_courtly - has_cultural_pillar = ethos_spiritual - } - } - } - desc = bp2_yearly.6215_notification_3_tooltip_high - } - } - } - random_list = { - 10 = { - add_prestige_experience = medium_prestige_value - } - 50 = { - add_prestige_experience = minor_prestige_value - } - 50 = { - add_prestige_experience = miniscule_prestige_value - } - } - } - } -} - -#legitimacy loss from strange new customs -bp2_yearly.6216 = { - hidden = yes - - trigger = { - exists = var:advanced_culture - var:advanced_culture = { - save_temporary_scope_as = temp_advanced_culture - } - any_owned_story = { - type = story_foreign_raised_reformer - exists = var:reform_counter - var:reform_counter >= 1 - } - } - - immediate = { - var:advanced_culture = { - save_scope_as = advanced_culture - } - - send_interface_message = { - type = event_diplomacy_bad_with_text - title = bp2_yearly.6216.notification_high - desc = { - random_valid = { - desc = bp2_yearly.6216_notification_tooltip_high - desc = bp2_yearly.6216_notification_2_tooltip_high - } - } - add_legitimacy = miniscule_legitimacy_loss - } - } -} diff --git a/events/dlc/bp2/bp2_yearly_extra.txt b/events/dlc/bp2/bp2_yearly_extra.txt deleted file mode 100644 index b818b2bf8..000000000 --- a/events/dlc/bp2/bp2_yearly_extra.txt +++ /dev/null @@ -1,206 +0,0 @@ -namespace = bp2_yearly_extra - -################################ -# My Favorite Councilor # -# by Johan Husén # -# bp2_yearly_extra # -################################ - -# Gaining some skills from your councilor - -bp2_yearly_extra.0001 = { - type = character_event - content_source = dlc_009 - title = bp2_yearly_extra.0001.t - desc = bp2_yearly_extra.0001.desc - theme = education - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:target_councilor - triggered_animation = { - trigger = { - scope:target_councilor = { has_council_position = councillor_court_chaplain } - } - animation = chaplain - } - triggered_animation = { - trigger = { - scope:target_councilor = { has_council_position = councillor_steward } - } - animation = steward - } - triggered_animation = { - trigger = { - scope:target_councilor = { has_council_position = councillor_marshal } - } - animation = marshal - } - triggered_animation = { - trigger = { - scope:target_councilor = { has_council_position = councillor_spymaster } - } - animation = spymaster - } - triggered_animation = { - trigger = { - scope:target_councilor = { has_council_position = councillor_chancellor } - } - animation = chancellor - } - } - cooldown = { years = 15 } - - trigger = { - has_bp2_dlc_trigger = yes - is_available_child = yes - OR = { - AND = { - has_focus = education_diplomacy - exists = cp:councillor_chancellor - } - AND = { - has_focus = education_martial - exists = cp:councillor_marshal - } - AND = { - has_focus = education_stewardship - exists = cp:councillor_steward - } - AND = { - has_focus = education_intrigue - exists = cp:councillor_spymaster - } - AND = { - has_focus = education_learning - exists = cp:councillor_court_chaplain - } - } - } - - weight_multiplier = { - base = 1 - } - - immediate = { - if = { - limit = { - has_focus = education_diplomacy - exists = cp:councillor_chancellor - } - cp:councillor_chancellor = { save_scope_as = target_councilor } - } - else_if = { - limit = { - has_focus = education_martial - exists = cp:councillor_marshal - } - cp:councillor_marshal = { save_scope_as = target_councilor } - } - else_if = { - limit = { - has_focus = education_stewardship - exists = cp:councillor_steward - } - cp:councillor_steward = { save_scope_as = target_councilor } - } - else_if = { - limit = { - has_focus = education_intrigue - exists = cp:councillor_spymaster - } - cp:councillor_spymaster = { save_scope_as = target_councilor } - } - else_if = { - limit = { - has_focus = education_learning - exists = cp:councillor_court_chaplain - } - cp:councillor_court_chaplain = { save_scope_as = target_councilor } - } - } - - # Option A: I want to help out! - option = { - name = bp2_yearly_extra.0001.a - flavor = bp2_yearly_extra.0001.a.tt - - if = { - limit = { has_focus = education_diplomacy } - add_diplomacy_skill = 1 - } - else_if = { - limit = { has_focus = education_martial } - add_martial_skill = 1 - } - else_if = { - limit = { has_focus = education_stewardship } - add_stewardship_skill = 1 - } - else_if = { - limit = { has_focus = education_intrigue } - add_intrigue_skill = 1 - } - else_if = { - limit = { has_focus = education_learning } - add_learning_skill = 1 - } - stress_impact = { - base = miniscule_stress_impact_gain - diligent = minor_stress_impact_loss - lazy = minor_stress_impact_gain - } - scope:target_councilor = { - add_opinion = { - target = root - modifier = frustrated_opinion - opinion = -20 - } - } - ai_chance = { - base = 100 - modifier = { - has_trait = lazy - factor = 0 - } - } - } - - # Option B: I just like to see them work. - option = { - name = bp2_yearly_extra.0001.b - flavor = bp2_yearly_extra.0001.b.tt - scope:target_councilor = { - add_opinion = { - target = root - modifier = thankful_opinion - opinion = 20 - } - } - stress_impact = { - base = minor_stress_impact_loss - diligent = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - has_trait = diligent - factor = 0 - } - modifier = { - has_trait = lazy - add = 50 - } - modifier = { - has_trait = curious - add = 50 - } - modifier = { - has_trait = pensive - add = 50 - } - } - } -} diff --git a/events/dlc/bp2/story_cycles/story_cycle_pet_rock_events.txt b/events/dlc/bp2/story_cycles/story_cycle_pet_rock_events.txt deleted file mode 100644 index 6ee2a1c26..000000000 --- a/events/dlc/bp2/story_cycles/story_cycle_pet_rock_events.txt +++ /dev/null @@ -1,1066 +0,0 @@ -namespace = pet_rock - -############################################### -# ROCK (0001-0999), by Nick Meredith # -# 88 # -# 88 # -# 88 # -# 8b,dPPYba, ,adPPYba, ,adPPYba, 88 ,d8 # -# 88P' "Y8 a8" "8a a8" "" 88 ,a8" # -# 88 8b d8 8b 8888[ # -# 88 "8a, ,a8" "8a, ,aa 88`"Yba, # -# 88 `"YbbdP"' `"Ybbd8"' 88 `Y8a # -############################################### - -#You find a rock -#by Nick Meredith -pet_rock.0001 = { - type = character_event - content_source = dlc_009 - title = pet_rock.0001.t - desc = pet_rock.0001.desc - theme = pet - left_portrait = { - character = root - animation = ecstasy - } - override_background = { reference = bp2_courtyard } - cooldown = { years = 10 } - - trigger = { - has_trait = eccentric - age > 12 - is_available = yes - } - - option = { - name = pet_rock.0001.a - - trigger = { - has_trait = eccentric #To make it show up - } - - custom_tooltip = pet_rock.0001.a.tt - - start_rock_story_cycle_effect = yes - - ai_chance = { - base = 100 - } - } - - option = { - name = pet_rock.0001.b - - flavor = pet_rock.0001.b.tt - - ai_chance = { - base = 100 - } - } -} - -#Name your rock -#by Nick Meredith -pet_rock.0002 = { - type = character_event - content_source = dlc_009 - title = pet_rock.0002.t - desc = pet_rock.0002.desc - theme = pet - override_background = { reference = bp2_courtyard } - left_portrait = { - character = root - animation = ecstasy - } - - immediate = { - #To give some options to show - assign_name_options_rock_story_cycle_effect = yes - assign_name_options_rock_story_cycle_effect = yes - assign_name_options_rock_story_cycle_effect = yes - play_music_cue = "mx_cue_low_key_positive" - - if = { - limit = { is_ai = yes } - random_list = { - 10 = { - trigger = { has_character_flag = name_cliff } - set_variable = { - name = story_cycle_rock_name - value = flag:rock_name_cliff - } - } - 10 = { - trigger = { has_character_flag = name_sandy } - set_variable = { - name = story_cycle_rock_name - value = flag:rock_name_sandy - } - } - 10 = { - trigger = { has_character_flag = name_rocky } - set_variable = { - name = story_cycle_rock_name - value = flag:rock_name_rocky - } - } - 10 = { - trigger = { has_character_flag = name_crag } - set_variable = { - name = story_cycle_rock_name - value = flag:rock_name_crag - } - } - 10 = { - trigger = { has_character_flag = name_flint } - set_variable = { - name = story_cycle_rock_name - value = flag:rock_name_flint - } - } - 10 = { - trigger = { has_character_flag = name_gritty } - set_variable = { - name = story_cycle_rock_name - value = flag:rock_name_gritty - } - } - 10 = { - trigger = { has_character_flag = name_rubble } - set_variable = { - name = story_cycle_rock_name - value = flag:rock_name_rubble - } - } - 10 = { - trigger = { has_character_flag = name_tuff } - set_variable = { - name = story_cycle_rock_name - value = flag:rock_name_tuff - } - } - 10 = { - trigger = { has_character_flag = name_roxanne } - set_variable = { - name = story_cycle_rock_name - value = flag:rock_name_roxanne - } - } - 10 = { - trigger = { has_character_flag = name_rosetta } - set_variable = { - name = story_cycle_rock_name - value = flag:rock_name_rosetta - } - } - 10 = { - trigger = { has_character_flag = name_chip } - set_variable = { - name = story_cycle_rock_name - value = flag:rock_name_chip - } - } - 10 = { - trigger = { has_character_flag = name_fluffy } - set_variable = { - name = story_cycle_rock_name - value = flag:rock_name_fluffy - } - } - 10 = { - trigger = { has_character_flag = name_sten } - set_variable = { - name = story_cycle_rock_name - value = flag:rock_name_sten - } - } - 10 = { - trigger = { has_character_flag = name_barney } - set_variable = { - name = story_cycle_rock_name - value = flag:rock_name_barney - } - } - #Easter Eggs - 1 = { #The Grand Basilisk's wife, no less - trigger = { has_character_flag = name_ariadne } - set_variable = { - name = story_cycle_rock_name - value = flag:rock_name_ariadne - } - } - 1 = { #If you smelllll - trigger = { has_character_flag = name_dwayne } - set_variable = { - name = story_cycle_rock_name - value = flag:rock_name_dwayne - } - } - 1 = { #Paying tribute to a real one - trigger = { - has_character_flag = name_potapczyk - has_culture = culture:polish - } - set_variable = { - name = story_cycle_rock_name - value = flag:rock_name_potapczyk - } - } - 1 = { #Paying tribute to another real one - trigger = { - has_character_flag = name_gemma - has_culture = culture:english - } - set_variable = { - name = story_cycle_rock_name - value = flag:rock_name_gemma - } - } - } - } - } - - widget = { - gui = "event_window_widget_enter_text" - container = "dynamic_birth_name" - controller = { - type = text - data = { - key = story_cycle_rock_name - default = { - localization_key = rock_name_cliff - trigger = { - has_character_flag = name_cliff - } - } - default = { - localization_key = rock_name_sandy - trigger = { - has_character_flag = name_sandy - } - } - default = { - localization_key = rock_name_rocky - trigger = { - has_character_flag = name_rocky - } - } - default = { - localization_key = rock_name_crag - trigger = { - has_character_flag = name_crag - } - } - default = { - localization_key = rock_name_flint - trigger = { - has_character_flag = name_flint - } - } - default = { - localization_key = rock_name_gritty - trigger = { - has_character_flag = name_gritty - } - } - default = { - localization_key = rock_name_rubble - trigger = { - has_character_flag = name_rubble - } - } - default = { - localization_key = rock_name_tuff - trigger = { - has_character_flag = name_tuff - } - } - default = { - localization_key = rock_name_roxanne - trigger = { - has_character_flag = name_roxanne - } - } - default = { - localization_key = rock_name_rosetta - trigger = { - has_character_flag = name_rosetta - } - } - default = { - localization_key = rock_name_chip - trigger = { - has_character_flag = name_chip - } - } - default = { - localization_key = rock_name_fluffy - trigger = { - has_character_flag = name_fluffy - } - } - default = { - localization_key = rock_name_sten - trigger = { - has_character_flag = name_sten - } - } - default = { - localization_key = rock_name_barney - trigger = { - has_character_flag = name_barney - } - } - default = { - localization_key = rock_name_ariadne - trigger = { - has_character_flag = name_ariadne - } - } - default = { - localization_key = rock_name_dwayne - trigger = { - has_character_flag = name_dwayne - } - } - default = { - localization_key = rock_name_potapczyk - trigger = { - has_character_flag = name_potapczyk - } - } - default = { - localization_key = rock_name_gemma - trigger = { - has_character_flag = name_gemma - } - } - } - } - setup_scope = { - root = { save_scope_as = text_target } - } - } - - option = { - name = pet_rock.0002.a - } - - after = { - remove_character_flag = is_naming_rock - remove_character_flag = name_cliff - remove_character_flag = name_sandy - remove_character_flag = name_rocky - remove_character_flag = name_crag - remove_character_flag = name_flint - remove_character_flag = name_gritty - remove_character_flag = name_rubble - remove_character_flag = name_tuff - remove_character_flag = name_roxanne - remove_character_flag = name_rosetta - remove_character_flag = name_chip - remove_character_flag = name_fluffy - remove_character_flag = name_sten - remove_character_flag = name_barney - remove_character_flag = name_ariadne - remove_character_flag = name_dwayne - remove_character_flag = name_potapczyk - remove_character_flag = name_gemma - - if = { - # We entered custom text into the pop up - limit = { NOT = { has_variable = story_cycle_rock_name } } - set_variable = { - name = story_cycle_rock_name - value = flag:custom - } - } - random_owned_story = { - limit = { story_type = story_cycle_pet_rock } - set_variable = { - name = story_cycle_rock_name - value = story_owner.var:story_cycle_rock_name - } - } - } -} - -#Chill with your rock and lose stress -#by Nick Meredith -pet_rock.0100 = { - type = character_event - content_source = dlc_009 - title = pet_rock.0100.t - desc = pet_rock.0100.desc - theme = pet - left_portrait = { - character = root - animation = personality_content - } - override_background = { reference = relaxing_room } - cooldown = { years = 10 } - - trigger = { - is_available_healthy_adult = yes - stress > normal_baseline_stress - } - - option = { - name = pet_rock.0100.a - add_stress = medium_stress_loss - - ai_chance = { - base = 100 - } - } -} - -#Your rock wants a polish -#by Nick Meredith -pet_rock.0101 = { - type = character_event - content_source = dlc_009 - title = pet_rock.0101.t - desc = pet_rock.0101.desc - theme = pet - left_portrait = { - character = root - animation = eyeroll - } - override_background = { reference = relaxing_room } - cooldown = { years = 10 } - - trigger = { - is_available = yes - stress > normal_baseline_stress - } - - option = { - name = pet_rock.0101.a - - remove_short_term_gold = 5 - - add_stress = medium_stress_loss - - ai_chance = { - base = 100 - } - } - - option = { - name = pet_rock.0101.b - - stress_impact = { - base = miniscule_stress_impact_gain - greedy = medium_stress_impact_loss - generous = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - } - } -} - -#Your rock wants a bath -#by Nick Meredith -pet_rock.0102 = { - type = character_event - content_source = dlc_009 - title = pet_rock.0102.t - desc = pet_rock.0102.desc - theme = pet - left_portrait = { - character = root - animation = worry - } - override_background = { reference = relaxing_room } - cooldown = { years = 10 } - - trigger = { - is_available_healthy_adult = yes - stress > normal_baseline_stress - is_landed = yes - } - - option = { - name = pet_rock.0102.a - - add_prestige = miniscule_prestige_loss - - add_stress = medium_stress_loss - - ai_chance = { - base = 100 - } - } - - option = { - name = pet_rock.0102.b - - stress_impact = { - base = miniscule_stress_impact_gain - diligent = medium_stress_impact_loss - lazy = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - } - } -} - -#You sneak your rock some mint -#by Nick Meredith -pet_rock.0103 = { - type = character_event - content_source = dlc_009 - title = pet_rock.0103.t - desc = pet_rock.0103.desc - theme = pet - left_portrait = { - character = root - animation = worry - } - override_background = { reference = feast } - cooldown = { years = 10 } - - trigger = { - is_available = yes - stress > normal_baseline_stress - } - - option = { - name = pet_rock.0103.a - - add_prestige = minor_prestige_loss - - add_character_modifier = { - modifier = sated_stone_modifier - years = 10 - } - - stress_impact = { - base = miniscule_stress_impact_loss - diligent = medium_stress_impact_gain - ambitious = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = diligent - has_trait = ambitious - } - } - } - } - - option = { - name = pet_rock.0103.b - - stress_impact = { - base = miniscule_stress_impact_gain - diligent = medium_stress_impact_loss - ambitious = medium_stress_impact_loss - } - - ai_chance = { - base = 50 - } - } -} - -#You lose your rock -#by Nick Meredith -pet_rock.0104 = { - type = character_event - content_source = dlc_009 - title = pet_rock.0104.t - desc = pet_rock.0104.desc - theme = pet - left_portrait = { - character = root - animation = stress - } - override_background = { reference = study } - cooldown = { years = 10 } - - trigger = { - is_available = yes - } - - option = { - name = pet_rock.0104.a - - trigger = { - OR = { - has_trait = arbitrary - has_trait = fickle - } - } - - stress_impact = { - base = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - } - } - - option = { - name = pet_rock.0104.b - - duel = { - skill = intrigue - value = average_skill_rating - 70 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = pet_rock.0104.b.success - send_interface_toast = { - title = pet_rock.0104.b.success - left_icon = root - - add_stress = minor_stress_loss - } - } - 30 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = pet_rock.0104.b.failure - send_interface_toast = { - title = pet_rock.0104.b.failure - left_icon = root - - custom_tooltip = pet_rock.0104.b.failure.tt - - add_character_modifier = { - modifier = lost_rock_modifier - years = 15 - } - - random_owned_story = { - type = story_cycle_pet_rock - end_story = yes - } - } - } - } - - ai_chance = { - base = 100 - } - } - - option = { - name = pet_rock.0104.c - - random_owned_story = { - type = story_cycle_pet_rock - end_story = yes - } - - custom_tooltip = pet_rock.0104.c.tt - - stress_impact = { - base = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - } - } -} - -#You meet another rock owner -#by Nick Meredith -pet_rock.0105 = { - type = character_event - content_source = dlc_009 - title = pet_rock.0105.t - desc = pet_rock.0105.desc - theme = pet - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:other_rock_owner - animation = ecstasy - } - cooldown = { years = 10 } - - trigger = { - is_available = yes - - any_courtier_or_guest = { - location = root.location - has_trait = eccentric - is_ai = yes - owns_story_of_type = story_cycle_pet_rock - } - } - - immediate = { - random_courtier_or_guest = { - limit = { - location = root.location - has_trait = eccentric - is_ai = yes - owns_story_of_type = story_cycle_pet_rock - } - save_scope_as = other_rock_owner - } - } - - option = { - name = pet_rock.0105.a - - trigger = { - OR = { - has_trait = callous - has_trait = sadistic - has_trait = arrogant - } - } - - progress_towards_rival_effect = { - REASON = rival_insulted_rock - CHARACTER = scope:other_rock_owner - OPINION = default_rival_opinion - } - - stress_impact = { - base = minor_stress_impact_loss - callous = minor_stress_impact_loss - sadistic = minor_stress_impact_loss - compassionate = medium_stress_impact_gain - humble = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = -1 - ai_vengefulness = 1 - } - } - } - - option = { - name = pet_rock.0105.b - - progress_towards_friend_effect = { - REASON = friend_rock_playdate - CHARACTER = scope:other_rock_owner - OPINION = default_friend_opinion - } - - stress_impact = { - callous = medium_stress_impact_gain - sadistic = medium_stress_impact_gain - gregarious = minor_stress_impact_loss - shy = medium_stress_impact_gain - compassionate = minor_stress_impact_loss - humble = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - ai_vengefulness = -1 - } - } - } - - option = { - name = pet_rock.0105.c - - reverse_add_opinion = { - modifier = disappointed_opinion - target = scope:other_rock_owner - opinion = -10 - } - - stress_impact = { - gregarious = medium_stress_impact_gain - shy = medium_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = -1 - ai_vengefulness = -1 - } - } - } -} - -#Your rock falls off a desk -#by Nick Meredith -pet_rock.0106 = { - type = character_event - content_source = dlc_009 - title = pet_rock.0106.t - desc = pet_rock.0106.desc - theme = pet - override_background = { reference = study } - left_portrait = { - character = root - animation = laugh - } - - trigger = { - is_available_healthy_adult = yes - is_landed = yes - } - - cooldown = { years = 15 } - - option = { # Add dopey cat modifier - name = pet_rock.0106.a - add_character_modifier = { - modifier = rock_dopey_modifier - years = 10 - } - - ai_chance = { - base = 100 - } - } -} - -#You make your pet rock a little house -#by Nick Meredith -pet_rock.0107 = { - type = character_event - content_source = dlc_009 - title = pet_rock.0107.t - desc = pet_rock.0107.desc - theme = pet - left_portrait = { - character = root - animation = worry - } - override_background = { reference = courtyard } - - cooldown = { years = 10 } - - trigger = { - is_available_healthy_adult = yes - is_landed = yes - } - - # Rocky can stay with me in my bed! - option = { - name = pet_rock.0107.a - - trigger = { - has_trait = compassionate - } - - add_prestige = miniscule_prestige_loss - - add_character_modifier = { - modifier = bp2_bed_rock_modifier - years = 20 - } - - stress_impact = { - base = major_stress_impact_loss - lustful = medium_stress_impact_gain #You're cramping my style, Rocky! - lazy = miniscule_stress_impact_loss - diligent = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - ai_rationality = -1 - } - } - } - - # I'll try making a little house - option = { - name = pet_rock.0107.b - - duel = { - skills = { learning prowess } - value = decent_skill_rating - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = pet_rock.0107.b.success - send_interface_toast = { - title = pet_rock.0107.b.success - left_icon = root - - add_prestige = miniscule_prestige_gain - add_stress = medium_stress_loss - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = pet_rock.0107.b.failure - send_interface_toast = { - title = pet_rock.0107.b.failure - left_icon = root - - add_character_modifier = { - modifier = bp2_sore_thumb_modifier - years = 5 - } - } - } - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 1 - ai_honor = 0.5 - } - } - } - - # Maybe he is an outside kinda rock? - option = { - name = pet_rock.0107.c - - stress_impact = { - content = minor_stress_impact_loss - lazy = minor_stress_impact_loss - greedy = miniscule_stress_impact_loss - ambitious = minor_stress_impact_gain - diligent = medium_stress_impact_gain - generous = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = -1 - ai_rationality = 0.5 - } - } - } -} - -#You have the option to ensconce your rock in your home -#by Nick Meredith -pet_rock.0108 = { - type = character_event - content_source = dlc_009 - title = pet_rock.0108.t - desc = { - desc = pet_rock.0108.desc - first_valid = { - triggered_desc = { - trigger = { has_government = landless_adventurer_government } - desc = pet_rock.0108.adventurer - } - desc = pet_rock.0108.landed - } - } - theme = pet - left_portrait = { - character = root - animation = thinking - } - override_background = { reference = courtyard } - - cooldown = { years = 10 } - - trigger = { - is_available_healthy_adult = yes - is_landed = yes - exists = root.capital_province - location = root.capital_province - } - - immediate = { - root.capital_province = { - save_scope_as = rock_house - } - } - - # I shall enshrine Rocky in my very home! - option = { - name = { - text = pet_rock.0108.a - trigger = { is_landless_adventurer = no } - } - name = { - text = pet_rock.0108.a.adventurer - trigger = { has_government = landless_adventurer_government } - } - - custom_tooltip = pet_rock.0108.a.tt - - scope:rock_house = { - add_province_modifier = { - modifier = bp2_solid_foundations_modifier - years = 30 - } - } - - random_owned_story = { - type = story_cycle_pet_rock - end_story = yes - } - - stress_impact = { - base = miniscule_stress_impact_gain #Sad to not have him with you at all times - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = -0.5 - ai_rationality = 1 - } - } - } - - # Rocky can stay with me. - option = { - name = pet_rock.0108.b - - flavor = pet_rock.0108.b.tt - - add_character_modifier = { - modifier = bp2_valued_friendship_modifier - years = 30 - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 1 - ai_honor = 0.5 - } - } - } -} diff --git a/events/dlc/bp3/bp3_court_position_events.txt b/events/dlc/bp3/bp3_court_position_events.txt deleted file mode 100644 index 692e2c5cb..000000000 --- a/events/dlc/bp3/bp3_court_position_events.txt +++ /dev/null @@ -1,210 +0,0 @@ -namespace = bp3_court_position - -# Court Brewmaster upkeep event -bp3_court_position.100 = { - type = character_event - hidden = yes - - trigger = { - NOT = { has_variable = experimental_brew_cooldown } - exists = court_position:court_brewmaster_court_position - has_variable = active_experimental_brew - } - - immediate = { - # Set a cooldown, so it can only happen once every 6 months - set_variable = { - name = experimental_brew_cooldown - days = 179 - } - - set_variable = { - name = experimental_brew_creator - value = court_position:court_brewmaster_court_position - } - - # Find what kind of drink it is (see 00_court_position_modifiers for a list of modifiers) - random_list = { - 3 = { # Negative Drinks - add_character_flag = experimental_brew_negative - } - 1 = { # Childish Drinks - trigger = { - any_child = { - count >= 1 - is_adult = no - age >= 6 - } - } - add_character_flag = experimental_brew_childish - random_child = { - limit = { - is_adult = no - age >= 6 - } - root = { - set_variable = { - name = experimental_brew_child - value = prev - } - } - } - } - 10 = { # Positive Drinks - add_character_flag = experimental_brew_positive - } - 3 = { # Very Positive Drinks - add_character_flag = experimental_brew_very_positive - } - } - - # Assign modifier and name - switch = { - trigger = has_character_flag - experimental_brew_negative = { - random_list = { - 1 = { # Health - court_brewmaster_assign_modifier_positive_effect = { - MODIFIER = small_health_negative - } - } - 1 = { # Courtier and Guest Opinion - court_brewmaster_assign_modifier_positive_effect = { - MODIFIER = court_guest_opinion_negative - } - } - 1 = { # Negative Prestige - court_brewmaster_assign_modifier_positive_effect = { - MODIFIER = prestige_negative - } - } - 1 = { # Negative Piety - court_brewmaster_assign_modifier_positive_effect = { - MODIFIER = piety_negative - } - } - } - } - experimental_brew_childish = { - # Child Opinion - court_brewmaster_assign_modifier_positive_effect = { - MODIFIER = child_opinion - } - } - experimental_brew_positive = { - random_list = { - 1 = { # Diplomacy - court_brewmaster_assign_modifier_positive_effect = { - MODIFIER = diplomacy - } - } - 1 = { # Martial - court_brewmaster_assign_modifier_positive_effect = { - MODIFIER = martial - } - } - 1 = { # Stewardship - court_brewmaster_assign_modifier_positive_effect = { - MODIFIER = stewardship - } - } - 1 = { # Intrigue - court_brewmaster_assign_modifier_positive_effect = { - MODIFIER = intrigue - } - } - 1 = { # Learning - court_brewmaster_assign_modifier_positive_effect = { - MODIFIER = learning - } - } - 1 = { # Prowess - court_brewmaster_assign_modifier_positive_effect = { - MODIFIER = prowess - } - } - 1 = { # Courtier and Guest Opinion - court_brewmaster_assign_modifier_positive_effect = { - MODIFIER = court_guest_opinion_positive - } - } - 1 = { # Courtly Opinion - court_brewmaster_assign_modifier_positive_effect = { - MODIFIER = courtly_opinion - } - } - 1 = { # Prestige - court_brewmaster_assign_modifier_positive_effect = { - MODIFIER = prestige_positive - } - } - 1 = { # Piety - court_brewmaster_assign_modifier_positive_effect = { - MODIFIER = piety_positive - } - } - 1 = { # Attraction Opinion - court_brewmaster_assign_modifier_positive_effect = { - MODIFIER = attraction_opinion - } - } - 1 = { # Fertility - court_brewmaster_assign_modifier_positive_effect = { - MODIFIER = fertility - } - } - } - } - experimental_brew_very_positive = { - random_list = { - 1 = { # General Opinion - court_brewmaster_assign_modifier_positive_effect = { - MODIFIER = general_opinion - } - } - 1 = { # Stress Loss - court_brewmaster_assign_modifier_positive_effect = { - MODIFIER = stress_loss - } - } - 1 = { # Renown - court_brewmaster_assign_modifier_positive_effect = { - MODIFIER = renown - } - } - 1 = { # Fascination - trigger = { - root.culture.culture_head = root - } - court_brewmaster_assign_modifier_positive_effect = { - MODIFIER = fascination - } - } - 1 = { # Monthly Income - court_brewmaster_assign_modifier_positive_effect = { - MODIFIER = monthly_income - } - } - 1 = { # Health - court_brewmaster_assign_modifier_positive_effect = { - MODIFIER = small_health_positive - } - } - } - } - } - - ### Clean up - remove_character_flag = experimental_brew_negative - remove_character_flag = experimental_brew_childish - remove_character_flag = experimental_brew_positive - remove_character_flag = experimental_brew_very_positive - remove_variable = experimental_brew_child - remove_variable = experimental_brew_creator - - trigger_event = { - id = bp3_court_position.100 - months = 6 - } - } -} diff --git a/events/dlc/bp3/bp3_journey_events.txt b/events/dlc/bp3/bp3_journey_events.txt index 56b66d2a9..cf4e88ae1 100644 --- a/events/dlc/bp3/bp3_journey_events.txt +++ b/events/dlc/bp3/bp3_journey_events.txt @@ -200,9 +200,12 @@ bp3_journey.0010 = { } } } - random = { - chance = scope:activity.var:skill_chance - save_scope_as = extra_skill_gained + if = { # Only set once journey_knowledge_hoarding_skill_effect has run at least once + limit = { exists = scope:activity.var:skill_chance } + random = { + chance = scope:activity.var:skill_chance + save_scope_as = extra_skill_gained + } } } @@ -699,6 +702,7 @@ bp3_journey.1000 = { location = scope:location culture = scope:location.culture faith = scope:location.faith + rite = scope:location.rite save_scope_as = local_character } scope:local_character = { @@ -831,7 +835,7 @@ bp3_journey.1000 = { journey_knowledge_hoarding_skill_effect = { VALUE = 15 } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_gain lazy = minor_stress_impact_gain } @@ -871,7 +875,7 @@ bp3_journey.1000 = { } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_gain } @@ -911,7 +915,7 @@ bp3_journey.1000 = { } } - stress_impact = { + stress_and_fulfillment_impact = { chaste = minor_stress_impact_gain } @@ -940,7 +944,7 @@ bp3_journey.1000 = { } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain } @@ -969,7 +973,7 @@ bp3_journey.1000 = { COURT_POSITION = antiquarian } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_gain } @@ -1095,7 +1099,7 @@ bp3_journey.1100 = { journey_knowledge_hoarding_skill_effect = { VALUE = 10 } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain lazy = minor_stress_impact_gain } @@ -1127,7 +1131,7 @@ bp3_journey.1100 = { } } - stress_impact = { + stress_and_fulfillment_impact = { callous = medium_stress_impact_gain sadistic = medium_stress_impact_gain arrogant = medium_stress_impact_gain @@ -1168,7 +1172,7 @@ bp3_journey.1100 = { } } - stress_impact = { + stress_and_fulfillment_impact = { humble = medium_stress_impact_gain content = minor_stress_impact_gain shy = minor_stress_impact_gain @@ -1234,7 +1238,7 @@ bp3_journey.1100 = { remove_list_variable = { name = grafitti target = scope:ancient_vandal } } - stress_impact = { + stress_and_fulfillment_impact = { humble = major_stress_impact_gain craven = minor_stress_impact_gain } @@ -1254,7 +1258,7 @@ bp3_journey.1100 = { option = { name = bp3_journey.1100.c - stress_impact = { + stress_and_fulfillment_impact = { paranoid = major_stress_impact_loss arrogant = minor_stress_impact_gain } @@ -1325,6 +1329,7 @@ bp3_journey.1200 = { location = scope:location culture = scope:location.culture faith = scope:location.faith + rite = scope:location.rite save_scope_as = local_character } scope:local_character = { @@ -1392,7 +1397,7 @@ bp3_journey.1200 = { journey_knowledge_hoarding_skill_effect = { VALUE = 15 } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_gain lazy = major_stress_impact_gain } @@ -1439,7 +1444,7 @@ bp3_journey.1200 = { } } - stress_impact = { + stress_and_fulfillment_impact = { callous = medium_stress_impact_gain sadistic = medium_stress_impact_gain paranoid = minor_stress_impact_gain @@ -1489,7 +1494,7 @@ bp3_journey.1200 = { } } - stress_impact = { + stress_and_fulfillment_impact = { humble = medium_stress_impact_gain content = minor_stress_impact_gain shy = minor_stress_impact_gain @@ -1521,7 +1526,7 @@ bp3_journey.1200 = { COURT_POSITION = court_physician } - stress_impact = { + stress_and_fulfillment_impact = { humble = major_stress_impact_gain craven = minor_stress_impact_gain } @@ -1543,7 +1548,7 @@ bp3_journey.1200 = { add_prestige = minor_prestige_gain - stress_impact = { + stress_and_fulfillment_impact = { paranoid = major_stress_impact_gain arrogant = minor_stress_impact_gain } @@ -1650,6 +1655,7 @@ bp3_journey.1300 = { location = scope:location culture = scope:location.culture faith = scope:location.faith + rite = scope:location.rite save_scope_as = local_character } scope:local_character = { @@ -1714,6 +1720,7 @@ bp3_journey.1300 = { location = scope:location culture = scope:location.culture faith = scope:location.faith + rite = scope:location.rite save_scope_as = local_character } scope:local_character = { @@ -1784,6 +1791,7 @@ bp3_journey.1300 = { location = scope:location culture = scope:location.culture faith = scope:location.faith + rite = scope:location.rite save_scope_as = local_character_2 } scope:local_character_2 = { @@ -1850,6 +1858,7 @@ bp3_journey.1300 = { location = scope:location culture = scope:location.culture faith = scope:location.faith + rite = scope:location.rite save_scope_as = local_character_2 } scope:local_character_2 = { @@ -1886,6 +1895,14 @@ bp3_journey.1300 = { is_valid_to_hire_court_position_type = court_musician_court_position NOT = { employs_court_position = court_musician_court_position } } + AND = { + is_valid_to_hire_court_position_type = master_bard_camp_officer + NOT = { employs_court_position = master_bard_camp_officer } + } + AND = { + is_valid_to_hire_court_position_type = stooge_camp_officer + NOT = { employs_court_position = stooge_camp_officer } + } } } modifier = { @@ -1904,7 +1921,7 @@ bp3_journey.1300 = { journey_knowledge_hoarding_skill_effect = { VALUE = 10 } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain lazy = major_stress_impact_gain } @@ -1934,7 +1951,7 @@ bp3_journey.1300 = { add_prestige = medium_prestige_gain - stress_impact = { + stress_and_fulfillment_impact = { humble = minor_stress_impact_gain content = major_stress_impact_gain } @@ -1962,12 +1979,14 @@ bp3_journey.1300 = { CHARACTER = scope:local_character COURT_POSITION = court_jester LAAMP_POSITION = stooge + CURRENT_HOLDER = scope:current_holder } hire_for_court_position_journey_laamp_replacement_effect = { CHARACTER = scope:local_character_2 COURT_POSITION = court_musician LAAMP_POSITION = master_bard + CURRENT_HOLDER = scope:current_holder_2 } if = { @@ -1983,7 +2002,7 @@ bp3_journey.1300 = { } } - stress_impact = { + stress_and_fulfillment_impact = { callous = medium_stress_impact_gain sadistic = medium_stress_impact_gain paranoid = minor_stress_impact_gain @@ -2017,9 +2036,10 @@ bp3_journey.1300 = { CHARACTER = scope:local_character COURT_POSITION = court_jester LAAMP_POSITION = stooge + CURRENT_HOLDER = scope:current_holder } - stress_impact = { + stress_and_fulfillment_impact = { humble = minor_stress_impact_gain content = minor_stress_impact_gain shy = minor_stress_impact_gain @@ -2053,9 +2073,10 @@ bp3_journey.1300 = { CHARACTER = scope:local_character_2 COURT_POSITION = court_musician LAAMP_POSITION = master_bard + CURRENT_HOLDER = scope:current_holder_2 } - stress_impact = { + stress_and_fulfillment_impact = { humble = medium_stress_impact_gain content = minor_stress_impact_gain shy = minor_stress_impact_gain @@ -2079,7 +2100,7 @@ bp3_journey.1300 = { add_prestige = minor_prestige_gain - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss } @@ -2200,6 +2221,7 @@ bp3_journey.1400 = { location = scope:location culture = scope:location.culture faith = scope:location.faith + rite = scope:location.rite save_scope_as = local_character } scope:local_character = { @@ -2242,6 +2264,7 @@ bp3_journey.1400 = { location = scope:location culture = scope:location.culture faith = scope:location.faith + rite = scope:location.rite save_scope_as = local_character } scope:local_character = { @@ -2330,7 +2353,7 @@ bp3_journey.1400 = { journey_knowledge_hoarding_skill_effect = { VALUE = 15 } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_gain lazy = major_stress_impact_gain } @@ -2372,7 +2395,7 @@ bp3_journey.1400 = { } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_gain arrogant = minor_stress_impact_gain } @@ -2405,7 +2428,7 @@ bp3_journey.1400 = { } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain humble = minor_stress_impact_gain } @@ -2436,7 +2459,7 @@ bp3_journey.1400 = { COURT_POSITION = master_of_hunt } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_gain arrogant = minor_stress_impact_gain } @@ -2570,6 +2593,7 @@ bp3_journey.1500 = { location = scope:location culture = scope:location.culture faith = scope:location.faith + rite = scope:location.rite save_scope_as = local_character } scope:local_character = { @@ -2640,6 +2664,7 @@ bp3_journey.1500 = { location = scope:location culture = scope:location.culture faith = scope:location.faith + rite = scope:location.rite save_scope_as = local_character } scope:local_character = { @@ -2704,6 +2729,7 @@ bp3_journey.1500 = { location = scope:location culture = scope:location.culture faith = scope:location.faith + rite = scope:location.rite save_scope_as = local_character } scope:local_character = { @@ -2773,6 +2799,7 @@ bp3_journey.1500 = { location = scope:location culture = scope:location.culture faith = scope:location.faith + rite = scope:location.rite save_scope_as = local_character_2 } scope:local_character_2 = { @@ -2839,6 +2866,7 @@ bp3_journey.1500 = { location = scope:location culture = scope:location.culture faith = scope:location.faith + rite = scope:location.rite save_scope_as = local_character_2 } scope:local_character_2 = { @@ -2922,7 +2950,7 @@ bp3_journey.1500 = { target = scope:local_character_2 } - stress_impact = { + stress_and_fulfillment_impact = { humble = minor_stress_impact_gain content = major_stress_impact_gain } @@ -2954,7 +2982,7 @@ bp3_journey.1500 = { journey_knowledge_hoarding_skill_effect = { VALUE = 15 } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain lazy = major_stress_impact_gain } @@ -2973,6 +3001,15 @@ bp3_journey.1500 = { name = bp3_journey.1500.curiosity trigger = { has_activity_intent = journey_curiosity_intent + OR = { + is_valid_to_hire_court_position_type = chief_qadi_court_position + is_valid_to_hire_court_position_type = high_almoner_court_position + is_valid_to_hire_court_position_type = chief_forager_camp_officer + } + OR = { + is_valid_to_hire_court_position_type = seneschal_court_position + is_valid_to_hire_court_position_type = quartermaster_camp_officer + } } hire_for_two_court_position_journey_laamp_replacement_effect = { @@ -2980,15 +3017,17 @@ bp3_journey.1500 = { COURT_POSITION = chief_qadi COURT_POSITION_2 = high_almoner LAAMP_POSITION = chief_forager + CURRENT_HOLDER = scope:current_holder } - hire_for_court_position_journey_laamp_replacement_effect_2 = { + hire_for_court_position_journey_laamp_replacement_effect = { CHARACTER = scope:local_character_2 COURT_POSITION = seneschal LAAMP_POSITION = quartermaster + CURRENT_HOLDER = scope:current_holder_2 } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_gain arrogant = minor_stress_impact_gain } @@ -3036,7 +3075,7 @@ bp3_journey.1500 = { } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain arrogant = minor_stress_impact_gain arbitrary = minor_stress_impact_gain @@ -3073,9 +3112,10 @@ bp3_journey.1500 = { COURT_POSITION = chief_qadi COURT_POSITION_2 = high_almoner LAAMP_POSITION = chief_forager + CURRENT_HOLDER = scope:current_holder } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_gain arrogant = minor_stress_impact_gain } @@ -3103,13 +3143,14 @@ bp3_journey.1500 = { NOT = { has_activity_intent = journey_curiosity_intent } } - hire_for_court_position_journey_laamp_replacement_effect_2 = { + hire_for_court_position_journey_laamp_replacement_effect = { CHARACTER = scope:local_character_2 COURT_POSITION = seneschal LAAMP_POSITION = quartermaster + CURRENT_HOLDER = scope:current_holder_2 } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_gain arrogant = minor_stress_impact_gain } @@ -3217,7 +3258,7 @@ bp3_journey.1600 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain lazy = major_stress_impact_gain } @@ -3253,7 +3294,7 @@ bp3_journey.1600 = { remove_short_term_gold = minor_gold_value add_prestige = minor_prestige_gain - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_gain arrogant = minor_stress_impact_gain } @@ -3279,7 +3320,7 @@ bp3_journey.1600 = { days = 5 } - stress_impact = { + stress_and_fulfillment_impact = { sadistic = minor_stress_impact_gain callous = minor_stress_impact_gain } @@ -3301,7 +3342,7 @@ bp3_journey.1600 = { add_prestige = miniscule_prestige_gain - stress_impact = { + stress_and_fulfillment_impact = { compassionate = major_stress_impact_gain } @@ -3394,7 +3435,7 @@ bp3_journey.1700 = { } random_court_position_holder = { type = head_groom_camp_officer - save_scope_as = current_holder + save_scope_as = current_horse_holder } } } @@ -3407,6 +3448,7 @@ bp3_journey.1700 = { location = scope:location culture = scope:location.culture faith = scope:location.faith + rite = scope:location.rite save_scope_as = local_character } scope:local_character = { @@ -3423,7 +3465,7 @@ bp3_journey.1700 = { } random_court_position_holder = { type = head_groom_camp_officer - save_scope_as = current_holder + save_scope_as = current_horse_holder } } } @@ -3461,7 +3503,7 @@ bp3_journey.1700 = { } random_court_position_holder = { type = master_of_horse_court_position - save_scope_as = current_holder + save_scope_as = current_horse_holder } } } @@ -3471,6 +3513,7 @@ bp3_journey.1700 = { location = scope:location culture = scope:location.culture faith = scope:location.faith + rite = scope:location.rite save_scope_as = local_character } scope:local_character = { @@ -3487,7 +3530,7 @@ bp3_journey.1700 = { } random_court_position_holder = { type = master_of_horse_court_position - save_scope_as = current_holder + save_scope_as = current_horse_holder } } } @@ -3527,9 +3570,10 @@ bp3_journey.1700 = { location = scope:location culture = scope:location.culture faith = scope:location.faith + rite = scope:location.rite save_scope_as = local_character_2 } - scope:local_character = { + scope:local_character_2 = { add_character_flag = { flag = silently_disappear_me years = 1 @@ -3574,9 +3618,10 @@ bp3_journey.1700 = { location = scope:location culture = scope:location.culture faith = scope:location.faith + rite = scope:location.rite save_scope_as = local_character_3 } - scope:local_character = { + scope:local_character_3 = { add_character_flag = { flag = silently_disappear_me years = 1 @@ -3697,7 +3742,7 @@ bp3_journey.1700 = { target = scope:local_character_3 } - stress_impact = { + stress_and_fulfillment_impact = { humble = minor_stress_impact_gain content = major_stress_impact_gain } @@ -3753,9 +3798,10 @@ bp3_journey.1700 = { CHARACTER = scope:local_character COURT_POSITION = master_of_horse LAAMP_POSITION = head_groom + CURRENT_HOLDER = scope:current_horse_holder } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_gain lazy = minor_stress_impact_gain } @@ -3782,10 +3828,9 @@ bp3_journey.1700 = { CHARACTER = scope:local_character COURT_POSITION = master_of_horse LAAMP_POSITION = head_groom + CURRENT_HOLDER = scope:current_holder_2 } - add_character_flag = bodyguard_flag - hire_for_court_position_journey_effect = { CHARACTER = scope:local_character_2 COURT_POSITION = bodyguard @@ -3796,8 +3841,6 @@ bp3_journey.1700 = { COURT_POSITION = bodyguard } - remove_character_flag = bodyguard_flag - if = { limit = { culture != scope:local_character.culture @@ -3811,7 +3854,7 @@ bp3_journey.1700 = { } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_loss shy = minor_stress_impact_gain } @@ -3832,8 +3875,6 @@ bp3_journey.1700 = { NOT = { has_activity_intent = journey_curiosity_intent } } - add_character_flag = bodyguard_flag - hire_for_court_position_journey_effect = { CHARACTER = scope:local_character_2 COURT_POSITION = bodyguard @@ -3844,9 +3885,7 @@ bp3_journey.1700 = { COURT_POSITION = bodyguard } - remove_character_flag = bodyguard_flag - - stress_impact = { + stress_and_fulfillment_impact = { trusting = major_stress_impact_gain } @@ -3880,7 +3919,7 @@ bp3_journey.1700 = { } } - stress_impact = { + stress_and_fulfillment_impact = { humble = minor_stress_impact_gain content = minor_stress_impact_gain } @@ -3982,6 +4021,7 @@ bp3_journey.1800 = { location = scope:location culture = scope:location.culture faith = scope:location.faith + rite = scope:location.rite save_scope_as = local_character } scope:local_character = { @@ -4056,7 +4096,7 @@ bp3_journey.1800 = { target = scope:local_character } - stress_impact = { + stress_and_fulfillment_impact = { humble = minor_stress_impact_gain content = major_stress_impact_gain } @@ -4149,7 +4189,7 @@ bp3_journey.1800 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain lazy = major_stress_impact_gain cynical = major_stress_impact_gain @@ -4199,7 +4239,7 @@ bp3_journey.1800 = { } } - stress_impact = { + stress_and_fulfillment_impact = { callous = medium_stress_impact_gain sadistic = medium_stress_impact_gain paranoid = minor_stress_impact_gain @@ -4264,7 +4304,7 @@ bp3_journey.1800 = { } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain cynical = minor_stress_impact_gain paranoid = minor_stress_impact_gain @@ -4300,7 +4340,7 @@ bp3_journey.1800 = { COURT_POSITION = travel_leader } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_gain arrogant = minor_stress_impact_gain } @@ -4728,7 +4768,7 @@ bp3_journey.1900 = { target = scope:local_character } - stress_impact = { + stress_and_fulfillment_impact = { humble = minor_stress_impact_gain content = major_stress_impact_gain } @@ -4761,7 +4801,7 @@ bp3_journey.1900 = { gold = tiny_gold_value } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain lazy = minor_stress_impact_gain } @@ -4894,7 +4934,7 @@ bp3_journey.1900 = { } } - stress_impact = { + stress_and_fulfillment_impact = { callous = medium_stress_impact_gain sadistic = medium_stress_impact_gain paranoid = minor_stress_impact_gain @@ -4925,7 +4965,7 @@ bp3_journey.1900 = { gold = tiny_gold_value } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain cynical = minor_stress_impact_gain paranoid = minor_stress_impact_gain @@ -5048,7 +5088,7 @@ bp3_journey.1900 = { } custom_tooltip = obligation_hook_tt - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_gain arrogant = minor_stress_impact_gain } @@ -5233,7 +5273,7 @@ bp3_journey.2000 = { set_promoted_legend = root.promoted_legend } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain cynical = minor_stress_impact_gain paranoid = minor_stress_impact_gain @@ -5260,7 +5300,7 @@ bp3_journey.2000 = { set_promoted_legend = root.promoted_legend } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_gain arrogant = minor_stress_impact_gain } @@ -5369,6 +5409,7 @@ bp3_journey.2100 = { location = scope:location culture = scope:location.culture faith = scope:location.faith + rite = scope:location.rite save_scope_as = local_character } scope:local_character = { @@ -5433,6 +5474,7 @@ bp3_journey.2100 = { location = scope:location culture = scope:location.culture faith = scope:location.faith + rite = scope:location.rite save_scope_as = local_character } scope:local_character = { @@ -5499,7 +5541,7 @@ bp3_journey.2100 = { food_poison_chance_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_gain gluttonous = minor_stress_impact_loss comfort_eater = minor_stress_impact_loss @@ -5538,7 +5580,7 @@ bp3_journey.2100 = { } } - stress_impact = { + stress_and_fulfillment_impact = { gluttonous = minor_stress_impact_loss comfort_eater = minor_stress_impact_loss temperate = minor_stress_impact_gain @@ -5561,15 +5603,20 @@ bp3_journey.2100 = { name = bp3_journey.2100.curiosity_2 trigger = { has_activity_intent = journey_curiosity_intent + OR = { + is_valid_to_hire_court_position_type = camp_cook_camp_officer + is_valid_to_hire_court_position_type = food_taster_court_position + } } hire_for_court_position_journey_laamp_replacement_effect = { CHARACTER = scope:local_character COURT_POSITION = food_taster LAAMP_POSITION = camp_cook + CURRENT_HOLDER = scope:current_holder } - stress_impact = { + stress_and_fulfillment_impact = { callous = medium_stress_impact_gain sadistic = medium_stress_impact_gain arrogant = minor_stress_impact_gain @@ -5596,7 +5643,7 @@ bp3_journey.2100 = { years = 2 } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss inappetetic = minor_stress_impact_gain } @@ -5628,9 +5675,10 @@ bp3_journey.2100 = { CHARACTER = scope:local_character COURT_POSITION = food_taster LAAMP_POSITION = camp_cook + CURRENT_HOLDER = scope:current_holder } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_gain arrogant = minor_stress_impact_gain } @@ -5756,6 +5804,7 @@ bp3_journey.2200 = { location = scope:location culture = scope:location.culture faith = scope:location.faith + rite = scope:location.rite save_scope_as = local_character } save_scope_as = wet_nurse @@ -5827,6 +5876,7 @@ bp3_journey.2200 = { location = scope:location culture = scope:location.culture faith = scope:location.faith + rite = scope:location.rite save_scope_as = local_character } save_scope_as = master_of_spoils_camp_officer @@ -5882,9 +5932,14 @@ bp3_journey.2200 = { any_court_position_holder = { type = bodyguard_court_position } + NOT = { can_employ_court_position_type = bodyguard_court_position } } - random_court_position_holder = { + ordered_court_position_holder = { type = bodyguard_court_position + order_by = { + value = aptitude:bodyguard_court_position + multiply = -1 + } save_scope_as = current_holder } } @@ -5895,6 +5950,7 @@ bp3_journey.2200 = { location = scope:location culture = scope:location.culture faith = scope:location.faith + rite = scope:location.rite save_scope_as = local_character } save_scope_as = bodyguard @@ -5910,9 +5966,14 @@ bp3_journey.2200 = { any_court_position_holder = { type = bodyguard_court_position } + NOT = { can_employ_court_position_type = bodyguard_court_position } } - random_court_position_holder = { + ordered_court_position_holder = { type = bodyguard_court_position + order_by = { + value = aptitude:bodyguard_court_position + multiply = -1 + } save_scope_as = current_holder } } @@ -5957,6 +6018,13 @@ bp3_journey.2200 = { NOT = { employs_court_position = bodyguard_court_position } } } + modifier = { + add = 1 + AND = { + is_valid_to_hire_court_position_type = master_of_spoils_camp_officer + NOT = { employs_court_position = master_of_spoils_camp_officer } + } + } modifier = { add = 1 scope:activity = { @@ -5992,7 +6060,7 @@ bp3_journey.2200 = { target = scope:local_character } - stress_impact = { + stress_and_fulfillment_impact = { shy = minor_stress_impact_gain } @@ -6019,7 +6087,7 @@ bp3_journey.2200 = { target = scope:local_character gold = tiny_gold_value } - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_gain lustful = minor_stress_impact_gain impatient = minor_stress_impact_gain @@ -6055,6 +6123,7 @@ bp3_journey.2200 = { COURT_POSITION = wet_nurse COURT_POSITION_2 = bodyguard LAAMP_POSITION = master_of_spoils + CURRENT_HOLDER = scope:current_holder } if = { @@ -6070,7 +6139,7 @@ bp3_journey.2200 = { } } - stress_impact = { + stress_and_fulfillment_impact = { callous = medium_stress_impact_gain sadistic = medium_stress_impact_gain arrogant = minor_stress_impact_gain @@ -6093,11 +6162,8 @@ bp3_journey.2200 = { name = bp3_journey.2200.curiosity_2 trigger = { has_activity_intent = journey_curiosity_intent - matching_gender_and_sexuality_trigger = { - CHARACTER_1 = root - CHARACTER_2 = scope:local_character - } NOT = { has_trait = celibate } + might_cheat_on_every_partner_trigger = yes can_set_relation_lover_trigger = { CHARACTER = scope:local_character } } @@ -6131,7 +6197,7 @@ bp3_journey.2200 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss rakish = medium_stress_impact_loss seducer = medium_stress_impact_loss @@ -6180,7 +6246,7 @@ bp3_journey.2200 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss paranoid = medium_stress_impact_gain shy = minor_stress_impact_gain @@ -6206,6 +6272,7 @@ bp3_journey.2200 = { name = bp3_journey.2200.a trigger = { + might_cheat_on_every_partner_trigger = yes matching_gender_and_sexuality_trigger = { CHARACTER_1 = root CHARACTER_2 = scope:local_character @@ -6220,7 +6287,7 @@ bp3_journey.2200 = { PREGNANCY_CHANCE = pregnancy_chance } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss lustful = medium_stress_impact_loss rakish = medium_stress_impact_loss @@ -6267,9 +6334,10 @@ bp3_journey.2200 = { COURT_POSITION = wet_nurse COURT_POSITION_2 = bodyguard LAAMP_POSITION = master_of_spoils + CURRENT_HOLDER = scope:current_holder } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_gain arrogant = minor_stress_impact_gain } @@ -6472,6 +6540,7 @@ bp3_journey.2300 = { location = scope:location culture = scope:location.culture faith = scope:location.faith + rite = scope:location.rite save_scope_as = local_character } scope:local_character = { @@ -6536,6 +6605,7 @@ bp3_journey.2300 = { location = scope:location culture = scope:location.culture faith = scope:location.faith + rite = scope:location.rite save_scope_as = local_character } scope:local_character = { @@ -6570,6 +6640,11 @@ bp3_journey.2300 = { is_valid_to_hire_court_position_type = champion_court_position NOT = { employs_court_position = champion_court_position } } + modifier = { + add = 1 + is_valid_to_hire_court_position_type = master_of_arms_camp_officer + NOT = { employs_court_position = master_of_arms_camp_officer } + } modifier = { add = 1 scope:activity = { @@ -6592,7 +6667,7 @@ bp3_journey.2300 = { journey_knowledge_hoarding_skill_effect = { VALUE = 10 } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain gregarious = minor_stress_impact_loss shy = minor_stress_impact_gain @@ -6637,7 +6712,7 @@ bp3_journey.2300 = { } } - stress_impact = { + stress_and_fulfillment_impact = { gregarious = minor_stress_impact_loss shy = minor_stress_impact_gain paranoid = minor_stress_impact_gain @@ -6659,12 +6734,17 @@ bp3_journey.2300 = { name = bp3_journey.2300.curiosity_2 trigger = { has_activity_intent = journey_curiosity_intent + OR = { + is_valid_to_hire_court_position_type = champion_court_position + is_valid_to_hire_court_position_type = master_of_arms_camp_officer + } } hire_for_court_position_journey_laamp_replacement_effect = { CHARACTER = scope:local_character COURT_POSITION = champion LAAMP_POSITION = master_of_arms + CURRENT_HOLDER = scope:current_holder } progress_towards_friend_effect = { @@ -6673,7 +6753,7 @@ bp3_journey.2300 = { OPINION = 30 } - stress_impact = { + stress_and_fulfillment_impact = { gregarious = minor_stress_impact_loss shy = minor_stress_impact_gain paranoid = minor_stress_impact_gain @@ -6717,7 +6797,7 @@ bp3_journey.2300 = { size = 1 } - stress_impact = { + stress_and_fulfillment_impact = { content = minor_stress_impact_gain craven = minor_stress_impact_gain arrogant = minor_stress_impact_gain @@ -6758,9 +6838,10 @@ bp3_journey.2300 = { CHARACTER = scope:local_character COURT_POSITION = champion LAAMP_POSITION = master_of_arms + CURRENT_HOLDER = scope:current_holder } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_gain arrogant = minor_stress_impact_gain } diff --git a/events/dlc/bp3/bp3_mapmaking.txt b/events/dlc/bp3/bp3_mapmaking.txt deleted file mode 100644 index a956cfc04..000000000 --- a/events/dlc/bp3/bp3_mapmaking.txt +++ /dev/null @@ -1,2793 +0,0 @@ -namespace = mapmaking - -### Map Choice Event -mapmaking.0001 = { - type = character_event - content_source = dlc_015 - title = mapmaking.0001.t - desc = mapmaking.0001.desc - theme = realm - override_background = { reference = study } - - left_portrait = { - character = root - animation = writing - } - - - immediate = { - #We care about: visited capitals of foreign rulers - #Visited vassal capitals - #Visited domain provinces - #Visited points of interest - random_in_list = { - #Capitals are already tracked since they are points of interest - variable = visited_poi - limit = { - this = county.holder.top_liege.capital_province - county.holder.top_liege != root.top_liege - } - save_scope_as = foreign_capital_map_target - kingdom = { - save_scope_as = foreign_kingdom_map_target - } - } - random_in_list = { - #And now we save other types of Point of Interest - variable = visited_poi - limit = { #We prefer foreign points of interest - OR = { - has_building_with_flag = travel_point_of_interest_religious - has_building_with_flag = travel_point_of_interest_learning - has_building_with_flag = travel_point_of_interest_economic - has_building_with_flag = travel_point_of_interest_martial - has_building_with_flag = travel_point_of_interest_diplomatic - has_building_with_flag = travel_point_of_interest_wonder - has_building_with_flag = travel_point_of_interest_natural_feature - } - empire != root.capital_province.empire - } - alternative_limit = { #We prefer foreign points of interest - OR = { - has_building_with_flag = travel_point_of_interest_religious - has_building_with_flag = travel_point_of_interest_learning - has_building_with_flag = travel_point_of_interest_economic - has_building_with_flag = travel_point_of_interest_martial - has_building_with_flag = travel_point_of_interest_diplomatic - has_building_with_flag = travel_point_of_interest_wonder - has_building_with_flag = travel_point_of_interest_natural_feature - } - kingdom != root.capital_province.kingdom - } - alternative_limit = { - OR = { - has_building_with_flag = travel_point_of_interest_religious - has_building_with_flag = travel_point_of_interest_learning - has_building_with_flag = travel_point_of_interest_economic - has_building_with_flag = travel_point_of_interest_martial - has_building_with_flag = travel_point_of_interest_diplomatic - has_building_with_flag = travel_point_of_interest_wonder - has_building_with_flag = travel_point_of_interest_natural_feature - } - duchy != root.capital_province.duchy - } - alternative_limit = { - OR = { - has_building_with_flag = travel_point_of_interest_religious - has_building_with_flag = travel_point_of_interest_learning - has_building_with_flag = travel_point_of_interest_economic - has_building_with_flag = travel_point_of_interest_martial - has_building_with_flag = travel_point_of_interest_diplomatic - has_building_with_flag = travel_point_of_interest_wonder - has_building_with_flag = travel_point_of_interest_natural_feature - } - } - save_scope_as = poi_map_target - } - random_in_list = { - variable = mapmaking_location_list - limit = { - county.holder = root - county != root.capital_province.county #We cannot in good conscience let someone map their own capital county with this decision - } - save_scope_as = visited_own_county - } - random_in_list = { - variable = mapmaking_location_list - limit = { - county.holder != root - county.holder.liege = root - this = county.holder.capital_province - } - save_scope_as = visited_own_vassal - county.holder.primary_title = { - save_scope_as = visited_own_vassal_title - } - } - } - - option = { - name = mapmaking.0001.a - trigger = { - exists = scope:visited_own_county - } #Check for having visited own county - custom_tooltip = mapmaking.0001.a.tt - scope:visited_own_county = { save_scope_as = background_terrain_scope } - trigger_event = { - id = mapmaking.0010 - days = 5 - } - } - option = { - name = mapmaking.0001.b - trigger = { - exists = scope:visited_own_vassal - } #Check for having visited vassal capital county - custom_tooltip = mapmaking.0001.b.tt - scope:visited_own_vassal = { save_scope_as = background_terrain_scope } - trigger_event = { - id = mapmaking.0020 - days = 5 - } - } - option = { - name = mapmaking.0001.c - trigger = { - exists = scope:poi_map_target - trigger_if = { - limit = { exists = scope:visited_own_vassal } - scope:visited_own_vassal != scope:poi_map_target - } - } #Check for having visited special county - custom_tooltip = mapmaking.0001.c.tt - scope:poi_map_target = { save_scope_as = background_terrain_scope } - trigger_event = { - id = mapmaking.0030 - days = 5 - } - } - option = { - name = mapmaking.0001.d - trigger = { - exists = scope:foreign_capital_map_target - trigger_if = { - limit = { exists = scope:poi_map_target } - scope:foreign_capital_map_target != scope:poi_map_target - } - } #Check for having visited foreign capital county - custom_tooltip = mapmaking.0001.d.tt - scope:foreign_capital_map_target = { save_scope_as = background_terrain_scope } - trigger_event = { - id = mapmaking.0040 - days = 5 - } - } -} - -#Choice 1a - Own County -mapmaking.0010 = { - type = character_event - content_source = dlc_015 - title = mapmaking.0010.t - desc = mapmaking.0010.desc - theme = realm - override_background = { - trigger = { - exists = scope:background_market_scope - } - reference = market_scope - } - override_background = { - trigger = { - exists = scope:background_temple_scope - } - reference = temple_scope - } - override_background = { - trigger = { - exists = scope:courtyard_scope - } - reference = courtyard_scope - } - override_background = { - trigger = { - scope:background_terrain_scope = { - has_holding_type = tribal_holding - } - } - reference = market_tribal - } - - left_portrait = { - character = root - animation = writing #We change the background in each event but not the animation, the background is what root is writing about - } - - - immediate = { - scope:background_terrain_scope = { - switch = { - trigger = has_holding_type - city_holding = { - save_scope_as = background_market_scope - } - church_holding = { - holder = { - save_scope_as = background_temple_scope - } - } - castle_holding = { - save_scope_as = courtyard_scope - } - } - } - } - - #All options are stronger the more of your provinces you visited. - - option = { - name = mapmaking.0010.a - custom_tooltip = mapmaking.0010.a.tt - #Boosted by Stewardship - save_scope_value_as = { - name = own_domain_bonus - value = flag:growth - } - } - option = { - name = mapmaking.0010.b - custom_tooltip = mapmaking.0010.b.tt - #Boosted by Danger Track xp - save_scope_value_as = { - name = own_domain_bonus - value = flag:defensive - } - } - after = { - trigger_event = { - id = mapmaking.0004 - days = 5 - } - } -} - -#Choice 1b - Vassal Capital County -mapmaking.0020 = { - type = character_event - content_source = dlc_015 - title = mapmaking.0020.t - desc = mapmaking.0020.desc - theme = realm - override_background = { - reference = throne_room_scope - } - - left_portrait = { - character = root - animation = writing #We change the background in each event but not the animation, the background is what root is writing about - } - - - immediate = { - scope:background_terrain_scope.county.holder = { - save_scope_as = background_throne_room_scope - } - } - - #All options are stronger the more of your vassal capitals you have visited. - - - option = { - name = mapmaking.0020.a - custom_tooltip = mapmaking.0020.a.tt - save_scope_value_as = { - name = own_vassal_focus - value = flag:dread - } - #Danger XP increases the outcome of this option - } - option = { - name = mapmaking.0020.b - custom_tooltip = mapmaking.0020.b.tt - save_scope_value_as = { - name = own_vassal_focus - value = flag:opinion - } - #Diplomacy increases the outcome of this option - } - option = { - name = mapmaking.0020.c - custom_tooltip = mapmaking.0020.c.tt - save_scope_value_as = { - name = own_vassal_focus - value = flag:intrigue - } - #Intrigue increases the outcome of this option - } - after = { - trigger_event = { - id = mapmaking.0004 - days = 5 - } - } -} - -#Choice 1c - Point of Interest -mapmaking.0030 = { - type = character_event - content_source = dlc_015 - title = mapmaking.0030.t - desc = mapmaking.0030.desc - theme = realm - override_background = { - trigger = { - scope:background_terrain_scope.barony = { - is_holy_site = no - } - NOT = { scope:background_terrain_scope = province:4828 } - } - reference = terrain_scope - } - override_background = { - trigger = { - scope:background_terrain_scope.barony = { - is_holy_site = yes - } - } - reference = holy_site_scope - } - override_background = { - trigger = { - scope:background_terrain_scope = province:4828 #Baghdad - } - reference = ep2_holy_site_mena - } - - left_portrait = { - character = root - animation = writing #We change the background in each event but not the animation, the background is what root is writing about - } - - option = { - name = mapmaking.0030.a - custom_tooltip = mapmaking.0030.a.tt - #Based on traveller danger XP - save_scope_value_as = { - name = poi_focus - value = flag:safety_speed - } - } - option = { - name = mapmaking.0030.b - custom_tooltip = mapmaking.0030.b.tt - #Based on what PoI type - #Better with Traveller XP - save_scope_value_as = { - name = poi_focus - value = flag:location_based - } - } - after = { - trigger_event = { - id = mapmaking.0004 - days = 5 - } - } -} - -#Choice 1d - Foreign Kingdom Capital County -mapmaking.0040 = { - type = character_event - content_source = dlc_015 - title = mapmaking.0040.t - desc = mapmaking.0040.desc - theme = realm - override_background = { - reference = throne_room_scope - } - - left_portrait = { - character = root - animation = writing #We change the background in each event but not the animation, the background is what root is writing about - } - - - immediate = { - scope:background_terrain_scope.county.holder = { - save_scope_as = background_throne_room_scope - } - mapmaking_mythical_lie_effect = yes - } - - option = { - name = mapmaking.0040.a - custom_tooltip = mapmaking.0040.a.tt - save_scope_value_as = { - name = kingdom_focus - value = flag:court_life - } - #Better with traveller XP and knowing Language and Court Language - } - option = { - name = mapmaking.0040.b - custom_tooltip = mapmaking.0040.b.tt - save_scope_value_as = { - name = kingdom_focus - value = flag:people_focus - } - #Better with Traveller Danger XP and Knowing Culture's Language - } - option = { - name = mapmaking.0040.c - custom_tooltip = mapmaking.0040.c.tt - trigger = { - has_trait = eccentric - } - save_scope_value_as = { - name = kingdom_focus - value = flag:mythical_creatures - } - #Better with Traveller XP and Levels of Fame - } - after = { - trigger_event = { - id = mapmaking.0004 - days = 5 - } - } -} - -#Choice 3 - Based on the Dangers of the Province itself -mapmaking.0004 = { - type = character_event - content_source = dlc_015 - title = { - first_valid = { - triggered_desc = { - trigger = { - scope:potential_danger ?= flag:fighting - } - desc = mapmaking.0004.fighting.t - } - triggered_desc = { - trigger = { - scope:potential_danger ?= flag:snow - } - desc = mapmaking.0004.snow.t - } - triggered_desc = { - trigger = { - scope:potential_danger ?= flag:heat - } - desc = mapmaking.0004.heat.t - } - triggered_desc = { - trigger = { - scope:potential_danger ?= flag:monsoon - } - desc = mapmaking.0004.monsoon.t - } - desc = mapmaking.0004.t - } - } - desc = { - desc = mapmaking.0004.desc.intro - #Potential Dangers - #May or may not exist, set in immediate - first_valid = { - triggered_desc = { - trigger = { - scope:potential_danger ?= flag:fighting - } - desc = mapmaking.0004.fighting.desc - } - triggered_desc = { - trigger = { - scope:potential_danger ?= flag:snow - } - desc = mapmaking.0004.snow.desc - } - triggered_desc = { - trigger = { - scope:potential_danger ?= flag:heat - } - desc = mapmaking.0004.heat.desc - } - triggered_desc = { - trigger = { - scope:potential_danger ?= flag:monsoon - } - desc = mapmaking.0004.monsoon.desc - } - } - #Terrain - Always Present - #What to display is decided in immediate - first_valid = { - triggered_desc = { #Forest - trigger = { - scope:terrain_category = flag:deep_forest - } - desc = mapmaking.0004.terrain_deep_forests.desc - } - triggered_desc = { #Open - trigger = { - scope:terrain_category = flag:open_terrain - } - desc = mapmaking.0004.terrain_open.desc - } - triggered_desc = { #Open - trigger = { - scope:terrain_category = flag:steppes - } - desc = mapmaking.0004.terrain_steppes.desc - } - triggered_desc = { #Farmlands - trigger = { - scope:terrain_category = flag:farmlands - } - desc = mapmaking.0004.terrain_open_farmland.desc - } - triggered_desc = { #Jungle - trigger = { - scope:terrain_category = flag:jungle - } - desc = mapmaking.0004.terrain_jungle.desc - } - triggered_desc = { #Undulating - trigger = { - scope:terrain_category = flag:undulating - } - desc = mapmaking.0004.terrain_undulating.desc - } - triggered_desc = { #Desert - trigger = { - scope:terrain_category = flag:desert - } - desc = mapmaking.0004.terrain_desert.desc - } - triggered_desc = { #Wetlands - trigger = { - scope:terrain_category = flag:wetlands - } - desc = mapmaking.0004.terrain_wetlands.desc - } - desc = mapmaking.0004.desc.generic_fallback #Fallback if we somehow have no terrain - } - } - theme = realm - - override_background = { - trigger = { - scope:potential_danger ?= flag:fighting - } - reference = battlefield - } - override_background = { - trigger = { - scope:terrain_category = flag:farmlands - } - reference = farmland - } - override_background = { - reference = wilderness_scope #Fallback - } - - override_effect_2d = { - trigger = { - scope:potential_danger ?= flag:fighting - } - reference = flies #Fits the battlefield - } - widget = { - is_shown = { - scope:potential_danger ?= flag:cold - } - gui = "event_window_widget_vfx_snow" - container = "foreground_shader_vfx_container" - } - override_effect_2d = { - trigger = { - scope:potential_danger ?= flag:heat - } - reference = legend_glow #Sun - } - override_effect_2d = { - trigger = { - scope:potential_danger ?= flag:monsoon - } - reference = rain - } - override_effect_2d = { - trigger = { - scope:terrain_category = flag:wetlands - NOT = { exists = scope:potential_danger } - } - reference = fog #Make the Wetland look more menacing - } - - - - left_portrait = { - character = root - animation = writing #We change the background in each event but not the animation, the background is what root is writing about - } - - - immediate = { - scope:background_terrain_scope = { - save_scope_as = background_wilderness_scope - - #Extra potential dangers depending on location - random_list = { - 1 = { - trigger = { - OR = { - county = { county_control < 50 } - county.holder.top_liege = { - is_at_war = yes - } - county.holder = { - is_at_war = yes - } - } - } - save_scope_value_as = { - name = potential_danger - value = flag:fighting - } - } - 1 = { - trigger = { - OR = { - geographical_region = world_tibet - geographical_region = world_europe_north - geographical_region = world_steppe - terrain = taiga - } - } - save_scope_value_as = { - name = potential_danger - value = flag:cold - } - } - 1 = { - trigger = { - OR = { - geographical_region = world_middle_east - geographical_region = world_india - geographical_region = world_burma - geographical_region = world_africa - geographical_region = world_asia_southeast - is_desert_trigger = yes - terrain = jungle - } - } - save_scope_value_as = { - name = potential_danger - value = flag:heat - } - } - 1 = { - trigger = { - OR = { - geographical_region = world_india - geographical_region = world_burma - geographical_region = world_asia_southeast - } - } - save_scope_value_as = { - name = potential_danger - value = flag:monsoon - } - } - } - - #What terrain do we describe? - #This is done here instead of just as triggers in the description because we don't want to replicate the check again when generating the artifact: - if = { - limit = { - scope:background_wilderness_scope = { - OR = { - terrain = taiga - terrain = forest - } - } - } - save_scope_value_as = { - name = terrain_category - value = flag:deep_forest - } - } - else_if = { - limit = { - scope:background_wilderness_scope = { - OR = { - graphical_plains_trigger = yes - graphical_drylands_trigger = yes - } - } - } - save_scope_value_as = { - name = terrain_category - value = flag:open_terrain - } - } - else_if = { - limit = { - scope:background_wilderness_scope = { - terrain = farmlands - } - } - save_scope_value_as = { - name = terrain_category - value = flag:farmlands - } - } - else_if = { - limit = { - scope:background_wilderness_scope = { - graphical_wilderness_jungle_trigger = yes - } - } - save_scope_value_as = { - name = terrain_category - value = flag:jungle - } - } - else_if = { - limit = { - scope:background_wilderness_scope = { - OR = { - graphical_hills_trigger = yes - graphical_wilderness_mountains_trigger = yes - } - } - } - save_scope_value_as = { - name = terrain_category - value = flag:undulating - } - } - else_if = { - limit = { - scope:background_wilderness_scope = { - graphical_wilderness_desert_trigger = yes - } - } - save_scope_value_as = { - name = terrain_category - value = flag:desert - } - } - else_if = { - limit = { - scope:background_wilderness_scope = { - graphical_wilderness_wetlands_trigger = yes - } - } - save_scope_value_as = { - name = terrain_category - value = flag:wetlands - } - } - else_if = { - limit = { - scope:background_wilderness_scope = { - graphical_wilderness_steppe_trigger = yes - } - } - save_scope_value_as = { - name = terrain_category - value = flag:steppes - } - } - } - } - - option = { - name = mapmaking.0004.a #Terrain, this can always be picked - custom_tooltip = mapmaking.0004.a.tt - save_scope_value_as = { - name = danger_type - value = flag:terrain - } - } - option = { - name = mapmaking.0004.b - custom_tooltip = mapmaking.0004.b.tt - trigger = { - scope:potential_danger ?= flag:fighting - } - save_scope_value_as = { - name = danger_type - value = flag:fighting - } - } - option = { - name = mapmaking.0004.c - custom_tooltip = mapmaking.0004.c.tt - trigger = { - scope:potential_danger ?= flag:cold - } - save_scope_value_as = { - name = danger_type - value = flag:cold - } - } - option = { - name = mapmaking.0004.d - custom_tooltip = mapmaking.0004.d.tt - trigger = { - scope:potential_danger ?= flag:heat - } - save_scope_value_as = { - name = danger_type - value = flag:heat - } - } - option = { - name = mapmaking.0004.e - custom_tooltip = mapmaking.0004.e.tt - trigger = { - scope:potential_danger ?= flag:monsoon - } - save_scope_value_as = { - name = danger_type - value = flag:monsoon - } - } - after = { - trigger_event = { - id = mapmaking.1000 - days = 5 - } - } -} - -# Finish Event - What map did we get out of this? -mapmaking.1000 = { - type = character_event - content_source = dlc_015 - title = mapmaking.1000.t - desc = mapmaking.1000.desc - theme = realm - - override_background = { - trigger = { - scope:background_terrain_scope.barony = { - is_holy_site = no - } - NOT = { scope:background_terrain_scope = province:4828 } - } - reference = terrain_scope - } - override_background = { - trigger = { - scope:background_terrain_scope.barony = { - is_holy_site = yes - } - } - reference = holy_site_scope - } - override_background = { - trigger = { - scope:background_terrain_scope = province:4828 #Baghdad - } - reference = ep2_holy_site_mena - } - - left_portrait = { - character = root - animation = writing #We change the background in each event but not the animation, the background is what root is writing about - } - artifact = { # To display the artifact in the event-window - trigger = { exists = scope:newly_created_artifact } - target = scope:newly_created_artifact - position = lower_right_portrait - } - - immediate = { - save_scope_as = author - #First we make the artifact, then we assign effects and descriptions. - hidden_effect = { - if = { - limit = { - artifacts_use_indian_books_trigger = yes - } - create_artifact = { - name = map_artifact_name - type = journal - creator = root - description = map_artifact_beginning_far_eastern - visuals = indian_book - modifier = character_travel_speed_1 - save_scope_as = newly_created_artifact - wealth = 50 - quality = 50 - } - } - else = { - create_artifact = { - name = map_artifact_name - type = journal - creator = root - description = map_artifact_beginning_western - visuals = book - modifier = character_travel_speed_1 - save_scope_as = newly_created_artifact - wealth = 50 - quality = 50 - } - } - - hidden_effect_new_object = { - - if = { - limit = { - scope:background_terrain_scope.county.holder.top_liege = root.top_liege - } - scope:newly_created_artifact = { - set_artifact_description = map_artifact_beginning_internal - } - } - else = { - scope:newly_created_artifact = { - set_artifact_description = map_artifact_beginning_external - } - } - - #Dangers of Province: - if = { #Terrain - #Each terrain gives 1 combat modifier and 1 travel danger modifier - limit = { - scope:danger_type = flag:terrain - } - switch = { - trigger = scope:terrain_category - flag:deep_forest = { - scope:newly_created_artifact = { - set_artifact_description = map_artifact_danger_type_forests - } - scope:background_terrain_scope = { - switch = { - trigger = terrain - forest = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_forest_danger_travel_modifier - random_list = { - 65 = { - add_artifact_modifier = artifact_forest_advantage_2_modifier - } - 35 = { - add_artifact_modifier = artifact_forest_advantage_3_modifier - } - } - } - } - taiga = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_taiga_danger_travel_modifier - random_list = { - 65 = { - add_artifact_modifier = artifact_taiga_advantage_2_modifier - } - 35 = { - add_artifact_modifier = artifact_taiga_advantage_3_modifier - } - } - } - } - } - } - } - flag:open_terrain = { - scope:newly_created_artifact = { - set_artifact_description = map_artifact_danger_type_open - } - scope:background_terrain_scope = { - switch = { - trigger = terrain - drylands = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_drylands_danger_travel_modifier - random_list = { - 65 = { - add_artifact_modifier = artifact_drylands_advantage_2_modifier - } - 35 = { - add_artifact_modifier = artifact_drylands_advantage_3_modifier - } - } - } - } - plains = { - scope:newly_created_artifact = { - random_list = { - 65 = { - add_artifact_modifier = artifact_plains_advantage_2_modifier - } - 35 = { - add_artifact_modifier = artifact_plains_advantage_3_modifier - } - } - } - } - } - } - } - flag:farmlands = { - scope:newly_created_artifact = { - set_artifact_description = map_artifact_danger_type_farmlands - - random_list = { - 65 = { - add_artifact_modifier = artifact_farmlands_advantage_2_modifier - } - 35 = { - add_artifact_modifier = artifact_farmlands_advantage_3_modifier - } - } - } - } - flag:jungle = { - scope:newly_created_artifact = { - set_artifact_description = map_artifact_danger_type_jungle - add_artifact_modifier = artifact_jungle_danger_travel_modifier - random_list = { - 65 = { - add_artifact_modifier = artifact_jungle_advantage_2_modifier - } - 35 = { - add_artifact_modifier = artifact_jungle_advantage_3_modifier - } - } - } - } - flag:undulating = { - scope:newly_created_artifact = { - set_artifact_description = map_artifact_danger_type_undulating - } - scope:background_terrain_scope = { - switch = { - trigger = terrain - hills = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_hills_danger_travel_modifier - random_list = { - 65 = { - add_artifact_modifier = artifact_hills_advantage_2_modifier - } - 35 = { - add_artifact_modifier = artifact_hills_advantage_3_modifier - } - } - } - } - mountains = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_mountains_danger_travel_modifier - random_list = { - 65 = { - add_artifact_modifier = artifact_mountains_advantage_2_modifier - } - 35 = { - add_artifact_modifier = artifact_mountains_advantage_3_modifier - } - } - } - } - } - } - } - flag:desert = { - scope:newly_created_artifact = { - set_artifact_description = map_artifact_danger_type_desert - } - scope:background_terrain_scope = { - switch = { - trigger = terrain - desert = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_desert_danger_travel_modifier - random_list = { - 65 = { - add_artifact_modifier = artifact_desert_advantage_2_modifier - } - 35 = { - add_artifact_modifier = artifact_desert_advantage_3_modifier - } - } - } - } - desert_mountains = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_desert_mountains_danger_travel_modifier - random_list = { - 65 = { - add_artifact_modifier = artifact_desert_mountains_advantage_2_modifier - } - 35 = { - add_artifact_modifier = artifact_desert_mountains_advantage_3_modifier - } - } - } - } - oasis = { #Too rare so we give desert - scope:newly_created_artifact = { - add_artifact_modifier = artifact_desert_danger_travel_modifier - random_list = { - 65 = { - add_artifact_modifier = artifact_desert_advantage_2_modifier - } - 35 = { - add_artifact_modifier = artifact_desert_advantage_3_modifier - } - } - } - } - } - } - } - flag:wetlands = { - scope:newly_created_artifact = { - set_artifact_description = map_artifact_danger_type_wetlands - } - scope:background_terrain_scope = { - switch = { - trigger = terrain - floodplains = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_floodplains_danger_travel_modifier - random_list = { - 65 = { - add_artifact_modifier = artifact_floodplains_advantage_2_modifier - } - 35 = { - add_artifact_modifier = artifact_floodplains_advantage_3_modifier - } - } - } - } - wetlands = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_wetlands_danger_travel_modifier - random_list = { - 65 = { - add_artifact_modifier = artifact_wetlands_advantage_2_modifier - } - 35 = { - add_artifact_modifier = artifact_wetlands_advantage_3_modifier - } - } - } - } - } - } - } - flag:steppes = { - scope:newly_created_artifact = { - set_artifact_description = map_artifact_danger_type_steppes - add_artifact_modifier = artifact_steppe_danger_travel_modifier - random_list = { - 65 = { - add_artifact_modifier = artifact_steppe_advantage_2_modifier - } - 35 = { - add_artifact_modifier = artifact_steppe_advantage_3_modifier - } - } - } - } - } - } - if = { #Fighting - limit = { - scope:danger_type = flag:fighting - } - scope:newly_created_artifact = { - set_artifact_description = map_artifact_danger_type_fighting - add_artifact_modifier = artifact_travel_safety_2 - random_list = { - 25 = { add_artifact_modifier = artifact_controlled_province_advantage_3_modifier } - 25 = { add_artifact_modifier = artifact_enemy_hard_casualty_modifier_1_modifier } - 50 = { add_artifact_modifier =character_travel_speed_1 } - } - } - } - if = { #Cold - limit = { - scope:danger_type = flag:cold - } - scope:newly_created_artifact = { - set_artifact_description = map_artifact_danger_type_snowstorms - add_artifact_modifier = artifact_winter_movement_speed - add_artifact_modifier = artifact_winter_advantage - } - } - if = { #Heat - limit = { - scope:danger_type = flag:heat - } - scope:newly_created_artifact = { - set_artifact_description = map_artifact_danger_type_heat - #Multiple Travel Danger Modifiers: - add_artifact_modifier = artifact_jungle_danger_travel_modifier - add_artifact_modifier = artifact_desert_danger_travel_modifier - add_artifact_modifier = artifact_drylands_danger_travel_modifier - add_artifact_modifier = artifact_desert_mountains_danger_travel_modifier - } - } - if = { #Monsoon - limit = { - scope:danger_type = flag:monsoon - - } - scope:newly_created_artifact = { - set_artifact_description = map_artifact_danger_type_monsoons - #Multiple Travel Danger Modifiers: - add_artifact_modifier = artifact_jungle_danger_travel_modifier - add_artifact_modifier = artifact_wetlands_danger_travel_modifier - add_artifact_modifier = artifact_desert_mountains_danger_travel_modifier - } - } - - #End Danger - scope:newly_created_artifact = { - set_artifact_description = map_artifact_danger_type_end - - } - - #Purpose related bonuses - #These max out around what would be assigned to a masterwork artifact in artifact_creation_effects - - #Domain - if = { #Growth - limit = { - scope:own_domain_bonus ?= flag:growth - } - scope:newly_created_artifact = { - set_artifact_name = map_artifact_name_domain - set_artifact_description = map_artifact_domain_purpose_growth - } - random_list = { - 50 = { - trigger = { - any_in_list = { - variable = mapmaking_location_list - county.holder = root - county != root.capital_province.county - count < 4 - } - } - modifier = { #Lowered by Stewardship - stewardship > 2 - add = { - value = stewardship - multiply = -1 - } - } - scope:background_terrain_scope = { - switch = { - trigger = terrain - drylands = { - scope:newly_created_artifact = { add_artifact_modifier = artifact_drylands_development_growth_1 } - } - desert = { - scope:newly_created_artifact = { add_artifact_modifier = artifact_desert_development_growth_1 } - } - desert_mountains = { - scope:newly_created_artifact = { add_artifact_modifier = artifact_desert_mountains_development_growth_1 } - } - mountains = { - scope:newly_created_artifact = { add_artifact_modifier = artifact_mountains_development_growth_1 } - } - hills = { - scope:newly_created_artifact = { add_artifact_modifier = artifact_hills_development_growth_1 } - } - plains = { - scope:newly_created_artifact = { add_artifact_modifier = artifact_plains_development_growth_1 } - } - forest = { - scope:newly_created_artifact = { add_artifact_modifier = artifact_forest_development_growth_1 } - } - taiga = { - scope:newly_created_artifact = { add_artifact_modifier = artifact_taiga_development_growth_1 } - } - oasis = { - scope:newly_created_artifact = { add_artifact_modifier = artifact_oasis_development_growth_1 } - } - farmlands = { - scope:newly_created_artifact = { add_artifact_modifier = artifact_farmlands_development_growth_1 } - } - floodplains = { - scope:newly_created_artifact = { add_artifact_modifier = artifact_floodplains_development_growth_1 } - } - wetlands = { - scope:newly_created_artifact = { add_artifact_modifier = artifact_wetlands_development_growth_1 } - } - } - } - } - 35 = { - trigger = { - any_in_list = { - variable = mapmaking_location_list - county.holder = root - county != root.capital_province.county - count < 7 - } - } - modifier = { #Upped by Stewardship - stewardship > 2 - add = { - value = stewardship - divide = 2 - } - } - scope:background_terrain_scope = { - switch = { - trigger = terrain - drylands = { - scope:newly_created_artifact = { add_artifact_modifier = artifact_drylands_development_growth_2 } - } - desert = { - scope:newly_created_artifact = { add_artifact_modifier = artifact_desert_development_growth_2 } - } - desert_mountains = { - scope:newly_created_artifact = { add_artifact_modifier = artifact_desert_mountains_development_growth_2 } - } - hills = { - scope:newly_created_artifact = { add_artifact_modifier = artifact_hills_development_growth_2 } - } - mountains = { - scope:newly_created_artifact = { add_artifact_modifier = artifact_mountains_development_growth_2 } - } - plains = { - scope:newly_created_artifact = { add_artifact_modifier = artifact_plains_development_growth_2 } - } - forest = { - scope:newly_created_artifact = { add_artifact_modifier = artifact_forest_development_growth_2 } - } - taiga = { - scope:newly_created_artifact = { add_artifact_modifier = artifact_taiga_development_growth_2 } - } - oasis = { - scope:newly_created_artifact = { add_artifact_modifier = artifact_oasis_development_growth_2 } - } - farmlands = { - scope:newly_created_artifact = { add_artifact_modifier = artifact_farmlands_development_growth_2 } - } - floodplains = { - scope:newly_created_artifact = { add_artifact_modifier = artifact_floodplains_development_growth_2 } - } - wetlands = { - scope:newly_created_artifact = { add_artifact_modifier = artifact_wetlands_development_growth_2 } - } - } - } - } - 15 = { - modifier = { #Upped by Stewardship - stewardship > 2 - add = { - value = stewardship - } - } - scope:background_terrain_scope = { - switch = { - trigger = terrain - drylands = { - scope:newly_created_artifact = { add_artifact_modifier = artifact_drylands_development_growth_3 } - } - desert = { - scope:newly_created_artifact = { add_artifact_modifier = artifact_desert_development_growth_3 } - } - desert_mountains = { - scope:newly_created_artifact = { add_artifact_modifier = artifact_desert_mountains_development_growth_3 } - } - hills = { - scope:newly_created_artifact = { add_artifact_modifier = artifact_hills_development_growth_3 } - } - mountains = { - scope:newly_created_artifact = { add_artifact_modifier = artifact_mountains_development_growth_3 } - } - plains = { - scope:newly_created_artifact = { add_artifact_modifier = artifact_plains_development_growth_3 } - } - forest = { - scope:newly_created_artifact = { add_artifact_modifier = artifact_forest_development_growth_3 } - } - taiga = { - scope:newly_created_artifact = { add_artifact_modifier = artifact_taiga_development_growth_3 } - } - oasis = { - scope:newly_created_artifact = { add_artifact_modifier = artifact_oasis_development_growth_3 } - } - farmlands = { - scope:newly_created_artifact = { add_artifact_modifier = artifact_farmlands_development_growth_3 } - } - floodplains = { - scope:newly_created_artifact = { add_artifact_modifier = artifact_floodplains_development_growth_3 } - } - wetlands = { - scope:newly_created_artifact = { add_artifact_modifier = artifact_wetlands_development_growth_3 } - } - } - } - } - } - } - if = { #Defensive - limit = { - scope:own_domain_bonus ?= flag:defensive - } - scope:newly_created_artifact = { - set_artifact_name = map_artifact_name_domain - set_artifact_description = map_artifact_domain_purpose_defensive - } - random_list = { - 50 = { - trigger={ - any_in_list = { - variable = mapmaking_location_list - county.holder = root - county != root.capital_province.county - count < 4 - } - } - modifier = { #Lowered by Travel XP - has_trait_xp = { - trait = lifestyle_traveler - track = danger - value <= 100 - } - add = -10 - } - modifier = { - martial > 5 - add = { - value = martial - multiply = -1 - } - } - scope:newly_created_artifact = { - random_list = { - 30 = { - add_artifact_modifier = artifact_controlled_province_advantage_2_modifier - } - 30 = { - add_artifact_modifier = artifact_men_at_arms_maintenance_2_modifier - } - 20 = { - add_artifact_modifier = artifact_controlled_province_advantage_3_modifier - } - 20 = { - add_artifact_modifier = artifact_men_at_arms_maintenance_3_modifier - } - } - } - } - 35 = { - trigger = { - any_in_list = { - variable = mapmaking_location_list - county.holder = root - county != root.capital_province.county - count < 7 - } - } - modifier = { #Upped by Travel XP - has_trait_xp = { - trait = lifestyle_traveler - track = danger - value >= 50 - } - add = 10 - } - modifier = { - martial > 1 - add = { - value = martial - divide = 2 - } - } - scope:newly_created_artifact = { - random_list = { - 40 = { - add_artifact_modifier = artifact_controlled_province_advantage_4_modifier - } - 40 = { - add_artifact_modifier = artifact_men_at_arms_maintenance_4_modifier - } - 10 = { - add_artifact_modifier = artifact_controlled_province_advantage_5_modifier - } - 10 = { - add_artifact_modifier = artifact_men_at_arms_maintenance_5_modifier - } - } - } - } - 15 = { - modifier = { #Upped by Travel XP - has_trait_xp = { - trait = lifestyle_traveler - track = danger - value >= 75 - } - add = 15 - } - modifier = { - add = { - value = martial - } - } - scope:newly_created_artifact = { - random_list = { - 50 = { - add_artifact_modifier = artifact_controlled_province_advantage_5_modifier - } - 50 = { - add_artifact_modifier = artifact_men_at_arms_maintenance_5_modifier - } - } - } - } - } - } - - #Vassals - if = { #Dread - limit = { - scope:own_vassal_focus ?= flag:dread - } - scope:newly_created_artifact = { - set_artifact_name = map_artifact_name_vassal_dread - set_artifact_description = map_artifact_vassal_purpose_dread - } - - random_list = { - 50 = { - trigger = { - any_in_list = { - variable = mapmaking_location_list - county.holder != root - county.holder.liege = root - this = county.holder.capital_province - county.holder = { - is_powerful_vassal_of = root - } - count < 4 - } - } - modifier = { #Lowered by Travel XP - has_trait_xp = { - trait = lifestyle_traveler - track = danger - value <= 100 - } - add = -10 - } - scope:newly_created_artifact = { - add_artifact_modifier = artifact_dread_gain_mult_1_modifier - } - } - 35 = { - trigger = { - any_in_list = { - variable = mapmaking_location_list - county.holder != root - county.holder.liege = root - this = county.holder.capital_province - county.holder = { - is_powerful_vassal_of = root - } - count < 4 - } - } - modifier = { #Upped by Travel XP - has_trait_xp = { - trait = lifestyle_traveler - track = danger - value >= 50 - } - add = 10 - } - scope:newly_created_artifact = { - add_artifact_modifier = artifact_dread_gain_mult_2_modifier - } - } - 15 = { - modifier = { #Upped by Travel XP - has_trait_xp = { - trait = lifestyle_traveler - track = danger - value >= 75 - } - add = 15 - } - scope:newly_created_artifact = { - add_artifact_modifier = artifact_dread_gain_mult_3_modifier - } - } - } - } - if = { #Opinion - limit = { - scope:own_vassal_focus ?= flag:opinion - } - scope:newly_created_artifact = { - set_artifact_name = map_artifact_name_vassal_opinion - set_artifact_description =map_artifact_vassal_purpose_opinion - } - random_list = { - 50 = { - trigger = { - any_in_list = { - variable = mapmaking_location_list - county.holder != root - county.holder.liege = root - this = county.holder.capital_province - county.holder = { - is_powerful_vassal_of = root - } - count < 4 - } - } - modifier = { #Lowered by Diplomacy - diplomacy > 1 - add = { - value = diplomacy - multiply = -1 - } - } - scope:newly_created_artifact = { - random_list = { - 30 = { - add_artifact_modifier = artifact_happy_powerful_vassal_tax_contribution_mult_1_modifier - } - 15 = { - add_artifact_modifier = artifact_happy_powerful_vassal_tax_contribution_mult_2_modifier - } - } - } - } - 35 = { - trigger = { - any_in_list = { - variable = mapmaking_location_list - county.holder != root - county.holder.liege = root - this = county.holder.capital_province - county.holder = { - is_powerful_vassal_of = root - } - count < 4 - } - } - modifier = { #Upped by Diplomacy - diplomacy > 2 - add = { - value = diplomacy - divide = 2 - } - } - scope:newly_created_artifact = { - random_list = { - 30 = { - add_artifact_modifier = artifact_happy_powerful_vassal_tax_contribution_mult_3_modifier - } - 30 = { - add_artifact_modifier = artifact_monthly_prestige_gain_per_happy_powerful_vassal_add_1_modifier - } - 15 = { - add_artifact_modifier = artifact_happy_powerful_vassal_tax_contribution_mult_4_modifier - } - 15 = { - add_artifact_modifier = artifact_monthly_prestige_gain_per_happy_powerful_vassal_add_2_modifier - } - } - } - } - 15 = { - modifier = { #Upped by Diplomacy - diplomacy > 2 - add = { - value = diplomacy - } - } - scope:newly_created_artifact = { - random_list = { - 50 = { - add_artifact_modifier = artifact_happy_powerful_vassal_tax_contribution_mult_4_modifier - } - 50 = { - add_artifact_modifier = artifact_monthly_prestige_gain_per_happy_powerful_vassal_add_2_modifier - } - } - } - } - } - } - if = { #Intrigue - limit = { - scope:own_vassal_focus ?= flag:intrigue - } - scope:newly_created_artifact = { - set_artifact_name = map_artifact_name_vassal_intrigue - set_artifact_description =map_artifact_vassal_purpose_intrigue - } - random_list = { - 50 = { - trigger = { - any_in_list = { - variable = mapmaking_location_list - county.holder != root - county.holder.liege = root - this = county.holder.capital_province - county.holder = { - is_powerful_vassal_of = root - } - count < 4 - } - } - modifier = { #Lowered by Intrigue - intrigue > 5 - add = { - value = intrigue - multiply = -1 - } - } - scope:newly_created_artifact = { - random_list = { - 30 = { - add_artifact_modifier = artifact_owned_hostile_scheme_success_chance_add_2_modifier - } - 30 = { - add_artifact_modifier = artifact_owned_scheme_secrecy_add_2_modifier - } - 15 = { - add_artifact_modifier = artifact_owned_hostile_scheme_success_chance_add_3_modifier - } - 15 = { - add_artifact_modifier = artifact_owned_scheme_secrecy_add_3_modifier - } - } - } - } - 35 = { - trigger = { - any_in_list = { - variable = mapmaking_location_list - county.holder != root - county.holder.liege = root - this = county.holder.capital_province - county.holder = { - is_powerful_vassal_of = root - } - count < 4 - } - } - modifier = { #Upped by Intrigue - intrigue > 2 - add = { - value = intrigue - divide = 2 - } - } - scope:newly_created_artifact = { - random_list = { - 30 = { - add_artifact_modifier = artifact_owned_hostile_scheme_success_chance_add_4_modifier - } - 30 = { - add_artifact_modifier = artifact_owned_scheme_secrecy_add_4_modifier - } - 15 = { - add_artifact_modifier = artifact_owned_hostile_scheme_success_chance_add_5_modifier - } - 15 = { - add_artifact_modifier = artifact_owned_scheme_secrecy_add_5_modifier - } - } - } - } - 15 = { - modifier = { #Upped by Intrigue - intrigue > 2 - add = { - value = intrigue - } - } - scope:newly_created_artifact = { - random_list = { - 30 = { - add_artifact_modifier = artifact_owned_hostile_scheme_success_chance_add_5_modifier - } - 30 = { - add_artifact_modifier = artifact_owned_scheme_secrecy_add_5_modifier - } - 15 = { - add_artifact_modifier = artifact_owned_hostile_scheme_success_chance_add_6_modifier - } - 15 = { - add_artifact_modifier = artifact_owned_scheme_secrecy_add_6_modifier - } - } - } - } - } - } - - #Point of Interest - if = { - limit = { - scope:poi_focus ?= flag:safety_speed - } - scope:newly_created_artifact = { - set_artifact_description = map_artifact_poi_travel - } - random_list = { - 50 = { - trigger = { - has_trait_xp = { - trait = lifestyle_traveler - track = danger - value <= 70 - } - } - modifier = { #Lowered by Travel Danger XP - has_trait_xp = { - trait = lifestyle_traveler - track = danger - value >= 50 - } - add = -10 - } - modifier = { #Lowered by Travel Danger XP - has_trait_xp = { - trait = lifestyle_traveler - track = danger - value >= 40 - } - add = -5 - } - modifier = { #Lowered by Travel Danger XP - has_trait_xp = { - trait = lifestyle_traveler - track = danger - value >= 30 - } - add = -5 - } - scope:newly_created_artifact = { - add_artifact_modifier = character_travel_speed_1 - add_artifact_modifier = artifact_travel_safety_1 - } - } - 35 = { - trigger = { - has_trait_xp = { - trait = lifestyle_traveler - track = danger - value <= 100 - } - } - modifier = { #Lowered by Travel Danger XP - has_trait_xp = { - trait = lifestyle_traveler - track = danger - value >= 70 - } - add = -10 - } - modifier = { #Lowered by Travel Danger XP - has_trait_xp = { - trait = lifestyle_traveler - track = danger - value >= 50 - } - add = -5 - } - modifier = { #Lowered by Travel Danger XP - has_trait_xp = { - trait = lifestyle_traveler - track = danger - value >= 40 - } - add = -5 - } - scope:newly_created_artifact = { - random_list = { - 50 = { - add_artifact_modifier = character_travel_speed_1 - add_artifact_modifier = artifact_travel_safety_2 - } - 50 = { - add_artifact_modifier = character_travel_speed_2 - add_artifact_modifier = artifact_travel_safety_1 - } - } - } - } - 15 = { - modifier = { #Increased by Travel Danger XP - has_trait_xp = { - trait = lifestyle_traveler - track = danger - value >= 80 - } - add = 10 - } - modifier = { #Lowered by Travel Danger XP - has_trait_xp = { - trait = lifestyle_traveler - track = danger - value >= 65 - } - add = 5 - } - modifier = { #Lowered by Travel Danger XP - has_trait_xp = { - trait = lifestyle_traveler - track = danger - value >= 50 - } - add = 5 - } - scope:newly_created_artifact = { - add_artifact_modifier = character_travel_speed_2 - add_artifact_modifier = artifact_travel_safety_2 - } - } - } - } - if = { #PoI Specific Outcome - limit = { - scope:poi_focus ?= flag:location_based - } - scope:newly_created_artifact = { - set_artifact_name = map_artifact_name_poi - set_artifact_description =map_artifact_poi_purpose - } - random_list = { - 50 = { - trigger = { - has_trait_xp = { - trait = lifestyle_traveler - track = travel - value <= 70 - } - } - modifier = { #Lowered by Travel Danger XP - has_trait_xp = { - trait = lifestyle_traveler - track = travel - value >= 50 - } - add = -10 - } - modifier = { #Lowered by Travel Danger XP - has_trait_xp = { - trait = lifestyle_traveler - track = travel - value >= 40 - } - add = -5 - } - modifier = { #Lowered by Travel Danger XP - has_trait_xp = { - trait = lifestyle_traveler - track = travel - value >= 30 - } - add = -5 - } - #Scripted effect to choose modifier based on poi type - scope:background_terrain_scope = { - switch = { - trigger = has_travel_point_of_interest - poi_capitals = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_monthly_diplomacy_lifestyle_xp_1_modifier - } - } - poi_special_buildings_martial = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_monthly_martial_lifestyle_xp_1_modifier - } - } - poi_special_buildings_learning = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_monthly_learning_lifestyle_xp_1_modifier - } - } - poi_special_buildings_religious = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_monthly_piety_1_modifier - } - } - poi_special_buildings_diplomatic = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_monthly_diplomacy_lifestyle_xp_1_modifier - } - } - poi_grand_city = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_monthly_stewardship_lifestyle_xp_1_modifier - } - } - poi_special_buildings_wonder = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_monthly_stewardship_lifestyle_xp_1_modifier - } - } - poi_special_buildings_economic = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_monthly_stewardship_lifestyle_xp_1_modifier - } - } - poi_mausoleum_at_halicarnassus = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_monthly_stewardship_lifestyle_xp_1_modifier - } - } - poi_lighthouse_of_alexandria = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_monthly_stewardship_lifestyle_xp_1_modifier - } - } - poi_natural_feature = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_hunt_lifestyle_xp_gain_mult_modifier - } - } - } - } - } - 35 = { - trigger = { - has_trait_xp = { - trait = lifestyle_traveler - track = travel - value <= 100 - } - } - modifier = { #Lowered by Travel Danger XP - has_trait_xp = { - trait = lifestyle_traveler - track = travel - value >= 70 - } - add = -10 - } - modifier = { #Lowered by Travel Danger XP - has_trait_xp = { - trait = lifestyle_traveler - track = travel - value >= 50 - } - add = -5 - } - modifier = { #Lowered by Travel Danger XP - has_trait_xp = { - trait = lifestyle_traveler - track = travel - value >= 40 - } - add = -5 - } - scope:background_terrain_scope = { - switch = { - trigger = has_travel_point_of_interest - poi_capitals = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_monthly_diplomacy_lifestyle_xp_2_modifier - } - } - poi_special_buildings_martial = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_monthly_martial_lifestyle_xp_2_modifier - } - } - poi_special_buildings_learning = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_monthly_learning_lifestyle_xp_2_modifier - } - } - poi_special_buildings_religious = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_monthly_piety_2_modifier - } - } - poi_special_buildings_diplomatic = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_monthly_diplomacy_lifestyle_xp_2_modifier - } - } - poi_grand_city = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_monthly_stewardship_lifestyle_xp_2_modifier - } - } - poi_special_buildings_wonder = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_monthly_stewardship_lifestyle_xp_2_modifier - } - } - poi_special_buildings_economic = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_monthly_stewardship_lifestyle_xp_2_modifier - } - } - poi_mausoleum_at_halicarnassus = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_monthly_stewardship_lifestyle_xp_2_modifier - } - } - poi_lighthouse_of_alexandria = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_monthly_stewardship_lifestyle_xp_2_modifier - } - } - poi_natural_feature = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_hunt_lifestyle_xp_gain_mult_modifier - } - } - } - } - } - 15 = { - modifier = { #Increased by Travel Danger XP - has_trait_xp = { - trait = lifestyle_traveler - track = danger - value >= 80 - } - add = 10 - } - modifier = { #Lowered by Travel Danger XP - has_trait_xp = { - trait = lifestyle_traveler - track = danger - value >= 65 - } - add = 5 - } - modifier = { #Lowered by Travel Danger XP - has_trait_xp = { - trait = lifestyle_traveler - track = danger - value >= 50 - } - add = 5 - } - scope:background_terrain_scope = { - switch = { - trigger = has_travel_point_of_interest - poi_capitals = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_monthly_diplomacy_lifestyle_xp_3_modifier - } - } - poi_special_buildings_martial = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_monthly_martial_lifestyle_xp_3_modifier - } - } - poi_special_buildings_learning = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_monthly_learning_lifestyle_xp_3_modifier - } - } - poi_special_buildings_religious = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_monthly_piety_3_modifier - } - } - poi_special_buildings_diplomatic = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_monthly_diplomacy_lifestyle_xp_3_modifier - } - } - poi_grand_city = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_monthly_stewardship_lifestyle_xp_3_modifier - } - } - poi_special_buildings_wonder = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_monthly_stewardship_lifestyle_xp_3_modifier - } - } - poi_special_buildings_economic = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_monthly_stewardship_lifestyle_xp_3_modifier - } - } - poi_mausoleum_at_halicarnassus = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_monthly_stewardship_lifestyle_xp_3_modifier - } - } - poi_lighthouse_of_alexandria = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_monthly_stewardship_lifestyle_xp_3_modifier - } - } - poi_natural_feature = { - scope:newly_created_artifact = { - add_artifact_modifier = artifact_hunt_lifestyle_xp_gain_mult_modifier - } - } - } - } - } - } - } - - #Foreign Kingdom: - if = { #Court Life - limit = { - scope:kingdom_focus ?= flag:court_life - } - scope:newly_created_artifact = { - #Uses fallback name - set_artifact_description = map_artifact_foreign_purpose_court - } - random_list = { - 50 = { - trigger = { - has_trait_xp = { - trait = lifestyle_traveler - track = travel - value <= 70 - } - } - modifier = { #Lowered by Travel XP - has_trait_xp = { - trait = lifestyle_traveler - track = travel - value >= 50 - } - add = -10 - } - modifier = { #Lowered by Travel XP - has_trait_xp = { - trait = lifestyle_traveler - track = travel - value >= 40 - } - add = -5 - } - modifier = { #Lowered by Travel XP - has_trait_xp = { - trait = lifestyle_traveler - track = travel - value >= 30 - } - add = -5 - } - scope:newly_created_artifact = { - random_list = { - 30 = { - trigger = { - root = { has_royal_court = no } - } - add_artifact_modifier = artifact_monthly_prestige_1_modifier - } - 30 = { - trigger = { - root = { has_royal_court = yes } - } - add_artifact_modifier = artifact_court_grandeur_baseline_add_1_modifier - } - 30 = { - add_artifact_modifier = artifact_courtly_vassal_opinion_2_modifier - } - 15 = { - add_artifact_modifier = artifact_courtly_tax_contribution_mult_2_modifier - } - 15 = { - trigger = { - root = { has_royal_court = no } - } - add_artifact_modifier = artifact_monthly_prestige_2_modifier - } - 15 = { - trigger = { - root = { has_royal_court = yes } - } - add_artifact_modifier = artifact_court_grandeur_baseline_add_2_modifier - } - } - } - } - 35 = { - trigger = { - has_trait_xp = { - trait = lifestyle_traveler - track = travel - value <= 100 - } - } - modifier = { #Lowered by Travel XP - has_trait_xp = { - trait = lifestyle_traveler - track = travel - value >= 70 - } - add = -10 - } - modifier = { #Lowered by Travel XP - has_trait_xp = { - trait = lifestyle_traveler - track = travel - value >= 50 - } - add = -5 - } - modifier = { #Lowered by Travel XP - has_trait_xp = { - trait = lifestyle_traveler - track = travel - value >= 40 - } - add = -5 - } - modifier = { #Increased by knowing their language - knows_language_of_culture = scope:background_terrain_scope.culture - add = 5 - } - scope:newly_created_artifact = { - random_list = { - 30 = { - trigger = { - root = { - has_royal_court = no - } - } - add_artifact_modifier = artifact_monthly_prestige_2_modifier - } - 30 = { - trigger = { - root = { - has_royal_court = yes - } - } - add_artifact_modifier = artifact_court_grandeur_baseline_add_2_modifier - } - 30 = { - add_artifact_modifier = artifact_courtly_vassal_opinion_3_modifier - } - 15 = { - add_artifact_modifier = artifact_courtly_tax_contribution_mult_3_modifier - } - 15 = { - trigger = { - root = { - has_royal_court = no - } - } - add_artifact_modifier = artifact_monthly_prestige_3_modifier - } - 15 = { - trigger = { - root = { - has_royal_court = yes - } - } - add_artifact_modifier = artifact_court_grandeur_baseline_add_3_modifier - } - } - } - } - 15 = { - modifier = { #Increased by Travel XP - has_trait_xp = { - trait = lifestyle_traveler - track = travel - value >= 80 - } - add = 10 - } - modifier = { #Increased by Travel XP - has_trait_xp = { - trait = lifestyle_traveler - track = travel - value >= 65 - } - add = 5 - } - modifier = { #Increased by Travel XP - has_trait_xp = { - trait = lifestyle_traveler - track = travel - value >= 50 - } - add = 5 - } - modifier = { #Increased by knowing their language - knows_language_of_culture = scope:background_terrain_scope.culture - add = 10 - } - modifier = { #Increased by knowing their court language - knows_court_language_of = scope:background_terrain_scope.barony.holder - add = 5 - } - scope:newly_created_artifact = { - random_list = { - 30 = { - trigger = { - root = { has_royal_court = no } - } - add_artifact_modifier = artifact_monthly_prestige_3_modifier - } - 30 = { - trigger = { - root = { has_royal_court = yes } - } - add_artifact_modifier = artifact_court_grandeur_baseline_add_3_modifier - } - 30 = { - add_artifact_modifier = artifact_courtly_vassal_opinion_4_modifier - } - 15 = { - add_artifact_modifier = artifact_courtly_tax_contribution_mult_3_modifier - } - 15 = { - trigger = { - root = { has_royal_court = no } - } - add_artifact_modifier = artifact_monthly_prestige_4_modifier - } - 15 = { - trigger = { - root = { has_royal_court = yes } - } - add_artifact_modifier = artifact_legitimacy_gain_mult_4_modifier - } - } - } - } - } - } - if = { #People and Customs - limit = { - scope:kingdom_focus ?= flag:people_focus - } - scope:newly_created_artifact = { - #Uses Fallback Name - set_artifact_description = map_artifact_foreign_purpose_people - } - random_list = { - 50 = { - trigger = { - has_trait_xp = { - trait = lifestyle_traveler - track = danger - value <= 70 - } - } - modifier = { #Lowered by Travel XP - has_trait_xp = { - trait = lifestyle_traveler - track = danger - value >= 50 - } - add = -10 - } - modifier = { #Lowered by Travel XP - has_trait_xp = { - trait = lifestyle_traveler - track = danger - value >= 40 - } - add = -5 - } - modifier = { #Lowered by Travel XP - has_trait_xp = { - trait = lifestyle_traveler - track = danger - value >= 30 - } - add = -5 - } - scope:newly_created_artifact = { - random_list = { - 40 = { - add_artifact_modifier = artifact_independent_ruler_opinion_1_modifier - } - 40 = { - add_artifact_modifier = artifact_learn_language_scheme_phase_duration_add_1_modifier - } - 5 = { - add_artifact_modifier = artifact_diplomacy_1_modifier - } - 15 = { - add_artifact_modifier = artifact_independent_ruler_opinion_2_modifier - } - } - } - } - 35 = { - trigger = { - has_trait_xp = { - trait = lifestyle_traveler - track = danger - value <= 100 - } - } - modifier = { #Lowered by Travel XP - has_trait_xp = { - trait = lifestyle_traveler - track = danger - value >= 70 - } - add = -10 - } - modifier = { #Lowered by Travel XP - has_trait_xp = { - trait = lifestyle_traveler - track = danger - value >= 50 - } - add = -5 - } - modifier = { #Lowered by Travel XP - has_trait_xp = { - trait = lifestyle_traveler - track = danger - value >= 40 - } - add = -5 - } - scope:newly_created_artifact = { - random_list = { - 30 = { - add_artifact_modifier = artifact_independent_ruler_opinion_2_modifier - } - 30 = { - add_artifact_modifier = artifact_learn_language_scheme_phase_duration_add_2_modifier - } - 5 = { - add_artifact_modifier = artifact_diplomacy_2_modifier - } - 15 = { - add_artifact_modifier = artifact_independent_ruler_opinion_3_modifier - } - } - } - } - 15 = { - modifier = { #Increased by Travel XP - has_trait_xp = { - trait = lifestyle_traveler - track = danger - value >= 80 - } - add = 10 - } - modifier = { #Increased by Travel XP - has_trait_xp = { - trait = lifestyle_traveler - track = danger - value >= 65 - } - add = 5 - } - modifier = { #Increased by Travel XP - has_trait_xp = { - trait = lifestyle_traveler - track = danger - value >= 50 - } - add = 5 - } - modifier = { #Increased by knowing their language - knows_language_of_culture = scope:background_terrain_scope.culture - add = 10 - } - scope:newly_created_artifact = { - random_list = { - 30 = { - add_artifact_modifier = artifact_independent_ruler_opinion_3_modifier - } - 30 = { - add_artifact_modifier = artifact_diplomacy_3_modifier - } - 20 = { - add_artifact_modifier = artifact_learn_language_scheme_phase_duration_add_2_modifier - } - 20 = { - add_artifact_modifier = artifact_independent_ruler_opinion_4_modifier - } - } - } - } - } - } - if = { #Mythical Beasts - limit = { - scope:kingdom_focus ?= flag:mythical_creatures - } - scope:newly_created_artifact = { - set_artifact_name = map_artifact_name_mythical - set_artifact_description = map_artifact_foreign_purpose_mythical - } - random_list = { - 50 = { - trigger = { - has_trait_xp = { - trait = lifestyle_traveler - track = travel - value <= 70 - } - prestige_level < high_prestige_level - } - modifier = { #Lowered by Travel XP - has_trait_xp = { - trait = lifestyle_traveler - track = travel - value >= 50 - } - add = -10 - } - modifier = { #Lowered by Travel XP - has_trait_xp = { - trait = lifestyle_traveler - track = travel - value >= 40 - } - add = -5 - } - modifier = { #Lowered by Travel XP - has_trait_xp = { - trait = lifestyle_traveler - track = travel - value >= 30 - } - add = -5 - } - scope:newly_created_artifact = { - random_list = { - 30 = { - add_artifact_modifier = artifact_monthly_prestige_add_1_modifier - } - 30 = { - add_artifact_modifier = artifact_dynasty_opinion_2_modifier - } - 15 = { - add_artifact_modifier = artifact_monthly_prestige_add_2_modifier - } - 15 = { - add_artifact_modifier = artifact_monthly_prestige_gain_per_knight_add_1_modifier - } - } - } - } - 35 = { - trigger = { - has_trait_xp = { - trait = lifestyle_traveler - track = travel - value <= 100 - } - } - modifier = { #Lowered by Travel XP - has_trait_xp = { - trait = lifestyle_traveler - track = travel - value >= 70 - } - add = -10 - } - modifier = { #Lowered by Travel XP - has_trait_xp = { - trait = lifestyle_traveler - track = travel - value >= 50 - } - add = -5 - } - modifier = { #Lowered by Travel XP - has_trait_xp = { - trait = lifestyle_traveler - track = travel - value >= 40 - } - add = -5 - } - modifier = { #Increased by Fame - prestige_level > 1 - add = { - value = prestige_level - multiply = 2 - } - } - scope:newly_created_artifact = { - random_list = { - 40 = { - add_artifact_modifier = artifact_monthly_prestige_add_2_modifier - } - 40 = { - add_artifact_modifier = artifact_monthly_prestige_gain_per_knight_add_1_modifier - } - 20 = { - add_artifact_modifier = artifact_monthly_prestige_add_3_modifier - } - } - } - } - 15 = { - modifier = { #Increased by Travel XP - has_trait_xp = { - trait = lifestyle_traveler - track = travel - value >= 80 - } - add = 10 - } - modifier = { #Increased by Travel XP - has_trait_xp = { - trait = lifestyle_traveler - track = travel - value >= 65 - } - add = 5 - } - modifier = { #Increased by Travel XP - has_trait_xp = { - trait = lifestyle_traveler - track = travel - value >= 50 - } - add = 5 - } - modifier = { #Increased by Fame - prestige_level > 1 - add = { - value = prestige_level - multiply = 2 - } - } - scope:newly_created_artifact = { - random_list = { - 60 = { - add_artifact_modifier = artifact_monthly_prestige_add_3_modifier - } - 20 = { - add_artifact_modifier = artifact_monthly_prestige_gain_per_knight_add_2_modifier - } - 20 = { - add_artifact_modifier = artifact_monthly_prestige_add_4_modifier - } - } - } - } - } - - } - } - } - if = { - limit = { - has_any_nickname = no - } - random_list = { - 80 = {} #Nothing Happens - 20 = { - give_nickname = nick_the_mapmaker - } - } - } - } - - option = { - name = mapmaking.1000.a - stress_impact = { - lifestyle_traveler = major_stress_loss #In practice this is base as you will always have this - } - } -} diff --git a/events/dlc/bp3/bp3_roaming_events.txt b/events/dlc/bp3/bp3_roaming_events.txt deleted file mode 100644 index cd6b49a54..000000000 --- a/events/dlc/bp3/bp3_roaming_events.txt +++ /dev/null @@ -1,2828 +0,0 @@ -namespace = bp3_roaming - -### Setup Events -# Arrival Event -bp3_roaming.0005 = { - type = activity_event - content_source = dlc_015 - title = bp3_roaming.0005.t - desc = bp3_roaming.0005.desc - theme = roaming_activity - - left_portrait = { - character = scope:host - triggered_animation = { - trigger = { - location = { - roaming_activity_monsoon_trigger = yes - } - } - animation = scheme - } - triggered_animation = { - trigger = { - location = { - roaming_activity_winter_trigger = yes - terrain = mountains - } - } - animation = shiver - } - animation = survey_staff - } - - right_portrait = { - trigger = { - exists = scope:special_guest - } - character = scope:special_guest - triggered_animation = { - trigger = { - location = { - roaming_activity_monsoon_trigger = yes - } - } - animation = scheme - } - triggered_animation = { - trigger = { - location = { - roaming_activity_winter_trigger = yes - terrain = mountains - } - } - animation = shiver - } - animation = happiness - } - - override_effect_2d = { - reference = rain - trigger = { - location = { - roaming_activity_monsoon_trigger = yes - } - } - } - - widgets = { - widget = { - is_shown = { - location = { - roaming_activity_winter_trigger = yes - NOT = { terrain = mountains } - } - } - gui = "event_window_widget_vfx_snow" - container = "foreground_shader_vfx_container" - } - - widget = { - is_shown = { - location = { - roaming_activity_winter_trigger = yes - terrain = mountains - } - } - gui = "event_window_widget_vfx_snowstorm" - container = "foreground_shader_vfx_container" - } - } - - override_effect_2d = { # Fallback, will be chosen if the others weren't - trigger = { - scope:province = { - roaming_activity_monsoon_trigger = no - roaming_activity_winter_trigger = no - } - } - reference = legend_glow - } - - immediate = { - save_scope_as = root_scope - roaming_tally_variable_effect = { TYPE = stress VALUE = miniscule_stress_impact_loss } - hidden_effect = { - involved_activity = { - add_activity_log_entry = { - key = roaming_start_of_the_journey_key - tags = { activity_log } - character = root - root = { - show_as_tooltip = { - stress_impact = { - base = miniscule_stress_impact_loss - } - } - } - } - } - } - } - - option = { - name = bp3_roaming.0005.a - trigger = { - location = { - OR = { - terrain = forest - terrain = farmlands - terrain = drylands - terrain = oasis - terrain = wetlands - terrain = taiga - terrain = floodplains - } - has_winter_trigger = no - NAND = { - tropical_seasons_region_trigger = yes - middle_of_year_season_trigger = yes - } - } - } - stress_impact = { - base = miniscule_stress_impact_loss - } - roaming_tally_variable_effect = { TYPE = stress VALUE = miniscule_stress_impact_loss } - } - - option = { - name = bp3_roaming.0005.b - trigger = { - location = { - OR = { - terrain = hills - terrain = mountains - terrain = plains - terrain = desert_mountains - terrain = desert - terrain = jungle - terrain = steppe - } - has_winter_trigger = no - NAND = { - tropical_seasons_region_trigger = yes - middle_of_year_season_trigger = yes - } - } - } - stress_impact = { - base = miniscule_stress_impact_loss - } - roaming_tally_variable_effect = { TYPE = stress VALUE = miniscule_stress_impact_loss } - } - - option = { - name = bp3_roaming.0005.c - trigger = { - location = { - has_winter_trigger = yes - } - } - stress_impact = { - base = miniscule_stress_impact_loss - } - roaming_tally_variable_effect = { TYPE = stress VALUE = miniscule_stress_impact_loss } - } - - option = { - name = bp3_roaming.0005.d - trigger = { - location = { - tropical_seasons_region_trigger = yes - middle_of_year_season_trigger = yes - } - } - stress_impact = { - base = miniscule_stress_impact_loss - } - roaming_tally_variable_effect = { TYPE = stress VALUE = miniscule_stress_impact_loss } - } -} - -# Ending Event -bp3_roaming.0010 = { - type = activity_event - content_source = dlc_015 - title = bp3_roaming.0010.t - desc = bp3_roaming.0010.desc - theme = roaming_activity - - left_portrait = { - character = scope:host - animation = scheme - } - - right_portrait = { - character = scope:special_guest - animation = idle - trigger = { - exists = scope:special_guest - } - } - - option = { - name = bp3_roaming.0010.a - stress_impact = { - base = roaming_outro_stress_loss_value - athletic = medium_stress_impact_loss - lifestyle_traveler = minor_stress_impact_loss - } - if = { - limit = { - has_trait = depressed_1 - has_character_flag = roaming_very_strong_stress_loss - } - remove_trait = depressed_1 - } - } - - after = { - remove_character_flag = roaming_weak_stress_loss - remove_character_flag = roaming_medium_stress_loss - remove_character_flag = roaming_strong_stress_loss - remove_character_flag = roaming_very_strong_stress_loss - } -} - -### Mid-Activity Events -# The View (Mountains/Hills/Desert Mountains) -bp3_roaming.0050 = { - type = activity_event - content_source = dlc_015 - title = bp3_roaming.0050.t - desc = bp3_roaming.0050.desc - theme = roaming_activity - - left_portrait = { - character = scope:host - animation = survey_staff - } - - right_portrait = { - character = scope:special_guest - animation = idle - trigger = { - exists = scope:special_guest - } - } - - trigger = { - location = { - OR = { - terrain = mountains - terrain = hills - terrain = desert_mountains - } - } - } - - option = { - name = bp3_roaming.0050.a - roaming_progress_events_reward_effect = { LOG_KEY = breathtaking_view_key } - } -} - -# The Oasis (Oasis/Desert/Drylands) -bp3_roaming.0060 = { - type = activity_event - content_source = dlc_015 - title = bp3_roaming.0060.t - desc = bp3_roaming.0060.desc - theme = roaming_activity - - override_background = { reference = ce1_legendary_oasis } - - left_portrait = { - character = scope:host - animation = survey_staff - } - - right_portrait = { - character = scope:special_guest - animation = idle - trigger = { - exists = scope:special_guest - } - } - - trigger = { - location = { - OR = { - terrain = oasis - terrain = desert - terrain = drylands - } - } - } - - option = { - name = bp3_roaming.0060.a - roaming_progress_events_reward_effect = { LOG_KEY = the_oasis_key } - } -} - -# The Path's End (Forest/Taiga/Jungle) -bp3_roaming.0070 = { - type = activity_event - content_source = dlc_015 - title = bp3_roaming.0070.t - desc = { - desc = bp3_roaming.0070.desc.intro - first_valid = { - triggered_desc = { - trigger = { - has_government = landless_adventurer_government - } - desc = bp3_roaming.0070.desc.landless - } - desc = bp3_roaming.0070.desc.landed - } - } - theme = roaming_activity - - override_background = { - trigger = { - location = { terrain = jungle } - } - reference = wilderness_jungle - } - - override_background = { - trigger = { - location = { has_winter_trigger = no } - } - reference = wilderness_forest_pine - } - - left_portrait = { - character = scope:host - animation = scheme - } - - right_portrait = { - character = scope:special_guest - animation = idle - trigger = { - exists = scope:special_guest - } - } - - trigger = { - location = { - OR = { - terrain = forest - terrain = taiga - terrain = jungle - } - } - } - - option = { - name = bp3_roaming.0070.a - roaming_progress_events_reward_effect = { LOG_KEY = paths_end_key } - } -} - -# The Ocean Scent (Fallback for ocean adjacent provinces) -bp3_roaming.0080 = { - type = activity_event - content_source = dlc_015 - title = bp3_roaming.0080.t - desc = bp3_roaming.0080.desc - theme = roaming_activity - - override_background = { reference = bp3_coast } - - left_portrait = { - character = scope:host - animation = survey_staff - } - - right_portrait = { - character = scope:special_guest - animation = idle - trigger = { - exists = scope:special_guest - } - } - - trigger = { - location = { - is_coastal = yes - } - } - - option = { - name = bp3_roaming.0080.a - roaming_progress_events_reward_effect = { LOG_KEY = ocean_scent_key } - } -} - -# The River at Journey's End (Fallback for terrain that hasn't been covered) -bp3_roaming.0090 = { - type = activity_event - content_source = dlc_015 - title = bp3_roaming.0090.t - desc = bp3_roaming.0090.desc - theme = roaming_activity - - override_background = { reference = ce1_legendary_spring } - - left_portrait = { - character = scope:host - animation = survey_staff - } - - right_portrait = { - character = scope:special_guest - animation = idle - trigger = { - exists = scope:special_guest - } - } - - trigger = { - location = { - is_coastal = no - NOR = { - terrain = mountains - terrain = hills - terrain = desert_mountains - terrain = oasis - terrain = desert - terrain = drylands - terrain = forest - terrain = taiga - terrain = jungle - } - } - } - - option = { - name = bp3_roaming.0090.a - roaming_progress_events_reward_effect = { LOG_KEY = river_journeys_end_key } - } -} - -### Random Events -# Meeting a Stranger -bp3_roaming.0100 = { - type = activity_event - content_source = dlc_015 - title = bp3_roaming.0100.t - desc = { - desc = bp3_roaming.0100.desc - triggered_desc = { - desc = bp3_roaming.0100.desc.companion - trigger = { - exists = scope:special_guest - } - } - } - theme = roaming_activity - - left_portrait = { - character = scope:host - animation = survey_staff - } - - center_portrait = { - character = scope:special_guest - animation = happiness - } - - right_portrait = { - character = scope:ancient_traveler - animation = scheme - } - - cooldown = { months = 3 } - - weight_multiplier = { - base = 1 - modifier = { - OR = { - has_activity_intent = reduce_stress_intent - has_activity_intent = roaming_mystic_intent - } - factor = 1.5 - } - } - - immediate = { - save_scope_value_as = { - name = trait_xp - value = { integer_range = { min = 3 max = 5 } } - } - create_character = { - location = root.location - gender_female_chance = { - if = { - limit = { root.faith = { has_doctrine = doctrine_gender_male_dominated } } - add = 0 - } - else_if = { - limit = { root.faith = { has_doctrine = doctrine_gender_female_dominated } } - add = 100 - } - else = { - add = 50 - } - } - template = ancient_forest_traveler_character - save_scope_as = ancient_traveler - } - } - - option = { - name = bp3_roaming.0100.a - flavor = bp3_roaming.0100.a.flavor - scope:ancient_traveler = { silent_disappear_ai_if_not_hired = yes } - if = { - limit = { - has_trait = lifestyle_mystic - } - involved_activity = { - add_activity_log_entry = { - key = roaming_pondering_stone_mystic_key - tags = { activity_log } - character = scope:host - root = { - add_trait_xp = { - trait = lifestyle_mystic - value = scope:trait_xp - } - } - } - } - roaming_tally_variable_effect = { TYPE = mystic_xp VALUE = scope:trait_xp } - } - random_list = { - 10 = { - trigger = { NOT = { has_character_modifier = pondering_rulership_modifier } } - roaming_pondering_stone_effect = { TYPE = rulership } - } - 10 = { - trigger = { NOT = { has_character_modifier = pondering_religion_modifier } } - roaming_pondering_stone_effect = { TYPE = religion } - } - 10 = { - trigger = { NOT = { has_character_modifier = pondering_war_modifier } } - roaming_pondering_stone_effect = { TYPE = war } - } - 10 = { - trigger = { NOT = { has_character_modifier = pondering_schemes_modifier } } - roaming_pondering_stone_effect = { TYPE = schemes } - } - 10 = { - trigger = { NOT = { has_character_modifier = pondering_management_modifier } } - roaming_pondering_stone_effect = { TYPE = management } - } - 10 = { - trigger = { NOT = { has_character_modifier = pondering_travel_modifier } } - roaming_pondering_stone_effect = { TYPE = travel } - } - 10 = { - trigger = { NOT = { has_trait = lifestyle_mystic } } - involved_activity = { - add_activity_log_entry = { - key = roaming_pondering_stone_key - tags = { activity_log } - character = scope:host - root = { - add_trait = lifestyle_mystic - set_variable = roaming_tally_mystic - } - } - } - } - } - - stress_impact = { lifestyle_mystic = minor_stress_impact_loss } - roaming_tally_stress_impact_effect = { TRAIT = lifestyle_mystic VALUE = minor_stress_impact_loss } - - ai_chance = { - base = 100 - modifier = { - factor = 1.5 - has_trait = lifestyle_mystic - } - } - } - - option = { - name = bp3_roaming.0100.b - involved_activity = { - add_activity_log_entry = { - key = roaming_resting_stone_key - tags = { activity_log } - character = scope:host - root = { - stress_impact = { - base = minor_stress_impact_loss - athletic = medium_stress_gain - lazy = medium_stress_impact_loss - } - roaming_tally_variable_effect = { TYPE = stress VALUE = minor_stress_impact_loss } - roaming_tally_stress_impact_effect = { TRAIT = athletic VALUE = minor_stress_gain } - roaming_tally_stress_impact_effect = { TRAIT = lazy VALUE = medium_stress_impact_loss } - } - } - } - - scope:ancient_traveler = { silent_disappear_ai_if_not_hired = yes } - - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = athletic - } - } - } - - option = { - name = bp3_roaming.0100.c - flavor = bp3_roaming.0100.c.flavor - duel = { - skill = learning - target = scope:ancient_traveler - 50 = { - desc = bp3_roaming.0100.c.win - compare_modifier = { - value = scope:duel_value - multiplier = 1.5 - min = -49 - } - involved_activity = { - add_activity_log_entry = { - key = roaming_old_man_key - tags = { activity_log } - character = scope:host - root = { - send_interface_toast = { - type = event_generic_good - title = bp3_roaming.0100.c.win - left_icon = root - add_learning_lifestyle_xp = 250 - roaming_tally_variable_effect = { - TYPE = learning_lifestyle_xp - VALUE = 250 - } - add_learning_skill = 1 - roaming_tally_variable_effect = { - TYPE = learning_skill - VALUE = 1 - } - } - } - } - } - } - 50 = { - desc = bp3_roaming.0100.c.neutral - compare_modifier = { - value = scope:duel_value - multiplier = -1.5 - min = -49 - } - involved_activity = { - add_activity_log_entry = { - key = roaming_old_man_key - tags = { activity_log } - character = scope:host - root = { - send_interface_toast = { - type = event_generic_neutral - title = bp3_roaming.0100.c.neutral - add_visiting_courtier = scope:ancient_traveler - } - } - } - } - } - 50 = { - desc = bp3_roaming.0100.c.loss - compare_modifier = { - value = scope:duel_value - multiplier = -1 - min = -49 - } - involved_activity = { - add_activity_log_entry = { - key = roaming_old_man_key - tags = { activity_log } - character = scope:host - root = { - send_interface_toast = { - type = event_generic_bad - title = bp3_roaming.0100.c.loss - } - } - } - } - } - } - stress_impact = { - gregarious = minor_stress_impact_loss - shy = medium_stress_gain - } - roaming_tally_stress_impact_effect = { TRAIT = gregarious VALUE = minor_stress_impact_loss } - roaming_tally_stress_impact_effect = { TRAIT = shy VALUE = medium_stress_gain } - - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = shy - } - } - } - - option = { - name = bp3_roaming.0100.d - trigger = { - has_trait = lifestyle_poet - } - involved_activity = { - add_activity_log_entry = { - key = roaming_ancient_traveler_poet_key - tags = { activity_log } - character = root - root = { - roaming_fame_reward_event_effect = { VALUE = roaming_reward_fame_medium } - stress_impact = { - honest = medium_stress_gain - deceitful = minor_stress_impact_loss - } - roaming_tally_stress_impact_effect = { TRAIT = honest VALUE = minor_stress_gain } - roaming_tally_stress_impact_effect = { TRAIT = deceitful VALUE = minor_stress_impact_loss } - } - } - } - - ai_chance = { - base = 100 - modifier = { - factor = 10 - has_trait = lifestyle_poet - } - modifier = { - factor = 0 - has_trait = honest - } - } - } -} - -# Normal Animal Sighting -bp3_roaming.0110 = { - type = activity_event - content_source = dlc_015 - title = bp3_roaming.0110.t - desc = { - desc = bp3_roaming.0110.desc - triggered_desc = { - trigger = { - exists = scope:special_guest - } - desc = bp3_roaming.0110.desc.companion - } - } - theme = roaming_activity - - override_background = { - trigger = { - location = { - terrain = forest - has_winter_trigger = no - } - } - reference = ep2_hunt_foggy_forest - } - - left_portrait = { - character = scope:host - triggered_animation = { - trigger = { - OR = { - scope:sighting_county = { - OR = { - var:animal_type = flag:fox - var:animal_type = flag:hare - } - } - has_trait = lifestyle_hunter - prowess >= 25 - } - } - animation = personality_bold - } - triggered_animation = { - trigger = { - NOR = { - scope:sighting_county = { - OR = { - var:animal_type = flag:fox - var:animal_type = flag:hare - } - } - has_trait = lifestyle_hunter - prowess >= 25 - } - } - animation = paranoia - } - } - - center_portrait = { - character = scope:special_guest - animation = fear - } - - cooldown = { months = 3 } - - weight_multiplier = { - base = 1 - modifier = { - OR = { - has_activity_intent = reduce_stress_intent - has_activity_intent = roaming_storyteller_intent - } - factor = 1.5 - } - } - - override_effect_2d = { - reference = rain - trigger = { - location = { - tropical_seasons_region_trigger = yes - middle_of_year_season_trigger = yes - } - } - } - - widget = { - is_shown = { - location = { has_winter_trigger = yes } - } - gui = "event_window_widget_vfx_snow" - container = "foreground_shader_vfx_container" - } - - override_effect_2d = { - reference = fog - trigger = { - location = { - has_winter_trigger = no - NAND = { - tropical_seasons_region_trigger = yes - middle_of_year_season_trigger = yes - } - } - } - } - - trigger = { - NOT = { - any_sub_realm_county = { has_county_modifier = hunt_sighting_standard_modifier } - } - } - - immediate = { - location = { save_scope_as = sighting_province } - location.county = { - save_scope_as = sighting_county - hunt_activity_standard_game_effect = { PROVINCE = scope:sighting_province HUNTER = root } - } - } - - option = { - name = bp3_roaming.0110.a - involved_activity = { - add_activity_log_entry = { - key = roaming_animal_sighting_key - tags = { activity_log } - character = root - root = { - roaming_fame_reward_event_effect = { VALUE = roaming_reward_fame_medium } - scope:sighting_county = { - # Create new sighting - hunt_create_sighting_effect = { - TYPE = standard - ANIMAL = var:animal_type - OWNER = root - } - } - } - } - } - - ai_chance = { - base = 100 - modifier = { - factor = 1.5 - OR = { - has_trait = lifestyle_hunter - has_trait = athletic - } - } - } - } - - option = { - name = { - text = bp3_roaming.0110.b.weakling - trigger = { - NOR = { - scope:sighting_county = { - OR = { - var:animal_type = flag:fox - var:animal_type = flag:hare - } - } - has_trait = lifestyle_hunter - prowess >= 25 - } - } - } - name = { - text = bp3_roaming.0110.b.hunter - trigger = { - OR = { - scope:sighting_county = { - OR = { - var:animal_type = flag:fox - var:animal_type = flag:hare - } - } - has_trait = lifestyle_hunter - prowess >= 25 - } - } - } - involved_activity = { - add_activity_log_entry = { - key = roaming_animal_sighting_key - tags = { activity_log } - character = root - root = { - roaming_fame_reward_event_effect = { VALUE = roaming_reward_fame_medium } - stress_impact = { base = medium_stress_impact_loss } - roaming_tally_variable_effect = { TYPE = stress VALUE = medium_stress_impact_loss } - } - } - } - - ai_chance = { - base = 100 - } - } - - option = { - name = bp3_roaming.0110.c - trigger = { - has_trait = lifestyle_poet - } - involved_activity = { - add_activity_log_entry = { - key = roaming_animal_sighting_poet_key - tags = { activity_log } - character = root - root = { - roaming_fame_reward_event_effect = { VALUE = roaming_reward_fame_very_high } - stress_impact = { - honest = medium_stress_gain - deceitful = minor_stress_impact_loss - } - roaming_tally_stress_impact_effect = { TRAIT = honest VALUE = minor_stress_gain } - roaming_tally_stress_impact_effect = { TRAIT = deceitful VALUE = minor_stress_impact_loss } - } - } - } - - ai_chance = { - base = 100 - modifier = { - factor = 10 - has_trait = lifestyle_poet - } - } - } -} - -# Legendary Animal Sighting -bp3_roaming.0120 = { - type = activity_event - content_source = dlc_015 - title = bp3_roaming.0120.t - desc = { - desc = bp3_roaming.0120.desc - triggered_desc = { - desc = bp3_roaming.0120.desc.companion - trigger = { - exists = scope:special_guest - } - } - } - theme = roaming_activity - - override_background = { - trigger = { - location = { - terrain = forest - has_winter_trigger = no - } - } - reference = ep2_hunt_foggy_forest - } - - left_portrait = { - character = scope:host - triggered_animation = { - trigger = { - OR = { - scope:sighting_county = { - OR = { - var:animal_type = flag:fox - var:animal_type = flag:hare - } - } - has_trait = lifestyle_hunter - prowess >= 25 - } - } - animation = personality_bold - } - triggered_animation = { - trigger = { - NOR = { - scope:sighting_county = { - OR = { - var:animal_type = flag:fox - var:animal_type = flag:hare - } - } - has_trait = lifestyle_hunter - prowess >= 25 - } - } - animation = paranoia - } - } - - center_portrait = { - character = scope:special_guest - animation = fear - } - - cooldown = { months = 3 } - - weight_multiplier = { - base = 1 - modifier = { - OR = { - has_activity_intent = reduce_stress_intent - has_activity_intent = roaming_storyteller_intent - } - factor = 1.5 - } - } - - override_effect_2d = { - reference = rain - trigger = { - location = { - tropical_seasons_region_trigger = yes - middle_of_year_season_trigger = yes - } - } - } - - widget = { - is_shown = { - location = { has_winter_trigger = yes } - } - gui = "event_window_widget_vfx_snow" - container = "foreground_shader_vfx_container" - } - - override_effect_2d = { - reference = fog - trigger = { - location = { - has_winter_trigger = no - NAND = { - tropical_seasons_region_trigger = yes - middle_of_year_season_trigger = yes - } - } - } - } - - trigger = { - NOT = { - any_sub_realm_county = { - has_county_modifier = hunt_sighting_legendary_modifier - } - } - } - - immediate = { - location = { save_scope_as = sighting_province } - location.county = { - save_scope_as = sighting_county - hunt_activity_standard_game_effect = { PROVINCE = scope:sighting_province HUNTER = root } - } - } - - option = { - name = bp3_roaming.0120.a - involved_activity = { - add_activity_log_entry = { - key = roaming_legendary_sighting_key - tags = { activity_log } - character = root - root = { - roaming_fame_reward_event_effect = { VALUE = roaming_reward_fame_very_high } - scope:sighting_county = { - # Create new sighting - hunt_create_sighting_effect = { - TYPE = legendary - ANIMAL = var:animal_type - OWNER = root - } - } - } - } - } - start_hunt_mystical_animal_story_cycle_effect = yes - - ai_chance = { - base = 100 - modifier = { - factor = 1.5 - OR = { - has_trait = lifestyle_hunter - has_trait = athletic - } - } - } - } - - option = { - name = bp3_roaming.0120.b - involved_activity = { - add_activity_log_entry = { - key = roaming_legendary_sighting_key - tags = { activity_log } - character = root - root = { - roaming_fame_reward_event_effect = { VALUE = roaming_reward_fame_very_high } - stress_impact = { base = massive_stress_impact_loss } - roaming_tally_variable_effect = { TYPE = stress VALUE = massive_stress_impact_loss } - } - } - } - - ai_chance = { - base = 100 - modifier = { - factor = 10 - stress > 90 - } - } - } - - option = { - name = bp3_roaming.0120.c - trigger = { - has_trait = lifestyle_poet - } - involved_activity = { - add_activity_log_entry = { - key = roaming_legendary_sighting_poet_key - tags = { activity_log } - character = root - root = { - roaming_fame_reward_event_effect = { VALUE = roaming_reward_fame_legendary } - stress_impact = { - honest = medium_stress_gain - deceitful = minor_stress_impact_loss - } - roaming_tally_stress_impact_effect = { TRAIT = honest VALUE = minor_stress_gain } - roaming_tally_stress_impact_effect = { TRAIT = deceitful VALUE = minor_stress_impact_loss } - } - } - } - - ai_chance = { - base = 100 - modifier = { - factor = 10 - has_trait = lifestyle_poet - } - } - } -} - -# A Battlefield Forgotten -bp3_roaming.0130 = { - type = activity_event - content_source = dlc_015 - title = bp3_roaming.0130.t - desc = { - desc = bp3_roaming.0130.desc - triggered_desc = { - desc = bp3_roaming.0130.desc.companion - trigger = { - exists = scope:special_guest - } - } - } - theme = battle - - left_portrait = { - character = scope:host - animation = worry - } - - center_portrait = { - character = scope:special_guest - animation = fear - } - - override_effect_2d = { - reference = fog - } - - cooldown = { months = 3 } - - weight_multiplier = { - base = 1 - modifier = { - has_activity_intent = roaming_storyteller_intent - factor = 1.5 - } - } - - option = { - name = bp3_roaming.0130.a - involved_activity = { - add_activity_log_entry = { - key = roaming_battlefield_prayer_key - tags = { activity_log } - character = root - root = { - roaming_fame_reward_event_effect = { VALUE = roaming_reward_fame_medium } - - add_piety = medium_piety_gain - roaming_tally_variable_effect = { TYPE = piety VALUE = medium_piety_gain } - - stress_impact = { - compassionate = minor_stress_impact_loss - zealous = minor_stress_impact_loss - } - roaming_tally_stress_impact_effect = { TRAIT = compassionate VALUE = minor_stress_impact_loss } - roaming_tally_stress_impact_effect = { TRAIT = zealous VALUE = minor_stress_impact_loss } - } - } - } - - ai_chance = { - base = 100 - modifier = { - factor = 1.5 - OR = { - has_trait = zealous - has_trait = compassionate - } - } - } - } - - option = { - name = bp3_roaming.0130.b - - involved_activity = { - add_activity_log_entry = { - key = roaming_battlefield_scavenging_key - tags = { activity_log } - character = root - root = { - roaming_fame_reward_event_effect = { VALUE = roaming_reward_fame_medium } - - add_gold = minor_gold_value - roaming_tally_variable_effect = { TYPE = gold VALUE = minor_gold_value } - - stress_impact = { - greedy = minor_stress_impact_loss - compassionate = minor_stress_gain - generous = medium_stress_gain - } - roaming_tally_stress_impact_effect = { TRAIT = greedy VALUE = minor_stress_impact_loss } - roaming_tally_stress_impact_effect = { TRAIT = compassionate VALUE = minor_stress_gain } - roaming_tally_stress_impact_effect = { TRAIT = generous VALUE = medium_stress_gain } - } - } - } - - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = compassionate - has_trait = generous - } - } - } - } - - option = { - name = bp3_roaming.0130.c - trigger = { - has_trait = lifestyle_poet - } - involved_activity = { - add_activity_log_entry = { - key = roaming_battlefield_poet_key - tags = { activity_log } - character = root - root = { - roaming_fame_reward_event_effect = { VALUE = roaming_reward_fame_very_high } - - stress_impact = { - honest = medium_stress_gain - deceitful = minor_stress_impact_loss - } - roaming_tally_stress_impact_effect = { TRAIT = honest VALUE = minor_stress_gain } - roaming_tally_stress_impact_effect = { TRAIT = deceitful VALUE = minor_stress_impact_loss } - } - } - } - - ai_chance = { - base = 100 - modifier = { - factor = 10 - has_trait = lifestyle_poet - } - } - } -} - -# A Night in the Wilds -bp3_roaming.0140 = { - type = activity_event - content_source = dlc_015 - title = bp3_roaming.0140.t - desc = { - desc = bp3_roaming.0140.desc - triggered_desc = { - desc = bp3_roaming.0140.desc.companion - trigger = { - exists = scope:special_guest - } - } - } - theme = roaming_activity - override_background = { reference = ep3_campfire } - - left_portrait = { - character = scope:host - animation = paranoia - } - - cooldown = { months = 3 } - - weight_multiplier = { - base = 1 - modifier = { - has_activity_intent = roaming_mystic_intent - factor = 1.5 - } - } - - immediate = { - save_scope_value_as = { - name = trait_xp - value = { integer_range = { min = 5 max = 8 } } - } - } - - option = { - name = bp3_roaming.0140.a - involved_activity = { - add_activity_log_entry = { - key = roaming_night_scare_key - tags = { activity_log } - character = root - root = { - stress_impact = { - base = miniscule_stress_gain - } - roaming_tally_variable_effect = { TYPE = stress VALUE = miniscule_stress_gain } - } - } - } - - ai_chance = { - base = 100 - modifier = { - factor = 1.5 - has_trait = content - } - } - } - - option = { - name = bp3_roaming.0140.b - involved_activity = { - random_list = { - 50 = { - desc = bp3_roaming.0140.b.2 - add_activity_log_entry = { - key = roaming_night_sleep_key - tags = { activity_log } - character = root - root = { - send_interface_toast = { - type = event_generic_good - title = bp3_roaming.0140.b.2 - left_icon = root - stress_impact = { - base = minor_stress_impact_loss - } - roaming_tally_variable_effect = { TYPE = stress VALUE = minor_stress_impact_loss } - } - } - } - } - 50 = { - desc = bp3_roaming.0140.b.1 - add_activity_log_entry = { - key = roaming_night_threat_key - tags = { activity_log } - character = root - root = { - send_interface_toast = { - type = event_generic_bad - title = bp3_roaming.0140.b.1 - left_icon = root - stress_impact = { - base = minor_stress_gain - } - roaming_tally_variable_effect = { TYPE = stress VALUE = minor_stress_gain } - } - } - } - } - } - } - - ai_chance = { - base = 100 - modifier = { - factor = 1.5 - has_trait = paranoid - } - } - } - - option = { - name = bp3_roaming.0140.c - trigger = { - has_trait = lifestyle_poet - } - - involved_activity = { - add_activity_log_entry = { - key = roaming_night_poet_key - tags = { activity_log } - character = root - root = { - roaming_fame_reward_event_effect = { VALUE = roaming_reward_fame_medium } - - stress_impact = { - base = miniscule_stress_gain - honest = medium_stress_gain - deceitful = minor_stress_impact_loss - } - roaming_tally_variable_effect = { TYPE = stress VALUE = miniscule_stress_gain } - roaming_tally_stress_impact_effect = { TRAIT = honest VALUE = minor_stress_gain } - roaming_tally_stress_impact_effect = { TRAIT = deceitful VALUE = minor_stress_impact_loss } - } - } - } - - ai_chance = { - base = 100 - modifier = { - factor = 10 - has_trait = lifestyle_poet - } - } - } - - option = { - name = bp3_roaming.0140.d - - trigger = { - has_trait = lifestyle_mystic - } - - involved_activity = { - add_activity_log_entry = { - key = roaming_night_mystic_key - tags = { activity_log } - character = root - root = { - add_trait_xp = { - trait = lifestyle_mystic - value = scope:trait_xp - } - } - } - } - - ai_chance = { - base = 100 - modifier = { - factor = 10 - has_trait = lifestyle_mystic - } - } - } -} - -# A Quiet Pond -bp3_roaming.0150 = { - type = activity_event - content_source = dlc_015 - title = bp3_roaming.0150.t - desc = { - desc = bp3_roaming.0150.desc - triggered_desc = { - desc = bp3_roaming.0150.desc.no_companion - trigger = { - NOT = { exists = scope:special_guest } - } - } - triggered_desc = { - desc = bp3_roaming.0150.desc.companion - trigger = { - exists = scope:special_guest - } - } - } - theme = roaming_activity - override_background = { - reference = ce1_legendary_oasis - trigger = { - location = { - OR = { - terrain = desert - terrain = desert_mountains - } - } - } - } - override_background = { - reference = ce1_legendary_spring - trigger = { - location = { - NOR = { - terrain = desert - terrain = desert_mountains - } - } - } - } - - left_portrait = { - character = scope:host - animation = survey_staff - } - - center_portrait = { - character = scope:special_guest - animation = happiness - } - - cooldown = { months = 3 } - - weight_multiplier = { - base = 1 - modifier = { - has_activity_intent = reduce_stress_intent - factor = 1.5 - } - } - - option = { - name = bp3_roaming.0150.a - - involved_activity = { - add_activity_log_entry = { - key = roaming_quiet_pond_key - tags = { activity_log } - character = root - root = { - stress_impact = { - base = minor_stress_impact_loss - lazy = minor_stress_impact_loss - } - roaming_tally_variable_effect = { TYPE = stress VALUE = minor_stress_impact_loss } - roaming_tally_stress_impact_effect = { TRAIT = lazy VALUE = minor_stress_impact_loss } - } - } - } - - ai_chance = { - base = 100 - modifier = { - factor = 1.5 - has_trait = lazy - } - } - } - - option = { - name = bp3_roaming.0150.b - trigger = { - has_trait = lifestyle_poet - } - - involved_activity = { - add_activity_log_entry = { - key = roaming_quiet_pond_poet_key - tags = { activity_log } - character = root - root = { - roaming_fame_reward_event_effect = { VALUE = roaming_reward_fame_medium } - - stress_impact = { - honest = medium_stress_gain - deceitful = minor_stress_impact_loss - } - roaming_tally_stress_impact_effect = { TRAIT = honest VALUE = minor_stress_gain } - roaming_tally_stress_impact_effect = { TRAIT = deceitful VALUE = minor_stress_impact_loss } - } - } - } - - ai_chance = { - base = 100 - modifier = { - factor = 10 - has_trait = lifestyle_poet - } - } - } -} - -# The Ruined Building -bp3_roaming.0160 = { - type = activity_event - content_source = dlc_015 - title = bp3_roaming.0160.t - desc = { - desc = bp3_roaming.0160.desc - triggered_desc = { - desc = bp3_roaming.0160.desc.no_companion - trigger = { - NOT = { exists = scope:special_guest } - } - } - triggered_desc = { - desc = bp3_roaming.0160.desc.companion - trigger = { - exists = scope:special_guest - } - } - desc = bp3_roaming.0160.desc.outro - } - theme = roaming_activity - override_background = { - reference = burning_building_west - } - - override_effect_2d = { - reference = smoke - } - - left_portrait = { - character = scope:host - animation = disbelief - } - - center_portrait = { - character = scope:special_guest - animation = fear - } - - cooldown = { months = 3 } - - weight_multiplier = { - base = 1 - } - - option = { - name = bp3_roaming.0160.a - involved_activity = { - add_activity_log_entry = { - key = roaming_burning_farm_piety_key - tags = { activity_log } - character = root - root = { - add_piety = medium_piety_gain - roaming_tally_variable_effect = { TYPE = piety VALUE = medium_piety_gain } - - stress_impact = { - compassionate = minor_stress_impact_loss - zealous = minor_stress_impact_loss - } - roaming_tally_stress_impact_effect = { TRAIT = compassionate VALUE = minor_stress_impact_loss } - roaming_tally_stress_impact_effect = { TRAIT = zealous VALUE = minor_stress_impact_loss } - } - } - } - - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = greedy - } - } - } - - option = { - name = bp3_roaming.0160.b - involved_activity = { - add_activity_log_entry = { - key = roaming_burning_farm_greedy_key - tags = { activity_log } - character = root - root = { - add_gold = tiny_gold_value - roaming_tally_variable_effect = { TYPE = gold VALUE = tiny_gold_value } - - stress_impact = { - greedy = minor_stress_impact_loss - compassionate = minor_stress_gain - generous = medium_stress_gain - } - roaming_tally_stress_impact_effect = { TRAIT = greedy VALUE = minor_stress_impact_loss } - roaming_tally_stress_impact_effect = { TRAIT = compassionate VALUE = minor_stress_gain } - roaming_tally_stress_impact_effect = { TRAIT = generous VALUE = medium_stress_gain } - } - } - } - - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = compassionate - has_trait = generous - } - } - } - } - - option = { - name = bp3_roaming.0160.c - trigger = { - has_trait = lifestyle_poet - } - - involved_activity = { - add_activity_log_entry = { - key = roaming_burning_farm_poet_key - tags = { activity_log } - character = root - root = { - roaming_fame_reward_event_effect = { VALUE = roaming_reward_fame_medium } - } - } - } - - ai_chance = { - base = 100 - modifier = { - factor = 10 - has_trait = lifestyle_poet - } - } - } -} - -# A Quiet Day -bp3_roaming.0170 = { - type = activity_event - content_source = dlc_015 - title = bp3_roaming.0170.t - desc = { - desc = bp3_roaming.0170.desc - triggered_desc = { - desc = bp3_roaming.0170.desc.no_companion - trigger = { - NOT = { exists = scope:special_guest } - } - } - triggered_desc = { - desc = bp3_roaming.0170.desc.companion - trigger = { - exists = scope:special_guest - } - } - } - theme = roaming_activity - - cooldown = { months = 3 } - - left_portrait = { - character = scope:host - animation = happiness - } - - right_portrait = { - character = scope:special_guest - animation = laugh - } - - override_effect_2d = { - reference = legend_glow - } - - weight_multiplier = { - base = 1 - modifier = { - OR = { - has_activity_intent = reduce_stress_intent - has_activity_intent = roaming_befriend_intent - } - factor = 1.5 - } - } - - option = { - name = bp3_roaming.0170.a - roaming_progress_events_reward_effect = { LOG_KEY = roaming_quiet_day_key } - } -} - -# Are we there yet? -bp3_roaming.0180 = { - type = activity_event - content_source = dlc_015 - title = bp3_roaming.0180.t - desc = bp3_roaming.0180.desc - theme = roaming_activity - - left_portrait = { - character = scope:host - animation = happiness - } - - right_portrait = { - character = scope:special_guest - animation = disappointed - } - - cooldown = { months = 3 } - - weight_multiplier = { - base = 1 - modifier = { - OR = { - has_activity_intent = reduce_stress_intent - has_activity_intent = roaming_befriend_intent - } - factor = 1.5 - } - } - - trigger = { - scope:special_guest ?= { - OR = { - age <= 16 - has_trait = lazy - has_trait = impatient - current_weight > 50 - } - } - NOR = { - has_trait = lazy - has_trait = impatient - } - } - - option = { - name = bp3_roaming.0180.a - involved_activity = { - add_activity_log_entry = { - key = roaming_tired_mutterings_lies_key - tags = { activity_log } - character = root - root = { - stress_impact = { - base = minor_stress_impact_loss - honest = medium_stress_gain - deceitful = medium_stress_impact_loss - callous = minor_stress_impact_loss - } - roaming_tally_variable_effect = { TYPE = stress VALUE = medium_stress_impact_loss } - roaming_tally_stress_impact_effect = { TRAIT = honest VALUE = medium_stress_gain } - roaming_tally_stress_impact_effect = { TRAIT = deceitful VALUE = medium_stress_impact_loss } - roaming_tally_stress_impact_effect = { TRAIT = callous VALUE = minor_stress_impact_loss } - } - } - } - random = { - chance = 10 - involved_activity = { - add_activity_log_entry = { - key = roaming_tired_mutterings_athletic_key - tags = { activity_log } - character = root - root = { - send_interface_toast = { - type = event_generic_good - title = bp3_roaming.0180.a_short - left_icon = root - add_trait = athletic - set_variable = roaming_tally_athletic - } - } - } - } - } - - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = honest - } - } - } - - option = { - name = bp3_roaming.0180.b - involved_activity = { - add_activity_log_entry = { - key = roaming_tired_mutterings_break_key - tags = { activity_log } - character = scope:special_guest - scope:special_guest = { - reverse_add_opinion = { - modifier = friendliness_opinion - target = root - opinion = 15 - } - roaming_tally_variable_effect = { TYPE = opinion VALUE = 15 } - } - root = { - reverse_add_opinion = { - modifier = friendliness_opinion - target = scope:special_guest - opinion = 15 - } - roaming_tally_variable_effect = { TYPE = opinion VALUE = 15 } - } - } - } - - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = sadistic - has_trait = athletic - has_trait = callous - } - } - } - } -} - -# A chance to talk -bp3_roaming.0190 = { - type = activity_event - content_source = dlc_015 - title = bp3_roaming.0190.t - desc = bp3_roaming.0190.desc - theme = roaming_activity - - left_portrait = { - character = scope:host - animation = happiness - } - - right_portrait = { - character = scope:special_guest - animation = laugh - } - - cooldown = { months = 3 } - - weight_multiplier = { - base = 1 - modifier = { - has_activity_intent = roaming_befriend_intent - factor = 1.5 - } - } - - trigger = { - exists = scope:special_guest - } - - immediate = { - random_courtier_or_guest = { - limit = { - NOR = { - this = root - this = scope:special_guest - } - age > 5 - } - save_scope_as = random_courtier - } - } - - option = { - name = bp3_roaming.0190.a - involved_activity = { - add_activity_log_entry = { - key = roaming_chance_to_talk_key - tags = { activity_log } - character = root - scope:special_guest = { - reverse_add_opinion = { - modifier = friendliness_opinion - target = root - opinion = 20 - } - roaming_tally_variable_effect = { TYPE = opinion VALUE = 20 } - } - root = { - reverse_add_opinion = { - modifier = friendliness_opinion - target = scope:special_guest - opinion = 20 - } - roaming_tally_variable_effect = { TYPE = opinion VALUE = 20 } - } - } - } - } -} - -# Astronomical Sight -bp3_roaming.0200 = { - type = activity_event - content_source = dlc_015 - title = bp3_roaming.0200.t - desc = bp3_roaming.0200.desc - theme = roaming_activity - - override_background = { - reference = bp1_bonfire - } - - left_portrait = { - character = scope:host - animation = happiness - } - - right_portrait = { - character = scope:special_guest - animation = admiration - } - - cooldown = { years = 1 } - - option = { - name = bp3_roaming.0200.a - involved_activity = { - add_activity_log_entry = { - key = roaming_nightsky_canvas_key - tags = { activity_log } - character = root - scope:host = { - stress_impact = { - base = medium_stress_impact_loss - zealous = medium_stress_impact_loss - } - add_wanderer_lifestyle_xp = 500 - roaming_tally_stress_impact_effect = { TRAIT = zealous VALUE = medium_stress_impact_loss } - roaming_fame_reward_event_effect = { VALUE = roaming_reward_fame_very_high } - } - } - } - } -} - -# The Birds Overhead -bp3_roaming.0210 = { - type = activity_event - content_source = dlc_015 - title = bp3_roaming.0210.t - desc = bp3_roaming.0210.desc - theme = roaming_activity - - left_portrait = { - character = scope:host - animation = survey_staff - } - - right_portrait = { - character = scope:special_guest - animation = happiness - } - - cooldown = { months = 3 } - - weight_multiplier = { - base = 1 - modifier = { - OR = { - has_activity_intent = reduce_stress_intent - has_activity_intent = roaming_befriend_intent - has_activity_intent = roaming_storyteller_intent - } - factor = 1.5 - } - } - - option = { - name = bp3_roaming.0210.a - roaming_progress_events_reward_effect = { LOG_KEY = the_birds_overhead_key } - } -} - -# The Forgotten Village -bp3_roaming.0220 = { - type = activity_event - content_source = dlc_015 - title = bp3_roaming.0220.t - desc = bp3_roaming.0220.desc - theme = roaming_activity - - override_background = { reference = market_tribal } - - left_portrait = { - character = scope:host - animation = shock - } - - right_portrait = { - character = scope:peasant_character - hide_info = yes - animation = dismissal - } - - cooldown = { months = 3 } - - weight_multiplier = { - base = 1 - modifier = { - has_activity_intent = roaming_mystic_intent - } - } - - immediate = { - create_character = { - template = peasant_character - faith = scope:province.faith - culture = scope:province.culture - gender = root - location = scope:province - save_scope_as = peasant_character - } - } - - option = { - name = { - trigger = { - is_landless_adventurer = no - } - text = bp3_roaming.0220.a - } - name = { - trigger = { - has_government = landless_adventurer_government - } - text = bp3_roaming.0220.a.landless - } - involved_activity = { - add_activity_log_entry = { - key = the_forgotten_village_key - tags = { activity_log } - character = root - root = { - roaming_gold_reward_APA_effect = { REWARD = tiny_gold_value } - stress_impact = { - greedy = minor_stress_impact_loss - generous = minor_stress_gain - } - roaming_tally_stress_impact_effect = { TRAIT = greedy VALUE = minor_stress_impact_loss } - roaming_tally_stress_impact_effect = { TRAIT = generous VALUE = minor_stress_gain } - if = { - limit = { - has_government = landless_adventurer_government - NOT = { has_trait = gallowsbait } - } - add_trait = gallowsbait - } - else_if = { - limit = { - has_government = landless_adventurer_government - has_trait = gallowsbait - } - add_trait_xp = { - trait = gallowsbait - track = thief - value = 5 - } - } - } - } - } - - ai_chance = { - base = 100 - modifier = { - factor = 1.5 - has_trait = greedy - } - modifier = { - factor = 0 - has_trait = generous - } - } - } - - option = { - name = bp3_roaming.0220.b - involved_activity = { - add_activity_log_entry = { - key = the_forgotten_village_key - tags = { activity_log } - character = root - root = { - scope:province = { - add_province_modifier = { - modifier = roaming_forgotten_village_modifier - years = 10 - } - } - stress_impact = { - lifestyle_mystic = minor_stress_impact_loss - gregarious = minor_stress_impact_loss - } - roaming_tally_stress_impact_effect = { TRAIT = lifestyle_mystic VALUE = minor_stress_impact_loss } - roaming_tally_stress_impact_effect = { TRAIT = gregarious VALUE = minor_stress_impact_loss } - } - } - } - - random = { - chance = roaming_mystic_chance_value - involved_activity = { - add_activity_log_entry = { - key = the_forgotten_village_mystic_key - tags = { activity_log } - character = root - root = { - send_interface_message = { - type = event_generic_good - title = bp3_roaming.0220.b.mystic - - roaming_mystic_xp_APA_effect = { REWARD = 3 } - if = { - limit = { - NOT = { has_trait = lifestyle_mystic } - } - add_trait = lifestyle_mystic - } - } - } - } - } - } - - ai_chance = { - base = 100 - modifier = { - factor = 1.5 - OR = { - has_trait = gregarious - has_trait = lifestyle_mystic - } - } - } - } - - option = { - name = bp3_roaming.0220.c - involved_activity = { - add_activity_log_entry = { - key = the_forgotten_village_key - tags = { activity_log } - character = root - root = { - roaming_fame_reward_event_effect = { VALUE = roaming_reward_fame_medium } - stress_impact = { lifestyle_poet = minor_stress_impact_loss } - roaming_tally_stress_impact_effect = { TRAIT = lifestyle_poet VALUE = minor_stress_impact_loss } - } - } - } - - ai_chance = { - base = 100 - modifier = { - factor = 1.5 - has_trait = lifestyle_poet - } - } - } - - after = { - scope:peasant_character = { - silent_disappear_ai_if_not_hired = yes - } - } -} - -# The Hermit -bp3_roaming.0230 = { - type = activity_event - content_source = dlc_015 - title = bp3_roaming.0230.t - desc = bp3_roaming.0230.desc - theme = roaming_activity - - left_portrait = { - character = scope:host - animation = boredom - } - - right_portrait = { - character = scope:hermit_character - animation = debating - } - - cooldown = { months = 3 } - - trigger = { - scope:province.religion = { - any_faith = { - this != root.faith - num_county_followers < 3 - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - factor = 1.5 - has_activity_intent = roaming_mystic_intent - } - } - - immediate = { - scope:province.religion = { - random_faith = { - limit = { - this != root.faith - num_county_followers < 3 - } - save_scope_as = hermit_faith - } - } - create_character = { - template = peasant_character - faith = scope:hermit_faith - culture = scope:province.culture - gender = root - location = scope:province - save_scope_as = hermit_character - after_creation = { - add_trait = eccentric - add_character_flag = roaming_character - } - } - } - - option = { - name = bp3_roaming.0230.a - - involved_activity = { - add_activity_log_entry = { - key = the_hermit_key - tags = { activity_log } - character = root - root = { - add_character_modifier = { - modifier = roaming_the_hermit_modifier - years = 10 - } - stress_impact = { zealous = major_stress_gain } - roaming_tally_stress_impact_effect = { TRAIT = zealous VALUE = major_stress_gain } - } - } - } - - random = { - chance = roaming_mystic_chance_value - involved_activity = { - add_activity_log_entry = { - key = the_hermit_learning_key - tags = { activity_log } - character = root - root = { - send_interface_message = { - type = event_generic_good - title = bp3_roaming.0230.a.hermit - - roaming_mystic_xp_APA_effect = { REWARD = 3 } - if = { - limit = { - NOT = { has_trait = lifestyle_mystic } - } - add_trait = lifestyle_mystic - } - } - } - } - } - } - - scope:hermit_character = { - silent_disappear_ai_if_not_hired = yes - } - - ai_chance = { - base = 100 - modifier = { - factor = 1.5 - has_trait = lifestyle_mystic - } - modifier = { - factor = 0 - has_trait = zealous - } - } - } - - option = { - name = bp3_roaming.0230.b - trigger = { - NOR = { - any_secret = { type = secret_crypto_religionist } - exists = secret_faith - scope:hermit_faith = faith - } - } - - involved_activity = { - add_activity_log_entry = { - key = the_hermit_key - tags = { activity_log } - character = root - root = { - custom_tooltip = bp3_roaming.0230.b.tooltip - make_character_crypto_religionist_effect = { CRYPTO_RELIGION = scope:hermit_faith } - stress_impact = { zealous = major_stress_gain } - roaming_tally_stress_impact_effect = { TRAIT = zealous VALUE = major_stress_gain } - } - } - } - - scope:hermit_character = { - silent_disappear_ai_if_not_hired = yes - } - - ai_chance = { - base = 0 - modifier = { - add = 100 - OR = { - has_trait = lunatic - has_trait = eccentric - } - } - } - } - - option = { - name = bp3_roaming.0230.c - - involved_activity = { - add_activity_log_entry = { - key = the_hermit_key - tags = { activity_log } - character = root - root = { - add_piety = medium_piety_gain - roaming_tally_variable_effect = { TYPE = piety VALUE = medium_piety_gain } - - scope:hermit_character = { - death = { - death_reason = death_murder - killer = root - } - } - - stress_impact = { zealous = medium_stress_impact_loss } - roaming_tally_stress_impact_effect = { TRAIT = zealous VALUE = medium_stress_impact_loss } - } - } - } - - ai_chance = { - base = 100 - modifier = { - factor = 1.5 - has_trait = zealous - } - } - } -} - -# A Night to Remember -bp3_roaming.0240 = { - type = activity_event - content_source = dlc_015 - title = bp3_roaming.0240.t - desc = bp3_roaming.0240.desc - theme = roaming_activity - - override_background = { reference = ep3_campfire } - - left_portrait = { - character = scope:host - animation = stunned - } - - cooldown = { months = 3 } - - weight_multiplier = { - base = 1 - modifier = { - OR = { - has_activity_intent = reduce_stress_intent - has_activity_intent = roaming_storyteller_intent - has_activity_intent = roaming_mystic_intent - } - factor = 1.5 - } - } - - trigger = { - scope:province = { - NOT = { has_province_modifier = wayfarer_astronomical_phenomenon } - } - } - - option = { - name = bp3_roaming.0240.a - involved_activity = { - add_activity_log_entry = { - key = a_night_to_remember_key - tags = { activity_log } - character = root - root = { - if = { - limit = { - has_trait = lifestyle_mystic - has_activity_intent = roaming_mystic_intent - } - } - else = { - roaming_fame_reward_event_effect = { VALUE = roaming_reward_fame_medium } - } - stress_impact = { base = minor_stress_impact_loss } - roaming_tally_variable_effect = { TYPE = stress VALUE = minor_stress_impact_loss } - } - } - } - } -} - -# A Small Grave -bp3_roaming.0250 = { - type = activity_event - content_source = dlc_015 - title = bp3_roaming.0250.t - desc = bp3_roaming.0250.desc - theme = roaming_activity - - left_portrait = { - character = scope:host - animation = prayer - } - - cooldown = { months = 3 } - - weight_multiplier = { - base = 1 - } - - immediate = { - save_scope_value_as = { - name = randomized_chance - value = { integer_range = { min = 1 max = 20 } } - } - } - - option = { - name = bp3_roaming.0250.a - involved_activity = { - add_activity_log_entry = { - key = a_small_grave_key - tags = { activity_log } - character = root - root = { - add_piety = medium_piety_gain - roaming_tally_variable_effect = { TYPE = piety VALUE = medium_piety_gain } - stress_impact = { zealous = medium_stress_impact_loss } - roaming_tally_stress_impact_effect = { TRAIT = zealous VALUE = medium_stress_impact_loss } - } - } - } - - ai_chance = { - base = 100 - modifier = { - factor = 1.5 - has_trait = zealous - } - } - } - - option = { - name = bp3_roaming.0250.b - add_piety = medium_piety_loss - roaming_tally_variable_effect = { TYPE = piety VALUE = medium_piety_loss } - show_as_tooltip = { - random_list = { - 1 = { - desc = no_treasure - show_chance = no - } - 1 = { - desc = small_treasure - show_chance = no - add_gold = tiny_gold_value - } - 1 = { - desc = medium_treasure - show_chance = no - add_gold = minor_gold_value - } - 1 = { - desc = large_treasure - show_chance = no - add_gold = medium_gold_value - custom_tooltip = bp3_roaming.0250.artifact - } - } - stress_impact = { greedy = medium_stress_impact_loss } - } - hidden_effect_new_object = { - involved_activity = { - add_activity_log_entry = { - key = a_small_grave_key - tags = { activity_log } - character = root - root = { - if = { - limit = { - scope:randomized_chance > 18 - } - hidden_effect = { - create_character = { - template = merchant_template - faith = scope:province.faith - culture = scope:province.culture - gender = root - location = scope:province - save_scope_as = blacksmith_character - } - scope:blacksmith_character = { - random_list = { - 1 = { - create_artifact_weapon_effect = { - OWNER = scope:blacksmith_character - CREATOR = scope:blacksmith_character - SET_WEAPON_TYPE = flag:no - } - } - 1 = { - create_artifact_armor_effect = { - OWNER = scope:blacksmith_character - CREATOR = scope:blacksmith_character - SET_ARMOR_TYPE = flag:no - } - } - 1 = { - create_artifact_brooch_effect = { - OWNER = scope:blacksmith_character - SMITH = scope:blacksmith_character - } - } - } - } - } - send_interface_message = { - type = event_generic_good - title = large_treasure - - scope:newly_created_artifact ?= { - set_owner = { - target = root - history = { - actor = root - recipient = root - location = scope:province - type = discovered - } - } - } - add_gold = medium_gold_value - } - } - else_if = { - limit = { - scope:randomized_chance > 13 - } - send_interface_message = { - type = event_generic_good - title = medium_treasure - - add_gold = minor_gold_value - } - } - else_if = { - limit = { - scope:randomized_chance > 7 - } - send_interface_message = { - type = event_generic_good - title = small_treasure - - add_gold = tiny_gold_value - } - } - else = { - send_interface_message = { - type = event_generic_good - title = no_treasure - } - } - stress_impact = { - greedy = minor_stress_impact_loss - generous = minor_stress_gain - zealous = minor_stress_gain - } - roaming_tally_stress_impact_effect = { TRAIT = greedy VALUE = minor_stress_impact_loss } - roaming_tally_stress_impact_effect = { TRAIT = generous VALUE = minor_stress_gain } - roaming_tally_stress_impact_effect = { TRAIT = zealous VALUE = minor_stress_gain } - } - } - } - } - - ai_chance = { - base = 100 - modifier = { - factor = 1.5 - has_trait = greedy - } - modifier = { - factor = 0 - OR = { - has_trait = zealous - has_trait = generous - } - } - } - } - - after = { - scope:blacksmith_character ?= { - silent_disappear_ai_if_not_hired = yes - } - } -} diff --git a/events/dlc/bp3/bp3_survey_events.txt b/events/dlc/bp3/bp3_survey_events.txt deleted file mode 100644 index a0cb139c7..000000000 --- a/events/dlc/bp3/bp3_survey_events.txt +++ /dev/null @@ -1,4487 +0,0 @@ -namespace = bp3_survey - -### Setup Events -# Arrival Event -bp3_survey.0005 = { - type = activity_event - content_source = dlc_015 - title = bp3_survey.0005.t - desc = { - first_valid = { - triggered_desc = { - trigger = { root != root } - desc = bp3_survey.0005.desc.holder - } - desc = bp3_survey.0005.desc.no_holder - } - } - theme = survey_activity - - override_background = { - reference = study - } - - left_portrait = { - character = scope:host - triggered_animation = { - trigger = { - government_allows = merit - } - animation = holding_scrolls - } - animation = pondering - camera = camera_event_group_talking_left_left - } - - right_portrait = { - trigger = { scope:host != scope:county_holder } - character = scope:county_holder - animation = obsequious_bow - } - - immediate = { - if = { - limit = { - location.county.holder != root - } - location.county.holder = { - save_scope_as = county_holder - save_opinion_value_as = { - name = county_holder_opinion - target = root - } - trigger_event = bp3_survey.0050 - } - } - else = { save_scope_as = county_holder } - } - - option = { - name = bp3_survey.0005.a - trigger = { - location.county = { - any_neighboring_county = { - exists = holder - holder.top_liege != root.location.county.holder.top_liege - } - } - } - custom_tooltip = bp3_survey.0005.a.tt - set_variable = inspection_activity_border_focus - } - - option = { - name = bp3_survey.0005.b - custom_tooltip = bp3_survey.0005.b.tt - set_variable = inspection_activity_bureaucracy_focus - } - - option = { - name = bp3_survey.0005.c - custom_tooltip = bp3_survey.0005.c.tt - set_variable = inspection_activity_domain_focus - } -} - -# Ending Event -bp3_survey.0010 = { - type = activity_event - content_source = dlc_015 - title = bp3_survey.0010.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - exists = scope:success - has_variable = inspection_activity_border_focus - } - desc = bp3_survey.0010.desc.border.success - } - triggered_desc = { - trigger = { - has_variable = inspection_activity_border_focus - } - desc = bp3_survey.0010.desc.border.failure - } - triggered_desc = { - trigger = { - exists = scope:success - has_variable = inspection_activity_bureaucracy_focus - } - desc = bp3_survey.0010.desc.bureaucracy.success - } - triggered_desc = { - trigger = { - has_variable = inspection_activity_bureaucracy_focus - } - desc = bp3_survey.0010.desc.bureaucracy.failure - } - triggered_desc = { - trigger = { - exists = scope:success - has_variable = inspection_activity_domain_focus - } - desc = bp3_survey.0010.desc.people.success - } - triggered_desc = { - trigger = { - has_variable = inspection_activity_domain_focus - } - desc = bp3_survey.0010.desc.people.failure - } - } - } - theme = survey_activity - - override_background = { - reference = study - } - - left_portrait = { - character = scope:host - triggered_animation = { - trigger = { - exists = scope:success - government_allows = merit - } - animation = toast_goblet - } - triggered_animation = { - trigger = { - exists = scope:success - } - animation = toast - } - triggered_animation = { - trigger = { - NOT = { exists = scope:success } - } - animation = disapproval - } - } - - right_portrait = { - character = scope:county_holder - triggered_animation = { - trigger = { - exists = scope:success - } - animation = drink - } - triggered_animation = { - trigger = { - NOT = { exists = scope:success } - } - animation = disappointed - } - } - - immediate = { - location = { save_scope_as = inspection_province } - location.county = { save_scope_as = inspection_location } - random = { # Check if Activity was a success or not - chance = root.involved_activity.var:inspection_success_chance - - save_scope_value_as = { - name = success - value = yes - } - } - scope:inspection_location.holder = { # Save the holder, if not liege, for Opinion check and for animation - if = { - limit = { - this != root - } - save_scope_as = county_holder - } - } - if = { # Save data needed for Claims/Vassal Acceptance, if you have the border focus - limit = { - has_variable = inspection_activity_border_focus - } - scope:inspection_location = { - random_neighboring_county = { - limit = { - holder = { - NOR = { - is_vassal_or_below_of = root - this = root - } - } - holder.top_liege = root.location.county.holder.top_liege - } - save_scope_as = claim_location - } - every_neighboring_county = { - limit = { - holder.top_liege != root.top_liege - holder.top_liege.highest_held_title_tier < root.highest_held_title_tier - } - holder = { add_to_list = independent_rulers } - } - } - } - } - - option = { - name = bp3_survey.0010.a - trigger = { - exists = scope:success - } - add_legitimacy_effect = { LEGITIMACY = minor_legitimacy_gain } - inspection_survey_intent_development = { VALUE = 15 } - if = { # If you have a Border Focus (Claims/Acceptance) - limit = { - has_variable = inspection_activity_border_focus - } - ### Claims - if = { # Focused on Claims - limit = { - has_variable = inspection_activity_border_claim_focus - } - scope:inspection_location = { - every_neighboring_county = { - limit = { - holder.top_liege != root.top_liege - OR = { - NOT = { root = { has_claim_on = prev } } - NOT = { root = { has_claim_on = prev.duchy } } - } - } - scope:activity = { - add_activity_log_entry = { - key = inspection_conclusion_success_claim_key - show_in_conclusion = yes - character = root - prev = { - inspection_claim_effects = { - ACTOR = root - TARGET = prev - TYPE = pressed - } - inspection_claim_effects = { - ACTOR = root - TARGET = prev.duchy - TYPE = pressed - } - } - } - } - } - } - scope:activity = { - add_activity_log_entry = { - key = inspection_conclusion_expansionist_mindset_key - show_in_conclusion = yes - character = root - root = { - add_character_modifier = { - modifier = inspection_reward_focused_claims_modifier - years = 15 - } - } - } - } - } - else_if = { # Not focused on Claims - limit = { exists = scope:claim_location } - scope:claim_location.duchy = { - if = { - limit = { - NOT = { - root = { has_claim_on = prev } - } - } - scope:activity = { - add_activity_log_entry = { - key = inspection_conclusion_success_claim_key - show_in_conclusion = yes - character = root - prev = { - inspection_claim_effects = { - ACTOR = root - TARGET = prev - TYPE = unpressed - } - } - } - } - } - } - } - ### Vassal Acceptance - if = { # Focused on Vassal Acceptance - limit = { - has_variable = inspection_activity_border_vassal_focus - any_in_list = { - list = independent_rulers - count > 0 - } - } - every_in_list = { - list = independent_rulers - scope:activity = { - add_activity_log_entry = { - key = inspection_conclusion_success_acceptance_key - show_in_conclusion = yes - character = root - prev = { custom_tooltip = bp3_survey.0010.acceptance.success } - } - } - add_to_variable_list = { - name = inspection_reward - target = root - years = 15 - } - } - scope:activity = { - add_activity_log_entry = { - key = inspection_conclusion_impressed_neighbors_key - show_in_conclusion = yes - character = root - root = { - add_character_modifier = { - modifier = inspection_reward_focused_vassal_acceptance - years = 15 - } - } - } - } - } - else_if = { # Not focused on Vassal Acceptance - limit = { - any_in_list = { - list = independent_rulers - count > 0 - } - } - random_in_list = { - list = independent_rulers - scope:activity = { - add_activity_log_entry = { - key = inspection_conclusion_success_acceptance_key - show_in_conclusion = yes - character = root - prev = { custom_tooltip = bp3_survey.0010.acceptance.success } - } - } - add_to_variable_list = { - name = inspection_reward - target = root - years = 15 - } - } - } - } - else_if = { # If you have Bureaucracy Focus (Tax/Development/Control) - limit = { - has_variable = inspection_activity_bureaucracy_focus - } - if = { # Focused on Taxes - limit = { - has_variable = inspection_activity_bureaucracy_tax_focus - } - scope:activity = { - add_activity_log_entry = { - key = inspection_conclusion_success_tax_key - show_in_conclusion = yes - character = root - scope:inspection_province = { - add_province_modifier = { - modifier = inspection_reward_focused_tax_modifier - years = 15 - } - } - root = { add_treasury_or_gold = medium_treasury_or_gold_value } - } - } - inspection_survey_local_message_province_modifier = { - TYPE = message_good - MODIFIER = inspection_reward_focused_tax_modifier - YEARS = 15 - } - } - else = { # Not focused on Taxes - scope:activity = { - add_activity_log_entry = { - key = inspection_conclusion_success_tax_key - show_in_conclusion = yes - character = root - scope:inspection_province = { - add_province_modifier = { - modifier = inspection_reward_average_tax_modifier - years = 15 - } - } - } - } - inspection_survey_local_message_province_modifier = { - TYPE = message_good - MODIFIER = inspection_reward_average_tax_modifier - YEARS = 15 - } - } - if = { # Focused on Development - limit = { - has_variable = inspection_activity_bureaucracy_development_focus - } - scope:activity = { - add_activity_log_entry = { - key = inspection_conclusion_success_development_key - show_in_conclusion = yes - character = root - scope:inspection_location = { - add_county_modifier = { - modifier = inspection_reward_focused_development_modifier - years = 15 - } - change_development_progress_with_overflow = 50 - } - } - } - inspection_survey_local_message_county_modifier = { - TYPE = message_good - MODIFIER = inspection_reward_focused_development_modifier - YEARS = 15 - } - } - else = { # Not focused on Development - scope:activity = { - add_activity_log_entry = { - key = inspection_conclusion_success_development_key - show_in_conclusion = yes - character = root - scope:inspection_location = { - change_development_progress_with_overflow = 25 - } - } - } - } - if = { # Focused on Control - limit = { - has_variable = inspection_activity_bureaucracy_control_focus - } - scope:activity = { - add_activity_log_entry = { - key = inspection_conclusion_success_control_key - show_in_conclusion = yes - character = root - scope:inspection_location = { - add_county_modifier = { - modifier = inspection_reward_focused_control_modifier - years = 15 - } - change_county_control = 10 - } - } - } - inspection_survey_local_message_county_modifier = { - TYPE = message_good - MODIFIER = inspection_reward_focused_control_modifier - YEARS = 15 - } - } - else_if = { # Not focused on Control - limit = { - scope:inspection_location.county_control < 100 - } - scope:activity = { - add_activity_log_entry = { - key = inspection_conclusion_success_control_key - show_in_conclusion = yes - character = root - scope:inspection_location = { change_county_control = 5 } - } - } - } - } - else_if = { # If you have People Focus (Levy/Opinion/Popular Opinion) - limit = { - has_variable = inspection_activity_domain_focus - } - if = { # Focused on Levies - limit = { - has_variable = inspection_activity_domain_levy_focus - } - scope:activity = { - add_activity_log_entry = { - key = inspection_conclusion_success_levy_key - show_in_conclusion = yes - character = root - scope:inspection_location = { - add_county_modifier = { - modifier = inspection_reward_focused_levy_modifier - years = 15 - } - } - root = { - spawn_army = { - name = local_militia_name_default - levies = inspection_levy_reward_value - location = scope:inspection_location.title_province - inheritable = no - war_keep_on_attacker_victory = yes - } - } - } - } - inspection_survey_local_message_county_modifier = { - TYPE = message_good - MODIFIER = inspection_reward_focused_levy_modifier - YEARS = 15 - } - } - else = { # Not focused on Levies - scope:activity = { - add_activity_log_entry = { - key = inspection_conclusion_success_levy_key - show_in_conclusion = yes - character = root - scope:inspection_location = { - add_county_modifier = { - modifier = inspection_reward_average_levy_modifier - years = 15 - } - } - } - } - inspection_survey_local_message_county_modifier = { - TYPE = message_good - MODIFIER = inspection_reward_average_levy_modifier - YEARS = 15 - } - } - if = { # Focused on Opinion - limit = { - has_variable = inspection_activity_domain_opinion_focus - } - if = { - limit = { - exists = root - } - scope:activity = { - add_activity_log_entry = { - key = inspection_conclusion_success_opinion_key - show_in_conclusion = yes - character = root - root = { - add_opinion = { - modifier = friendliness_opinion - target = root - opinion = 20 - } - } - root = { - add_character_modifier = { - modifier = inspection_reward_focused_opinion_modifier - years = 15 - } - } - } - } - } - else = { - scope:activity = { - add_activity_log_entry = { - key = inspection_conclusion_success_opinion_key - show_in_conclusion = yes - character = root - root = { - add_character_modifier = { - modifier = inspection_reward_focused_opinion_modifier - years = 15 - } - } - } - } - } - } - else_if = { # Not focused on Opinion - limit = { - exists = root - exists = scope:county_holder - } - scope:activity = { - add_activity_log_entry = { - key = inspection_conclusion_success_opinion_key - show_in_conclusion = yes - character = root - root = { - reverse_add_opinion = { - modifier = friendliness_opinion - target = scope:county_holder - opinion = 10 - } - } - } - } - } - if = { # Focused on Popular Opinion - limit = { - has_variable = inspection_activity_domain_popular_focus - } - scope:activity = { - add_activity_log_entry = { - key = inspection_conclusion_success_popular_opinion_key - show_in_conclusion = yes - character = root - scope:inspection_location = { - add_county_modifier = { - modifier = inspection_reward_focused_popular_opinion_modifier - years = 15 - } - } - root = { - add_character_modifier = { - modifier = inspection_reward_focused_popular_opinion_character_modifier - years = 15 - } - } - } - } - } - else = { # Not focused on Popular Opinion - scope:activity = { - add_activity_log_entry = { - key = inspection_conclusion_success_popular_opinion_key - show_in_conclusion = yes - character = root - scope:inspection_location = { - add_county_modifier = { - modifier = inspection_reward_average_popular_opinion_modifier - years = 15 - } - } - } - } - } - } - - # As an admin governor, gain some governor trait XP - if = { - limit = { is_governor = yes } - scope:activity = { - add_activity_log_entry = { - key = inspection_conclusion_success_governor_experience_key - show_in_conclusion = yes - character = root - root = { increase_governance_effect = { VALUE = 10 } } - } - } - } - - # If you have Merit we give Merit - if = { - limit = { government_allows = merit } - scope:activity = { - add_activity_log_entry = { - key = inspection_conclusion_success_merit_key - show_in_conclusion = yes - character = root - root = { - change_merit = { - value = major_merit_gain - house ?= { - if = { - limit = { has_house_aspiration_parameter = inspection_activity_merit_bonus_5 } - multiply = { - value = 1 - add = inspection_activity_merit_bonus_5_value - } - } - else_if = { - limit = { has_house_aspiration_parameter = inspection_activity_merit_bonus_4 } - multiply = { - value = 1 - add = inspection_activity_merit_bonus_4_value - } - } - else_if = { - limit = { has_house_aspiration_parameter = inspection_activity_merit_bonus_3 } - multiply = { - value = 1 - add = inspection_activity_merit_bonus_3_value - } - } - else_if = { - limit = { has_house_aspiration_parameter = inspection_activity_merit_bonus_2 } - multiply = { - value = 1 - add = inspection_activity_merit_bonus_2_value - } - } - else_if = { - limit = { has_house_aspiration_parameter = inspection_activity_merit_bonus_1 } - multiply = { - value = 1 - add = inspection_activity_merit_bonus_1_value - } - } - } - } - } - } - } - } - - # If you have the governance aspiration, you gain some gold and a higher salary - if = { - limit = { - house ?= { has_house_aspiration_parameter = inspection_activity_increases_salary } - } - scope:activity = { - add_activity_log_entry = { - key = inspection_conclusion_success_salary_key - show_in_conclusion = yes - character = root - root = { - add_gold = medium_gold_value - add_character_modifier = { - modifier = tgp_aspiration_great_salary_modifier - years = 15 - } - hidden_effect = { - if = { - limit = { - has_character_modifier = tgp_aspiration_modest_salary_modifier - } - remove_character_modifier = tgp_aspiration_modest_salary_modifier - } - } - } - } - } - } - - if = { #Devotion for tenet - limit = { - faith = { has_doctrine_parameter = inspection_gives_devotion } - } - scope:activity = { - add_activity_log_entry = { - key = inspection_conclusion_success_piety_key - show_in_conclusion = yes - character = root - root = { - add_piety_experience = medium_piety_value - } - } - } - } - - hidden_effect = { - scope:province = { - remove_province_modifier = inspection_second_try_modifier - remove_province_modifier = inspection_third_try_modifier - remove_province_modifier = inspection_fourth_try_modifier - } - } - } - - option = { - name = bp3_survey.0010.b - trigger = { - NOT = { exists = scope:success } - } - add_legitimacy_effect = { LEGITIMACY = miniscule_legitimacy_gain } - scope:province = { - if = { - limit = { - root = { is_ai = no } - NOT = { - has_province_modifier = inspection_fourth_try_modifier - } - } - if = { - limit = { - has_province_modifier = inspection_third_try_modifier - NOT = { has_province_modifier = inspection_fourth_try_modifier } - } - add_province_modifier = inspection_fourth_try_modifier - hidden_effect = { - remove_province_modifier = inspection_third_try_modifier - } - } - else_if = { - limit = { - has_province_modifier = inspection_second_try_modifier - NOT = { has_province_modifier = inspection_third_try_modifier } - } - add_province_modifier = inspection_third_try_modifier - hidden_effect = { - remove_province_modifier = inspection_second_try_modifier - } - } - else_if = { - limit = { - NOT = { has_province_modifier = inspection_second_try_modifier } - } - add_province_modifier = inspection_second_try_modifier - } - } - } - - if = { - limit = { - faith = { has_doctrine_parameter = inspection_gives_devotion } #Devotion for tenet - } - scope:activity = { - add_activity_log_entry = { - key = inspection_conclusion_failure_devotion_key - show_in_conclusion = yes - character = root - root = { - add_piety_experience = minor_piety_value - } - } - } - } - - # If you have Merit we give Merit - but you gain less than if you were successful - if = { - limit = { government_allows = merit } - scope:activity = { - add_activity_log_entry = { - key = inspection_conclusion_failure_merit_key - show_in_conclusion = yes - character = root - root = { - change_merit = { - value = minor_merit_gain - house ?= { - if = { - limit = { has_house_aspiration_parameter = inspection_activity_merit_bonus_5 } - multiply = { - value = 1 - add = inspection_activity_merit_bonus_5_value - } - } - else_if = { - limit = { has_house_aspiration_parameter = inspection_activity_merit_bonus_4 } - multiply = { - value = 1 - add = inspection_activity_merit_bonus_4_value - } - } - else_if = { - limit = { has_house_aspiration_parameter = inspection_activity_merit_bonus_3 } - multiply = { - value = 1 - add = inspection_activity_merit_bonus_3_value - } - } - else_if = { - limit = { has_house_aspiration_parameter = inspection_activity_merit_bonus_2 } - multiply = { - value = 1 - add = inspection_activity_merit_bonus_2_value - } - } - else_if = { - limit = { has_house_aspiration_parameter = inspection_activity_merit_bonus_1 } - multiply = { - value = 1 - add = inspection_activity_merit_bonus_1_value - } - } - } - } - } - } - } - } - - # If you have the governance aspiration, you gain some gold and a higher salary - but less than if you were successful - if = { - limit = { - house ?= { has_house_aspiration_parameter = inspection_activity_increases_salary } - } - scope:activity = { - add_activity_log_entry = { - key = inspection_conclusion_failure_salary_key - show_in_conclusion = yes - character = root - root = { - add_gold = minor_gold_value - add_character_modifier = { - modifier = tgp_aspiration_modest_salary_modifier - years = 15 - } - hidden_effect = { - if = { - limit = { - has_character_modifier = tgp_aspiration_great_salary_modifier - } - remove_character_modifier = tgp_aspiration_great_salary_modifier - } - } - } - } - } - } - } -} - -### Mid Events -# Border Focus -bp3_survey.0020 = { - type = activity_event - content_source = dlc_015 - title = bp3_survey.0020.t - desc = { - desc = bp3_survey.0020.desc - first_valid = { - triggered_desc = { - trigger = { - exists = scope:neighboring_lord - } - desc = bp3_survey.0020.desc_weak_neighbor - } - desc = bp3_survey.0020.desc_no_neighbor - } - } - theme = survey_activity - - override_background = { - reference = terrain_activity - } - - left_portrait = { - character = scope:host - animation = survey - } - - right_portrait = { - character = scope:neighboring_lord - animation = worry - } - - trigger = { - has_variable = inspection_activity_border_focus - } - - immediate = { - scope:province.county = { - random_neighboring_county = { - limit = { - holder.top_liege != prev.holder.top_liege - } - weight = { - base = 1 - modifier = { - factor = 100 - holder.top_liege = { - highest_held_title_tier < root.highest_held_title_tier - } - } - } - save_scope_as = neighboring_county - if = { - limit = { - holder.top_liege = { - highest_held_title_tier < root.highest_held_title_tier - } - } - holder = { save_scope_as = neighboring_lord } - } - } - } - } - - option = { - name = bp3_survey.0020.a - trigger = { - exists = scope:neighboring_lord - } - skill = diplomacy - custom_tooltip = bp3_survey.0020.a.tt - set_variable = inspection_activity_border_vassal_focus - duel = { - skill = diplomacy - value = 8 - 20 = { - inspection_activity_options_positive_modifier = yes - compare_modifier = { - value = scope:duel_value - multiplier = 1.5 - min = -19 - } - scope:activity = { - add_activity_log_entry = { - key = inspection_mid_border_key - show_in_conclusion = yes - character = root - root = { - inspection_survey_intent_development = { VALUE = 10 } - inspection_success_chance_change_effect = { CHANGE = increase_medium } - custom_tooltip = bp3_survey.0020.acceptance.great_success - } - } - } - scope:neighboring_lord = { - add_to_variable_list = { - name = inspection_bonus - target = root - years = 5 - } - } - } - 40 = { - inspection_activity_options_positive_modifier = yes - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -39 - } - scope:activity = { - add_activity_log_entry = { - key = inspection_mid_border_key - show_in_conclusion = yes - character = root - root = { - inspection_survey_intent_development = { VALUE = 5 } - inspection_success_chance_change_effect = { CHANGE = increase_minor } - custom_tooltip = bp3_survey.0020.acceptance.success - } - } - } - scope:neighboring_lord = { - add_to_variable_list = { - name = lesser_inspection_bonus - target = root - years = 5 - } - } - } - 40 = { - inspection_activity_options_negative_modifier = yes - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -29 - } - scope:activity = { - add_activity_log_entry = { - key = inspection_mid_border_fail_key - show_in_conclusion = yes - character = root - inspection_success_chance_change_effect = { CHANGE = decrease_minor } - } - } - } - } - } - - option = { - name = bp3_survey.0020.b - skill = intrigue - custom_tooltip = bp3_survey.0020.b.tt - set_variable = inspection_activity_border_claim_focus - duel = { - skill = intrigue - value = 8 - 20 = { - inspection_activity_options_positive_modifier = yes - compare_modifier = { - value = scope:duel_value - multiplier = 1.5 - min = -19 - } - scope:activity = { - add_activity_log_entry = { - key = inspection_mid_border_key - show_in_conclusion = yes - character = root - inspection_success_chance_change_effect = { CHANGE = increase_medium } - root = { - inspection_survey_intent_development = { VALUE = 10 } - add_pressed_claim = scope:neighboring_county - } - } - } - } - 40 = { - inspection_activity_options_positive_modifier = yes - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -39 - } - scope:activity = { - add_activity_log_entry = { - key = inspection_mid_border_key - show_in_conclusion = yes - character = root - inspection_success_chance_change_effect = { CHANGE = increase_minor } - root = { - inspection_survey_intent_development = { VALUE = 5 } - add_unpressed_claim = scope:neighboring_county - } - } - } - } - 40 = { - inspection_activity_options_negative_modifier = yes - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -29 - } - scope:activity = { - add_activity_log_entry = { - key = inspection_mid_border_fail_key - show_in_conclusion = yes - character = root - inspection_success_chance_change_effect = { CHANGE = decrease_minor } - } - } - } - } - } -} - -# Bureaucracy Focus -bp3_survey.0030 = { - type = activity_event - content_source = dlc_015 - title = bp3_survey.0030.t - desc = bp3_survey.0030.desc - theme = survey_activity - - override_background = { - reference = study - } - - left_portrait = { - character = scope:host - animation = writing - } - - trigger = { - has_variable = inspection_activity_bureaucracy_focus - } - - option = { - name = bp3_survey.0030.a - skill = stewardship - custom_tooltip = bp3_survey.0030.a.tt - set_variable = inspection_activity_bureaucracy_tax_focus - duel = { - skill = stewardship - value = 8 - 20 = { - inspection_activity_options_positive_modifier = yes - compare_modifier = { - value = scope:duel_value - multiplier = 1.5 - min = -19 - } - scope:activity = { - add_activity_log_entry = { - key = inspection_mid_domain_key - show_in_conclusion = yes - character = root - root = { - inspection_survey_intent_development = { VALUE = 10 } - inspection_success_chance_change_effect = { CHANGE = increase_medium } - } - scope:province.county = { - add_county_modifier = { - modifier = inspection_mid_activity_tax_great_modifier - years = 10 - } - } - } - } - inspection_survey_local_message_county_modifier = { - TYPE = message_good - MODIFIER = inspection_mid_activity_tax_great_modifier - YEARS = 10 - } - } - 40 = { - inspection_activity_options_positive_modifier = yes - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -39 - } - scope:activity = { - add_activity_log_entry = { - key = inspection_mid_domain_key - show_in_conclusion = yes - character = root - root = { - inspection_survey_intent_development = { VALUE = 5 } - inspection_success_chance_change_effect = { CHANGE = increase_minor } - } - scope:province.county = { - add_county_modifier = { - modifier = inspection_mid_activity_tax_average_modifier - years = 10 - } - } - } - } - inspection_survey_local_message_county_modifier = { - TYPE = message_good - MODIFIER = inspection_mid_activity_tax_average_modifier - YEARS = 10 - } - } - 40 = { - inspection_activity_options_negative_modifier = yes - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -29 - } - scope:activity = { - add_activity_log_entry = { - key = inspection_mid_domain_fail_key - show_in_conclusion = yes - character = root - root = { - inspection_success_chance_change_effect = { CHANGE = decrease_minor } - } - } - } - } - } - } - - option = { - name = bp3_survey.0030.b - skill = learning - custom_tooltip = bp3_survey.0030.b.tt - set_variable = inspection_activity_bureaucracy_development_focus - duel = { - skill = learning - value = 8 - 20 = { - inspection_activity_options_positive_modifier = yes - compare_modifier = { - value = scope:duel_value - multiplier = 1.5 - min = -19 - } - scope:activity = { - add_activity_log_entry = { - key = inspection_mid_domain_key - show_in_conclusion = yes - character = root - root = { - inspection_survey_intent_development = { VALUE = 10 } - inspection_success_chance_change_effect = { CHANGE = increase_medium } - } - scope:province.county = { - add_county_modifier = { - modifier = inspection_mid_activity_development_great_modifier - years = 10 - } - } - } - } - inspection_survey_local_message_county_modifier = { - TYPE = message_good - MODIFIER = inspection_mid_activity_development_great_modifier - YEARS = 10 - } - } - 40 = { - inspection_activity_options_positive_modifier = yes - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -39 - } - scope:activity = { - add_activity_log_entry = { - key = inspection_mid_domain_key - show_in_conclusion = yes - character = root - root = { - inspection_survey_intent_development = { VALUE = 5 } - inspection_success_chance_change_effect = { CHANGE = - increase_minor } - } - scope:province.county = { - add_county_modifier = { - modifier = inspection_mid_activity_development_average_modifier - years = 10 - } - } - } - } - inspection_survey_local_message_county_modifier = { - TYPE = message_good - MODIFIER = inspection_mid_activity_development_average_modifier - YEARS = 10 - } - } - 40 = { - inspection_activity_options_negative_modifier = yes - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -29 - } - scope:activity = { - add_activity_log_entry = { - key = inspection_mid_domain_fail_key - show_in_conclusion = yes - character = root - root = { - inspection_success_chance_change_effect = { CHANGE = decrease_minor } - } - } - } - } - } - } - - option = { - name = bp3_survey.0030.c - trigger = { - scope:province.county = { - county_control < 100 - } - } - skill = martial - custom_tooltip = bp3_survey.0030.c.tt - set_variable = inspection_activity_bureaucracy_control_focus - duel = { - skill = martial - value = 8 - 20 = { - inspection_activity_options_positive_modifier = yes - compare_modifier = { - value = scope:duel_value - multiplier = 1.5 - min = -19 - } - scope:activity = { - add_activity_log_entry = { - key = inspection_mid_domain_key - show_in_conclusion = yes - character = root - root = { - inspection_survey_intent_development = { VALUE = 10 } - inspection_success_chance_change_effect = { CHANGE = increase_medium } - } - scope:province.county = { - add_county_modifier = { - modifier = inspection_mid_activity_control_great_modifier - years = 10 - } - } - } - } - inspection_survey_local_message_county_modifier = { - TYPE = message_good - MODIFIER = inspection_mid_activity_control_great_modifier - YEARS = 10 - } - } - 40 = { - inspection_activity_options_positive_modifier = yes - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -39 - } - scope:activity = { - add_activity_log_entry = { - key = inspection_mid_domain_key - show_in_conclusion = yes - character = root - root = { - inspection_survey_intent_development = { VALUE = 5 } - inspection_success_chance_change_effect = { CHANGE = increase_minor } - } - scope:province.county = { - add_county_modifier = { - modifier = inspection_mid_activity_control_average_modifier - years = 10 - } - } - } - } - inspection_survey_local_message_county_modifier = { - TYPE = message_good - MODIFIER = inspection_mid_activity_control_average_modifier - YEARS = 10 - } - } - 40 = { - inspection_activity_options_negative_modifier = yes - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -29 - } - scope:activity = { - add_activity_log_entry = { - key = inspection_mid_domain_fail_key - show_in_conclusion = yes - character = root - root = { - inspection_success_chance_change_effect = { CHANGE = decrease_minor } - } - } - } - } - } - } - - option = { - name = bp3_survey.0030.d - scope:activity = { - add_activity_log_entry = { - key = inspection_mid_domain_selfish_key - show_in_conclusion = yes - character = root - inspection_success_chance_change_effect = { CHANGE = decrease_minor } - root = { add_gold = minor_gold_value } - } - } - } -} - -# Domain Focus -bp3_survey.0040 = { - type = activity_event - content_source = dlc_015 - title = bp3_survey.0040.t - desc = { - desc = bp3_survey.0040.desc - triggered_desc = { - trigger = { - exists = scope:county_holder - } - desc = bp3_survey.0040.mid - } - desc = bp3_survey.0040.outro - } - theme = survey_activity - - override_background = { - reference = market - } - - center_portrait = { - character = scope:county_holder - animation = boredom - } - - left_portrait = { - character = scope:host - animation = debating - } - - right_portrait = { - character = scope:peasant - animation = thinking - hide_info = yes - } - - override_effect_2d = { - reference = legend_glow - } - - trigger = { - has_variable = inspection_activity_domain_focus - } - - immediate = { - if = { - limit = { - scope:province.province_owner != root - } - scope:province.province_owner = { - save_scope_as = county_holder - } - } - create_character = { - location = scope:province - template = generic_peasant_character - save_scope_as = peasant - } - } - - option = { - name = bp3_survey.0040.a - skill = martial - custom_tooltip = bp3_survey.0040.a.tt - set_variable = inspection_activity_domain_levy_focus - duel = { - skill = martial - value = 8 - 20 = { - inspection_activity_options_positive_modifier = yes - compare_modifier = { - value = scope:duel_value - multiplier = 1.5 - min = -19 - } - scope:activity = { - add_activity_log_entry = { - key = inspection_mid_people_key - show_in_conclusion = yes - character = root - root = { - inspection_survey_intent_development = { VALUE = 10 } - inspection_success_chance_change_effect = { CHANGE = increase_medium } - } - scope:province.county = { - add_county_modifier = { - modifier = inspection_mid_activity_levy_great_modifier - years = 10 - } - } - } - } - inspection_survey_local_message_county_modifier = { - TYPE = message_good - MODIFIER = inspection_mid_activity_levy_great_modifier - YEARS = 10 - } - } - 40 = { - inspection_activity_options_positive_modifier = yes - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -39 - } - scope:activity = { - add_activity_log_entry = { - key = inspection_mid_people_key - show_in_conclusion = yes - character = root - root = { - inspection_survey_intent_development = { VALUE = 5 } - inspection_success_chance_change_effect = { CHANGE = increase_minor } - } - scope:province.county = { - add_county_modifier = { - modifier = inspection_mid_activity_levy_average_modifier - years = 10 - } - } - } - } - inspection_survey_local_message_county_modifier = { - TYPE = message_good - MODIFIER = inspection_mid_activity_levy_average_modifier - YEARS = 10 - } - } - 40 = { - inspection_activity_options_negative_modifier = yes - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -29 - } - scope:activity = { - add_activity_log_entry = { - key = inspection_mid_people_fail_key - show_in_conclusion = yes - character = root - root = { - inspection_success_chance_change_effect = { CHANGE = decrease_minor } - } - } - } - } - } - } - - option = { - name = bp3_survey.0040.b - trigger = { - exists = scope:county_holder - } - skill = diplomacy - custom_tooltip = bp3_survey.0040.b.tt - set_variable = inspection_activity_domain_opinion_focus - duel = { - skill = diplomacy - value = 8 - 20 = { - inspection_activity_options_positive_modifier = yes - compare_modifier = { - value = scope:duel_value - multiplier = 1.5 - min = -19 - } - scope:activity = { - add_activity_log_entry = { - key = inspection_mid_people_key - show_in_conclusion = yes - character = root - root = { - inspection_survey_intent_development = { VALUE = 10 } - inspection_success_chance_change_effect = { CHANGE = increase_medium } - } - root = { - add_opinion = { - modifier = compliment_opinion - target = root - opinion = 20 - } - } - } - } - } - 40 = { - inspection_activity_options_positive_modifier = yes - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -39 - } - scope:activity = { - add_activity_log_entry = { - key = inspection_mid_people_key - show_in_conclusion = yes - character = root - root = { - inspection_survey_intent_development = { VALUE = 5 } - inspection_success_chance_change_effect = { CHANGE = increase_minor } - } - root = { - add_opinion = { - modifier = compliment_opinion - target = root - opinion = 10 - } - } - } - } - } - 40 = { - inspection_activity_options_negative_modifier = yes - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -29 - } - scope:activity = { - add_activity_log_entry = { - key = inspection_mid_people_fail_key - show_in_conclusion = yes - character = root - root = { - inspection_success_chance_change_effect = { CHANGE = decrease_minor } - } - } - } - } - } - } - - option = { - name = bp3_survey.0040.c - skill = stewardship - custom_tooltip = bp3_survey.0040.c.tt - set_variable = inspection_activity_domain_popular_focus - duel = { - skill = stewardship - value = 8 - 20 = { - inspection_activity_options_positive_modifier = yes - compare_modifier = { - value = scope:duel_value - multiplier = 1.5 - min = -19 - } - scope:activity = { - add_activity_log_entry = { - key = inspection_mid_people_key - show_in_conclusion = yes - character = root - root = { - inspection_survey_intent_development = { VALUE = 10 } - inspection_success_chance_change_effect = { CHANGE = increase_medium } - } - scope:province.county = { - add_county_modifier = { - modifier = inspection_mid_activity_opinion_great_modifier - years = 10 - } - } - } - } - inspection_survey_local_message_county_modifier = { - TYPE = message_good - MODIFIER = inspection_mid_activity_opinion_great_modifier - YEARS = 10 - } - } - 40 = { - inspection_activity_options_positive_modifier = yes - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -39 - } - scope:activity = { - add_activity_log_entry = { - key = inspection_mid_people_key - show_in_conclusion = yes - character = root - root = { - inspection_survey_intent_development = { VALUE = 5 } - inspection_success_chance_change_effect = { CHANGE = increase_minor } - } - scope:province.county = { - add_county_modifier = { - modifier = inspection_mid_activity_opinion_average_modifier - years = 10 - } - } - } - } - inspection_survey_local_message_county_modifier = { - TYPE = message_good - MODIFIER = inspection_mid_activity_opinion_average_modifier - YEARS = 10 - } - } - 40 = { - inspection_activity_options_negative_modifier = yes - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -29 - } - scope:activity = { - add_activity_log_entry = { - key = inspection_mid_people_fail_key - show_in_conclusion = yes - character = root - root = { - inspection_success_chance_change_effect = { CHANGE = decrease_minor } - } - } - } - } - } - } - - after = { - scope:peasant = { - silent_disappear_ai_if_not_hired = yes - } - } -} - -### Vassal Event -bp3_survey.0050 = { - type = character_event - content_source = dlc_015 - title = bp3_survey.0050.t - desc = bp3_survey.0050.desc - theme = survey_activity - - override_background = { - reference = study - } - - left_portrait = { - character = scope:host - animation = thinking - } - - right_portrait = { - character = root - animation = obsequious_bow - } - - immediate = { - - } - - option = { - name = bp3_survey.0050.a - custom_tooltip = "bp3_survey.0050.a.tt" - } -} - -### Random Events ### -# Empty Lands -bp3_survey.1000 = { - type = activity_event - content_source = dlc_015 - title = bp3_survey.1000.t - desc = { - triggered_desc = { - trigger = { - exists = scope:guest_1 - } - desc = bp3_survey.1000.desc - } - triggered_desc = { - trigger = { - NOT = { exists = scope:guest_1 } - } - desc = bp3_survey.1000.desc_lonely - } - desc = bp3_survey.1000.desc_continuation - triggered_desc = { - trigger = { - has_variable = inspection_activity_border_focus - } - desc = bp3_survey.1000.desc_border - } - triggered_desc = { - trigger = { - has_variable = inspection_activity_bureaucracy_focus - } - desc = bp3_survey.1000.desc_bureaucracy - } - triggered_desc = { - trigger = { - has_variable = inspection_activity_domain_focus - } - desc = bp3_survey.1000.desc_domain - } - } - theme = survey_activity - - override_background = { - reference = terrain_scope - } - - cooldown = { years = 1 } - - left_portrait = { - character = root - animation = survey - } - - right_portrait = { - character = scope:guest_1 - animation = thinking - } - - trigger = { - scope:province.county = { - any_county_province = { - has_holding = no - NOR = { - has_province_modifier = inspection_empty_lands_border_modifier - has_province_modifier = inspection_empty_lands_domain_modifier - } - } - } - } - - immediate = { - inspection_survey_intent_county_modifier = { MODIFIER = inspection_survey_new_goods_modifier } - scope:province.county = { - random_county_province = { - limit = { - has_holding = no - } - save_scope_as = empty_province - save_scope_as = background_terrain_scope - } - } - scope:activity = { - random_attending_character = { - limit = { - this != root - } - weight = { - base = 1 - modifier = { - factor = 20 - OR = { - is_close_family_of = root - is_spouse_of = root - } - } - } - save_scope_as = guest_1 - } - } - } - - option = { - name = bp3_survey.1000.a - remove_treasury_or_gold = inspection_minor_gold - scope:empty_province = { - add_province_modifier = inspection_empty_lands_border_modifier - } - inspection_survey_local_message_permanent_province_modifier = { - TYPE = message_good - MODIFIER = inspection_empty_lands_border_modifier - } - - # Success Chance changes - inspection_success_chance_change_focus_effect = { - FOCUS = border - CHANGE = increase_medium - } - inspection_success_chance_change_focus_effect = { - FOCUS = bureaucracy - CHANGE = increase_minor - } - inspection_success_chance_change_focus_effect = { - FOCUS = domain - CHANGE = increase_minor - } - - stress_impact = { - greedy = minor_stress_gain - overseer = minor_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = greedy - } - modifier = { - factor = 10 - has_variable = inspection_activity_border_focus - } - modifier = { - factor = 5 - has_trait = overseer - } - } - } - - option = { - name = bp3_survey.1000.b - remove_treasury_or_gold = tiny_treasury_or_gold_value - scope:empty_province = { - add_province_modifier = inspection_empty_lands_domain_modifier - } - inspection_survey_local_message_permanent_province_modifier = { - TYPE = message_good - MODIFIER = inspection_empty_lands_domain_modifier - } - - # Success Chance changes - inspection_success_chance_change_focus_effect = { - FOCUS = bureaucracy - CHANGE = increase_medium - } - inspection_success_chance_change_not_focus_effect = { - FOCUS = bureaucracy - CHANGE = decrease_minor - } - - stress_impact = { - greedy = minor_stress_gain - administrator = minor_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = greedy - } - modifier = { - factor = 10 - has_variable = inspection_activity_bureaucracy_focus - } - modifier = { - factor = 5 - has_trait = administrator - } - } - } - - option = { - name = bp3_survey.1000.c - add_prestige = minor_prestige_gain - scope:empty_province = { - add_province_modifier = { - modifier = inspection_empty_lands_populace_modifier - years = 5 - } - } - inspection_survey_local_message_province_modifier = { - TYPE = message_good - MODIFIER = inspection_empty_lands_populace_modifier - YEARS = 5 - } - - # Success Chance changes - inspection_success_chance_change_focus_effect = { - FOCUS = domain - CHANGE = increase_medium - } - inspection_success_chance_change_focus_effect = { - FOCUS = border - CHANGE = increase_minor - } - inspection_success_chance_change_focus_effect = { - FOCUS = bureaucracy - CHANGE = decrease_minor - } - - stress_impact = { - gregarious = minor_stress_impact_loss - reclusive = medium_stress_gain - shy = medium_stress_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = reclusive - has_trait = shy - } - } - modifier = { - factor = 10 - has_variable = inspection_activity_domain_focus - } - modifier = { - factor = 5 - has_trait = gregarious - } - } - } -} - -# Bandits in -bp3_survey.1010 = { - type = activity_event - content_source = dlc_015 - title = bp3_survey.1010.t - desc = bp3_survey.1010.desc - theme = survey_activity - - override_background = { - reference = alley_day - } - - cooldown = { years = 1 } - - left_portrait = { - character = root - animation = go_to_your_room - } - - center_portrait = { - character = scope:peasant_character - animation = fear - hide_info = yes - } - - right_portrait = { - character = scope:bandit_character - animation = celebrate_sword - hide_info = yes - } - - weight_multiplier = { - base = 1 - modifier = { - factor = 3 - scope:province.county = { - county_control < 80 - } - } - } - - immediate = { - inspection_survey_intent_control = { VALUE = 5 } - create_character = { - template = mercenary - location = scope:province - gender = root - culture = scope:province.culture - faith = scope:province.faith - save_scope_as = bandit_character - } - create_character = { - template = peasant_character - location = scope:province - gender = female - culture = scope:province.culture - faith = scope:province.faith - save_scope_as = peasant_character - } - } - - option = { - name = bp3_survey.1010.a - duel = { - skill = martial - value = 12 - 50 = { - inspection_activity_options_positive_modifier = yes - desc = bp3_survey.1010.a.win - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - send_interface_message = { - type = event_generic_good - title = bp3_survey.1010.a.win_short - - add_prestige = medium_prestige_gain - scope:province.county = { - if = { - limit = { - has_county_modifier = inspection_bandits_in_x_border_negative_modifier - } - remove_county_modifier = inspection_bandits_in_x_border_negative_modifier - } - add_county_modifier = { - modifier = inspection_bandits_in_x_border_positive_modifier - years = 10 - } - } - # Success chance - inspection_success_chance_change_focus_effect = { - FOCUS = border - CHANGE = increase_medium - } - inspection_success_chance_change_focus_effect = { - FOCUS = bureaucracy - CHANGE = increase_minor - } - inspection_success_chance_change_focus_effect = { - FOCUS = domain - CHANGE = increase_minor - } - } - - inspection_survey_local_message_county_modifier = { - TYPE = message_good - MODIFIER = inspection_bandits_in_x_border_positive_modifier - YEARS = 10 - } - } - 50 = { - inspection_activity_options_negative_modifier = yes - desc = bp3_survey.1010.a.lose_short - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -39 - } - send_interface_message = { - type = event_generic_bad - title = bp3_survey.1010.a.lose - - scope:province.county = { - add_county_modifier = { - modifier = inspection_bandits_in_x_border_negative_modifier - years = 10 - } - } - # Success chance - inspection_success_chance_change_effect = { - CHANGE = decrease_minor - } - } - - inspection_survey_local_message_county_modifier = { - TYPE = message_bad - MODIFIER = inspection_bandits_in_x_border_negative_modifier - YEARS = 10 - } - } - } - - stress_impact = { - craven = minor_stress_gain - brave = minor_stress_impact_loss - diligent = minor_stress_impact_loss - overseer = minor_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = craven - } - modifier = { - factor = 10 - has_variable = inspection_activity_border_focus - } - modifier = { - factor = 5 - OR = { - has_trait = overseer - has_trait = diligent - has_trait = brave - } - } - } - } - - option = { - name = bp3_survey.1010.b - flavor = bp3_survey.1010.b.flavor - remove_short_term_gold = inspection_medium_gold - scope:province.county = { - add_county_modifier = { - modifier = inspection_bandits_in_x_domain_modifier - years = 10 - } - } - inspection_survey_local_message_county_modifier = { - TYPE = message - MODIFIER = inspection_bandits_in_x_domain_modifier - YEARS = 10 - } - - # Success chance - inspection_success_chance_change_focus_effect = { - FOCUS = bureaucracy - CHANGE = increase_medium - } - inspection_success_chance_change_not_focus_effect = { - FOCUS = bureaucracy - CHANGE = decrease_minor - } - - stress_impact = { - callous = minor_stress_impact_loss - sadistic = minor_stress_impact_loss - compassionate = medium_stress_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = compassionate - } - modifier = { - factor = 10 - has_variable = inspection_activity_bureaucracy_focus - } - modifier = { - factor = 5 - OR = { - has_trait = callous - has_trait = sadistic - } - } - } - } - - option = { - name = bp3_survey.1010.c - duel = { - skill = prowess - value = 18 - 50 = { - desc = bp3_survey.1010.c.win - inspection_activity_options_positive_modifier = yes - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - send_interface_message = { - type = event_generic_good - title = bp3_survey.1010.c.win_short - - add_prestige = medium_prestige_gain - add_character_modifier = { - modifier = inspection_bandits_in_x_populace_modifier - years = 10 - } - # Success chance - inspection_success_chance_change_focus_effect = { - FOCUS = domain - CHANGE = increase_medium - } - inspection_success_chance_change_focus_effect = { - FOCUS = border - CHANGE = increase_minor - } - } - } - 50 = { - desc = bp3_survey.1010.c.lose - inspection_activity_options_negative_modifier = yes - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -39 - } - send_interface_message = { - type = event_generic_bad - title = bp3_survey.1010.c.lose - - increase_wounds_no_death_effect = { REASON = fight } - inspection_success_chance_change_effect = { - CHANGE = decrease_minor - } - } - } - } - - stress_impact = { - craven = minor_stress_gain - brave = minor_stress_impact_loss - compassionate = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = craven - } - modifier = { - factor = 10 - has_variable = inspection_activity_domain_focus - } - modifier = { - factor = 5 - OR = { - has_trait = brave - has_trait = compassionate - } - } - } - } - - option = { - name = bp3_survey.1010.d - flavor = bp3_survey.1010.d.flavor - add_prestige = minor_prestige_loss - - # Success chance - inspection_success_chance_change_effect = { - CHANGE = decrease_minor - } - - stress_impact = { - craven = minor_stress_impact_loss - brave = minor_stress_gain - compassionate = medium_stress_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = brave - has_trait = compassionate - } - } - modifier = { - factor = 5 - has_trait = craven - } - } - } - - after = { - scope:bandit_character = { - silent_disappear_ai_if_not_hired = yes - } - scope:peasant_character = { - silent_disappear_ai_if_not_hired = yes - } - } -} - -# Old Roads of -bp3_survey.1020 = { - type = activity_event - content_source = dlc_015 - title = bp3_survey.1020.t - desc = bp3_survey.1020.desc - theme = survey_activity - - override_background = { - reference = terrain_scope - } - - cooldown = { years = 1 } - - left_portrait = { - character = scope:soldier_character - hide_info = yes - animation = throne_room_two_handed_passive_1 - } - - center_portrait = { - character = root - animation = survey - } - - trigger = { - scope:province.county = { - NOR = { - has_county_modifier = governance_excellent_new_road_modifier - has_county_modifier = governance_good_new_road_modifier - has_county_modifier = governance_standard_new_road_modifier - has_county_modifier = governance_poor_new_road_modifier - } - } - } - - immediate = { - inspection_survey_intent_development = { VALUE = 5 } - scope:province = { save_scope_as = background_terrain_scope } - create_character = { - template = soldier_friend_character - culture = root.culture - faith = root.faith - gender = root - location = scope:province - save_scope_as = soldier_character - - after_creation = { - add_character_flag = { - flag = need_military_outfit - } - } - } - } - - option = { - name = bp3_survey.1020.a - scope:province.county = { - add_county_modifier = { - modifier = inspection_old_roads_of_x_border_modifier - years = 10 - } - } - inspection_survey_local_message_county_modifier = { - TYPE = message_good - MODIFIER = inspection_old_roads_of_x_border_modifier - YEARS = 10 - } - - remove_treasury_or_gold = inspection_minor_gold - # Success chance - inspection_success_chance_change_focus_effect = { - FOCUS = border - CHANGE = increase_medium - } - inspection_success_chance_change_focus_effect = { - FOCUS = bureaucracy - CHANGE = increase_minor - } - inspection_success_chance_change_focus_effect = { - FOCUS = domain - CHANGE = increase_minor - } - - stress_impact = { - greedy = minor_stress_gain - generous = minor_stress_impact_loss - profligate = minor_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = greedy - } - modifier = { - factor = 5 - OR = { - has_trait = generous - has_trait = profligate - } - } - } - } - - option = { - name = bp3_survey.1020.b - scope:province.county = { - add_county_modifier = { - modifier = inspection_old_roads_of_x_populace_modifier - years = 10 - } - } - inspection_survey_local_message_county_modifier = { - TYPE = message - MODIFIER = inspection_old_roads_of_x_populace_modifier - YEARS = 10 - } - - inspection_success_chance_change_focus_effect = { - FOCUS = border - CHANGE = increase_minor - } - inspection_success_chance_change_focus_effect = { - FOCUS = bureaucracy - CHANGE = increase_medium - } - inspection_success_chance_change_focus_effect = { - FOCUS = domain - CHANGE = decrease_minor - } - - ai_chance = { - base = 100 - } - } - - option = { - name = bp3_survey.1020.c - scope:province.county = { - add_county_modifier = { - modifier = inspection_old_roads_of_x_domain_modifier - years = 10 - } - } - inspection_survey_local_message_county_modifier = { - TYPE = message - MODIFIER = inspection_old_roads_of_x_domain_modifier - YEARS = 10 - } - - inspection_success_chance_change_focus_effect = { - FOCUS = border - CHANGE = decrease_minor - } - inspection_success_chance_change_focus_effect = { - FOCUS = bureaucracy - CHANGE = decrease_minor - } - inspection_success_chance_change_focus_effect = { - FOCUS = domain - CHANGE = increase_medium - } - - ai_chance = { - base = 100 - } - } - - option = { - name = bp3_survey.1020.d - scope:province.county = { - add_county_modifier = { - modifier = inspection_old_roads_negative_modifier - years = 10 - } - } - inspection_survey_local_message_county_modifier = { - TYPE = message_bad - MODIFIER = inspection_old_roads_negative_modifier - YEARS = 10 - } - - # Success chance - inspection_success_chance_change_effect = { - CHANGE = decrease_minor - } - - stress_impact = { - generous = minor_stress_gain - profligate = minor_stress_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = generous - has_trait = profligate - } - } - } - } - - after = { - scope:soldier_character = { - silent_disappear_ai_if_not_hired = yes - } - } -} - -scripted_effect bp3_survey_1030_character_effect = { - create_character = { - template = merchant_template - faith = scope:city_province.faith - culture = scope:city_province.culture - gender = root - location = scope:city_province - save_scope_as = merchant_$VALUE$ - after_creation = { - if = { - limit = { - scope:city_province = { - has_variable = fighting_guilds_option_$VALUE$ - var:fighting_guilds_option_$VALUE$ = { - OR = { - this = 12 - this = 14 - this = 15 - } - } - } - } - add_trait = giant - } - } - } -} - -# Fighting Guilds -bp3_survey.1030 = { - type = activity_event - content_source = dlc_015 - title = bp3_survey.1030.t - desc = bp3_survey.1030.desc - theme = survey_activity - - override_background = { - reference = market - } - - cooldown = { years = 1 } - - left_portrait = { - character = scope:merchant_1 - animation = disapproval - hide_info = yes - } - - center_portrait = { - character = root - animation = debating - } - - right_portrait = { - character = scope:merchant_2 - animation = rage - hide_info = yes - } - - trigger = { - NOR = { - government_has_flag = government_is_tribal - government_has_flag = government_is_nomadic - } - scope:province.county = { - any_county_province = { - has_holding_type = city_holding - NOR = { - has_province_modifier = inspection_fighting_guilds_innkeepers_guild_modifier - has_province_modifier = inspection_fighting_guilds_artists_guild_modifier - } - free_building_slots >= 1 - } - } - } - - immediate = { - inspection_survey_intent_county_modifier = { MODIFIER = inspection_learning_intent_local_guilds_modifier } - scope:province.county = { - random_county_province = { - limit = { - has_holding_type = city_holding - NOR = { - has_province_modifier = inspection_fighting_guilds_innkeepers_guild_modifier - has_province_modifier = inspection_fighting_guilds_artists_guild_modifier - } - free_building_slots >= 1 - } - weight = { - base = 1 - modifier = { - factor = 10 - free_building_slots >= 2 - } - } - save_scope_as = city_province - } - } - inspection_fighting_guilds_effect = { VALUE = 1 } - inspection_fighting_guilds_effect = { VALUE = 2 } - bp3_survey_1030_character_effect = { VALUE = 1 } - bp3_survey_1030_character_effect = { VALUE = 2 } - } - - option = { - name = bp3_survey.1030.a - trigger = { - scope:city_province = { - free_building_slots >= 2 - } - } - duel = { - skills = { diplomacy stewardship } - value = 25 - 50 = { - desc = bp3_survey.1030.a.win - inspection_activity_options_positive_modifier = yes - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - send_interface_message = { - type = event_generic_good - title = bp3_survey.1030.a.win - - add_prestige = medium_prestige_gain - scope:city_province = { - inspection_fighting_guilds_setup_reward_effect = { VALUE = 1 } - inspection_fighting_guilds_setup_reward_effect = { VALUE = 2 } - } - # Success chance - inspection_success_chance_change_effect = { - CHANGE = increase_medium - } - } - - hidden_effect = { - if = { - limit = { - scope:province.county.holder != scope:host - } - scope:province.county.holder = { - send_interface_message = { - type = send_interface_message_good - title = bp3_survey_liege_intervention - - show_as_tooltip = { - scope:city_province = { - inspection_fighting_guilds_setup_reward_effect = { VALUE = 1 } - inspection_fighting_guilds_setup_reward_effect = { VALUE = 2 } - } - } - } - } - } - } - } - 50 = { - desc = bp3_survey.1030.a.loss - inspection_activity_options_negative_modifier = yes - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -39 - } - send_interface_message = { - type = event_generic_bad - title = bp3_survey.1030.a.loss_short - - # Success chance - inspection_success_chance_change_effect = { - CHANGE = decrease_medium - } - } - } - } - ai_chance = { - base = 100 - } - } - - option = { - name = bp3_survey.1030.b - scope:city_province = { - inspection_fighting_guilds_setup_reward_effect = { VALUE = 1 } - } - hidden_effect = { - if = { - limit = { - scope:province.county.holder != scope:host - } - scope:province.county.holder = { - send_interface_message = { - type = send_interface_message_good - title = bp3_survey_liege_intervention - - show_as_tooltip = { - scope:city_province = { - inspection_fighting_guilds_setup_reward_effect = { VALUE = 1 } - } - } - } - } - } - } - - # Success chance - inspection_success_chance_change_effect = { - CHANGE = increase_minor - } - ai_chance = { - base = 100 - } - } - - option = { - name = bp3_survey.1030.c - scope:city_province = { - inspection_fighting_guilds_setup_reward_effect = { VALUE = 2 } - } - hidden_effect = { - if = { - limit = { - scope:province.county.holder != scope:host - } - scope:province.county.holder = { - send_interface_message = { - type = send_interface_message_good - title = bp3_survey_liege_intervention - - show_as_tooltip = { - scope:city_province = { - inspection_fighting_guilds_setup_reward_effect = { VALUE = 2 } - } - } - } - } - } - } - - # Success chance - inspection_success_chance_change_effect = { - CHANGE = increase_minor - } - ai_chance = { - base = 100 - } - } - - option = { - name = bp3_survey.1030.d - add_gold = medium_gold_value - # Success chance - inspection_success_chance_change_effect = { - CHANGE = decrease_minor - } - stress_impact = { - greedy = minor_stress_impact_loss - generous = minor_stress_gain - profligate = minor_stress_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = generous - has_trait = profligate - } - } - modifier = { - factor = 5 - has_trait = greedy - } - } - } - - after = { - scope:merchant_1 = { - silent_disappear_ai_if_not_hired = yes - } - scope:merchant_2 = { - silent_disappear_ai_if_not_hired = yes - } - remove_variable = fighting_guilds_option_1 - remove_variable = fighting_guilds_option_2 - } -} - -# The Fire Spreading -bp3_survey.1040 = { - type = activity_event - content_source = dlc_015 - title = bp3_survey.1040.t - desc = bp3_survey.1040.desc - theme = survey_activity - - override_background = { - reference = burning_building - } - - cooldown = { years = 1 } - - left_portrait = { - character = scope:soldier_character - hide_info = yes - animation = throne_room_two_handed_passive_1 - } - - center_portrait = { - character = root - animation = fear - } - - right_portrait = { - character = scope:merchant_character - hide_info = yes - animation = crying - } - - lower_right_portrait = { - character = scope:county_owner - } - - override_effect_2d = { - reference = smoke - } - - immediate = { - inspection_survey_intent_development = { VALUE = 5 } - create_character = { - template = soldier_friend_character - culture = root.culture - faith = root.faith - gender = root - location = scope:province - save_scope_as = soldier_character - - after_creation = { - add_character_flag = { - flag = need_military_outfit - } - } - } - create_character = { - template = merchant_template - faith = scope:province.faith - culture = scope:province.culture - gender = root - location = scope:province - save_scope_as = merchant_character - } - scope:province = { - destroy_random_building_variable_effect = yes - if = { - limit = { - province_owner != root - } - province_owner = { - save_scope_as = county_owner - } - } - } - } - - option = { - name = bp3_survey.1040.a - inspection_success_chance_change_focus_effect = { - FOCUS = domain - CHANGE = increase_minor - } - duel = { - skill = prowess - value = 14 - 50 = { - desc = bp3_survey.1040.a.win - inspection_activity_options_positive_modifier = yes - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - - send_interface_message = { - type = event_generic_good - title = bp3_survey.1040.a.win - - add_prestige = medium_prestige_gain - inspection_success_chance_change_effect = { - CHANGE = increase_medium - } - add_character_modifier = { - modifier = inspection_selfless_ruler_modifier - years = 10 - } - } - } - 45 = { - desc = bp3_survey.1040.a.loss - inspection_activity_options_negative_modifier = yes - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -34 - } - hidden_effect = { - if = { - limit = { - scope:province.county.holder != scope:host - } - scope:province.county.holder = { - send_interface_message = { - type = send_interface_message_bad - title = bp3_survey_liege_intervention - - show_as_tooltip = { - scope:province = { destroy_random_building_effect = yes } - } - } - } - } - } - - send_interface_message = { - type = event_generic_bad - title = bp3_survey.1040.a.loss - - increase_wounds_no_death_effect = { REASON = burned } - scope:province = { destroy_random_building_effect = yes } - } - } - 5 = { - desc = bp3_survey.1040.a.death - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -4 - } - death = { - death_reason = death_burned - } - } - } - stress_impact = { - brave = minor_stress_impact_loss - compassionate = medium_stress_impact_loss - craven = minor_stress_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = craven - } - modifier = { - factor = 5 - OR = { - has_trait = brave - has_trait = compassionate - } - } - } - } - - option = { - name = bp3_survey.1040.b - remove_treasury_or_gold = inspection_medium_gold - scope:province.county = { - add_county_modifier = { - modifier = inspection_fire_spreading_modifier - years = 10 - } - } - inspection_success_chance_change_focus_effect = { - FOCUS = bureaucracy - CHANGE = increase_minor - } - inspection_success_chance_change_focus_effect = { - FOCUS = domain - CHANGE = decrease_minor - } - random = { - chance = 25 - hidden_effect = { - if = { - limit = { - scope:province.county.holder != scope:host - } - scope:province.county.holder = { - send_interface_message = { - type = send_interface_message_bad - title = bp3_survey_liege_intervention - - show_as_tooltip = { - scope:province = { destroy_random_building_effect = yes } - } - } - } - } - } - scope:province = { destroy_random_building_effect = yes } - } - stress_impact = { - generous = minor_stress_impact_loss - greedy = minor_stress_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = greedy - } - modifier = { - factor = 5 - has_trait = generous - } - } - } - - option = { - name = bp3_survey.1040.c - trigger = { - exists = scope:county_owner - NOR = { - scope:county_owner = root - scope:county_owner = { is_ai = yes } - } - OR = { - has_trait = callous - has_trait = sadistic - AND = { - has_relation_rival = scope:province.province_owner - has_trait = vengeful - } - } - } - duel = { - skill = intrigue - value = 15 - 50 = { - desc = bp3_survey.1040.c.win - inspection_activity_options_positive_modifier = yes - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - send_interface_message = { - type = event_generic_good - title = bp3_survey.1040.c.win - - scope:county_owner = { - add_opinion = { - modifier = respect_opinion - target = root - opinion = 25 - } - } - inspection_success_chance_change_focus_effect = { - FOCUS = domain - CHANGE = increase_minor - } - } - } - 50 = { - desc = bp3_survey.1040.c.loss - inspection_activity_options_negative_modifier = yes - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -39 - } - send_interface_message = { - type = event_generic_bad - title = bp3_survey.1040.c.loss - - scope:county_owner = { - add_opinion = { - modifier = hate_opinion - target = root - opinion = -50 - } - } - inspection_success_chance_change_effect = { - CHANGE = decrease_medium - } - } - } - } - hidden_effect = { - if = { - limit = { - scope:province.county.holder != scope:host - } - scope:province.county.holder = { - send_interface_message = { - type = send_interface_message_bad - title = bp3_survey_liege_intervention - - show_as_tooltip = { - scope:province = { - destroy_random_building_effect = yes - county = { change_development_level = -2 } - } - } - } - } - } - } - scope:province = { - destroy_random_building_effect = yes - county = { change_development_level = -2 } - } - stress_impact = { - callous = minor_stress_impact_loss - sadistic = minor_stress_impact_loss - vengeful = minor_stress_impact_loss - compassionate = major_stress_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = compassionate - } - modifier = { - factor = 5 - OR = { - has_trait = callous - has_trait = sadistic - has_trait = vengeful - } - } - } - } - - option = { - name = bp3_survey.1040.d - random = { - chance = 50 - hidden_effect = { - if = { - limit = { - scope:province.county.holder != scope:host - } - scope:province.county.holder = { - send_interface_message = { - type = send_interface_message_bad - title = bp3_survey_liege_intervention - - show_as_tooltip = { - scope:province = { - destroy_random_building_effect = yes - county = { change_development_level = -1 } - } - } - } - } - } - } - send_interface_message = { - type = event_generic_bad - title = bp3_survey.1040.destroyed_building - - scope:province = { - destroy_random_building_effect = yes - county = { change_development_level = -1 } - } - } - } - inspection_success_chance_change_effect = { - CHANGE = decrease_medium - } - stress_impact = { - compassionate = medium_stress_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = compassionate - } - } - } - - after = { - scope:merchant_character = { - silent_disappear_ai_if_not_hired = yes - } - scope:soldier_character = { - silent_disappear_ai_if_not_hired = yes - } - } -} - -# Expanding the Town Walls -bp3_survey.1050 = { - type = activity_event - content_source = dlc_015 - title = bp3_survey.1050.t - desc = bp3_survey.1050.desc - theme = survey_activity - - override_background = { - reference = market - } - - cooldown = { years = 1 } - - left_portrait = { - character = scope:soldier_character - hide_info = yes - animation = disapproval - } - - center_portrait = { - character = root - animation = thinking - } - - right_portrait = { - character = scope:merchant_character - hide_info = yes - animation = debating - } - - immediate = { - inspection_survey_intent_county_modifier = { MODIFIER = inspection_learning_intent_building_modifier } - create_character = { - template = soldier_friend_character - culture = root.culture - faith = root.faith - gender = root - location = scope:province - save_scope_as = soldier_character - - after_creation = { - add_character_flag = { - flag = need_military_outfit - } - } - } - create_character = { - template = merchant_template - faith = scope:province.faith - culture = scope:province.culture - gender = root - location = scope:province - save_scope_as = merchant_character - } - } - - option = { - name = bp3_survey.1050.a - remove_treasury_or_gold = { - value = { - value = minor_treasury_or_gold_value - min = 50 - } - multiply = inspection_activity_option_multiplier - } - scope:province = { - add_province_modifier = { - modifier = inspection_expanding_walls_new_modifier - years = 10 - } - } - inspection_survey_local_message_province_modifier = { - TYPE = message_good - MODIFIER = inspection_expanding_walls_new_modifier - YEARS = 10 - } - - inspection_success_chance_change_effect = { - CHANGE = increase_minor - } - - stress_impact = { - greedy = minor_stress_gain - generous = minor_stress_impact_loss - profligate = minor_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = greedy - } - modifier = { - factor = 5 - OR = { - has_trait = generous - has_trait = profligate - } - } - } - } - - option = { - name = bp3_survey.1050.b - remove_treasury_or_gold = { - value = { - value = minor_treasury_or_gold_value - min = 50 - } - multiply = inspection_activity_option_multiplier - } - scope:province = { - add_province_modifier = { - modifier = inspection_expanding_walls_old_modifier - years = 10 - } - } - inspection_survey_local_message_province_modifier = { - TYPE = message_good - MODIFIER = inspection_expanding_walls_old_modifier - YEARS = 10 - } - - inspection_success_chance_change_effect = { - CHANGE = increase_minor - } - - stress_impact = { - greedy = minor_stress_gain - generous = minor_stress_impact_loss - profligate = minor_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = greedy - } - modifier = { - factor = 5 - OR = { - has_trait = generous - has_trait = profligate - } - } - } - } - - option = { - name = bp3_survey.1050.c - inspection_success_chance_change_effect = { - CHANGE = decrease_minor - } - - stress_impact = { - greedy = minor_stress_impact_loss - generous = minor_stress_gain - profligate = minor_stress_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = generous - has_trait = profligate - } - } - modifier = { - factor = 5 - has_trait = greedy - } - } - } - - after = { - scope:merchant_character = { - silent_disappear_ai_if_not_hired = yes - } - scope:soldier_character = { - silent_disappear_ai_if_not_hired = yes - } - } -} - -# Mine Your Own Business -bp3_survey.1060 = { - type = activity_event - content_source = dlc_015 - title = bp3_survey.1060.t - desc = { - desc = bp3_survey.1060.desc - first_valid = { - triggered_desc = { - trigger = { - scope:mine_type = 1 - } - desc = bp3_survey.1060.desc.copper - } - triggered_desc = { - trigger = { - scope:mine_type = 2 - } - desc = bp3_survey.1060.desc.silver - } - triggered_desc = { - trigger = { - scope:mine_type = 3 - } - desc = bp3_survey.1060.desc.gold - } - } - } - theme = survey_activity - - override_background = { - reference = fp3_cave - } - - cooldown = { years = 1 } - - left_portrait = { - character = scope:soldier_character - hide_info = yes - animation = throne_room_two_handed_passive_1 - } - - center_portrait = { - character = root - animation = survey - } - - right_portrait = { - character = scope:guest_1 - animation = ecstasy - } - - trigger = { - scope:province = { has_special_building_slot = no } - } - - weight_multiplier = { - base = 1 - modifier = { - factor = 10 - scope:province = { - OR = { - later_historical_gold_mine_trigger = yes - later_historical_silver_mine_trigger = yes - later_historical_copper_mine_trigger = yes - } - } - } - } - - immediate = { - inspection_survey_intent_province_modifier = { MODIFIER = inspection_learning_intent_flourishing_metal_trade_modifier } - create_character = { - template = soldier_friend_character - culture = root.culture - faith = root.faith - gender = root - location = scope:province - save_scope_as = soldier_character - - after_creation = { - add_character_flag = { - flag = need_military_outfit - } - } - } - - scope:activity = { - random_attending_character = { - limit = { - this != root - } - weight = { - base = 1 - modifier = { - factor = 20 - OR = { - is_close_family_of = root - is_spouse_of = root - } - } - } - save_scope_as = guest_1 - } - } - - random_list = { - 60 = { - trigger = { - scope:province = { - NOR = { - later_historical_gold_mine_trigger = yes - later_historical_silver_mine_trigger = yes - } - } - } - save_scope_value_as = { - name = mine_type - value = 1 - } - } - 35 = { - trigger = { - scope:province = { - NOR = { - later_historical_gold_mine_trigger = yes - later_historical_copper_mine_trigger = yes - } - } - } - save_scope_value_as = { - name = mine_type - value = 2 - } - } - 5 = { - trigger = { - scope:province = { - NOR = { - later_historical_silver_mine_trigger = yes - later_historical_copper_mine_trigger = yes - } - } - } - save_scope_value_as = { - name = mine_type - value = 3 - } - } - } - } - - option = { - name = bp3_survey.1060.a - scope:province = { - switch = { - trigger = scope:mine_type - 3 = { - hidden_effect = { add_special_building_slot = generic_gold_mines_01 } - add_special_building = generic_gold_mines_01 - } - 2 = { - hidden_effect = { add_special_building_slot = generic_silver_mines_01 } - add_special_building = generic_silver_mines_01 - } - 1 = { - hidden_effect = { add_special_building_slot = generic_copper_mines_01 } - add_special_building = generic_copper_mines_01 - } - } - } - hidden_effect = { - if = { - limit = { - scope:province.county.holder != scope:host - } - scope:province.county.holder = { - send_interface_message = { - type = send_interface_message_good - title = bp3_survey_liege_intervention - - show_as_tooltip = { - scope:province = { - switch = { - trigger = scope:mine_type - 3 = { - hidden_effect = { add_special_building_slot = generic_gold_mines_01 } - add_special_building = generic_gold_mines_01 - } - 2 = { - hidden_effect = { add_special_building_slot = generic_silver_mines_01 } - add_special_building = generic_silver_mines_01 - } - 1 = { - hidden_effect = { add_special_building_slot = generic_copper_mines_01 } - add_special_building = generic_copper_mines_01 - } - } - } - } - } - } - } - } - - inspection_success_chance_change_effect = { - CHANGE = increase_medium - } - } - - after = { - scope:soldier_character = { - silent_disappear_ai_if_not_hired = yes - } - } -} - -# Regular Irregularities -bp3_survey.1070 = { - type = activity_event - content_source = dlc_015 - title = bp3_survey.1070.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - NOT = { exists = scope:county_owner } - } - desc = bp3_survey.1070.desc.intro.personal - } - triggered_desc = { - trigger = { - exists = scope:county_owner - } - desc = bp3_survey.1070.desc.intro.vassal - } - } - desc = bp3_survey.1070.desc - } - theme = survey_activity - - override_background = { - reference = study - } - - cooldown = { years = 1 } - - left_portrait = { - character = root - animation = reading - } - - right_portrait = { - character = scope:county_owner - animation = shame - } - - weight_multiplier = { - base = 1 - modifier = { - factor = 2 - scope:province.province_owner != root - scope:province.province_owner.stewardship < 10 - } - } - - immediate = { - inspection_survey_intent_control = { VALUE = 5 } - if = { - limit = { - scope:province.province_owner != root - } - scope:province.province_owner = { save_scope_as = county_owner } - } - } - - option = { - name = bp3_survey.1070.a - flavor = bp3_survey.1070.a.flavor - - scope:county_owner ?= { - add_opinion = { - modifier = frustrated_opinion - target = root - opinion = -10 - } - } - add_dread = 10 - add_treasury_or_gold = minor_treasury_or_gold_value - add_character_modifier = { - modifier = inspection_regular_irregularities_modifier - years = 10 - } - - inspection_success_chance_change_focus_effect = { - FOCUS = domain - CHANGE = decrease_minor - } - inspection_success_chance_change_not_focus_effect = { - FOCUS = domain - CHANGE = increase_minor - } - - stress_impact = { - just = minor_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 5 - has_trait = just - } - } - } - - option = { - name = bp3_survey.1070.b - flavor = bp3_survey.1070.b.flavor - add_treasury_or_gold = minor_treasury_or_gold_value - add_character_modifier = { - modifier = inspection_regular_irregularities_local_modifier - years = 5 - } - inspection_success_chance_change_focus_effect = { - FOCUS = domain - CHANGE = decrease_minor - } - inspection_success_chance_change_not_focus_effect = { - FOCUS = domain - CHANGE = increase_minor - } - - stress_impact = { - greedy = minor_stress_impact_loss - arbitrary = minor_stress_impact_loss - just = minor_stress_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = just - } - modifier = { - factor = 5 - OR = { - has_trait = arbitrary - has_trait = greedy - } - } - } - } - - option = { - name = bp3_survey.1070.c - flavor = bp3_survey.1070.c.flavor - - scope:county_owner ?= { - add_opinion = { - modifier = grateful_opinion - target = root - opinion = 10 - } - } - - inspection_success_chance_change_focus_effect = { - FOCUS = domain - CHANGE = increase_minor - } - inspection_success_chance_change_not_focus_effect = { - FOCUS = domain - CHANGE = decrease_minor - } - - stress_impact = { - greedy = minor_stress_gain - wrathful = minor_stress_gain - just = minor_stress_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = wrathful - has_trait = greedy - has_trait = just - } - } - } - } -} - -scripted_trigger place_worth_visiting_modifier_trigger = { - NOR = { - has_province_modifier = inspection_proteted_poi_levy_modifier - has_province_modifier = inspection_protected_holy_site_levy_modifier - has_province_modifier = inspection_protected_holy_poi_levy_modifier - has_province_modifier = inspection_protected_poi_gold_modifier - has_province_modifier = inspection_protected_holy_site_gold_modifier - has_province_modifier = inspection_protected_holy_poi_gold_modifier - } -} - -# A Place Worth Visiting -bp3_survey.1080 = { - type = activity_event - content_source = dlc_015 - title = bp3_survey.1080.t - desc = { - desc = bp3_survey.1080.desc - first_valid = { - triggered_desc = { - trigger = { - exists = scope:holy_poi_location - } - desc = bp3_survey.1080.desc.holy_poi - } - triggered_desc = { - trigger = { - exists = scope:poi_location - } - desc = bp3_survey.1080.desc.poi - } - triggered_desc = { - trigger = { - exists = scope:holy_site_location - } - desc = bp3_survey.1080.desc.holy_site - } - } - desc = bp3_survey.1080.desc.outro - } - theme = survey_activity - - override_background = { - reference = market - } - - cooldown = { years = 1 } - - left_portrait = { - character = scope:soldier_character - hide_info = yes - animation = throne_room_two_handed_passive_1 - } - - center_portrait = { - character = root - animation = thinking - } - - right_portrait = { - character = scope:traveler_character - hide_info = yes - animation = debating - } - - trigger = { - scope:province.county = { - any_county_province = { - OR = { - barony = { is_holy_site_of = root.faith } - has_special_building = yes - } - place_worth_visiting_modifier_trigger = yes - } - } - } - - immediate = { - inspection_survey_intent_control = { VALUE = 5 } - create_character = { - template = soldier_friend_character - culture = root.culture - faith = root.faith - gender = root - location = scope:province - save_scope_as = soldier_character - - after_creation = { - add_character_flag = { - flag = need_military_outfit - } - } - } - create_character = { - template = travel_leader_court_position_template - faith = root.faith - culture = root.culture - gender = root - location = scope:province - save_scope_as = traveler_character - } - scope:province.county = { - random_county_province = { - limit = { - OR = { - any_journey_point_of_interest_trigger = yes - AND = { - barony = { is_holy_site_of = root.faith } - barony.title_province = scope:province.county.title_province - } - } - place_worth_visiting_modifier_trigger = yes - } - alternative_limit = { - OR = { - any_journey_point_of_interest_trigger = yes - barony = { is_holy_site_of = root.faith } - } - place_worth_visiting_modifier_trigger = yes - } - weight = { - base = 1 - modifier = { - factor = 100 - barony = { is_holy_site_of = root.faith } - } - } - if = { - limit = { - any_journey_point_of_interest_trigger = yes - barony = { is_holy_site_of = root.faith } - } - save_scope_as = holy_poi_location - } - else_if = { - limit = { - any_journey_point_of_interest_trigger = yes - } - save_scope_as = poi_location - } - else_if = { - limit = { - barony = { is_holy_site_of = root.faith } - } - save_scope_as = holy_site_location - } - save_scope_as = location_province - } - } - } - - option = { - name = bp3_survey.1080.a - remove_treasury_or_gold = inspection_minor_gold - scope:poi_location ?= { - add_province_modifier = { - modifier = inspection_protected_poi_gold_modifier - years = 25 - } - inspection_survey_local_message_specific_location_province_modifier = { - TYPE = message_good - MODIFIER = inspection_protected_poi_gold_modifier - YEARS = 25 - } - } - scope:holy_site_location ?= { - add_province_modifier = { - modifier = inspection_protected_holy_site_gold_modifier - years = 25 - } - inspection_survey_local_message_specific_location_province_modifier = { - TYPE = message_good - MODIFIER = inspection_protected_holy_site_gold_modifier - YEARS = 25 - } - } - scope:holy_poi_location ?= { - add_province_modifier = { - modifier = inspection_protected_holy_poi_gold_modifier - years = 25 - } - inspection_survey_local_message_specific_location_province_modifier = { - TYPE = message_good - MODIFIER = inspection_protected_holy_poi_gold_modifier - YEARS = 25 - } - } - - inspection_success_chance_change_effect = { - CHANGE = increase_medium - } - - stress_impact = { - compassionate = minor_stress_impact_loss - diligent = minor_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 5 - OR = { - has_trait = compassionate - has_trait = diligent - } - } - } - } - - option = { - name = bp3_survey.1080.b - scope:poi_location ?= { - add_province_modifier = { - modifier = inspection_proteted_poi_levy_modifier - years = 25 - } - inspection_survey_local_message_specific_location_province_modifier = { - TYPE = message - MODIFIER = inspection_proteted_poi_levy_modifier - YEARS = 25 - } - } - scope:holy_site_location ?= { - add_province_modifier = { - modifier = inspection_protected_holy_site_levy_modifier - years = 25 - } - inspection_survey_local_message_specific_location_province_modifier = { - TYPE = message - MODIFIER = inspection_protected_holy_site_levy_modifier - YEARS = 25 - } - } - scope:holy_poi_location ?= { - add_province_modifier = { - modifier = inspection_protected_holy_poi_levy_modifier - years = 25 - } - inspection_survey_local_message_specific_location_province_modifier = { - TYPE = message - MODIFIER = inspection_protected_holy_poi_levy_modifier - YEARS = 25 - } - } - - inspection_success_chance_change_focus_effect = { - FOCUS = domain - CHANGE = decrease_minor - } - inspection_success_chance_change_not_focus_effect = { - FOCUS = domain - CHANGE = increase_minor - } - - stress_impact = { - arrogant = minor_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 5 - has_trait = arrogant - } - } - } - - option = { - name = bp3_survey.1080.c - inspection_success_chance_change_effect = { - CHANGE = decrease_minor - } - - stress_impact = { - compassionate = minor_stress_gain - diligent = minor_stress_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = compassionate - has_trait = diligent - } - } - } - } - - after = { - scope:soldier_character = { - silent_disappear_ai_if_not_hired = yes - } - scope:traveler_character = { - silent_disappear_ai_if_not_hired = yes - } - } -} - -scripted_trigger bp3_survey_1090_terrain_trigger = { - OR = { - has_holding = no - terrain = hills - terrain = mountains - terrain = steppe - terrain = forest - terrain = desert_mountains - terrain = desert - terrain = drylands - } -} - -# The Hidden Hinterlands -bp3_survey.1090 = { - type = activity_event - content_source = dlc_015 - title = bp3_survey.1090.t - desc = bp3_survey.1090.desc - theme = survey_activity - - override_background = { - trigger = { - scope:poaching_province = { - OR = { - terrain = forest - terrain = hills - terrain = mountains - } - } - } - reference = ep2_hunt_poachers_camp - } - - override_background = { - reference = wilderness - } - - cooldown = { years = 1 } - - left_portrait = { - character = scope:soldier_character - hide_info = yes - animation = throne_room_two_handed_passive_1 - } - - center_portrait = { - character = root - animation = survey - } - - right_portrait = { - character = scope:hunter_character - hide_info = yes - animation = hunting_carcass_start - } - - trigger = { - scope:province.county = { - any_county_province = { - bp3_survey_1090_terrain_trigger = yes - NOR = { - has_province_modifier = inspection_hidden_hinterlands_recruit_modifier - has_province_modifier = inspection_hidden_hinterlands_hunters_modifier - } - } - } - } - - immediate = { - inspection_survey_intent_control = { VALUE = 5 } - create_character = { - template = soldier_friend_character - culture = root.culture - faith = root.faith - gender = root - location = scope:province - save_scope_as = soldier_character - - after_creation = { - add_character_flag = { - flag = need_military_outfit - } - } - } - create_character = { - template = hunter_template - faith = root.faith - culture = root.culture - gender = root - location = scope:province - save_scope_as = hunter_character - } - scope:province.county = { - random_county_province = { - limit = { - bp3_survey_1090_terrain_trigger = yes - } - save_scope_as = poaching_province - } - } - } - - option = { - name = bp3_survey.1090.a - remove_treasury_or_gold = inspection_minor_gold - scope:poaching_province = { - add_province_modifier = { - modifier = inspection_hidden_hinterlands_recruit_modifier - years = 25 - } - inspection_survey_local_message_specific_location_province_modifier = { - TYPE = message_good - MODIFIER = inspection_hidden_hinterlands_recruit_modifier - YEARS = 25 - } - } - - inspection_success_chance_change_focus_effect = { - FOCUS = domain - CHANGE = decrease_minor - } - inspection_success_chance_change_not_focus_effect = { - FOCUS = domain - CHANGE = increase_medium - } - - stress_impact = { - diligent = minor_stress_impact_loss - wrathful = minor_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 5 - OR = { - has_trait = diligent - has_trait = wrathful - } - } - } - } - - option = { - name = bp3_survey.1090.b - scope:poaching_province = { - add_province_modifier = { - modifier = inspection_hidden_hinterlands_hunters_modifier - years = 25 - } - inspection_survey_local_message_specific_location_province_modifier = { - TYPE = message - MODIFIER = inspection_hidden_hinterlands_hunters_modifier - YEARS = 25 - } - } - - inspection_success_chance_change_focus_effect = { - FOCUS = border - CHANGE = decrease_minor - } - inspection_success_chance_change_not_focus_effect = { - FOCUS = border - CHANGE = increase_minor - } - - stress_impact = { - lifestyle_hunter = minor_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 5 - has_trait = lifestyle_hunter - } - } - } - - option = { - name = bp3_survey.1090.c - - inspection_success_chance_change_focus_effect = { - FOCUS = domain - CHANGE = increase_minor - } - inspection_success_chance_change_not_focus_effect = { - FOCUS = domain - CHANGE = decrease_minor - } - - stress_impact = { - content = minor_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 5 - has_trait = content - } - } - } - - after = { - scope:soldier_character = { - silent_disappear_ai_if_not_hired = yes - } - scope:hunter_character = { - silent_disappear_ai_if_not_hired = yes - } - } -} - -### Progression Events ### -bp3_survey.1200 = { - type = activity_event - content_source = dlc_015 - title = bp3_survey.1200.t - desc = bp3_survey.1200.desc - theme = survey_activity - - override_background = { reference = study } - - left_portrait = { - character = root - animation = writing - } - - cooldown = { years = 1 } - - option = { - name = bp3_survey.1200.a - inspection_success_chance_change_effect = { - CHANGE = increase_medium - } - } -} - -bp3_survey.1210 = { - type = activity_event - content_source = dlc_015 - title = bp3_survey.1210.t - desc = bp3_survey.1210.desc - theme = survey_activity - - override_background = { reference = study } - - left_portrait = { - character = root - animation = writing - } - - cooldown = { years = 1 } - - option = { - name = bp3_survey.1210.a - inspection_success_chance_change_effect = { - CHANGE = increase_minor - } - } -} - -bp3_survey.1220 = { - type = activity_event - content_source = dlc_015 - title = bp3_survey.1220.t - desc = bp3_survey.1220.desc - theme = survey_activity - - override_background = { reference = study } - - left_portrait = { - character = root - animation = disapproval - } - - cooldown = { years = 1 } - - option = { - name = bp3_survey.1220.a - inspection_success_chance_change_effect = { - CHANGE = decrease_minor - } - } -} - -bp3_survey.1230 = { - type = activity_event - content_source = dlc_015 - title = bp3_survey.1230.t - desc = bp3_survey.1230.desc - theme = survey_activity - - override_background = { reference = study } - - left_portrait = { - character = root - animation = rage - } - - cooldown = { years = 1 } - - option = { - name = bp3_survey.1230.a - inspection_success_chance_change_effect = { - CHANGE = decrease_medium - } - } -} diff --git a/events/dlc/ce1/epidemic_events.txt b/events/dlc/ce1/epidemic_events.txt index 292aa444d..412578d39 100644 --- a/events/dlc/ce1/epidemic_events.txt +++ b/events/dlc/ce1/epidemic_events.txt @@ -74,7 +74,7 @@ epidemic_events.0001 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = medium_stress_impact_gain gregarious = medium_stress_impact_gain } @@ -88,7 +88,23 @@ epidemic_events.0001 = { epidemic_events.0100 = { type = character_event title = epidemic_events.0100.t - desc = epidemic_events.0100.desc + desc = { + first_valid = { + #You are pre-emptively fleeing, scene shows you at destination already + triggered_desc = { + trigger = { + NOT = { + capital_county = { + has_province_with_epidemic = { intensity = any } + } + } + } + desc = epidemic_events.0100.desc + } + #You are fleeing through plague-ridden streets + desc = epidemic_events.0100.desc_amidst_plague + } + } theme = plague override_background = { trigger = { @@ -98,20 +114,562 @@ epidemic_events.0100 = { } } } - reference = tavern + reference = bp1_crossroads_inn + } + override_effect_2d = { + trigger = { + capital_county = { + has_province_with_epidemic = { intensity = any } + } + } + reference = flies } left_portrait = { character = root - animation = fear + triggered_animation = { + trigger = { + root.capital_county = { + has_province_with_epidemic = { intensity = any } + } + root = { age <= 3 } + } + animation = nervous + } + triggered_animation = { + trigger = { + root.capital_county = { + has_province_with_epidemic = { intensity = any } + } + } + animation = standing_horse + camera = camera_event_standing_with_horse_left + } + triggered_animation = { + trigger = { + age < 12 + } + animation = sadness + } + animation = worry + camera = camera_event_left_forward + } + right_portrait = { + character = scope:family + triggered_animation = { + trigger = { + #Will look kind of weird to have adult men, ex your dad, crying + scope:family = { + OR = { + is_adult = no + NOT = { + can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = scope:family } + } + } + ai_compassion <= 0 + } + root.capital_county = { + has_province_with_epidemic = { intensity = any } + } + } + animation = fear + } + triggered_animation = { + trigger = { + #Will look kind of weird to have adult men, ex your dad, crying + scope:family = { + OR = { + is_adult = no + NOT = { + can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = scope:family } + } + } + } + root.capital_county = { + has_province_with_epidemic = { intensity = any } + } + } + animation = crying + } + triggered_animation = { + trigger = { + scope:family = { is_knight = yes } + root.capital_county = { + has_province_with_epidemic = { intensity = any } + } + } + animation = aggressive_spear + } + triggered_animation = { + trigger = { + root.capital_county = { + has_province_with_epidemic = { intensity = any } + } + } + animation = stunned + } + triggered_animation = { + trigger = { + age < 12 + } + animation = clutching_toy + } + triggered_animation = { + trigger = { + ai_zeal >= very_low_negative_ai_value + faith.religion = religion:islam_religion + } + animation = prayer_muslim + } + triggered_animation = { + trigger = { + ai_zeal >= very_low_negative_ai_value + } + animation = prayer_standing + } + animation = shame + camera = camera_event_center_pointing_forward } - option = { #Into isolation we go - name = epidemic_events.0100.a + immediate = { + #Get young child ideally + ordered_child = { + order_by = { + value = age + multiply = -1 + } + limit = { + basic_is_available_ai = yes + is_courtier_of = root + age >= 6 + } + save_scope_as = family + } + if = { + limit = { + NOT = { + exists = scope:family + } + exists = primary_spouse + primary_spouse = { + basic_is_available_ai = yes + is_courtier_of = root + } + } + primary_spouse = { + save_scope_as = family + } + } + if = { + limit = { + NOT = { + exists = scope:family + } + } + ordered_close_family_member = { + order_by = { + value = age + multiply = -1 + } + limit = { + basic_is_available_ai = yes + is_courtier_of = root + age >= 6 + } + save_scope_as = family + } + } + if = { + limit = { + NOT = { + exists = scope:family + } + } + ordered_spouse = { + order_by = { + value = "opinion(root)" + } + limit = { + basic_is_available_ai = yes + is_courtier_of = root + } + save_scope_as = family + } + } + if = { + limit = { + NOT = { + exists = scope:family + } + } + ordered_concubine = { + order_by = { + value = "opinion(root)" + } + limit = { + basic_is_available_ai = yes + is_courtier_of = root + } + save_scope_as = family + } + } + if = { + limit = { + capital_county = { + has_province_with_epidemic = { intensity = any } + } + } + #Get plague in capital + capital_province = { + ordered_province_epidemic = { + order_by = { + value = 1 + if = { + limit = { + outbreak_intensity >= apocalyptic + } + add = 2 + } + if = { + limit = { + outbreak_intensity >= apocalyptic + } + add = 1 + } + } + save_scope_as = plague + } + } + } + isolate_family_decision_effect = yes + add_legitimacy_effect = { LEGITIMACY = minor_legitimacy_loss } add_prestige = major_prestige_loss - isolate_family_decision_effect = yes + } + #TRIGGERED OPTIONS FROM PLAGUE BEING PRESENT + #A good opportunity to teach the kids about self-preservation... + option = { + trigger = { + capital_county = { + has_province_with_epidemic = { intensity = any } + } + trigger_if = { + limit = { + OR = { + has_trait = disloyal + has_trait = gallowsbait + } + } + OR = { + has_trait = disloyal + has_trait = gallowsbait + } + } + trigger_else = { + OR = { + has_trait = cynical + has_trait = arbitrary + has_trait = fickle + } + } + OR = { + any_close_family_member = { + is_ai = yes + is_courtier_of = root + is_imprisoned = no + } + any_consort = { + is_ai = yes + is_courtier_of = root + is_imprisoned = no + } + } + } + name = epidemic_events.0100.aa + + every_close_family_member = { + custom = custom.every_close_family_member + limit = { + is_ai = yes + is_courtier_of = root + is_imprisoned = no + } + add_intrigue_lifestyle_xp = medium_lifestyle_xp + + } + every_consort = { + custom = custom.every_consort + limit = { + is_ai = yes + is_courtier_of = root + is_imprisoned = no + } + add_intrigue_lifestyle_xp = medium_lifestyle_xp + } + stress_and_fulfillment_impact = { + just = medium_stress_impact_gain + zealous = major_stress_impact_gain + trusting = medium_stress_impact_gain + humble = medium_stress_impact_gain + } ai_chance = { base = 100 + modifier = { + factor = 0 + OR = { + has_trait = just + has_trait = zealous + has_trait = trusting + has_trait = humble + } + } + } + } + #Comfort your family because you are nice + option = { + trigger = { + capital_county = { + has_province_with_epidemic = { intensity = any } + } + trigger_if = { + limit = { + OR = { + has_trait = family_first + has_trait = loyal + } + } + OR = { + has_trait = family_first + has_trait = loyal + } + } + trigger_else = { + OR = { + has_trait = compassionate + has_trait = charming + has_trait = calm + has_trait = trusting + } + } + OR = { + any_close_family_member = { + is_ai = yes + is_courtier_of = root + is_imprisoned = no + } + any_consort = { + is_ai = yes + is_courtier_of = root + is_imprisoned = no + } + } + } + name = epidemic_events.0100.b + + every_close_family_member = { + custom = custom.every_close_family_member + limit = { + is_ai = yes + is_courtier_of = root + is_imprisoned = no + } + add_stress = medium_stress_loss + add_opinion = { + modifier = comforted_opinion + target = root + opinion = 10 + } + } + every_consort = { + custom = custom.every_consort + limit = { + is_ai = yes + is_courtier_of = root + is_imprisoned = no + } + add_stress = medium_stress_loss + add_opinion = { + modifier = comforted_opinion + target = root + opinion = 10 + } + } + + stress_and_fulfillment_impact = { + callous = medium_stress_impact_gain + sadistic = medium_stress_impact_gain + fickle = minor_stress_impact_gain + wrathful = minor_stress_impact_gain + } + ai_chance = { + base = 100 + modifier = { + factor = 0 + OR = { + has_trait = compassionate + has_trait = callous + has_trait = sadistic + has_trait = fickle + has_trait = wrathful + } + } + } + } + #TRIGGERED OPTIONS FROM PLAGUE NOT BEING PRESENT + #An excellent place to mastermind schemes in secret... + option = { + trigger = { + NOT = { + capital_county = { + has_province_with_epidemic = { intensity = any } + } + } + trigger_if = { + limit = { + OR = { + has_trait = schemer + has_trait = education_intrigue_5 + has_trait = lunatic + } + } + OR = { + has_trait = schemer + has_trait = education_intrigue_5 + has_trait = lunatic + } + } + trigger_else = { + OR = { + has_trait = paranoid + has_trait = vengeful + has_trait = patient + } + } + intrigue >= medium_skill_rating + } + name = epidemic_events.0100.c + + add_character_modifier = { + modifier = plots_conceived_in_seclusion_modifier + years = 5 + } + stress_and_fulfillment_impact = { + impatient = minor_stress_impact_gain + trusting = medium_stress_impact_gain + } + ai_chance = { + base = 100 + modifier = { + factor = 0 + OR = { + has_trait = impatient + has_trait = trusting + } + } + } + } + #Being in the country is good for the soul! + option = { + trigger = { + NOT = { + capital_county = { + has_province_with_epidemic = { intensity = any } + } + } + trigger_if = { + limit = { + OR = { + has_trait = devoted + has_trait = theologian + AND = { + has_trait = lifestyle_hunter + has_trait_xp = { + trait = lifestyle_hunter + track = hunter + value > 50 + } + } + AND = { + has_trait = lifestyle_hunter + has_trait_xp = { + trait = lifestyle_hunter + track = falconer + value > 50 + } + } + } + } + OR = { + has_trait = devoted + has_trait = theologian + AND = { + has_trait = lifestyle_hunter + has_trait_xp = { + trait = lifestyle_hunter + track = hunter + value > 50 + } + } + AND = { + has_trait = lifestyle_hunter + has_trait_xp = { + trait = lifestyle_hunter + track = falconer + value > 50 + } + } + } + } + trigger_else = { + OR = { + has_trait = shy + has_trait = reclusive + has_trait = content + } + } + } + name = epidemic_events.0100.d + change_spiritual_fulfillment = minor_spiritual_fulfillment_value + stress_and_fulfillment_impact = { + gregarious = minor_stress_impact_gain + ambitious = medium_stress_impact_gain + impatient = medium_stress_impact_gain + cynical = medium_stress_impact_gain + } + ai_chance = { + base = 100 + modifier = { + factor = 0 + OR = { + has_trait = gregarious + has_trait = ambitious + has_trait = impatient + has_trait = cynical + } + } + } + } + #Into isolation we go + option = { + name = { + text = epidemic_events.0100.a_plague + trigger = { + capital_county = { + has_province_with_epidemic = { intensity = any } + } + } + } + name = { + text = epidemic_events.0100.a + trigger = { + NOT = { + capital_county = { + has_province_with_epidemic = { intensity = any } + } + } + } + } + ai_chance = { + base = 1 } } } @@ -196,7 +754,8 @@ epidemic_events.0110 = { limit = { # A new capital potential? highest_held_title_tier >= tier_kingdom any_sub_realm_duchy = { - title_capital_county = { + is_landless_type_title = no + title_capital_county ?= { NOT = { exists = var:epidemic_cooldown_general } holder = { OR = { @@ -392,12 +951,7 @@ epidemic_events.0110 = { } } } - if = { - limit = { - has_legitimacy = yes - } - add_legitimacy = miniscule_legitimacy_loss - } + add_legitimacy_effect = { LEGITIMACY = miniscule_legitimacy_loss } ai_chance = { base = 50 ai_value_modifier = { @@ -717,7 +1271,7 @@ epidemic_events.1000 = { years = 10 } } - stress_impact = { + stress_and_fulfillment_impact = { cynical = major_stress_impact_loss arrogant = medium_stress_impact_gain stubborn = medium_stress_impact_gain @@ -757,7 +1311,7 @@ epidemic_events.1000 = { years = 10 } } - stress_impact = { + stress_and_fulfillment_impact = { sadistic = minor_stress_impact_loss compassionate = medium_stress_impact_gain cynical = medium_stress_impact_gain @@ -790,7 +1344,7 @@ epidemic_events.1000 = { years = 10 } } - stress_impact = { + stress_and_fulfillment_impact = { zealous = medium_stress_impact_gain arrogant = medium_stress_impact_gain stubborn = medium_stress_impact_gain @@ -925,7 +1479,7 @@ epidemic_events.1010 = { years = 15 } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = major_stress_impact_loss callous = minor_stress_impact_loss base = minor_stress_impact_gain @@ -952,7 +1506,7 @@ epidemic_events.1010 = { years = 5 } } - stress_impact = { + stress_and_fulfillment_impact = { callous = minor_stress_impact_loss cynical = minor_stress_impact_gain paranoid = minor_stress_impact_gain @@ -986,7 +1540,7 @@ epidemic_events.1010 = { years = 5 } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_loss callous = minor_stress_impact_loss base = minor_stress_impact_gain @@ -1102,7 +1656,7 @@ epidemic_events.1020 = { years = 15 } } - stress_impact = { + stress_and_fulfillment_impact = { callous = minor_stress_impact_gain greedy = minor_stress_impact_gain cynical = minor_stress_impact_gain @@ -1127,7 +1681,7 @@ epidemic_events.1020 = { option = { # What a waste of money name = epidemic_events.1020.b add_legitimacy_effect = { LEGITIMACY = miniscule_legitimacy_loss } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_gain diligent = minor_stress_impact_gain zealous = minor_stress_impact_gain @@ -1302,7 +1856,7 @@ epidemic_events.1030 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = medium_stress_impact_loss impatient = minor_stress_impact_loss generous = minor_stress_impact_loss @@ -1333,7 +1887,7 @@ epidemic_events.1030 = { chance = 35 add_learning_skill = 1 } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_gain impatient = minor_stress_impact_gain generous = minor_stress_impact_gain @@ -1439,7 +1993,7 @@ epidemic_events.1040 = { years = 10 } } - stress_impact = { + stress_and_fulfillment_impact = { zealous = minor_stress_impact_gain # Nice self-report bro flagellant = medium_stress_impact_gain @@ -1473,7 +2027,7 @@ epidemic_events.1040 = { years = 10 } } - stress_impact = { + stress_and_fulfillment_impact = { flagellant = minor_stress_impact_loss # They're just like me fr! sadistic = minor_stress_impact_loss # I love seeing people in pain compassionate = minor_stress_impact_gain # I hate seeing people in pain @@ -1519,7 +2073,7 @@ epidemic_events.1040 = { } add_trait = flagellant } - stress_impact = { + stress_and_fulfillment_impact = { base = major_stress_impact_loss craven = minor_stress_impact_gain # pain hurts arrogant = minor_stress_impact_gain # I don't deserve this @@ -1600,7 +2154,7 @@ epidemic_events.1050 = { years = 10 } } - stress_impact = { + stress_and_fulfillment_impact = { # What if they're right? D: zealous = minor_stress_impact_gain paranoid = medium_stress_impact_gain @@ -1667,7 +2221,7 @@ epidemic_events.1050 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { cynical = minor_stress_impact_gain lazy = minor_stress_impact_gain greedy = minor_stress_impact_gain @@ -1699,7 +2253,7 @@ epidemic_events.1050 = { years = 10 } } - stress_impact = { + stress_and_fulfillment_impact = { diligent = minor_stress_impact_gain just = minor_stress_impact_gain arbitrary = minor_stress_impact_gain @@ -1831,7 +2385,7 @@ epidemic_events.1060 = { NOT = { # No attacking the puppos for Zoroastrians and Canary Islanders root.faith.religion = religion:zoroastrianism_religion -# root.faith.religion = religion:north_african_religion + root.faith.religion = religion:north_african_religion } } set_variable = { @@ -1852,9 +2406,9 @@ epidemic_events.1060 = { } 20 = { trigger = { - trait_is_shunned_or_criminal_in_faith_trigger = { + trait_is_shunned_or_criminal_in_rite_trigger = { TRAIT = trait:witch - FAITH = root.faith + RITE = root.rite GENDER_CHARACTER = root } } @@ -1872,8 +2426,8 @@ epidemic_events.1060 = { category = personality limit = { save_temporary_scope_as = sin_trait_to_check - root.faith = { - trait_is_sin = scope:sin_trait_to_check + root.rite = { + trait_is_sin_rite = scope:sin_trait_to_check } } save_scope_as = sinful_trait @@ -1952,7 +2506,7 @@ epidemic_events.1060 = { years = 10 } } - stress_impact = { + stress_and_fulfillment_impact = { diligent = minor_stress_impact_gain compassionate = minor_stress_impact_gain } @@ -1982,7 +2536,7 @@ epidemic_events.1060 = { years = 10 } } - stress_impact = { + stress_and_fulfillment_impact = { zealous = minor_stress_impact_gain paranoid = medium_stress_impact_gain trusting = medium_stress_impact_gain @@ -2145,7 +2699,7 @@ epidemic_events.1061 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { diligent = minor_stress_impact_gain compassionate = medium_stress_impact_gain just = medium_stress_impact_gain @@ -2175,8 +2729,8 @@ epidemic_events.1061 = { years = 10 } } - add_legitimacy = miniscule_legitimacy_loss - stress_impact = { + add_legitimacy_effect = { LEGITIMACY = miniscule_legitimacy_loss } + stress_and_fulfillment_impact = { lazy = minor_stress_impact_gain paranoid = medium_stress_impact_gain trusting = medium_stress_impact_gain @@ -2255,6 +2809,7 @@ epidemic_events.1062 = { location = root.location culture = root.culture faith = root.faith + rite = root.rite gender_female_chance = root_soldier_female_chance save_scope_as = poacher_1 after_creation = { @@ -2266,6 +2821,7 @@ epidemic_events.1062 = { location = root.location culture = root.culture faith = root.faith + rite = root.rite gender_female_chance = root_soldier_female_chance save_scope_as = poacher_2 after_creation = { @@ -2382,7 +2938,7 @@ epidemic_events.1062 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { diligent = minor_stress_impact_gain compassionate = medium_stress_impact_gain just = medium_stress_impact_gain @@ -2421,7 +2977,7 @@ epidemic_events.1062 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { lazy = minor_stress_impact_gain paranoid = medium_stress_impact_gain trusting = medium_stress_impact_gain @@ -2526,24 +3082,24 @@ epidemic_events.1063 = { root = { NOT = { has_trait = prev } } - root.faith = { trait_is_virtue = scope:random_virtue_trait_trigger } + root.rite = { trait_is_virtue_rite = scope:random_virtue_trait_trigger } } # Root has something to repent for OR = { num_sinful_traits >= 1 AND = { is_witch_trigger = yes - trait_is_shunned_or_criminal_in_faith_trigger = { + trait_is_shunned_or_criminal_in_rite_trigger = { TRAIT = trait:witch - FAITH = root.faith + RITE = root.rite GENDER_CHARACTER = root } } AND = { is_incestuous_trigger = yes - trait_is_shunned_or_criminal_in_faith_trigger = { + trait_is_shunned_or_criminal_in_rite_trigger = { TRAIT = trait:incestuous - FAITH = root.faith + RITE = root.rite GENDER_CHARACTER = root } } @@ -2571,7 +3127,7 @@ epidemic_events.1063 = { root = { NOT = { has_trait = prev } } - root.faith = { trait_is_virtue = scope:random_virtue_trait } + root.rite = { trait_is_virtue_rite = scope:random_virtue_trait } } save_scope_as = virtuous_trait } @@ -2582,6 +3138,7 @@ epidemic_events.1063 = { location = root.location culture = root.culture faith = root.faith + rite = root.rite save_scope_as = priest } } @@ -2621,7 +3178,7 @@ epidemic_events.1063 = { send_interface_toast = { title = epidemic_events.1063.c.failure left_icon = root - add_legitimacy = miniscule_legitimacy_loss + add_legitimacy_effect = { LEGITIMACY = miniscule_legitimacy_loss } every_sub_realm_county = { custom = every_infected_county limit = { @@ -2681,7 +3238,7 @@ epidemic_events.1063 = { remove_witch_secret_or_trait_effect = yes } add_trait_force_tooltip = scope:virtuous_trait - stress_impact = { + stress_and_fulfillment_impact = { base = massive_stress_impact_gain lazy = minor_stress_impact_gain cynical = minor_stress_impact_gain @@ -2713,8 +3270,8 @@ epidemic_events.1063 = { years = 10 } } - add_legitimacy = miniscule_legitimacy_loss - stress_impact = { + add_legitimacy_effect = { LEGITIMACY = miniscule_legitimacy_loss } + stress_and_fulfillment_impact = { base = minor_stress_impact_gain cynical = medium_stress_impact_loss # Am I *really* a sinner tho? zealous = medium_stress_impact_gain @@ -2897,8 +3454,8 @@ epidemic_events.1064 = { years = 15 } } - add_legitimacy = miniscule_legitimacy_loss - stress_impact = { + add_legitimacy_effect = { LEGITIMACY = miniscule_legitimacy_loss } + stress_and_fulfillment_impact = { trusting = minor_stress_impact_gain lazy = minor_stress_impact_gain } @@ -3090,7 +3647,7 @@ epidemic_events.1065 = { CHARACTER = scope:shamed_buddy REASON = friend_walk_of_shame } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_gain arrogant = minor_stress_impact_gain humble = medium_stress_impact_loss @@ -3121,7 +3678,7 @@ epidemic_events.1065 = { add_trait = wounded_2 } } - stress_impact = { + stress_and_fulfillment_impact = { just = minor_stress_impact_gain gregarious = minor_stress_impact_gain } @@ -3152,7 +3709,7 @@ epidemic_events.1065 = { years = 10 } } - stress_impact = { + stress_and_fulfillment_impact = { trusting = minor_stress_impact_gain lazy = minor_stress_impact_gain } @@ -3193,7 +3750,7 @@ epidemic_events.1066 = { cooldown = { years = 5 } immediate = { - add_legitimacy = miniscule_legitimacy_loss + add_legitimacy_effect = { LEGITIMACY = miniscule_legitimacy_loss } } option = { # Offer minorities asylum in the capital @@ -3220,7 +3777,7 @@ epidemic_events.1066 = { years = 15 } } - stress_impact = { + stress_and_fulfillment_impact = { zealous = minor_stress_impact_gain # I'm a fundementalist callous = minor_stress_impact_gain arbitrary = minor_stress_impact_gain @@ -3262,7 +3819,7 @@ epidemic_events.1066 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { zealous = minor_stress_impact_gain # I'm a fundementalist callous = minor_stress_impact_gain arbitrary = minor_stress_impact_gain @@ -3319,7 +3876,7 @@ epidemic_events.1066 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { just = medium_stress_impact_gain compassionate = medium_stress_impact_gain diligent = minor_stress_impact_gain @@ -3360,7 +3917,7 @@ epidemic_events.1067 = { years = 10 } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_gain zealous = minor_stress_impact_gain callous = minor_stress_impact_gain @@ -3388,7 +3945,7 @@ epidemic_events.1067 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_gain # Foreigners? They could be spies! zealous = minor_stress_impact_gain # I'm a fundementalist callous = minor_stress_impact_gain @@ -3406,7 +3963,7 @@ epidemic_events.1067 = { option = { # Well, they can't come 'ere name = epidemic_events.1067.b - stress_impact = { + stress_and_fulfillment_impact = { just = medium_stress_impact_gain compassionate = medium_stress_impact_gain diligent = minor_stress_impact_gain @@ -3518,7 +4075,7 @@ epidemic_events.1068 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { zealous = minor_stress_impact_gain # I'm a fundementalist callous = minor_stress_impact_gain arbitrary = minor_stress_impact_gain @@ -3569,7 +4126,7 @@ epidemic_events.1068 = { min = tiny_gold_value } } - stress_impact = { + stress_and_fulfillment_impact = { just = minor_stress_impact_gain compassionate = minor_stress_impact_gain generous = minor_stress_impact_gain @@ -3597,7 +4154,7 @@ epidemic_events.1068 = { OPINION = 0 REASON = rival_refused_to_help_my_loans } - stress_impact = { + stress_and_fulfillment_impact = { lazy = minor_stress_impact_loss just = minor_stress_impact_gain compassionate = minor_stress_impact_gain @@ -3867,6 +4424,7 @@ epidemic_events.1100 = { increase_governance_effect = { VALUE = -2 } } + pam_epidemic_arrival_spiritual_fulfillment_loss_effect = yes ai_chance = { base = 100 } @@ -3886,6 +4444,7 @@ epidemic_events.1100 = { days = 3 } } + pam_epidemic_arrival_spiritual_fulfillment_loss_effect = yes ai_chance = { base = 100 } @@ -3907,6 +4466,7 @@ epidemic_events.1100 = { id = health.3001 days = { court_physician_search_min court_physician_search_max } } } + pam_epidemic_arrival_spiritual_fulfillment_loss_effect = yes ai_chance = { base = 100 } @@ -3917,6 +4477,7 @@ epidemic_events.1100 = { epidemic_events.1101 = { type = character_event window = fullscreen_event + queue_icon = "gfx/interface/icons/splash_icons/splash_epidemics.dds" title = epidemic_events.1100.t desc = { desc = epidemic_events.1100.desc.intro.apocalyptic @@ -4143,6 +4704,7 @@ epidemic_events.1101 = { } } + pam_epidemic_arrival_spiritual_fulfillment_loss_effect = yes ai_chance = { base = 100 } @@ -4178,6 +4740,7 @@ epidemic_events.1101 = { } } } + pam_epidemic_arrival_spiritual_fulfillment_loss_effect = yes ai_chance = { base = 100 } @@ -4274,7 +4837,7 @@ epidemic_events.1110 = { years = 15 } } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_gain callous = minor_stress_impact_gain sadistic = minor_stress_impact_gain @@ -4307,7 +4870,7 @@ epidemic_events.1110 = { years = 15 } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_gain diligent = minor_stress_impact_gain just = minor_stress_impact_gain @@ -4363,6 +4926,7 @@ epidemic_events.1120 = { title_province = { any_province_epidemic = { save_temporary_scope_as = epidemic_temp_scope + epidemic_type.epidemic_trait != trait:ergotism root.location.county.title_province = { NOT = { any_province_epidemic = { this = scope:epidemic_temp_scope } @@ -4390,6 +4954,7 @@ epidemic_events.1120 = { limit = { title_province = { any_province_epidemic = { + epidemic_type.epidemic_trait != trait:ergotism save_temporary_scope_as = epidemic_temp_scope root.location.county.title_province = { NOT = { @@ -4402,6 +4967,7 @@ epidemic_events.1120 = { title_province = { random_province_epidemic = { limit = { + epidemic_type.epidemic_trait != trait:ergotism save_temporary_scope_as = epidemic_temp_scope root.location.county.title_province = { NOT = { @@ -4420,7 +4986,10 @@ epidemic_events.1120 = { hidden_effect = { if = { limit = { - scope:corpse_flingee = { location.county = scope:flung_corpse_location } + scope:corpse_flingee.location ?= { + is_sea_province = no + county = scope:flung_corpse_location + } } scope:corpse_flingee = { trigger_event = epidemic_events.1121 @@ -4449,7 +5018,7 @@ epidemic_events.1120 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = major_stress_impact_gain just = medium_stress_impact_gain forgiving = medium_stress_impact_gain @@ -4475,7 +5044,7 @@ epidemic_events.1120 = { option = { # Fuckinnnnnnnn don't name = epidemic_events.1120.b - stress_impact = { + stress_and_fulfillment_impact = { torturer = minor_stress_impact_gain vengeful = minor_stress_impact_gain sadistic = medium_stress_impact_gain @@ -4556,11 +5125,11 @@ epidemic_events.1121 = { years = 15 } } - infect_with_epidemic = scope:epidemic_scope + infect_with_epidemic_effect = yes } } } - stress_impact = { + stress_and_fulfillment_impact = { forgiving = medium_stress_impact_gain compassionate = minor_stress_impact_gain just = minor_stress_impact_gain @@ -4597,8 +5166,8 @@ epidemic_events.1121 = { left_icon = root right_icon = scope:peasant_1 - scope:location = { - add_province_modifier = { + scope:flung_corpse_location = { + add_county_modifier = { modifier = ce1_quarantined_corpse years = 10 } @@ -4622,11 +5191,11 @@ epidemic_events.1121 = { years = 15 } } - infect_with_epidemic = scope:epidemic_scope + infect_with_epidemic_effect = yes } } } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_gain torturer = minor_stress_impact_gain vengeful = minor_stress_impact_gain @@ -4651,7 +5220,7 @@ epidemic_events.1121 = { years = 15 } } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_loss humble = minor_stress_impact_gain } @@ -4692,7 +5261,7 @@ epidemic_events.1122 = { option = { # God damn it name = epidemic_events.1122.a - infect_with_epidemic = scope:epidemic_scope + infect_with_epidemic_effect = yes add_stress = major_stress_gain ai_chance = { base = 100 @@ -4730,11 +5299,11 @@ epidemic_events.1122 = { modifier = ce1_heavily_ill years = 5 } - infect_with_epidemic = scope:epidemic_scope + infect_with_epidemic_effect = yes } } } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_gain torturer = minor_stress_impact_gain vengeful = minor_stress_impact_gain @@ -4915,11 +5484,15 @@ epidemic_events.3000 = { location = root.location culture = root.location.culture faith = root.location.faith + rite = root.location.rite gender_female_chance = 50 save_scope_as = sick_peasant + after_creation = { + add_character_flag = created + } } scope:sick_peasant = { - add_trait = scope:epidemic_scope.epidemic_type.epidemic_trait + infect_with_epidemic_effect = yes } } } @@ -4935,7 +5508,7 @@ epidemic_events.3000 = { delay_travel_plan = { days = 10 } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = major_stress_impact_gain avaricious = major_stress_impact_gain callous = major_stress_impact_gain @@ -4992,14 +5565,14 @@ epidemic_events.3000 = { title = epidemic_events.3000.b.sick left_icon = scope:companion scope:companion = { - add_trait = scope:epidemic_scope.epidemic_type.epidemic_trait + infect_with_epidemic_effect = yes } } } } } - stress_impact = { + stress_and_fulfillment_impact = { callous = medium_stress_impact_gain sadistic = medium_stress_impact_gain } @@ -5020,7 +5593,7 @@ epidemic_events.3000 = { name = epidemic_events.3000.c add_piety = minor_piety_loss - stress_impact = { + stress_and_fulfillment_impact = { compassionate = major_stress_impact_gain just = medium_stress_impact_gain callous = medium_stress_impact_loss @@ -5043,7 +5616,7 @@ epidemic_events.3000 = { hidden_effect = { if = { limit = { is_ai = yes } - scope:sick_peasant = { silent_disappearance_effect = yes } + scope:sick_peasant = { silent_disappearance_ai_if_created_effect = yes } } else = { scope:sick_peasant = { move_to_pool = yes } @@ -5077,33 +5650,40 @@ epidemic_events.3010 = { trigger = { is_travelling = yes location = { - any_province_epidemic = { } + any_province_epidemic = { + save_temporary_scope_as = epidemic_temp + root = { can_contract_disease_trait_scope_trigger = { DISEASE = scope:epidemic_temp.epidemic_type.epidemic_trait } } + } } } immediate = { location = { save_scope_as = epidemic_location - } - location = { random_province_epidemic = { + limit = { + save_temporary_scope_as = epidemic_temp + root = { can_contract_disease_trait_scope_trigger = { DISEASE = scope:epidemic_temp.epidemic_type.epidemic_trait } } + } save_scope_as = epidemic_scope } } - hidden_effect = { - create_character = { - template = peasant_character - dynasty = none - location = root.location - culture = root.location.culture - faith = root.location.faith - gender_female_chance = 50 - save_scope_as = sick_peasant - } - scope:sick_peasant = { - add_trait = scope:epidemic_scope.epidemic_type.epidemic_trait + create_character = { + template = peasant_character + dynasty = none + location = root.location + culture = root.location.culture + faith = root.location.faith + rite = root.location.rite + gender_female_chance = 50 + save_scope_as = sick_peasant + after_creation = { + add_character_flag = created } } + scope:sick_peasant = { + infect_with_epidemic_effect = yes + } } option = { # You are very clever @@ -5119,7 +5699,7 @@ epidemic_events.3010 = { modifier = humour_knowledge_modifier years = 10 } - stress_impact = { + stress_and_fulfillment_impact = { brave = medium_stress_impact_gain impatient = medium_stress_impact_gain } @@ -5143,7 +5723,7 @@ epidemic_events.3010 = { send_interface_toast = { title = epidemic_events.3010.b.sick left_icon = root - add_trait = scope:epidemic_scope.epidemic_type.epidemic_trait + infect_with_epidemic_effect = yes } modifier = { add = { @@ -5160,7 +5740,7 @@ epidemic_events.3010 = { } } - stress_impact = { + stress_and_fulfillment_impact = { craven = medium_stress_impact_gain cynical = medium_stress_impact_gain paranoid = major_stress_impact_gain @@ -5184,7 +5764,7 @@ epidemic_events.3010 = { current_travel_plan = { add_travel_plan_modifier = no_water_modifier } - stress_impact = { + stress_and_fulfillment_impact = { impatient = medium_stress_impact_gain diligent = medium_stress_impact_gain } @@ -5200,17 +5780,8 @@ epidemic_events.3010 = { } } } - after = { - hidden_effect = { - if = { - limit = { is_ai = yes } - scope:sick_peasant = { silent_disappearance_effect = yes } - } - else = { - scope:sick_peasant = { move_to_pool = yes } - } - } + scope:sick_peasant = { silent_disappearance_effect = yes } } } @@ -5326,7 +5897,7 @@ epidemic_events.5000 = { target = scope:church_person } - stress_impact = { + stress_and_fulfillment_impact = { diligent = miniscule_stress_impact_loss calm = miniscule_stress_impact_loss humble = miniscule_stress_impact_loss @@ -5406,7 +5977,7 @@ epidemic_events.5000 = { target = scope:church_person } - stress_impact = { + stress_and_fulfillment_impact = { diligent = miniscule_stress_impact_loss humble = miniscule_stress_impact_loss wrathful = miniscule_stress_impact_loss @@ -5479,7 +6050,7 @@ epidemic_events.5000 = { target = scope:church_person } - stress_impact = { + stress_and_fulfillment_impact = { diligent = miniscule_stress_impact_loss humble = miniscule_stress_impact_loss wrathful = miniscule_stress_impact_loss @@ -5518,7 +6089,7 @@ epidemic_events.5000 = { target = scope:church_person } - stress_impact = { + stress_and_fulfillment_impact = { diligent = miniscule_stress_impact_loss humble = miniscule_stress_impact_loss stubborn = miniscule_stress_impact_loss @@ -5545,7 +6116,7 @@ epidemic_events.5000 = { target = scope:church_person } - stress_impact = { + stress_and_fulfillment_impact = { diligent = minor_stress_impact_gain humble = minor_stress_impact_gain stubborn = minor_stress_impact_gain @@ -5680,7 +6251,7 @@ epidemic_events.5001 = { target = scope:courtier } - stress_impact = { + stress_and_fulfillment_impact = { generous = miniscule_stress_impact_loss diligent = miniscule_stress_impact_loss humble = miniscule_stress_impact_loss @@ -5706,7 +6277,7 @@ epidemic_events.5001 = { } } - stress_impact = { + stress_and_fulfillment_impact = { diligent = minor_stress_impact_gain generous = minor_stress_impact_gain calm = miniscule_stress_impact_loss @@ -5827,6 +6398,7 @@ epidemic_events.5003 = { template = generic_peasant_character culture = root.culture faith = root.faith + rite = root.rite location = root.location save_scope_as = peasant after_creation = { @@ -5843,6 +6415,7 @@ epidemic_events.5003 = { template = peasant_toddler_character culture = root.culture faith = root.faith + rite = root.rite location = root.location save_scope_as = child after_creation = { @@ -5913,7 +6486,7 @@ epidemic_events.5003 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss wrathful = miniscule_stress_impact_loss vengeful = miniscule_stress_impact_loss @@ -5949,7 +6522,7 @@ epidemic_events.5003 = { contract_disease_effect = { DISEASE = ill TREATMENT_EVENT = yes } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = miniscule_stress_impact_loss trusting = miniscule_stress_impact_loss paranoid = minor_stress_impact_gain @@ -5972,7 +6545,7 @@ epidemic_events.5003 = { option = { # Just... try to ignore them name = epidemic_events.5003.c - stress_impact = { + stress_and_fulfillment_impact = { shy = medium_stress_impact_loss compassionate = minor_stress_impact_gain trusting = minor_stress_impact_gain @@ -6165,7 +6738,7 @@ epidemic_events.5004 = { } } - stress_impact = { + stress_and_fulfillment_impact = { gregarious = medium_stress_impact_loss compassionate = medium_stress_impact_loss generous = miniscule_stress_impact_loss @@ -6218,7 +6791,7 @@ epidemic_events.5004 = { } } - stress_impact = { + stress_and_fulfillment_impact = { wrathful = minor_stress_impact_loss shy = minor_stress_impact_loss callous = minor_stress_impact_loss @@ -6246,7 +6819,7 @@ epidemic_events.5004 = { } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = miniscule_stress_impact_loss trusting = minor_stress_impact_gain forgiving = minor_stress_impact_gain @@ -6411,7 +6984,7 @@ epidemic_events.5005 = { target = scope:steward } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_loss trusting = medium_stress_impact_gain } @@ -6460,7 +7033,7 @@ epidemic_events.5005 = { target = scope:steward } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_loss trusting = medium_stress_impact_gain } @@ -6477,7 +7050,7 @@ epidemic_events.5005 = { option = { # We can't afford this. We'll just have to hope. name = epidemic_events.5005.c - stress_impact = { + stress_and_fulfillment_impact = { paranoid = medium_stress_impact_gain trusting = minor_stress_impact_loss compassionate = miniscule_stress_impact_loss @@ -6599,7 +7172,7 @@ epidemic_events.5006 = { years = 15 } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss calm = miniscule_stress_impact_loss fickle = miniscule_stress_impact_loss @@ -6636,7 +7209,7 @@ epidemic_events.5006 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss calm = miniscule_stress_impact_loss content = miniscule_stress_impact_loss @@ -6663,7 +7236,7 @@ epidemic_events.5006 = { target = scope:councillor } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss impatient = minor_stress_impact_gain callous = minor_stress_impact_gain @@ -6701,7 +7274,7 @@ epidemic_events.5006 = { add_prestige = miniscule_prestige_gain - stress_impact = { + stress_and_fulfillment_impact = { impatient = miniscule_stress_impact_loss callous = miniscule_stress_impact_loss stubborn = miniscule_stress_impact_loss @@ -6738,14 +7311,14 @@ epidemic_events.5007 = { trigger = { is_available = yes - trait_is_shunned_or_criminal_in_faith_trigger = { + trait_is_shunned_or_criminal_in_rite_trigger = { TRAIT = trait:witch - FAITH = root.faith + RITE = root.rite GENDER_CHARACTER = root } - faith = { + rite = { NOT = { - trait_is_virtue = witch + trait_is_virtue_rite = witch } } #There be a plague in your subrealm @@ -6779,14 +7352,14 @@ epidemic_events.5007 = { any_courtier_or_guest = { is_available_healthy_ai_adult = yes is_ai = yes - trait_is_shunned_or_criminal_in_faith_trigger = { + trait_is_shunned_or_criminal_in_rite_trigger = { TRAIT = trait:witch - FAITH = this.faith + RITE = this.rite GENDER_CHARACTER = this } - faith = { + rite = { NOT = { - trait_is_virtue = witch + trait_is_virtue_rite = witch } } this != scope:temp_herbalist @@ -6867,7 +7440,7 @@ epidemic_events.5007 = { add_legitimacy_effect = { LEGITIMACY = miniscule_legitimacy_gain } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss calm = miniscule_stress_impact_loss compassionate = miniscule_stress_impact_loss @@ -6905,7 +7478,7 @@ epidemic_events.5007 = { target = scope:accuser } - stress_impact = { + stress_and_fulfillment_impact = { wrathful = miniscule_stress_impact_loss callous = miniscule_stress_impact_loss sadistic = miniscule_stress_impact_loss @@ -6940,7 +7513,7 @@ epidemic_events.5007 = { set_relation_potential_friend = scope:herbalist } - stress_impact = { + stress_and_fulfillment_impact = { impatient = minor_stress_impact_gain callous = minor_stress_impact_gain sadistic = minor_stress_impact_gain @@ -7033,7 +7606,7 @@ epidemic_events.5008 = { years = 10 } - stress_impact = { + stress_and_fulfillment_impact = { base = major_stress_impact_loss craven = major_stress_impact_loss diligent = medium_stress_impact_gain @@ -7061,7 +7634,7 @@ epidemic_events.5008 = { years = 10 } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_gain lazy = minor_stress_impact_gain stubborn = minor_stress_impact_gain @@ -7087,7 +7660,7 @@ epidemic_events.5008 = { years = 10 } - stress_impact = { + stress_and_fulfillment_impact = { patient = miniscule_stress_impact_loss fickle = miniscule_stress_impact_loss compassionate = miniscule_stress_impact_loss @@ -7186,6 +7759,7 @@ epidemic_events.5009 = { location = root.location culture = root.capital_province.culture faith = root.capital_province.faith + rite = root.capital_province.rite save_scope_as = merchant after_creation = { add_character_flag = created @@ -7231,7 +7805,7 @@ epidemic_events.5009 = { years = 15 } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss greedy = major_stress_impact_gain trusting = miniscule_stress_impact_loss @@ -7262,7 +7836,7 @@ epidemic_events.5009 = { gold = tiny_gold_value } - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain generous = miniscule_stress_impact_loss profligate = miniscule_stress_impact_loss @@ -7289,7 +7863,7 @@ epidemic_events.5009 = { years = 10 } - stress_impact = { + stress_and_fulfillment_impact = { cynical = minor_stress_impact_gain paranoid = minor_stress_impact_gain generous = miniscule_stress_impact_loss @@ -7308,7 +7882,7 @@ epidemic_events.5009 = { option = { # Don't buy anything name = epidemic_events.5009.d - stress_impact = { + stress_and_fulfillment_impact = { generous = medium_stress_impact_gain profligate = medium_stress_impact_gain trusting = minor_stress_impact_gain @@ -7323,7 +7897,7 @@ epidemic_events.5009 = { } after = { scope:merchant = { - silent_disappearance_ai_effect = yes + silent_disappearance_ai_if_created_effect = yes } } } @@ -7470,7 +8044,7 @@ epidemic_events.5010 = { } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = major_stress_impact_gain generous = medium_stress_impact_loss profligate = medium_stress_impact_loss @@ -7487,7 +8061,7 @@ epidemic_events.5010 = { option = { # Be sad name = epidemic_events.5010.b - add_legitimacy = miniscule_legitimacy_loss + add_legitimacy_effect = { LEGITIMACY = miniscule_legitimacy_loss } random_list = { 1 = { send_interface_toast = { @@ -7524,7 +8098,7 @@ epidemic_events.5010 = { } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain generous = miniscule_stress_impact_loss profligate = miniscule_stress_impact_loss @@ -7566,6 +8140,7 @@ epidemic_events.5010 = { epidemic_events.5900 = { type = character_event window = fullscreen_event + queue_icon = "gfx/interface/icons/splash_icons/splash_epidemics.dds" title = epidemic_events.5900.t desc = { first_valid = { @@ -7620,6 +8195,7 @@ epidemic_events.5900 = { } add_stress = medium_stress_gain + pam_epidemic_spiritual_fulfillment_loss_effect = { AMOUNT = massive_spiritual_fulfillment_loss } } after = { @@ -7683,21 +8259,27 @@ epidemic_events.5901 = { } } - random = { - chance = 10 - send_interface_toast = { - title = epidemic_events.5901.a.tt.plague - left_icon = root - - add_trait = bubonic_plague + if = { + limit = { can_contract_disease_trigger = { DISEASE = bubonic_plague } } + random = { + chance = 10 + send_interface_toast = { + title = epidemic_events.5901.a.tt.plague + left_icon = root + show_as_tooltip = { add_trait = bubonic_plague } + hidden_effect = { contract_disease_notify_effect = { DISEASE = bubonic_plague } } + } } } scope:physician = { - random = { - chance = 10 - - add_trait = bubonic_plague + if = { + limit = { can_contract_disease_trigger = { DISEASE = bubonic_plague } } + random = { + chance = 10 + show_as_tooltip = { add_trait = bubonic_plague } + hidden_effect = { contract_disease_notify_effect = { DISEASE = bubonic_plague } } + } } add_opinion = { @@ -7707,7 +8289,7 @@ epidemic_events.5901 = { } } - stress_impact = { + stress_and_fulfillment_impact = { brave = minor_stress_impact_loss craven = medium_stress_impact_gain diligent = miniscule_stress_impact_loss @@ -7755,7 +8337,7 @@ epidemic_events.5901 = { } } - stress_impact = { + stress_and_fulfillment_impact = { impatient = miniscule_stress_impact_loss patient = minor_stress_impact_gain callous = miniscule_stress_impact_loss @@ -7779,7 +8361,7 @@ epidemic_events.5901 = { target = scope:physician } - stress_impact = { + stress_and_fulfillment_impact = { craven = minor_stress_impact_gain paranoid = minor_stress_impact_gain } @@ -7892,7 +8474,7 @@ epidemic_events.5902 = { } } - stress_impact = { + stress_and_fulfillment_impact = { brave = minor_stress_impact_loss craven = medium_stress_impact_gain callous = miniscule_stress_impact_loss @@ -7922,7 +8504,7 @@ epidemic_events.5902 = { } } - stress_impact = { + stress_and_fulfillment_impact = { just = miniscule_stress_impact_loss arbitrary = minor_stress_impact_gain compassionate = miniscule_stress_impact_loss @@ -7947,7 +8529,7 @@ epidemic_events.5902 = { } } - stress_impact = { + stress_and_fulfillment_impact = { craven = minor_stress_impact_gain paranoid = minor_stress_impact_loss } @@ -7970,7 +8552,7 @@ epidemic_events.5902 = { } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_loss callous = medium_stress_impact_gain sadistic = medium_stress_impact_gain @@ -8046,7 +8628,7 @@ epidemic_events.5903 = { target = scope:family } - stress_impact = { + stress_and_fulfillment_impact = { brave = medium_stress_impact_gain craven = minor_stress_impact_loss trusting = minor_stress_impact_gain @@ -8069,7 +8651,7 @@ epidemic_events.5903 = { years = 10 } - stress_impact = { + stress_and_fulfillment_impact = { stubborn = miniscule_stress_impact_loss fickle = minor_stress_impact_gain compassionate = miniscule_stress_impact_loss @@ -8152,6 +8734,7 @@ epidemic_events.5904 = { location = root.location culture = root.location.culture faith = root.location.faith + rite = root.location.rite gender_female_chance = 50 save_scope_as = doomsday_preacher } @@ -8170,7 +8753,7 @@ epidemic_events.5904 = { years = 10 } - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss diligent = miniscule_stress_impact_loss lazy = medium_stress_impact_gain @@ -8200,7 +8783,7 @@ epidemic_events.5904 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss just = medium_stress_impact_gain arbitrary = minor_stress_impact_loss @@ -8259,7 +8842,7 @@ epidemic_events.5904 = { title = epidemic_events.5904.c.tt.failure left_icon = root right_icon = scope:doomsday_preacher - add_legitimacy = miniscule_legitimacy_loss + add_legitimacy_effect = { LEGITIMACY = miniscule_legitimacy_loss } scope:doomsday_province = { add_province_modifier = { modifier = mass_panic @@ -8271,7 +8854,7 @@ epidemic_events.5904 = { } } - stress_impact = { + stress_and_fulfillment_impact = { just = miniscule_stress_impact_loss arbitrary = minor_stress_impact_gain zealous = miniscule_stress_impact_loss @@ -8289,7 +8872,7 @@ epidemic_events.5904 = { option = { # Bah, nobody will take them seriously name = epidemic_events.5904.d - add_legitimacy = miniscule_legitimacy_loss + add_legitimacy_effect = { LEGITIMACY = miniscule_legitimacy_loss } scope:doomsday_province = { random = { chance = 15 @@ -8313,7 +8896,7 @@ epidemic_events.5904 = { custom_tooltip = epidemic_events.5904.d.tt - stress_impact = { + stress_and_fulfillment_impact = { fickle = miniscule_stress_impact_loss stubborn = minor_stress_impact_gain lazy = miniscule_stress_impact_loss @@ -8384,6 +8967,7 @@ epidemic_events.5905 = { location = root.location culture = root.location.culture faith = root.location.faith + rite = root.location.rite gender_female_chance = 50 save_scope_as = peasant } @@ -8420,7 +9004,7 @@ epidemic_events.5905 = { custom_tooltip = epidemic_events.5905.a.tt - stress_impact = { + stress_and_fulfillment_impact = { trusting = minor_stress_impact_loss paranoid = medium_stress_impact_gain arrogant = miniscule_stress_impact_loss @@ -8490,7 +9074,7 @@ epidemic_events.5905 = { title = epidemic_events.5905.b.tt.failure left_icon = root right_icon = scope:peasant - add_legitimacy = miniscule_legitimacy_loss + add_legitimacy_effect = { LEGITIMACY = miniscule_legitimacy_loss } scope:province = { hidden_effect = { every_neighboring_province = { @@ -8515,7 +9099,7 @@ epidemic_events.5905 = { } } - stress_impact = { + stress_and_fulfillment_impact = { calm = miniscule_stress_impact_loss wrathful = minor_stress_impact_gain gregarious = miniscule_stress_impact_loss @@ -8537,7 +9121,7 @@ epidemic_events.5905 = { random = { chance = 50 - add_legitimacy = miniscule_legitimacy_loss + add_legitimacy_effect = { LEGITIMACY = miniscule_legitimacy_loss } scope:province = { add_province_modifier = { modifier = uncaring_ruler @@ -8546,7 +9130,7 @@ epidemic_events.5905 = { } } - stress_impact = { + stress_and_fulfillment_impact = { fickle = miniscule_stress_impact_loss stubborn = minor_stress_impact_gain lazy = miniscule_stress_impact_loss @@ -8629,6 +9213,7 @@ epidemic_events.5906 = { location = root.location culture = root.location.culture faith = root.location.faith + rite = root.location.rite gender_female_chance = 50 trait = flagellant save_scope_as = flagellant @@ -8679,7 +9264,7 @@ epidemic_events.5906 = { title = epidemic_events.5906.a.tt.failure left_icon = root right_icon = scope:flagellant - add_legitimacy = miniscule_legitimacy_loss + add_legitimacy_effect = { LEGITIMACY = miniscule_legitimacy_loss } scope:doomsday_province = { add_province_modifier = { modifier = unrestrained_flagellants @@ -8690,7 +9275,7 @@ epidemic_events.5906 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss ambitious = minor_stress_impact_loss content = medium_stress_impact_gain @@ -8718,7 +9303,7 @@ epidemic_events.5906 = { add_trait = flagellant - stress_impact = { + stress_and_fulfillment_impact = { base = major_stress_impact_loss craven = miniscule_stress_impact_loss brave = minor_stress_impact_gain @@ -8744,9 +9329,9 @@ epidemic_events.5906 = { IMPRISONER = root } - random = { - chance = 50 - scope:doomsday_province = { + scope:doomsday_province = { + random = { + chance = 50 add_province_modifier = { modifier = pacified_flagellants years = 10 @@ -8767,7 +9352,7 @@ epidemic_events.5906 = { custom_tooltip = epidemic_events.5906.d.tt - stress_impact = { + stress_and_fulfillment_impact = { calm = minor_stress_impact_gain wrathful = miniscule_stress_impact_loss diligent = miniscule_stress_impact_loss @@ -8789,7 +9374,7 @@ epidemic_events.5906 = { chance = 50 faith = { change_fervor = { - value = -5 + value = notable_fervor_loss desc = fervor_loss_flagellants } } @@ -8811,7 +9396,7 @@ epidemic_events.5906 = { } } - stress_impact = { + stress_and_fulfillment_impact = { fickle = minor_stress_impact_loss stubborn = minor_stress_impact_gain lazy = medium_stress_impact_loss @@ -8863,7 +9448,7 @@ epidemic_events.5907 = { years = 5 } - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss paranoid = major_stress_impact_loss #Throw 'em a bone! diligent = miniscule_stress_impact_loss @@ -8919,7 +9504,7 @@ epidemic_events.5907 = { } } - stress_impact = { + stress_and_fulfillment_impact = { brave = miniscule_stress_impact_loss craven = minor_stress_impact_gain trusting = miniscule_stress_impact_loss @@ -8989,6 +9574,7 @@ epidemic_events.5908 = { location = root.location culture = root.location.culture faith = root.location.faith + rite = root.location.rite gender_female_chance = 50 save_scope_as = gravedigger } @@ -9019,7 +9605,7 @@ epidemic_events.5908 = { target = scope:gravedigger } - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss paranoid = minor_stress_impact_gain compassionate = minor_stress_impact_gain @@ -9045,7 +9631,7 @@ epidemic_events.5908 = { } } - stress_impact = { + stress_and_fulfillment_impact = { generous = miniscule_stress_impact_loss greedy = medium_stress_impact_gain paranoid = miniscule_stress_impact_loss @@ -9070,7 +9656,7 @@ epidemic_events.5908 = { } } - stress_impact = { + stress_and_fulfillment_impact = { generous = medium_stress_impact_gain greedy = miniscule_stress_impact_loss paranoid = minor_stress_impact_gain @@ -9115,9 +9701,9 @@ epidemic_events.5998 = { #Black death story cycle pacing control } if = { limit = { - OR = { - has_character_flag = black_death_closer - has_character_flag = black_death_nearby + has_variable = { + name = black_death_closer + name = black_death_nearby } NOT = { has_character_flag = black_death_info_event @@ -9174,9 +9760,9 @@ epidemic_events.5999 = { add_character_flag = black_death_info_event if = { limit = { - NOR = { - has_character_flag = black_death_closer - has_character_flag = black_death_nearby + has_none_of_variables = { + name = black_death_closer + name = black_death_nearby } } add_character_flag = black_death_closer @@ -9192,7 +9778,7 @@ epidemic_events.5999 = { flavor = epidemic_events.5999.a.tt - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss } @@ -9218,7 +9804,7 @@ epidemic_events.5999 = { years = 15 } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain } @@ -9252,7 +9838,7 @@ epidemic_events.5999 = { text = epidemic_events.5999.c.notchristian } - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_gain craven = minor_stress_impact_gain paranoid = minor_stress_impact_gain @@ -9272,6 +9858,7 @@ epidemic_events.5999 = { epidemic_events.6000 = { type = character_event window = fullscreen_event + queue_icon = "gfx/interface/icons/splash_icons/splash_epidemics.dds" title = epidemic_events.5900.t desc = { first_valid = { @@ -9327,6 +9914,7 @@ epidemic_events.6000 = { } add_stress = medium_stress_gain + pam_epidemic_spiritual_fulfillment_loss_effect = { AMOUNT = massive_spiritual_fulfillment_loss } } after = { diff --git a/events/dlc/ce1/epidemic_events_2.txt b/events/dlc/ce1/epidemic_events_2.txt deleted file mode 100644 index 76c36da64..000000000 --- a/events/dlc/ce1/epidemic_events_2.txt +++ /dev/null @@ -1,951 +0,0 @@ -namespace = epidemic_events - -epidemic_events.2001 = { #defender trying to status quo the vassal war cuz he's sick - type = character_event - title = epidemic_events.2001.t - desc = epidemic_events.2001.desc - theme = plague - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:pleading_vassal - animation = beg - } - lower_right_portrait = { - character = scope:attacking_vassal - } - override_background = { - reference = army_camp - } - override_effect_2d = { - reference = fog - } - cooldown = { years = 30 } - - trigger = { - is_available_adult = yes - any_vassal = { - is_ai = yes - is_at_war = yes - any_character_war = { - primary_attacker = { - is_vassal_of = root - is_ai = yes - } - is_defender = prev - attacker_war_score > 30 - } - realm_has_any_epidemic = { SIZE = 3 INTENSITY = minor } - current_gold_value > minor_gold_value - } - } - - immediate = { - random_vassal = { - limit = { - is_ai = yes - is_at_war = yes - any_character_war = { - primary_attacker = { - is_vassal_of = root - is_ai = yes - } - is_defender = prev - attacker_war_score > 30 - } - realm_has_any_epidemic = { SIZE = 2 INTENSITY = minor } - current_gold_value > minor_gold_value - } - save_scope_as = pleading_vassal - get_random_realm_epidemic = { INTENSITY = minor } - random_character_war = { - limit = { - primary_attacker = { - is_vassal_of = root - is_ai = yes - } - is_defender = prev - attacker_war_score > 30 - } - save_scope_as = vassal_war - } - } - scope:vassal_war = { - primary_attacker = { - save_scope_as = attacking_vassal - } - } - set_variable = { - name = gold_transfer_value - value = scope:pleading_vassal.current_gold_value - } - scope:pleading_vassal = { - pay_short_term_gold = { - target = root - gold = current_gold_value - } - hidden_effect = { - if = { - limit = { - NOT = { has_trait = scope:epidemic_scope.epidemic_type.epidemic_trait } - } - random = { - chance = 25 - infect_with_epidemic = scope:epidemic_scope - } - } - } - } - } - - option = { #send a royal order for white peace - name = epidemic_events.2001.c - - duel = { - skill = diplomacy - target = scope:attacking_vassal - - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 1 - } - send_interface_toast = { - title = epidemic_events.2001.c.success - left_icon = scope:pleading_vassal - right_icon = scope:attacking_vassal - scope:vassal_war = { - end_war = white_peace - } - add_legitimacy_effect = { LEGITIMACY = minor_legitimacy_gain } - scope:pleading_vassal = { - add_opinion = { - modifier = thankful_opinion - opinion = 30 - target = root - } - } - } - } - - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -1 - } - send_interface_toast = { - title = epidemic_events.2001.c.failure - left_icon = scope:pleading_vassal - right_icon = scope:attacking_vassal - scope:pleading_vassal = { - add_opinion = { - modifier = disappointed_opinion - opinion = -25 - target = root - } - } - custom_tooltip = epidemic_events.2001.danger - } - hidden_effect = { - random = { - chance = 10 - trigger_event = { - months = 4 - id = epidemic_events.2002 - } - } - } - } - } - - stress_impact = { - greedy = medium_stress_gain - compassionate = medium_stress_loss - just = medium_stress_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = low_chance_impact_positive_ai_value - ai_rationality = low_chance_impact_positive_ai_value - } - } - } - - option = { #imprison the other guy from traveling to you during a pandemic and wash whatever he touched - name = epidemic_events.2001.b - flavor = epidemic_events.2001.b.desc - - imprison = { - target = scope:pleading_vassal - type = dungeon - } - - scope:pleading_vassal = { - add_opinion = { - modifier = angry_opinion - opinion = -40 - target = root - } - } - custom_tooltip = epidemic_events.2001.danger - hidden_effect = { - random = { - chance = 10 - trigger_event = { - months = 4 - id = epidemic_events.2002 - } - } - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = low_chance_impact_positive_ai_value - ai_rationality = low_chance_impact_positive_ai_value - } - } - - stress_impact = { - compassionate = medium_stress_gain - just = medium_stress_gain - paranoid = major_stress_loss - } - } - - option = { #pay money to end war - name = epidemic_events.2001.a - - scope:vassal_war = { - end_war = white_peace - } - pay_treasury_or_gold = { - target = scope:attacking_vassal - value = { - value = root.var:gold_transfer_value - multiply = 0.5 - } - } - - scope:pleading_vassal = { - add_opinion = { - modifier = thankful_opinion - opinion = 30 - target = root - } - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = low_chance_impact_negative_ai_value - ai_compassion = low_chance_impact_positive_ai_value - } - } - - stress_impact = { - greedy = medium_stress_gain - compassionate = medium_stress_loss - } - - - } - - after = { - hidden_effect = { - if = { - limit = { - scope:pleading_vassal = { - has_trait = scope:epidemic_scope.epidemic_type.epidemic_trait - is_imprisoned = no - } - } - random_list = { - 60 = { - random_courtier = { - limit = { - NOT = { has_trait = scope:epidemic_scope.epidemic_type.epidemic_trait } - } - save_scope_as = infected_courtier - } - send_interface_toast = { - title = epidemic_events.2001.epidemic_spread.t - left_icon = scope:pleading_vassal - right_icon = scope:infected_courtier - scope:infected_courtier = { - infect_with_epidemic = scope:epidemic_scope - } - } - } - 20 = { - if = { - limit = { - NOT = { has_trait = scope:epidemic_scope.epidemic_type.epidemic_trait } - } - } - random_courtier = { - limit = { - NOT = { has_trait = scope:epidemic_scope.epidemic_type.epidemic_trait } - } - save_scope_as = first_infected_courtier - } - random_courtier = { - limit = { - NOT = { - has_trait = scope:epidemic_scope.epidemic_type.epidemic_trait - scope:first_infected_courtier = this - } - } - save_scope_as = second_infected_courtier - } - send_interface_toast = { - title = epidemic_events.2001.epidemic_spread.t - left_icon = scope:second_infected_courtier - right_icon = scope:first_infected_courtier - scope:first_infected_courtier = { - infect_with_epidemic = scope:epidemic_scope - } - scope:second_infected_courtier = { - infect_with_epidemic = scope:epidemic_scope - } - } - } - } - } - } - } -} - -epidemic_events.2002 = { - type = character_event - title = epidemic_events.2002.t - desc = epidemic_events.2002.desc - theme = plague - - left_portrait = { - character = root - animation = stress - } - lower_left_portrait = scope:attacking_vassal - lower_right_portrait = scope:pleading_vassal - - trigger = { - exists = scope:epidemic_scope - exists = scope:vassal_war - is_ai = no - } - - override_background = { - reference = battlefield - } - override_effect_2d = { - reference = fog - } - - immediate = { - if = { - limit = { - scope:epidemic_scope = { - outbreak_intensity = minor - } - } - scope:epidemic_scope = { - set_epidemic_outbreak_intensity = major - } - } - else = { - scope:epidemic_scope = { - set_epidemic_outbreak_intensity = apocalyptic - } - } - add_legitimacy = miniscule_legitimacy_loss - } - - option = { - name = epidemic_events.2002.a - stress_impact = { - base = minor_stress_gain - } - } - -} - -epidemic_events.2003 = { #maa are dying from war - type = character_event - title = epidemic_events.2003.t - desc = epidemic_events.2003.desc - theme = plague - - left_portrait = { - character = root - animation = stress - } - - right_portrait = { - character = scope:marshal - animation = marshal_shield - } - - override_background = { - reference = army_camp - } - - override_effect_2d = { - reference = flies - } - - cooldown = { years = 8 } - - trigger = { - is_available_adult = yes - any_held_county = { - any_county_province = { - has_stationed_regiment = yes - any_province_epidemic = { - intensity >= minor - } - } - save_temporary_scope_as = first_county - } - any_held_county = { - this != scope:first_county - any_county_province = { - has_stationed_regiment = yes - any_province_epidemic = { - intensity >= minor - } - } - } - - exists = cp:councillor_marshal - } - immediate = { - random_held_county = { - limit = { - any_county_province = { - has_stationed_regiment = yes - any_province_epidemic = { - intensity >= minor - } - } - } - random_county_province = { - limit = { - has_stationed_regiment = yes - any_province_epidemic = { - intensity >= minor - } - } - save_scope_as = first_epidemic_province - random_province_epidemic = { - save_scope_as = epidemic_scope - } - } - save_scope_as = first_epidemic_county - } - random_held_county = { - limit = { - this != scope:first_epidemic_county - any_county_province = { - has_stationed_regiment = yes - any_province_epidemic = { - intensity >= minor - } - } - } - random_county_province = { - limit = { - has_stationed_regiment = yes - any_province_epidemic = { - intensity >= minor - } - } - save_scope_as = second_epidemic_province - } - } - cp:councillor_marshal = { save_scope_as = marshal } - } - - option = { #pay more to get more recruits - name = epidemic_events.2003.a - - every_maa_regiment = { - change_maa_troops_count = { - value = { - value = this.maa_current_troops_count - multiply = -0.25 - } - } - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = low_chance_impact_negative_ai_value - ai_rationality = low_chance_impact_positive_ai_value - } - } - - stress_impact = { - greedy = medium_stress_gain - ambitious = medium_stress_loss - } - } - - option = { #dont care, press peasants as maa - name = epidemic_events.2003.b - - scope:first_epidemic_province = { - add_province_modifier = { - modifier = epidemic_pressed_levies - years = 5 - } - } - - scope:second_epidemic_province = { - add_province_modifier = { - modifier = epidemic_pressed_levies - years = 5 - } - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = low_chance_impact_positive_ai_value - ai_compassion = low_chance_impact_negative_ai_value - ai_rationality = low_chance_impact_positive_ai_value - } - } - - stress_impact = { - just = medium_stress_gain - } - } - - option = { #close the barracks! - name = epidemic_events.2003.c - - scope:first_epidemic_province = { - add_province_modifier = { - modifier = epidemic_closed_barracks - years = 5 - } - } - - scope:second_epidemic_province = { - add_province_modifier = { - modifier = epidemic_closed_barracks - years = 5 - } - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = low_chance_impact_positive_ai_value - ai_rationality = low_chance_impact_positive_ai_value - } - } - - stress_impact = { - paranoid = medium_stress_loss - } - } -} - -epidemic_events.2004 = { #Medicinal Jar creation event - hidden = yes - - trigger = { - is_available_adult = yes - court_position:court_physician_court_position ?= { - is_available_ai_adult = yes - culture != root.culture - NOT = { - has_character_flag = physician_medicinal_jar - } - } - realm_has_any_nearby_epidemic = { SIZE = 4 INTENSITY = minor } - } - - cooldown = { years = 160 } - - immediate = { - court_position:court_physician_court_position = { - save_scope_as = physician - } - scope:physician = { - create_artifact = { - name = medicine_jar - description = medicine_jar_desc - type = miscellaneous - visuals = glazed_jar - modifier = artifact_epidemic_resistance_1_modifier - modifier = artifact_learning_lifestyle_xp_2_modifier - save_scope_as = medicine_jar - quality = 50 - } - add_character_flag = physician_medicinal_jar - } - - if = { - limit = { - scope:physician = { - can_equip_artifact = scope:medicine_jar - } - } - scope:medicine_jar = { - equip_artifact_to_owner = yes - } - get_random_nearby_realm_epidemic = { INTENSITY = minor } - trigger_event = { - days = { 3 7 } - id = epidemic_events.2005 - } - } - } - -} - -epidemic_events.2005 = { #Glass jar artifact - type = character_event - title = epidemic_events.2005.t - desc = epidemic_events.2005.desc - theme = plague - - left_portrait = { - character = root - animation = personality_rational - } - - right_portrait = { - character = scope:physician - animation = physician - } - - artifact = { - target = scope:medicine_jar - position = lower_center_portrait - } - - override_background = { - reference = physicians_study - } - - trigger = { - scope:physician = { is_alive = yes } - } - - option = { #politely ask the physisican to part with the jar - name = epidemic_events.2005.a - duel = { - skill = diplomacy - target = scope:physician - - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 1 - } - send_interface_toast = { - title = epidemic_events.2005.a.success - left_icon = scope:physician - scope:medicine_jar = { - set_owner = root - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -1 - } - send_interface_toast = { - title = epidemic_events.2005.a.failure - left_icon = scope:physician - scope:medicine_jar = { - add_artifact_modifier = artifact_physician_aptitude_1_modifier - } - } - } - } - - stress_impact = { - craven = minor_stress_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = low_chance_impact_negative_ai_value - } - } - - - } - - option = { #violently grab the jar from physician - name = epidemic_events.2005.b - - scope:physician = { - add_opinion = { - modifier = fp3_stole_from_me - opinion = -25 - target = root - } - progress_towards_rival_effect = { - REASON = rival_stole_artifact - CHARACTER = root - OPINION = 0 - } - } - - scope:medicine_jar = { - set_owner = root - } - - stress_impact = { - temperate = medium_stress_gain - just = medium_stress_gain - paranoid = medium_stress_loss - wrathful = medium_stress_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = low_chance_impact_positive_ai_value - ai_energy = low_chance_impact_positive_ai_value - ai_rationality = low_chance_impact_negative_ai_value - } - } - } - - option = { #let phycisian keep his precious jar - name = epidemic_events.2005.c - scope:medicine_jar = { - add_artifact_modifier = artifact_physician_aptitude_1_modifier - } - - stress_impact = { - temperate = medium_stress_loss - just = medium_stress_loss - trusting = medium_stress_loss - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_compassion = low_chance_impact_positive_ai_value - ai_rationality = low_chance_impact_positive_ai_value - ai_greed = low_chance_impact_negative_ai_value - } - } - } - -} - -epidemic_events.2006 = { #Dancing plague - type = character_event - title = epidemic_events.2006.t - desc = epidemic_events.2006.desc - theme = plague - override_background = courtyard - override_effect_2d = { reference = flies } - - left_portrait = { - character = root - animation = stress - } - - right_portrait = { - character = scope:dance_victim - animation = dancing_plague - } - - trigger = { - is_available_adult = yes - OR = { - is_ai = no - this = top_liege - } - capital_province = { - any_province_epidemic = { - #epidemic_type = epidemic_type:ergotism - intensity < apocalyptic - } - } - NOT = { - has_character_flag = had_event_dancing_plague - } - } - - weight_multiplier = { - base = 1 - modifier = { #Since a big outbreak occurred in Aachen 1374 - add = 9 - capital_province = { - county = title:c_aachen - } - current_date >= 1370.1.1 - current_date <= 1380.1.1 - } - modifier = { #Since an outbreak occurred in Erfurt 1247 - add = 9 - capital_province = { - duchy = title:d_thuringia - } - current_date >= 1240.1.1 - current_date <= 1250.1.1 - } - modifier = { #Since an outbreak occurred in Kolbigk 1021 - add = 9 - capital_province = { - geographical_region = ghw_region_saxony - } - current_date >= 1020.1.1 - current_date <= 1030.1.1 - - } - modifier = { #Since it historically occurred in Europe - add = 1 - capital_province = { - geographical_region = world_europe - } - } - - } - - immediate = { - capital_province = { - random_province_epidemic = { - limit = { - epidemic_type = epidemic_type:ergotism - outbreak_intensity < apocalyptic - } - save_scope_as = dancing_plague - } - } - create_character = { - template = servant_character - dynasty = none - location = root.capital_province - save_scope_as = dance_victim - } - hidden_effect = { - scope:dance_victim = { - add_trait = ergotism - } - } - - scope:dancing_plague = { - set_epidemic_outbreak_intensity = apocalyptic - } - - add_character_flag = had_event_dancing_plague - } - - option = { #let's join the paaartey - trigger = { - has_trait = eccentric - } - name = epidemic_events.2006.a - add_character_modifier = { - modifier = ce1_gone_dancing - years = 2 - } - - hidden_effect = { - random = { - chance = 10 - trigger_event = { id = health.1017 days = { 5 15 } } #You contract ergotism - } - } - - stress_impact = { - eccentric = medium_stress_loss - } - - ai_chance = { - base = 100 - } - - } - - option = { #slay the demon! - trigger = { - has_trait = zealous - } - name = epidemic_events.2006.d - add_piety = minor_piety_gain - - scope:dance_victim = { - death = { - death_reason = death_murder - killer = root - } - } - - stress_impact = { - zealous = medium_stress_loss - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_compassion = low_chance_impact_negative_ai_value - ai_zeal = low_chance_impact_positive_ai_value - } - } - } - - option = { #eh, every dance stops eventually, right? - name = epidemic_events.2006.b - - capital_county = { - add_county_modifier = { - modifier = dance_plague_modifier - years = 4 - } - } - - stress_impact = { - compassionate = minor_stress_gain - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_compassion = low_chance_impact_negative_ai_value - } - } - } - - option = { #tie them down! allieviate their pains somehow - name = epidemic_events.2006.c - - hidden_effect = { - random = { - chance = 10 - trigger_event = { id = health.1017 days = { 5 15 } } #You contract ergotism - } - } - - stress_impact = { - lustful = medium_stress_loss - compassionate = medium_stress_loss - } - - ai_chance = { - base = 10 - ai_value_modifier = { - ai_compassion = low_chance_impact_positive_ai_value - } - } - } -} diff --git a/events/dlc/ce1/legend_ending_events.txt b/events/dlc/ce1/legend_ending_events.txt deleted file mode 100644 index bfeb6d022..000000000 --- a/events/dlc/ce1/legend_ending_events.txt +++ /dev/null @@ -1,134 +0,0 @@ -namespace = story_event_legends - -################################### -# Legend Ending Events -# 0001 - 0100 -################################### - -#Heroic Ending Story Event -story_event_legends.0001 = { - type = character_event - window = fullscreen_event - title = story_event_legends.0001.t - desc = { - desc = story_event_legends.0001.desc.intro - first_valid = { - triggered_desc = { - trigger = { - scope:promoted_legend = { has_legend_chapter = famous_deed } - } - desc = story_event_legends.0001.desc.famous_deed - } - triggered_desc = { - trigger = { - scope:promoted_legend = { has_legend_chapter = battle } - } - desc = story_event_legends.0001.desc.battle - } - triggered_desc = { - trigger = { - scope:promoted_legend = { has_legend_chapter = hunt } - } - desc = story_event_legends.0001.desc.hunt - } - desc = story_event_legends.0001.desc.fallback - } - desc = story_event_legends.0001.desc.outro - } - theme = legend - override_background = { reference = ce1_fullscreen_heroic_legend } - override_sound = { reference = "event:/DLC/FP4/SFX/UI/Unique/sfx_ui_spread_legend" } - - immediate = { - play_music_cue = mx_cue_legend - set_variable = { - name = finished_legend_var - value = scope:promoted_legend - } - scope:promoted_legend = { set_variable = my_legend_var } - } - option = { - name = story_event_legends.0001.a - clicksound = "event:/DLC/FP2/SFX/UI/fp2_struggle_start_select" - } -} - -#Legitimizing Ending Story Event -story_event_legends.0002 = { - type = character_event - window = fullscreen_event - title = story_event_legends.0002.t - desc = { - desc = story_event_legends.0002.desc.intro - first_valid = { - triggered_desc = { - trigger = { - scope:promoted_legend = { has_legend_chapter = famous_deed } - } - desc = story_event_legends.0002.desc.famous_deed - } - triggered_desc = { - trigger = { - scope:promoted_legend = { has_legend_chapter = battle } - } - desc = story_event_legends.0002.desc.battle - } - desc = story_event_legends.0002.desc.fallback - } - desc = story_event_legends.0002.desc.outro - } - theme = legend - override_background = { reference = ce1_fullscreen_legitimizing_legend } - override_sound = { reference = "event:/DLC/FP4/SFX/UI/Unique/sfx_ui_spread_legend" } - - immediate = { - play_music_cue = mx_cue_legend - set_variable = { - name = finished_legend_var - value = scope:promoted_legend - } - scope:promoted_legend = { set_variable = my_legend_var } - } - - option = { - name = story_event_legends.0002.a - clicksound = "event:/DLC/FP2/SFX/UI/fp2_struggle_start_select" - } -} - -#Holy Ending Story Event -story_event_legends.0003 = { - type = character_event - window = fullscreen_event - title = story_event_legends.0003.t - desc = { - desc = story_event_legends.0003.desc.intro - first_valid = { - triggered_desc = { - trigger = { - scope:promoted_legend = { has_legend_chapter = famous_deed } - } - desc = story_event_legends.0001.desc.famous_deed - } - desc = story_event_legends.0001.desc.fallback - } - desc = story_event_legends.0003.desc.outro - } - theme = legend - override_background = { reference = ce1_fullscreen_holy_legend } - override_sound = { reference = "event:/DLC/FP4/SFX/UI/Unique/sfx_ui_spread_legend" } - - immediate = { - play_music_cue = mx_cue_legend - set_variable = { - name = finished_legend_var - value = scope:promoted_legend - } - scope:promoted_legend = { set_variable = my_legend_var } - } - - option = { - name = story_event_legends.0003.a - clicksound = "event:/DLC/FP2/SFX/UI/fp2_struggle_start_select" - } -} diff --git a/events/dlc/ce1/legend_events.txt b/events/dlc/ce1/legend_events.txt deleted file mode 100644 index f937478c0..000000000 --- a/events/dlc/ce1/legend_events.txt +++ /dev/null @@ -1,880 +0,0 @@ -namespace = legend_events - -############################ -## Legend Spawn Events -## 0001-1000 -## by James Beaumont -############################ - -# legend_events.0001 - Chronicler gives you a legend seed -# legend_events.0010 - Chronicler convinces someone to promote your legend -# legend_events.0020 - Hold Court presentation of a legend seed - -# Chronicler gives you a legend seed :D -legend_events.0001 = { - type = character_event - title = legend_events.0001.t - desc = { - desc = legend_events.0001.desc.intro - first_valid = { - triggered_desc = { - trigger = { - var:legend_seed_to_give = flag:slew_dragon - } - desc = legend_events.0001.desc.mid.slew_dragon - } - triggered_desc = { - trigger = { - var:legend_seed_to_give = flag:ancestral_saint - } - desc = legend_events.0001.desc.mid.ancestral_saint - } - triggered_desc = { - trigger = { - var:legend_seed_to_give = flag:old_godly_descent - } - desc = legend_events.0001.desc.mid.old_godly_descent - } - triggered_desc = { - trigger = { - var:legend_seed_to_give = flag:raised_by_animals - } - desc = legend_events.0001.desc.mid.raised_by_animals - } - triggered_desc = { - trigger = { - var:legend_seed_to_give = flag:auspicious_stars - } - desc = legend_events.0001.desc.mid.auspicious_stars - } - triggered_desc = { - trigger = { - var:legend_seed_to_give = flag:virgin_birth - } - desc = legend_events.0001.desc.mid.virgin_birth - } - triggered_desc = { - trigger = { - var:legend_seed_to_give = flag:spoke_to_angels - } - desc = legend_events.0001.desc.mid.spoke_to_angels - } - triggered_desc = { - trigger = { - var:legend_seed_to_give = flag:fought_the_devil - } - desc = legend_events.0001.desc.mid.fought_the_devil - } - triggered_desc = { - trigger = { - var:legend_seed_to_give = flag:exotic_backstory - } - desc = legend_events.0001.desc.mid.exotic_backstory - } - triggered_desc = { - trigger = { - var:legend_seed_to_give = flag:ancient_people - } - desc = legend_events.0001.desc.mid.ancient_people - } - } - desc = legend_events.0001.desc.outro - } - theme = legend - left_portrait = { - character = root - animation = personality_honorable - } - right_portrait = { - character = scope:chronicler - animation = chancellor - } - lower_center_portrait = { - trigger = { - exists = scope:legend_character - } - character = scope:legend_character - } - - # The Court Chronicler needs to be alive - trigger = { - scope:chronicler = { - is_alive = yes - } - } - - immediate = { - random_list = { # Determine the seed to hand out - 10 = { # Ancestor killed a dragon - trigger = { - any_ancestor = { - even_if_dead = yes - is_adult = yes - is_alive = no - } - NOT = { has_game_rule = historical_legends_only } - } - random_ancestor = { - even_if_dead = yes - limit = { - is_adult = yes - is_alive = no - } - weight = { - base = 1 - modifier = { - add = prowess - } - modifier = { - add = martial - } - } - save_scope_as = legend_character - } - set_variable = { - name = legend_seed_to_give - value = flag:slew_dragon - } - } - 10 = { # Ancestor was/should be a saint - trigger = { - any_ancestor = { - even_if_dead = yes - is_adult = yes - is_alive = no - } - NOT = { has_game_rule = historical_legends_only } - } - random_ancestor = { - even_if_dead = yes - limit = { - is_adult = yes - is_alive = no - } - weight = { - base = 1 - modifier = { - add = learning - } - modifier = { - factor = 3 - OR = { - num_virtuous_traits = { - target = root.faith - value >= 1 - } - has_trait = saint - } - } - modifier = { - factor = 0.1 - OR = { - num_sinful_traits = { - target = root.faith - value >= 1 - } - has_trait = excommunicated - } - } - } - save_scope_as = legend_character - } - set_variable = { - name = legend_seed_to_give - value = flag:ancestral_saint - } - } - 10 = { # I am descended from an old God - trigger = { - NOT = { religion = { is_in_family = rf_pagan } } - any_ancestor = { - even_if_dead = yes - is_alive = no - religion = { is_in_family = rf_pagan } - } - NOT = { has_game_rule = historical_legends_only } - } - random_ancestor = { - even_if_dead = yes - limit = { - religion = { is_in_family = rf_pagan } - is_alive = no - } - weight = { - base = 1 - modifier = { - add = learning - } - modifier = { - factor = 3 - OR = { - num_virtuous_traits = { - target = root.faith - value >= 1 - } - has_trait = saint - } - } - modifier = { - factor = 0.1 - OR = { - num_sinful_traits = { - target = root.faith - value >= 1 - } - has_trait = excommunicated - } - } - } - save_scope_as = legend_character - } - set_variable = { - name = legend_seed_to_give - value = flag:old_godly_descent - } - } - 10 = { # I was raised by dangerous animals - trigger = { - NOT = { has_game_rule = historical_legends_only } - } - select_local_animal_effect = { TYPE = dangerous } - set_variable = { - name = legend_seed_to_give - value = flag:raised_by_animals - } - } - 10 = { # Born under auspicious stars - trigger = { - NOT = { has_game_rule = historical_legends_only } - } - set_variable = { - name = legend_seed_to_give - value = flag:auspicious_stars - } - } - 10 = { # Virgin birth - trigger = { - has_any_bastard_trait_trigger = yes - NOT = { has_game_rule = historical_legends_only } - } - set_variable = { - name = legend_seed_to_give - value = flag:virgin_birth - } - } - 10 = { # Spoke to an angel - trigger = { - religion_has_angels_trigger = yes - NOT = { has_game_rule = historical_legends_only } - } - set_variable = { - name = legend_seed_to_give - value = flag:spoke_to_angels - } - } - 10 = { # Fought a demon - trigger = { - NOT = { has_game_rule = historical_legends_only } - } - set_variable = { - name = legend_seed_to_give - value = flag:fought_the_devil - } - } - 10 = { # Exotic backstory - get_appropriate_exotic_location = yes - set_variable = { - name = legend_seed_to_give - value = flag:exotic_backstory - } - } - 10 = { # Ancient people - trigger = { - # The ancient cultures we have for now aren't appropriate for these regions - root.culture = { - NOR = { - culture_overlaps_geographical_region = world_burma - culture_overlaps_geographical_region = custom_arakan_mountains - culture_overlaps_geographical_region = world_tibet - } - } - } - get_appropriate_ancient_people = yes - set_variable = { - name = legend_seed_to_give - value = flag:ancient_people - } - } - } - } - - option = { # Wowie zowie, really? - name = legend_events.0001.a - if = { - limit = { - exists = var:legend_seed_to_give - var:legend_seed_to_give = flag:slew_dragon - } - create_legend_seed = { - type = heroic - quality = famed - chronicle = beast_slayer - properties = { - beast = flag:dragon - location = root.location - } - } - } - else_if = { - limit = { - exists = var:legend_seed_to_give - var:legend_seed_to_give = flag:ancestral_saint - } - create_legend_seed = { - type = holy - quality = famed - chronicle = saintly_deed - properties = { - ancestor = scope:legend_character - religion = root.religion - } - } - } - else_if = { - limit = { - exists = var:legend_seed_to_give - var:legend_seed_to_give = flag:old_godly_descent - } - generate_religion_descent_effect = { - RELIGION = scope:legend_character.religion - GOD = high_god - } - } - else_if = { - limit = { - exists = var:legend_seed_to_give - var:legend_seed_to_give = flag:raised_by_animals - } - create_legend_seed = { - type = heroic - quality = famed - chronicle = raised_by_animals - properties = { - beast = var:animal_type - } - } - } - else_if = { - limit = { - exists = var:legend_seed_to_give - var:legend_seed_to_give = flag:auspicious_stars - } - create_legend_seed = { - type = holy - quality = famed - chronicle = sacred_birth - properties = { - reason = flag:auspicious - } - } - } - else_if = { - limit = { - exists = var:legend_seed_to_give - var:legend_seed_to_give = flag:virgin_birth - } - create_legend_seed = { - type = holy - quality = famed - chronicle = sacred_birth - properties = { - reason = flag:virgin - } - } - } - else_if = { - limit = { - exists = var:legend_seed_to_give - var:legend_seed_to_give = flag:spoke_to_angels - } - create_legend_seed = { - type = holy - quality = famed - chronicle = divine_intervention - properties = { - god = flag:the_angels - } - } - } - else_if = { - limit = { - exists = var:legend_seed_to_give - var:legend_seed_to_give = flag:fought_the_devil - } - create_legend_seed = { - type = holy - quality = famed - chronicle = fought_devil - properties = { - faith = root.faith - } - } - } - else_if = { - limit = { - exists = var:legend_seed_to_give - var:legend_seed_to_give = flag:exotic_backstory - } - create_legend_seed = { - type = heroic - quality = famed - chronicle = exotic_backstory - properties = { - location = scope:exotic_location - } - } - } - else_if = { - limit = { - exists = var:legend_seed_to_give - var:legend_seed_to_give = flag:ancient_people - } - create_legend_seed = { - type = legitimizing - quality = famed - chronicle = ancient_people - properties = { - culture = scope:ancient_culture - title = root.primary_title - original_region = var:original_region - } - } - } - ai_chance = { - base = 100 - } - } - - option = { # I don't want this legend - name = legend_events.0001.b - ai_chance = { - base = 0 - } - } -} - -# Chronicler convinces someone to promote your legend -legend_events.0010 = { - type = character_event - title = legend_events.0010.t - desc = legend_events.0010.desc - theme = legend - left_portrait = { - character = root - animation = personality_honorable - } - right_portrait = { - character = scope:chronicler - animation = chancellor - } - lower_center_portrait = scope:potential_promoter - - trigger = { - OR = { - scope:chronicler ?= { - is_alive = yes - has_court_position = chronicler_court_position - employer = root - } - employs_court_position = chronicler_court_position - } - OR = { - # Vassals - any_vassal_or_below = { - # No barons - highest_held_title_tier >= tier_county - # Not promoting their own legend - promoted_legend.legend_owner != root - promoted_legend != scope:liege.promoted_legend - is_ai = yes - } - # Neighbourinos - any_neighboring_and_across_water_top_liege_realm_owner = { - # Not promoting their own legend - promoted_legend.legend_owner != root - promoted_legend != scope:liege.promoted_legend - is_ai = yes - } - } - } - - immediate = { - if = { - limit = { - NOT = { - scope:chronicler ?= { - is_alive = yes - has_court_position = chronicler_court_position - employer = root - } - } - } - court_position:chronicler_court_position ?= { save_scope_as = chronicler } - } - random_list = { - # Vassals - 75 = { - trigger = { - any_vassal_or_below = { - highest_held_title_tier >= tier_county - promoted_legend.legend_owner != root - promoted_legend != scope:liege.promoted_legend - is_ai = yes - } - } - random_vassal_or_below = { - limit = { - highest_held_title_tier >= tier_county - promoted_legend.legend_owner != root - promoted_legend != scope:liege.promoted_legend - is_ai = yes - } - save_scope_as = potential_promoter - } - } - # Neighbourinos - 25 = { - trigger = { - any_neighboring_and_across_water_top_liege_realm_owner = { - promoted_legend.legend_owner != root - promoted_legend != scope:liege.promoted_legend - is_ai = yes - } - } - random_neighboring_and_across_water_top_liege_realm_owner = { - limit = { - promoted_legend.legend_owner != root - promoted_legend != scope:liege.promoted_legend - is_ai = yes - } - save_scope_as = potential_promoter - } - } - } - - } - - option = { # Diplo duel option - name = legend_events.0010.a - duel = { - skill = diplomacy - target = scope:potential_promoter - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - modifier = { # Reluctant to drop their existing legend - scope:potential_promoter = { exists = promoted_legend } - factor = 0.5 - } - min = 10 - send_interface_toast = { - title = legend_events.0010.a.success - right_icon = scope:potential_promoter - scope:potential_promoter = { - set_promoted_legend = root.promoted_legend - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - modifier = { # Reluctant to drop their existing legend - scope:potential_promoter = { exists = promoted_legend } - factor = 2 - } - min = 10 - send_interface_toast = { - title = legend_events.0010.a.failure - right_icon = scope:potential_promoter - add_prestige = minor_prestige_loss - } - } - } - ai_chance = { - base = 100 - modifier = { # I'd have better odds with option B - intrigue > diplomacy - factor = 0 - } - } - } - - option = { # Lie - name = legend_events.0010.b - duel = { - skill = intrigue - target = scope:potential_promoter - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - modifier = { # Reluctant to drop their existing legend - scope:potential_promoter = { exists = promoted_legend } - factor = 0.5 - } - min = 10 - send_interface_toast = { - title = legend_events.0010.a.success - right_icon = scope:potential_promoter - scope:potential_promoter = { - set_promoted_legend = root.promoted_legend - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - modifier = { # Reluctant to drop their existing legend - scope:potential_promoter = { exists = promoted_legend } - factor = 2 - } - min = 10 - send_interface_toast = { - title = legend_events.0010.a.failure - right_icon = scope:potential_promoter - add_prestige = minor_prestige_loss - } - } - } - stress_impact = { - honest = minor_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { # I'd have better odds with option A - intrigue < diplomacy - factor = 0 - } - } - } - - option = { # Nah not interested, go away. - name = legend_events.0010.c - ai_chance = { - base = 0 - } - } -} - - -legend_events.0020 = { #hold court presentation of a potential seed - type = court_event - title = legend_events.0020.t - desc = legend_events.0020.desc - - theme = legend - court_scene = { - button_position_character = scope:seed_presenter - court_event_force_open = yes - show_timeout_info = no - should_pause_time = yes - roles = { - scope:seed_presenter = { - group = petitioners_group - animation = personality_rational - } - } - } - - widget = { - gui = "event_window_widget_event_chain_progress" - container = "custom_widgets_container" - controller = event_chain_progress - } - - weight_multiplier = { - base = 1 - modifier = { - factor = 2 - court_grandeur_current_level > court_grandeur_minimum_expected_level - } - # Court weightings. - ep1_weight_up_for_court_type_modifier = { COURT_TYPE = court_diplomatic } - } - - trigger = { - any_pool_guest = { - count >= 1 - is_available_adult = yes - has_court_event_flag = no - culture != root.culture - opinion = { - target = root - value >= high_positive_opinion - } - } - NOR = { - has_personal_legend_seed = heroic - has_personal_legend_seed = holy - has_personal_legend_seed = legitimizing - } - } - - immediate = { - random_pool_guest = { - limit = { - is_available_adult = yes - has_court_event_flag = no - culture != root.culture - opinion = { - target = root - value >= high_positive_opinion - } - } - save_scope_as = seed_presenter - court_event_character_flag_effect = yes - } - - hold_court_queue_next_event_effect = yes - } - - option = { #yes, it is my about my dynasty and I shall prove it! - name = legend_events.0020.a - legend_seed_great_deed_dynasty_effect = yes - culture = { - change_cultural_acceptance = { - target = scope:seed_presenter.culture - value = miniscule_positive_culture_acceptance - desc = cultural_acceptance_gain_hold_court_event_outcome - } - } - stress_impact = { - ambitious = minor_stress_loss - } - ai_chance = { #we want AI to have seeds - base = 100 - } - } - - option = { #yes, it is about me ruling the title and I shall prove it! - name = legend_events.0020.b - legend_seed_great_deed_title_effect = { - TITLE = root.primary_title - } - culture = { - change_cultural_acceptance = { - target = scope:seed_presenter.culture - value = miniscule_positive_culture_acceptance - desc = cultural_acceptance_gain_hold_court_event_outcome - } - } - stress_impact = { - ambitious = minor_stress_loss - } - ai_chance = { #we want AI to have seeds - base = 100 - } - } - - option = { #no, I don't need to humor your culture fairy tales - name = legend_events.0020.c - add_prestige = medium_prestige_gain - dynasty = { - add_dynasty_prestige = minor_dynasty_prestige_gain - } - culture = { - change_cultural_acceptance = { - target = scope:seed_presenter.culture - value = low_negative_culture_acceptance - desc = cultural_acceptance_gain_hold_court_event_outcome - } - } - - stress_impact = { - ambitious = minor_stress_gain - compassionate = minor_stress_gain - callous = medium_stress_loss - sadistic = medium_stress_loss - } - ai_chance = { #we want AI to have seeds - base = 0 - } - } - - after = { - scope:seed_presenter = { - clear_court_event_participation = yes - } - # Finish up the chain if relevant. - hold_court_queue_post_event_effect = yes - } -} - -legend_events.1000 = { - type = letter_event - opening = { desc = legend_events.1000.t } - desc = legend_events.1000.desc - sender = scope:legend_owner - - immediate = { - scope:legend = { - legend_owner = { save_scope_as = legend_owner } - } - } - - option = { #I did a silly - name = legend_events.1000.a - pay_short_term_gold = { - target = scope:legend_owner - gold = medium_gold_value - } - stress_impact = { - deceitful = major_stress_impact_loss - honest = medium_stress_impact_gain - just = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - } - } - - option = { #If you have really high Intrigue you get away with paying just half - name = legend_events.1000.b - trigger = { - intrigue >= very_high_skill_rating - } - #trait = deceitful - pay_short_term_gold = { - target = scope:legend_owner - gold = { - value = medium_gold_value - multiply = 0.5 - } - } - stress_impact = { - deceitful = massive_stress_impact_loss - honest = major_stress_impact_gain - just = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - } - } - - after = { - remove_variable = accepted_promote_legend_var - } -} diff --git a/events/dlc/ce1/legend_spread_events_8.txt b/events/dlc/ce1/legend_spread_events_8.txt index acecd0679..82a37599f 100644 --- a/events/dlc/ce1/legend_spread_events_8.txt +++ b/events/dlc/ce1/legend_spread_events_8.txt @@ -70,7 +70,7 @@ legend_spread_events.8000 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { lazy = medium_stress_impact_gain # You want me to go all the way to X place? I'm staying here. } ai_chance = { @@ -84,7 +84,7 @@ legend_spread_events.8000 = { option = { # Sod that name = legend_spread_events.8000.b - stress_impact = { + stress_and_fulfillment_impact = { content = medium_stress_impact_loss ambitious = major_stress_impact_gain } @@ -138,7 +138,7 @@ legend_spread_events.8002 = { name = legend_spread_events.8002.a show_as_unavailable = { always = yes } # Make scholars feel cool trigger = { - NOT = { has_trait = scholar } + NOT = { has_trait = erudite } } duel = { skills = { stewardship learning } @@ -174,7 +174,7 @@ legend_spread_events.8002 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { patient = minor_stress_impact_loss impatient = minor_stress_impact_gain lazy = minor_stress_impact_gain @@ -193,7 +193,7 @@ legend_spread_events.8002 = { name = legend_spread_events.8002.b show_as_unavailable = { always = yes } # Make scholars feel cool trigger = { - NOT = { has_trait = scholar } + NOT = { has_trait = erudite } } duel = { skill = prowess @@ -249,7 +249,7 @@ legend_spread_events.8002 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { impatient = minor_stress_impact_loss patient = minor_stress_impact_gain diligent = minor_stress_impact_gain @@ -272,7 +272,7 @@ legend_spread_events.8002 = { years = 10 } current_travel_plan = { resume_travel_plan = yes } - stress_impact = { + stress_and_fulfillment_impact = { content = medium_stress_impact_loss patient = minor_stress_impact_loss impatient = minor_stress_impact_gain @@ -289,9 +289,9 @@ legend_spread_events.8002 = { } } - option = { # I'm a scholar so I'm able to just find it instantly + option = { # I'm a erudite so I'm able to just find it instantly name = legend_spread_events.8002.d - trigger = { has_trait = scholar } + trigger = { has_trait = erudite } custom_tooltip = { text = you_find_the_tome_tt trigger_event = { @@ -299,8 +299,8 @@ legend_spread_events.8002 = { days = { 2 14 } } } - stress_impact = { - scholar = medium_stress_impact_loss + stress_and_fulfillment_impact = { + erudite = medium_stress_impact_loss patient = minor_stress_impact_loss } ai_chance = { @@ -579,7 +579,7 @@ legend_spread_events.8010 = { name = legend_spread_events.8010.b add_prestige = medium_prestige_loss current_travel_plan = { resume_travel_plan = yes } - stress_impact = { + stress_and_fulfillment_impact = { brave = medium_stress_impact_gain arrogant = minor_stress_impact_gain } @@ -639,7 +639,7 @@ legend_spread_events.8012 = { promoted_legend = { change_legend_quality_effect = { VALUE = medium_legend_quality_decrease } } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = minor_stress_impact_gain arrogant = minor_stress_impact_gain vengeful = minor_stress_impact_gain @@ -654,7 +654,7 @@ legend_spread_events.8012 = { trigger = { has_trait = schemer } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = minor_stress_impact_gain arrogant = minor_stress_impact_gain vengeful = minor_stress_impact_gain @@ -824,7 +824,7 @@ legend_spread_events.8020 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { humble = medium_stress_impact_gain honest = minor_stress_impact_gain cynical = minor_stress_impact_gain @@ -844,7 +844,7 @@ legend_spread_events.8020 = { add_piety = minor_piety_loss add_prestige = minor_prestige_gain scope:challenger = { select_and_move_to_pool_effect = yes } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss zealous = medium_stress_impact_gain diligent = minor_stress_impact_gain @@ -955,7 +955,7 @@ legend_spread_events.8030 = { modifier = kids_legend_modifier years = 10 } - stress_impact = { + stress_and_fulfillment_impact = { humble = minor_stress_impact_gain gregarious = minor_stress_impact_gain } @@ -999,7 +999,7 @@ legend_spread_events.8030 = { add_stewardship_skill = 1 } } - stress_impact = { + stress_and_fulfillment_impact = { shy = minor_stress_impact_gain arrogant = minor_stress_impact_loss } @@ -1050,7 +1050,7 @@ legend_spread_events.8040 = { any_trait_in_category = { category = personality NOT = { prev = { has_trait = prev } } - root.faith = { trait_is_sin = prev } + root.rite = { trait_is_sin_rite = prev } } } } @@ -1095,7 +1095,7 @@ legend_spread_events.8040 = { any_trait_in_category = { # Using trait in category so it doesn't like make them Pregnant or something, as hilarious as that would be category = personality prev = { has_trait = prev } - root.faith = { trait_is_virtue = prev } + root.rite = { trait_is_virtue_rite = prev } } } } @@ -1104,7 +1104,7 @@ legend_spread_events.8040 = { category = personality limit = { prev = { has_trait = prev } - root.faith = { trait_is_virtue = prev } + root.rite = { trait_is_virtue_rite = prev } } save_scope_as = virtue_trait } @@ -1116,7 +1116,7 @@ legend_spread_events.8040 = { category = personality limit = { prev = { has_trait = prev } - NOT = { root.faith = { trait_is_sin = prev } } + NOT = { root.rite = { trait_is_sin_rite = prev } } } save_scope_as = virtue_trait } @@ -1127,7 +1127,7 @@ legend_spread_events.8040 = { category = personality limit = { NOT = { prev = { has_trait = prev } } - root.faith = { trait_is_sin = prev } + root.rite = { trait_is_sin_rite = prev } } save_scope_as = sin_trait } @@ -1182,7 +1182,7 @@ legend_spread_events.8040 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { humble = medium_stress_impact_gain honest = minor_stress_impact_gain cynical = minor_stress_impact_gain @@ -1202,7 +1202,7 @@ legend_spread_events.8040 = { add_prestige = minor_prestige_gain add_piety = medium_piety_loss scope:challenger = { select_and_move_to_pool_effect = yes } - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss wrathful = medium_stress_impact_loss calm = minor_stress_impact_gain @@ -1251,13 +1251,13 @@ legend_spread_events.8050 = { any_trait_in_category = { category = personality NOT = { prev = { has_trait = prev } } - root.faith = { trait_is_virtue = prev } + root.rite = { trait_is_virtue_rite = prev } } # There is a trait they have which is not virtuous any_trait_in_category = { category = personality prev = { has_trait = prev } - NOT = { root.faith = { trait_is_virtue = prev } } + NOT = { root.rite = { trait_is_virtue_rite = prev } } } } } @@ -1276,7 +1276,7 @@ legend_spread_events.8050 = { category = personality limit = { NOT = { prev = { has_trait = prev } } - root.faith = { trait_is_virtue = prev } + root.rite = { trait_is_virtue_rite = prev } } save_scope_as = virtue_trait } @@ -1284,7 +1284,7 @@ legend_spread_events.8050 = { category = personality limit = { prev = { has_trait = prev } - NOT = { root.faith = { trait_is_virtue = prev } } + NOT = { root.rite = { trait_is_virtue_rite = prev } } } save_scope_as = sin_trait } @@ -1341,7 +1341,7 @@ legend_spread_events.8050 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { humble = minor_stress_impact_gain honest = minor_stress_impact_gain } @@ -1361,7 +1361,7 @@ legend_spread_events.8050 = { VALUE = minor_legend_quality_increase } } - stress_impact = { + stress_and_fulfillment_impact = { humble = minor_stress_impact_loss arrogant = medium_stress_impact_gain deceitful = medium_stress_impact_gain @@ -1401,7 +1401,7 @@ legend_spread_events.8050 = { } } - stress_impact = { + stress_and_fulfillment_impact = { humble = medium_stress_impact_gain arrogant = minor_stress_impact_loss } @@ -1507,7 +1507,7 @@ legend_spread_events.8060 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { humble = minor_stress_impact_gain honest = minor_stress_impact_gain } @@ -1527,7 +1527,7 @@ legend_spread_events.8060 = { VALUE = minor_legend_quality_increase } } - stress_impact = { + stress_and_fulfillment_impact = { deceitful = medium_stress_impact_gain diligent = minor_stress_impact_gain } @@ -1584,7 +1584,7 @@ legend_spread_events.8070 = { } } faith = { - random_holy_site = { + random_holy_site_barony = { title_province = { save_scope_as = holy_site } } } @@ -1638,7 +1638,7 @@ legend_spread_events.8070 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { humble = minor_stress_impact_gain honest = minor_stress_impact_gain } @@ -1684,7 +1684,7 @@ legend_spread_events.8070 = { } } - stress_impact = { + stress_and_fulfillment_impact = { deceitful = medium_stress_impact_gain diligent = minor_stress_impact_gain zealous = minor_stress_impact_gain @@ -1835,7 +1835,7 @@ legend_spread_events.8080 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { humble = minor_stress_impact_gain honest = minor_stress_impact_gain } @@ -1871,7 +1871,7 @@ legend_spread_events.8080 = { } } - stress_impact = { + stress_and_fulfillment_impact = { deceitful = medium_stress_impact_gain diligent = minor_stress_impact_gain } @@ -2051,7 +2051,7 @@ legend_spread_events.8090 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { humble = minor_stress_impact_gain honest = minor_stress_impact_gain } @@ -2076,7 +2076,7 @@ legend_spread_events.8090 = { localization_key = legend_chapter_forged_own_path } } - stress_impact = { + stress_and_fulfillment_impact = { deceitful = medium_stress_impact_gain diligent = minor_stress_impact_gain } @@ -2125,9 +2125,7 @@ legend_spread_events.8100 = { legend_type = legend_type:holy } is_available_adult = yes - faith = { - has_doctrine_parameter = witchcraft_accepted # Covers both accepted and virtuous - } + rite = { rite_has_parameter = witchcraft_accepted } # You have an artifact that is not already home to an evil spirit any_character_artifact = { NOT = { has_variable = imbued_with_evil_spirit } @@ -2304,7 +2302,7 @@ legend_spread_events.8100 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { craven = medium_stress_impact_gain callous = minor_stress_impact_gain witch = minor_stress_impact_loss # I live for this shit @@ -2320,7 +2318,7 @@ legend_spread_events.8100 = { option = { # Zoinks! I'm outta here scoob name = legend_spread_events.8100.b - stress_impact = { + stress_and_fulfillment_impact = { arrogant = medium_stress_impact_gain witch = medium_stress_impact_gain brave = medium_stress_impact_gain @@ -2516,7 +2514,7 @@ legend_spread_events.8110 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { honest = medium_stress_impact_gain callous = minor_stress_impact_loss sadistic = minor_stress_impact_loss @@ -2535,7 +2533,7 @@ legend_spread_events.8110 = { option = { # Nah, this did not happen name = legend_spread_events.8110.b - stress_impact = { + stress_and_fulfillment_impact = { arrogant = medium_stress_impact_gain deceitful = medium_stress_impact_gain zealous = minor_stress_impact_gain @@ -2671,7 +2669,7 @@ legend_spread_events.8120 = { on_travel_planner_cancel_event = legend_spread_events.8121 } } - stress_impact = { + stress_and_fulfillment_impact = { lazy = medium_stress_impact_gain } ai_chance = { @@ -2685,7 +2683,7 @@ legend_spread_events.8120 = { option = { # Sod that name = legend_spread_events.8120.b - stress_impact = { + stress_and_fulfillment_impact = { content = medium_stress_impact_loss ambitious = major_stress_impact_gain } @@ -2831,6 +2829,11 @@ legend_spread_events.8122 = { } immediate = { + if = { + limit = { scope:distant_title.holder != scope:distant_liege } + scope:distant_title.holder = { save_scope_as = distant_liege } + } + scope:distant_liege = { random_courtier_or_guest = { limit = { @@ -2857,6 +2860,7 @@ legend_spread_events.8122 = { name = legend_spread_events.8122.a trigger = { exists = scope:distant_liege + exists = scope:distant_knight } custom_tooltip = legend_quality_if_wins_tt configure_start_single_combat_effect = { @@ -2869,7 +2873,7 @@ legend_spread_events.8122 = { OUTPUT_EVENT = legend_spread_events.8123 INVALIDATION_EVENT = fp1_tbc.0021 } - stress_impact = { + stress_and_fulfillment_impact = { craven = medium_stress_impact_gain } ai_chance = { @@ -2924,7 +2928,7 @@ legend_spread_events.8122 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { shy = medium_stress_impact_gain } ai_chance = { @@ -3232,7 +3236,7 @@ legend_spread_events.8130 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { humble = minor_stress_impact_gain honest = minor_stress_impact_gain } @@ -3251,7 +3255,7 @@ legend_spread_events.8130 = { add_piety = minor_piety_gain - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss content = medium_stress_impact_loss ambitious = major_stress_impact_gain @@ -3535,7 +3539,7 @@ legend_spread_events.8150 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { humble = minor_stress_impact_gain honest = minor_stress_impact_gain } @@ -3552,7 +3556,7 @@ legend_spread_events.8150 = { option = { # I was attacked when evangelising the faith name = legend_spread_events.8150.b trigger = { # Must believe in evangelism to an extent - faith = { NOT = { has_doctrine = doctrine_pluralism_pluralistic } } + rite = { NOT = { rite_has_doctrine = doctrine_pluralism_pluralistic } } } duel = { skill = learning @@ -3604,7 +3608,7 @@ legend_spread_events.8150 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { humble = minor_stress_impact_gain honest = minor_stress_impact_gain cynical = minor_stress_impact_gain @@ -3632,7 +3636,7 @@ legend_spread_events.8150 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss shy = minor_stress_impact_loss reclusive = minor_stress_impact_loss @@ -3681,7 +3685,7 @@ legend_spread_events.8160 = { has_character_flag = legend_spread_events_8160 } promoted_legend = { - has_legend_chapter = additional_deed + has_legend_chapter = extra_deed } } @@ -3703,7 +3707,7 @@ legend_spread_events.8160 = { value = scope:soulmate } set_legend_chapter = { - name = additional_deed + name = extra_deed localization_key = legend_chapter_love } } @@ -3712,7 +3716,7 @@ legend_spread_events.8160 = { target = scope:soulmate opinion = 15 } - stress_impact = { + stress_and_fulfillment_impact = { # My legend is about meeeee arrogant = minor_stress_impact_gain callous = minor_stress_impact_gain @@ -3766,7 +3770,7 @@ legend_spread_events.8170 = { } triggered_desc = { trigger = { - faith = { has_doctrine_parameter = reincarnation_events_active } + rite = { rite_has_parameter = reincarnation_events_active } } desc = legend_spread_events.8170.desc.mid.reincarnation } @@ -3828,7 +3832,7 @@ legend_spread_events.8170 = { } modifier = { # Faith believes dying is good actually factor = 0.1 - faith = { has_doctrine_parameter = consolamentum_active } + rite = { rite_has_parameter = consolamentum_active } } } @@ -3854,7 +3858,7 @@ legend_spread_events.8170 = { hidden_effect = { add_character_flag = quest_for_immortality } - stress_impact = { + stress_and_fulfillment_impact = { content = minor_stress_impact_gain humble = minor_stress_impact_gain brave = minor_stress_impact_gain @@ -3882,7 +3886,7 @@ legend_spread_events.8170 = { modifier = ce1_level_headed years = 5 } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = minor_stress_impact_gain arrogant = minor_stress_impact_gain craven = minor_stress_impact_gain @@ -3949,7 +3953,7 @@ legend_spread_events.8171 = { localization_key = legend_chapter_immortal_child_conclusion } } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = minor_stress_impact_gain arrogant = minor_stress_impact_gain craven = minor_stress_impact_gain @@ -3980,7 +3984,7 @@ legend_spread_events.8172 = { outfit_tags = { nightgown } hide_info = yes } - override_effect_2d = fog + override_effect_2d = { reference = fog } cooldown = { years = 5 } trigger = { @@ -3996,14 +4000,16 @@ legend_spread_events.8172 = { immediate = { promoted_legend = { save_scope_as = legend } - create_character = { - template = bp1_doppelganger_template - dynasty = none - location = root.capital_province - save_scope_as = old_you - } - scope:old_you = { - set_age = 100 + hidden_effect_new_object = { + create_character = { + template = bp1_doppelganger_template + dynasty = none + location = root.capital_province + save_scope_as = old_you + } + scope:old_you = { + set_age = 100 + } } } @@ -4023,7 +4029,7 @@ legend_spread_events.8172 = { modifier = ce1_accepted_mortality years = 25 } - stress_impact = { + stress_and_fulfillment_impact = { base = major_stress_impact_loss ambitious = minor_stress_impact_gain arrogant = minor_stress_impact_gain @@ -4055,7 +4061,7 @@ legend_spread_events.8172 = { modifier = ce1_will_to_live years = 15 } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = minor_stress_impact_loss arrogant = minor_stress_impact_loss craven = minor_stress_impact_loss @@ -4093,7 +4099,7 @@ legend_spread_events.8172 = { death_reason = death_peaceful } - stress_impact = { + stress_and_fulfillment_impact = { base = massive_stress_impact_loss } ai_chance = { @@ -4212,7 +4218,7 @@ legend_spread_events.8180 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { forgiving = minor_stress_impact_gain craven = minor_stress_impact_gain } @@ -4231,7 +4237,7 @@ legend_spread_events.8180 = { modifier = ce1_forgiveness years = 15 } - stress_impact = { + stress_and_fulfillment_impact = { base = major_stress_impact_gain forgiving = major_stress_impact_loss compassionate = major_stress_impact_loss @@ -4317,8 +4323,9 @@ legend_spread_events.8181 = { } } remove_variable = 8180_revenge_quest - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss + vengeful = minor_stress_impact_loss } ai_chance = { base = 100 @@ -4463,7 +4470,7 @@ legend_spread_events.8190 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { humble = minor_stress_impact_gain honest = minor_stress_impact_gain } @@ -4491,7 +4498,7 @@ legend_spread_events.8190 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss deceitful = medium_stress_impact_gain diligent = minor_stress_impact_gain diff --git a/events/dlc/ce1/legend_spread_events_nick.txt b/events/dlc/ce1/legend_spread_events_nick.txt deleted file mode 100644 index e43c00292..000000000 --- a/events/dlc/ce1/legend_spread_events_nick.txt +++ /dev/null @@ -1,8129 +0,0 @@ -namespace = legend_spread_events - -############################ -## Legend Spread Events -## & Buying Into A Legend Events -## 5000-5999 -## by Nick Meredith -############################ - -# You attempt to spread a rumour that the ancient peoples founded your capital city -legend_spread_events.5000 = { - type = character_event - title = legend_spread_events.5000.t - desc = legend_spread_events.5000.desc - theme = legend - override_background = { reference = alley_day } - left_portrait = { - character = root - animation = personality_honorable - } - right_portrait = { - character = scope:chronicler - animation = thinking - } - cooldown = { years = 20 } - - trigger = { - promoted_legend ?= { - has_legend_chronicle = ancient_people - legend_protagonist = root - } - capital_province = { - province_owner = root - culture = root.culture - } - location = capital_province - any_courtier = { - this != root - is_available_ai_adult = yes - } - } - - immediate = { - grab_appropriate_chronicler_effect = yes - capital_province = { - save_scope_as = capital - } - culture = { - save_scope_as = culture - } - save_scope_as = root_scope - } - - option = { #The architecture of the oldest buildings PROVES it was them! - name = legend_spread_events.5000.a - - trigger = { - OR = { - has_trait = scholar - has_trait = architect - } - } - - promoted_legend = { - change_legend_quality_effect = { VALUE = minor_legend_quality_increase } - } - - every_vassal = { - vassal_stance = parochial - custom = every_parochial_vassal - add_opinion = { - modifier = respect_opinion - opinion = 15 - target = root - } - } - - stress_impact = { - diligent = miniscule_stress_impact_loss - lazy = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = lazy - } - } - } - - option = { #They _must_ have founded it! - name = legend_spread_events.5000.b - - duel = { - skill = diplomacy - value = high_skill_rating - 50 = { #People are convinced - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = legend_spread_events.5000.b.tt.success - send_interface_toast = { - title = legend_spread_events.5000.b.tt.success - left_icon = root - right_icon = scope:chronicler - - promoted_legend = { - change_legend_quality_effect = { VALUE = minor_legend_quality_increase } - } - } - } - - 50 = { # People are unconvinced - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = legend_spread_events.5000.b.tt.failure - send_interface_toast = { - title = legend_spread_events.5000.b.tt.failure - left_icon = root - right_icon = scope:chronicler - - promoted_legend = { - change_legend_quality_effect = { VALUE = minor_legend_quality_decrease } - } - } - } - } - - stress_impact = { - ambitious = miniscule_stress_impact_loss - content = medium_stress_impact_gain - diligent = miniscule_stress_impact_loss - lazy = minor_stress_impact_gain - stubborn = miniscule_stress_impact_loss - fickle = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = arrogant - has_trait = lazy - has_trait = fickle - } - } - } - } - - option = { #Re-use the masonry - name = legend_spread_events.5000.c - - promoted_legend = { - add_legend_county_modifier = { - modifier = legend_edifices_enduring - } - } - - stress_impact = { - ambitious = miniscule_stress_impact_loss - content = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - } - } - - - option = { #Maybe that's a bit of a stretch - name = legend_spread_events.5000.d - - add_character_modifier = { - modifier = legend_character_culture_builders - years = 15 - } - - scope:capital = { - add_province_modifier = { - modifier = legend_county_culture_builders - years = 15 - } - } - - stress_impact = { - ambitious = medium_stress_impact_gain - content = miniscule_stress_impact_loss - } - - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = ambitious - } - modifier = { - factor = 2 - has_trait = content - } - } - } -} - -# Your parent claims you fasted on holy days as a baby -legend_spread_events.5005 = { - type = character_event - title = legend_spread_events.5005.t - desc = { - desc = legend_spread_events.5005.desc - first_valid = { - triggered_desc = { - trigger = { - scope:parent = { - this = scope:chronicler - } - } - desc = legend_spread_events.5005.parent_chronicler - } - triggered_desc = { - trigger = { - NOT = { - scope:parent = { - this = scope:chronicler - } - } - } - desc = legend_spread_events.5005.regular - } - } - } - theme = legend - override_background = { reference = temple } - left_portrait = { - character = root - animation = love - } - right_portrait = { - character = scope:parent - animation = ecstasy - } - lower_center_portrait = { - trigger = { - NOT = { - scope:chronicler = { - this = scope:parent - } - } - } - character = scope:chronicler - } - cooldown = { years = 20 } - - trigger = { - promoted_legend ?= { - legend_type = legend_type:holy - legend_protagonist = root - } - any_parent = { - is_alive = yes - opinion = { - target = root - value >= low_positive_opinion - } - save_temporary_scope_as = parent - } - faith = { trait_is_virtue = temperate } - any_courtier = { - NOR = { - this = root - this = scope:parent - } - is_available_ai_adult = yes - } - } - - immediate = { - save_scope_as = root_scope - grab_appropriate_chronicler_effect = yes - random_parent = { - limit = { - is_alive = yes - opinion = { - target = root - value >= low_positive_opinion - } - } - save_scope_as = parent - } - } - - option = { #Mother please, you're embarrassing me - name = legend_spread_events.5005.a - - trigger = { - OR = { - has_trait = humble - has_trait = shy - } - NOT = { - has_trait = arrogant - } - } - - add_character_modifier = { - modifier = legend_humble_king - years = 25 - } - - every_vassal = { - vassal_stance = zealot - custom = every_zealot_vassal - add_opinion = { - modifier = pleased_opinion - opinion = 25 - target = root - } - } - - stress_impact = { - diligent = minor_stress_impact_gain - lazy = miniscule_stress_impact_loss - } - - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = diligent - } - } - } - - option = { #Clearly I am a holy person! - name = legend_spread_events.5005.b - - flavor = legend_spread_events.5005.b.tt - - add_piety = medium_piety_gain - - promoted_legend = { - change_legend_quality_effect = { VALUE = medium_legend_quality_increase } - } - - stress_impact = { - zealous = miniscule_stress_impact_loss - cynical = medium_stress_impact_gain - ambitious = miniscule_stress_impact_loss - humble = medium_stress_impact_gain - temperate = miniscule_stress_impact_loss - gluttonous = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = cynical - has_trait = humble - has_trait = gluttonous - } - } - } - } - - option = { #Enough about me. How are you, mother? - name = legend_spread_events.5005.c - - add_character_modifier = { - modifier = legend_mothers_boy - years = 15 - } - - reverse_add_opinion = { - modifier = love_opinion - target = scope:parent - opinion = 50 - } - - stress_impact = { - ambitious = medium_stress_impact_gain - humble = miniscule_stress_impact_loss - } - - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = ambitious - } - } - } -} - -# Attempt to heal the sick with your touch -legend_spread_events.5010 = { - type = character_event - title = legend_spread_events.5010.t - desc = legend_spread_events.5010.desc - theme = legend - override_background = { reference = alley_day } - left_portrait = { - character = root - animation = personality_honorable - } - right_portrait = { - character = scope:sick - animation = sick_stomach - } - lower_center_portrait = { - character = scope:chronicler - } - cooldown = { years = 20 } - - trigger = { - promoted_legend ?= { - legend_type = legend_type:holy - legend_protagonist = root - } - any_pool_character = { - province = root.location - is_ai = yes - is_adult = yes - has_trait = ill - } - any_courtier = { - this != root - is_available_ai_adult = yes - } - } - - immediate = { - grab_appropriate_chronicler_effect = yes - random_pool_character = { - province = root.location - limit = { - is_ai = yes - is_adult = yes - has_trait = ill - } - save_scope_as = sick - } - root.location = { - if = { - limit = { - province_owner = root - } - save_scope_as = location - } - } - save_scope_value_as = { - name = illness_range - value = { - integer_range = { - min = 1 - max = 15 - } - } - } - } - - option = { #Persuade them to give to those less fortunate and acquire salvation that way - name = legend_spread_events.5010.a - - trigger = { - OR = { - has_trait = arbitrary - intrigue > 13 - } - } - - flavor = legend_spread_events.5010.a.tt - - scope:location ?= { - add_province_modifier = { - modifier = legend_charitable_donations - years = 15 - } - } - - reverse_add_opinion = { - modifier = respect_opinion - target = scope:sick - opinion = 5 - } - - stress_impact = { - ambitious = medium_stress_impact_gain - humble = minor_stress_impact_loss - diligent = minor_stress_impact_gain - lazy = miniscule_stress_impact_loss - } - - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = ambitious - } - } - } - - option = { #Give it a go, I suppose - name = legend_spread_events.5010.b - - random_list = { - 30 = { #The sick person is healed! - desc = legend_spread_events.5010.b.criticalsuccess - send_interface_toast = { - title = legend_spread_events.5010.b.criticalsuccess - left_icon = root - right_icon = scope:sick - - scope:sick = { - remove_trait = ill - } - - promoted_legend = { - change_legend_quality_effect = { VALUE = major_legend_quality_increase } - } - } - } - 50 = { #They get placebo'd a little - modifier = { - add = scope:illness_range - } - desc = legend_spread_events.5010.b.success - send_interface_toast = { - title = legend_spread_events.5010.b.success - left_icon = root - right_icon = scope:sick - - promoted_legend = { - change_legend_quality_effect = { VALUE = minor_legend_quality_increase } - } - } - } - 20 = { #They see no change at all - desc = legend_spread_events.5010.b.failure - send_interface_toast = { - title = legend_spread_events.5010.b.failure - left_icon = root - right_icon = scope:sick - - promoted_legend = { - change_legend_quality_effect = { VALUE = minor_legend_quality_decrease } - } - } - } - } - - stress_impact = { - brave = miniscule_stress_impact_loss - gregarious = miniscule_stress_impact_loss - humble = miniscule_stress_impact_loss - trusting = miniscule_stress_impact_loss - paranoid = minor_stress_impact_gain - craven = minor_stress_impact_gain - shy = minor_stress_impact_gain - arrogant = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - ai_zeal = 0.5 - } - } - } - - option = { #You must seek healing elsewhere! - name = legend_spread_events.5010.c - - scope:location ?= { - add_province_modifier = { - modifier = legend_sick_hospitals - years = 25 - } - } - - reverse_add_opinion = { - modifier = disappointed_opinion - target = scope:sick - opinion = -20 - } - - stress_impact = { - ambitious = medium_stress_impact_gain - humble = miniscule_stress_impact_loss - } - - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = ambitious - } - } - } -} - -# You have a famous weapon that has killed many; or has it? -legend_spread_events.5015 = { - type = character_event - title = legend_spread_events.5015.t - desc = legend_spread_events.5015.desc - theme = legend - override_background = { reference = armory } - left_portrait = { - character = root - animation = marshal - } - right_portrait = { - character = scope:chronicler - animation = chancellor - } - artifact = { - target = scope:artifact - position = lower_center_portrait - } - cooldown = { years = 20 } - - trigger = { - promoted_legend ?= { - legend_type = legend_type:legitimizing - legend_protagonist = root - } - location = capital_province - any_character_artifact = { - artifact_slot_type = primary_armament - artifact_owner = root - } - any_courtier = { - this != root - is_available_ai_adult = yes - } - } - - immediate = { - grab_appropriate_chronicler_effect = yes - root.location = { - save_scope_as = location - } - random_character_artifact = { - limit = { - artifact_slot_type = primary_armament - artifact_owner = root - } - save_scope_as = artifact - } - } - - option = { #And it'll take the lives of many more! - name = legend_spread_events.5015.a - - trigger = { - OR = { - has_trait = wrathful - prowess > 13 - } - } - - add_character_modifier = { - modifier = legend_bloodthirsty_warrior - years = 15 - } - - stress_impact = { - calm = medium_stress_impact_gain - wrathful = miniscule_stress_impact_loss - humble = minor_stress_impact_gain - ambitious = miniscule_stress_impact_loss - } - - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = calm - } - } - } - - option = { #Well you see, those are just the ones I remember... - name = legend_spread_events.5015.b - - duel = { - skills = { diplomacy martial } - value = high_skill_rating - - 50 = { #Sounds legit! - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = legend_spread_events.5015.b.success - send_interface_toast = { - title = legend_spread_events.5015.b.success - left_icon = root - right_icon = scope:chronicler - - promoted_legend = { - change_legend_quality_effect = { VALUE = minor_legend_quality_increase } - } - } - } - - 50 = { # People are unconvinced - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = legend_spread_events.5015.b.failure - send_interface_toast = { - title = legend_spread_events.5015.b.failure - left_icon = root - right_icon = scope:chronicler - - promoted_legend = { - change_legend_quality_effect = { VALUE = minor_legend_quality_decrease } - } - } - } - } - - stress_impact = { - just = minor_stress_impact_gain - arbitrary = miniscule_stress_impact_loss - honest = medium_stress_impact_gain - deceitful = miniscule_stress_impact_loss - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = 1 - ai_honor = -0.5 - } - } - } - - option = { #It's quite something innit? - name = legend_spread_events.5015.c - - custom_tooltip = legend_spread_events.5015.c.tt - - hidden_effect = { - random_list = { - 1 = { - scope:artifact = { - add_artifact_modifier = artifact_monthly_prestige_1_modifier - } - } - 1 = { - scope:artifact = { - add_artifact_modifier = artifact_knight_effectiveness_1_modifier - } - } - 1 = { - scope:artifact = { - add_artifact_modifier = artifact_controlled_province_advantage_1_modifier - } - } - 1 = { - scope:artifact = { - add_artifact_modifier = artifact_prowess_1_modifier - } - } - 1 = { - scope:artifact = { - add_artifact_modifier = artifact_negate_prowess_penalty_add_1_modifier - } - } - } - } - - reverse_add_opinion = { - modifier = impressed_opinion - target = scope:chronicler - opinion = 20 - } - - stress_impact = { - ambitious = medium_stress_impact_gain - humble = miniscule_stress_impact_loss - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = -0.5 - ai_honor = 0.5 - } - } - } -} - -# You can pretend a mark on your hand is a stigmata -legend_spread_events.5020 = { - type = character_event - title = legend_spread_events.5020.t - desc = legend_spread_events.5020.desc - theme = legend - override_background = { reference = corridor_night } - left_portrait = { - character = root - animation = lantern - } - right_portrait = { - character = scope:chronicler - animation = shock - } - cooldown = { years = 20 } - - trigger = { - promoted_legend ?= { - legend_type = legend_type:holy - legend_protagonist = root - } - OR = { faith.religion = religion:eastern_orthodox_religion faith.religion = religion:catholic_religion faith.religion = religion:protestant_religion } - any_courtier = { - this != root - is_available_ai_adult = yes - } - } - - immediate = { - grab_appropriate_chronicler_effect = yes - save_scope_as = root_scope - } - - option = { #I also have one in my side! - name = legend_spread_events.5020.a - - trigger = { - has_trait = scarred - } - - promoted_legend = { - change_legend_quality_effect = { VALUE = medium_legend_quality_increase } - } - - add_character_modifier = { - modifier = legend_stigmatic - years = 15 - } - - stress_impact = { - ambitious = miniscule_stress_impact_loss - humble = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = cynical - } - } - } - - option = { #It does look rather interesting, doesn't it? - name = legend_spread_events.5020.b - - add_character_modifier = { - modifier = legend_claimed_stigmatic - years = 20 - } - - every_vassal = { - vassal_stance = zealot - custom = every_zealot_vassal - add_opinion = { - modifier = hate_opinion - opinion = -40 - target = root - } - } - - stress_impact = { - just = minor_stress_impact_gain - arbitrary = miniscule_stress_impact_loss - honest = minor_stress_impact_gain - deceitful = miniscule_stress_impact_loss - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = 1 - ai_honor = -0.5 - } - } - } - - option = { #It's just an old mark - name = legend_spread_events.5020.c - - add_piety = minor_piety_gain - - every_vassal = { - vassal_stance = zealot - custom = every_zealot_vassal - add_opinion = { - modifier = trust_opinion - opinion = 20 - target = root - } - } - - reverse_add_opinion = { - modifier = disappointed_opinion - target = scope:chronicler - opinion = -5 - } - - stress_impact = { - base = minor_stress_impact_loss - honest = miniscule_stress_impact_loss - deceitful = minor_stress_impact_gain - ambitious = medium_stress_impact_gain - humble = miniscule_stress_impact_loss - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = -1 - ai_honor = 0.5 - } - } - } -} - -# Claim descent from ancient peoples by deciphering an old manuscript -legend_spread_events.5025 = { - type = character_event - title = legend_spread_events.5025.t - desc = legend_spread_events.5025.desc - theme = legend - override_background = { reference = study } - left_portrait = { - character = root - animation = chancellor - } - right_portrait = { - character = scope:chronicler - animation = thinking - } - cooldown = { years = 20 } - - trigger = { - promoted_legend ?= { - has_legend_chronicle = ancient_people - legend_protagonist = root - } - any_courtier = { - this != root - is_available_ai_adult = yes - } - } - - immediate = { - grab_appropriate_chronicler_effect = yes - } - - option = { #Easy! - name = legend_spread_events.5025.a - - trigger = { - has_trait = scholar - } - - show_as_unavailable = { always = yes } - - add_learning_lifestyle_xp = major_lifestyle_xp - - promoted_legend = { - change_legend_quality_effect = { VALUE = minor_legend_quality_increase } - } - - reverse_add_opinion = { - modifier = impressed_opinion - target = scope:chronicler - opinion = 30 - } - - stress_impact = { - arrogant = miniscule_stress_impact_loss - humble = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_energy = 1 - } - } - } - - option = { #Let's give it a go - name = legend_spread_events.5025.b - - duel = { - skill = learning - value = medium_skill_rating - 50 = { # You decipher it - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = legend_spread_events.5025.b.success - send_interface_toast = { - title = legend_spread_events.5025.b.success - left_icon = root - right_icon = scope:chronicler - - promoted_legend = { - change_legend_quality_effect = { VALUE = minor_legend_quality_increase } - } - } - } - - 50 = { # You are nonplussed - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = legend_spread_events.5025.b.failure - send_interface_toast = { - title = legend_spread_events.5025.b.failure - left_icon = root - right_icon = scope:chronicler - - promoted_legend = { - change_legend_quality_effect = { VALUE = minor_legend_quality_decrease } - } - } - } - } - - stress_impact = { - diligent = miniscule_stress_impact_loss - lazy = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_energy = 0.5 - } - } - } - - option = { #There must be another way - name = legend_spread_events.5025.c - - add_character_modifier = { - modifier = ce1_forward_thinking - years = 15 - } - - reverse_add_opinion = { - modifier = disappointed_opinion - target = scope:chronicler - opinion = -5 - } - - stress_impact = { - honest = miniscule_stress_impact_loss - deceitful = minor_stress_impact_gain - ambitious = medium_stress_impact_gain - humble = miniscule_stress_impact_loss - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = -1 - } - } - } -} - -# Powerful vassal is impressed by your legend -legend_spread_events.5030 = { - type = character_event - title = legend_spread_events.5030.t - desc = legend_spread_events.5030.desc - theme = legend - override_background = { reference = study } - left_portrait = { - character = root - animation = personality_honorable - } - right_portrait = { - character = scope:vassal - animation = thinking - } - lower_center_portrait = { - character = scope:chronicler - } - cooldown = { years = 20 } - - trigger = { - any_powerful_vassal = { - opinion = { - target = root - value >= low_positive_opinion - } - age > 15 - save_temporary_scope_as = potential_promoter_temp - } - promoted_legend ?= { - legend_type = legend_type:legitimizing - legend_protagonist = root - any_legend_promoter = { - this != scope:potential_promoter_temp - } - } - any_courtier = { - this != root - is_available_ai_adult = yes - } - } - - immediate = { - grab_appropriate_chronicler_effect = yes - random_powerful_vassal = { - limit = { - opinion = { - target = root - value >= low_positive_opinion - } - age > 15 - } - save_scope_as = vassal - } - } - - option = { #I would be indebted to you if you were to help spread it, perhaps? - name = legend_spread_events.5030.a - - trigger = { - scope:vassal = { - can_add_hook = { - target = root - type = favor_hook - } - } - } - - promoted_legend = { - change_legend_quality_effect = { VALUE = major_legend_quality_increase } - } - - scope:vassal = { - add_hook = { - target = root - type = favor_hook - } - set_promoted_legend = root.promoted_legend - } - - stress_impact = { - ambitious = miniscule_stress_impact_loss - content = minor_stress_impact_gain - trusting = miniscule_stress_impact_loss - paranoid = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_sociability = 1 - ai_vengefulness = -1 - } - } - } - - option = { #That's great to hear! - name = legend_spread_events.5030.b - - promoted_legend = { - change_legend_quality_effect = { VALUE = minor_legend_quality_increase } - } - - stress_impact = { - lazy = miniscule_stress_impact_loss - diligent = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_energy = -0.5 - } - } - } - - option = { #It is excellent to have you here! - name = legend_spread_events.5030.c - - progress_towards_friend_effect = { - REASON = friend_legend_agreement - CHARACTER = scope:vassal - OPINION = 35 - } - - stress_impact = { - gregarious = miniscule_stress_impact_loss - shy = minor_stress_impact_gain - ambitious = medium_stress_impact_gain - humble = miniscule_stress_impact_loss - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = -0.5 - ai_compassion = 1 - } - } - } -} - -# The chronicler rushes to you with documents disputing your lineage -legend_spread_events.5035 = { - type = character_event - title = legend_spread_events.5035.t - desc = legend_spread_events.5035.desc - theme = legend - override_background = { reference = sitting_room } - left_portrait = { - character = root - animation = anger - } - right_portrait = { - character = scope:chronicler - animation = fear - } - cooldown = { years = 20 } - - trigger = { - is_available_adult = yes - promoted_legend ?= { - legend_type = legend_type:legitimizing - legend_protagonist = root - } - any_courtier = { - this != root - is_available_ai_adult = yes - } - } - - immediate = { - grab_appropriate_chronicler_effect = yes - } - - option = { # Burn the documents, threaten the chronicler - name = legend_spread_events.5035.a - - trigger = { - OR = { - has_trait = sadistic - has_trait = callous - has_trait = wrathful - has_trait = ambitious - has_trait = arbitrary - has_trait = torturer - dread > 50 - } - } - - flavor = legend_spread_events.5035.a.tt - - promoted_legend = { - change_legend_quality_effect = { VALUE = minor_legend_quality_increase } - } - - add_dread = medium_dread_gain - - reverse_add_opinion = { - modifier = scared_opinion - target = scope:chronicler - opinion = -40 - } - - stress_impact = { - ambitious = miniscule_stress_impact_loss - content = minor_stress_impact_gain - paranoid = miniscule_stress_impact_loss - trusting = minor_stress_impact_gain - sadistic = miniscule_stress_impact_loss - compassionate = major_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_compassion = -1 - ai_vengefulness = 1 - } - } - } - - option = { # Nonsense, look, that's my father's name right there! - name = legend_spread_events.5035.b - - duel = { - skill = diplomacy - value = high_skill_rating - 50 = { # Oh yeah! - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = legend_spread_events.5035.b.success - send_interface_toast = { - title = legend_spread_events.5035.b.success - left_icon = root - right_icon = scope:chronicler - - promoted_legend = { - change_legend_quality_effect = { - VALUE = minor_legend_quality_increase - } - } - } - } - - 50 = { # What? No it isn't - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = legend_spread_events.5035.b.failure - send_interface_toast = { - title = legend_spread_events.5035.b.failure - left_icon = root - right_icon = scope:chronicler - - promoted_legend = { - change_legend_quality_effect = { - VALUE = minor_legend_quality_decrease - } - } - } - } - } - - stress_impact = { - arbitrary = miniscule_stress_impact_loss - just = minor_stress_impact_gain - ambitious = miniscule_stress_impact_loss - content = minor_stress_impact_gain - deceitful = miniscule_stress_impact_loss - honest = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_energy = -0.5 - ai_honor = -0.5 - } - } - } - - option = { # Let's try to keep this one quiet, shall we? - name = legend_spread_events.5035.c - - duel = { - skill = intrigue - value = medium_skill_rating - 50 = { # The secret stays secret - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = legend_spread_events.5035.c.success - send_interface_toast = { - title = legend_spread_events.5035.c.success - left_icon = root - right_icon = scope:chronicler - - promoted_legend = { - change_legend_quality_effect = { VALUE = medium_legend_quality_increase } - } - - scope:chronicler = { - add_hook = { - target = root - type = indebted_hook - } - } - } - } - - 50 = { # The secret gets out - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = legend_spread_events.5035.c.failure - send_interface_toast = { - title = legend_spread_events.5035.c.failure - left_icon = root - right_icon = scope:chronicler - - promoted_legend = { - change_legend_quality_effect = { VALUE = minor_legend_quality_decrease } - } - } - } - } - - stress_impact = { - lazy = miniscule_stress_impact_loss - diligent = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = -0.5 - } - } - } - - option = { # Ah. Well, let's see if we can find other ones, shall we? - name = legend_spread_events.5035.d - - stress_impact = { - base = miniscule_stress_impact_loss - lazy = miniscule_stress_impact_loss - diligent = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = -0.5 - } - } - } -} - -# You sit down with your chronicler to fill in some missing entries in the family tree -legend_spread_events.5040 = { - type = character_event - title = legend_spread_events.5040.t - desc = legend_spread_events.5040.desc - theme = legend - override_background = { reference = sitting_room } - left_portrait = { - character = root - animation = boredom - } - right_portrait = { - character = scope:chronicler - animation = chancellor - } - cooldown = { years = 20 } - - trigger = { - promoted_legend ?= { - legend_type = legend_type:legitimizing - legend_protagonist = root - } - any_courtier = { - this != root - is_available_ai_adult = yes - } - } - - immediate = { - grab_appropriate_chronicler_effect = yes - - random_parent = { - limit = { - is_alive = yes - is_available_ai_adult = yes - } - save_scope_as = parent - } - - set_up_regional_mythical_creature_effect = yes - } - - option = { # You successfully lie your ass off - name = legend_spread_events.5040.a - - trigger = { - OR = { - has_trait = deceitful - has_trait = schemer - intrigue > 20 - } - } - - promoted_legend = { - change_legend_quality_effect = { VALUE = minor_legend_quality_increase } - } - - stress_impact = { - deceitful = miniscule_stress_impact_loss - honest = medium_stress_impact_gain - ambitious = miniscule_stress_impact_loss - content = minor_stress_impact_gain - arbitrary = miniscule_stress_impact_loss - just = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_honor = -1 - ai_rationality = 1 - } - } - } - - option = { # You ask a parent for help - name = legend_spread_events.5040.b - - trigger = { - scope:parent ?= { - is_alive = yes - } - } - - add_internal_flag = special - - promoted_legend = { - change_legend_quality_effect = { VALUE = medium_legend_quality_increase } - } - - stress_impact = { - compassionate = miniscule_stress_impact_loss - callous = minor_stress_impact_gain - trusting = miniscule_stress_impact_loss - paranoid = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_sociability = -1 - } - } - } - - option = { # Attempt to make it up - name = legend_spread_events.5040.a #Re-used on purpose - - trigger = { - NOR = { - has_trait = deceitful - has_trait = schemer - intrigue > 20 - } - } - - duel = { - skills = { intrigue diplomacy } - value = high_skill_rating - 50 = { # It looks like it all adds up - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = legend_spread_events.5040.c.success - send_interface_toast = { - title = legend_spread_events.5040.c.success - left_icon = root - right_icon = scope:chronicler - - promoted_legend = { - change_legend_quality_effect = { VALUE = minor_legend_quality_increase } - } - } - } - - 50 = { # Your family tree makes no sense - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = legend_spread_events.5040.c.failure - send_interface_toast = { - title = legend_spread_events.5040.c.failure - left_icon = root - right_icon = scope:chronicler - - promoted_legend = { - change_legend_quality_effect = { VALUE = minor_legend_quality_decrease } - } - } - } - } - - stress_impact = { - deceitful = miniscule_stress_impact_loss - honest = medium_stress_impact_gain - ambitious = miniscule_stress_impact_loss - content = minor_stress_impact_gain - arbitrary = miniscule_stress_impact_loss - just = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = -0.5 - } - } - } - - option = { # Oh my god, I don't care! - name = legend_spread_events.5040.d - - random_list = { - 1 = { - desc = legend_spread_events.5040.d.success - add_prestige = minor_prestige_gain - } - 1 = { - desc = legend_spread_events.5040.d.failure - add_prestige = minor_prestige_loss - } - } - - reverse_add_opinion = { - modifier = disappointed_opinion - target = scope:chronicler - opinion = -15 - } - - stress_impact = { - base = miniscule_stress_impact_loss - irritable = major_stress_impact_loss - lazy = miniscule_stress_impact_loss - diligent = minor_stress_impact_gain - content = miniscule_stress_impact_loss - ambitious = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = -0.5 - ai_energy = -0.5 - } - } - } - - after = { - if = { - limit = { exists = var:trinket_adjective_followup } - remove_variable = trinket_adjective_followup - } - } -} - -# You try to get your name in the khutbah -legend_spread_events.5045 = { - type = character_event - title = legend_spread_events.5045.t - desc = legend_spread_events.5045.desc - theme = legend - override_background = { reference = temple } - left_portrait = { - character = root - animation = scheme - } - right_portrait = { - character = scope:imam - animation = dismissal - } - lower_center_portrait = { - character = scope:chronicler - } - cooldown = { years = 20 } - - trigger = { - promoted_legend ?= { - legend_type = legend_type:holy - legend_protagonist = root - } - OR = { - cp:councillor_court_chaplain = { - is_available_ai_adult = yes - faith.religion = religion:islam_religion - } - any_court_position_holder = { - type = camp_priest_camp_officer - is_available_ai_adult = yes - faith.religion = religion:islam_religion - } - } - any_courtier = { - this != root - is_available_ai_adult = yes - } - faith.religion = religion:islam_religion - } - - immediate = { - grab_appropriate_chronicler_effect = yes - - cp:councillor_court_chaplain ?= { - save_scope_as = imam - } - if = { - limit = { - NOT = { exists = scope:imam } - } - random_court_position_holder = { - type = camp_priest_camp_officer - save_scope_as = imam - } - } - - capital_province = { - save_scope_as = capital - } - } - - option = { # Perhaps I can owe you a favour? - name = legend_spread_events.5045.a - - trigger = { - scope:imam = { - can_add_hook = { - target = root - type = favor_hook - } - } - } - - promoted_legend = { - change_legend_quality_effect = { VALUE = medium_legend_quality_increase } - } - - scope:imam = { - add_hook = { - target = root - type = favor_hook - } - } - - reverse_add_opinion = { - modifier = pleased_opinion - target = scope:imam - opinion = 20 - } - - stress_impact = { - trusting = miniscule_stress_impact_loss - paranoid = medium_stress_impact_gain - zealous = miniscule_stress_impact_loss - cynical = minor_stress_impact_gain - ambitious = miniscule_stress_impact_loss - content = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_vengefulness = -1 - } - } - } - - option = { # Bribe him, maybe? - name = legend_spread_events.5045.b - - duel = { - skill = diplomacy - target = scope:imam - 65 = { # He acquiesces - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = legend_spread_events.5045.b.success - - # If he's not a very holy fella, he'll prioritise keeping his liege happy - modifier = { - add = 15 - scope:imam = { - has_trait = cynical - } - } - - send_interface_toast = { - title = legend_spread_events.5045.b.success - left_icon = root - right_icon = scope:imam - - pay_short_term_gold = { - target = scope:imam - gold = minor_gold_value - } - - promoted_legend = { - change_legend_quality_effect = { VALUE = medium_legend_quality_increase } - } - } - } - - 35 = { # He is not impressed - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = legend_spread_events.5045.b.failure - - # If he's a holy fella, he'll listen to the hadith on rashwah - modifier = { - add = 50 - scope:imam = { - has_trait = zealous - } - } - - send_interface_toast = { - title = legend_spread_events.5045.b.failure - left_icon = root - right_icon = scope:imam - - reverse_add_opinion = { - modifier = angry_opinion - target = scope:imam - opinion = -40 - } - } - } - } - - stress_impact = { - cynical = miniscule_stress_impact_loss - zealous = minor_stress_impact_gain - trusting = miniscule_stress_impact_loss - paranoid = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_sociability = -1 - } - } - } - - option = { # Persuade him - name = legend_spread_events.5045.c - - duel = { - skill = diplomacy - target = scope:imam - - 50 = { # He sees your value - desc = legend_spread_events.5045.c.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - - # He likes ya - modifier = { - add = 5 - scope:imam = { - opinion = { - target = root - value >= low_positive_opinion - } - } - } - - # He likes ya a lot - modifier = { - add = 15 - scope:imam = { - opinion = { - target = root - value >= high_positive_opinion - } - } - } - - send_interface_toast = { - title = legend_spread_events.5045.c.success - left_icon = root - right_icon = scope:imam - - promoted_legend = { - change_legend_quality_effect = { VALUE = minor_legend_quality_increase } - } - } - } - - 50 = { # He is not impressed - desc = legend_spread_events.5045.c.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - send_interface_toast = { - title = legend_spread_events.5045.c.failure - left_icon = root - right_icon = scope:imam - - reverse_add_opinion = { - modifier = dismissive_opinion - target = scope:imam - opinion = -15 - } - } - } - } - - stress_impact = { - diligent = miniscule_stress_impact_loss - lazy = medium_stress_impact_gain - stubborn = miniscule_stress_impact_loss - fickle = minor_stress_impact_gain - gregarious = miniscule_stress_impact_loss - shy = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_sociability = 1 - ai_energy = 1 - } - } - } - - option = { # Bah, never mind - name = legend_spread_events.5045.d - - reverse_add_opinion = { - modifier = disappointed_opinion - target = scope:chronicler - opinion = -10 - } - - stress_impact = { - lazy = miniscule_stress_impact_loss - diligent = minor_stress_impact_gain - content = miniscule_stress_impact_loss - ambitious = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_energy = -1 - } - } - } -} - -# Make an entry in the style of your ancestors? -legend_spread_events.5050 = { - type = character_event - title = legend_spread_events.5050.t - desc = legend_spread_events.5050.desc - theme = legend - override_background = { reference = relaxing_room } - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:chronicler - animation = admiration - } - lower_center_portrait = { - character = scope:jeweller - } - cooldown = { years = 20 } - - trigger = { - promoted_legend ?= { - legend_type = legend_type:legitimizing - legend_protagonist = root - } - any_courtier = { - this != root - is_available_ai_adult = yes - } - any_pool_character = { - province = root.capital_province - is_ai = yes - is_adult = yes - } - location = capital_province - } - - immediate = { - grab_appropriate_chronicler_effect = yes - random_pool_character = { - province = root.capital_province - limit = { - is_ai = yes - is_adult = yes - } - save_scope_as = jeweller - } - capital_province = { - save_scope_as = capital - } - save_scope_as = root_scope - } - - option = { # Bedeck me in the very finest! - name = legend_spread_events.5050.a - - trigger = { - OR = { - has_trait = profligate - has_trait = arrogant - } - } - - remove_short_term_gold = major_gold_value - - save_scope_as = owner # This is needed for the crown artifact just below - - create_artifact = { - name = artifact_magnificent_crown_name - description = artifact_magnificent_crown_description - template = crown_wearable_template - wealth = 120 - quality = 120 - creator = scope:jeweller - type = helmet_simple - visuals = crown - modifier = artifact_monthly_minor_prestige_3_modifier - modifier = artifact_courtly_vassal_opinion_3_modifier - modifier = artifact_legend_spread_mult_10_modifier - modifier = artifact_dynasty_opinion_6_modifier - modifier = artifact_monthly_dynasty_prestige_1_modifier - save_scope_as = artifact - } - - every_vassal = { - vassal_stance = courtly - custom = every_courtly_vassal - add_opinion = { - modifier = respect_opinion - opinion = 15 - target = root - } - } - - stress_impact = { - profligate = medium_stress_impact_loss - generous = miniscule_stress_impact_loss - greedy = major_stress_impact_gain - arrogant = miniscule_stress_impact_loss - humble = medium_stress_impact_gain - ambitious = miniscule_stress_impact_loss - content = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = 1 - ai_greed = -1 - } - } - } - - option = { # All right, gimme something nice - name = legend_spread_events.5050.b - - remove_short_term_gold = medium_gold_value - - create_artifact = { - name = artifact_splendid_necklace_name - description = artifact_splendid_necklace_description - wealth = 80 - quality = 80 - creator = scope:jeweller - type = miscellaneous - visuals = necklace - modifier = artifact_monthly_minor_prestige_2_modifier - modifier = artifact_courtly_vassal_opinion_2_modifier - modifier = artifact_legend_spread_mult_6_modifier - modifier = artifact_dynasty_opinion_3_modifier - save_scope_as = artifact - } - - every_vassal = { - vassal_stance = courtly - custom = every_courtly_vassal - add_opinion = { - modifier = respect_opinion - opinion = 5 - target = root - } - } - - stress_impact = { - profligate = minor_stress_impact_loss - generous = miniscule_stress_impact_loss - greedy = medium_stress_impact_gain - arrogant = miniscule_stress_impact_loss - humble = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = 0.5 - ai_greed = -0.5 - } - } - } - - option = { # A small brooch will do - name = legend_spread_events.5050.c - - remove_short_term_gold = minor_gold_value - - create_artifact = { - name = artifact_fine_brooch_name - description = artifact_fine_brooch_description - wealth = 50 - quality = 50 - creator = scope:jeweller - type = miscellaneous - visuals = brooch - modifier = artifact_monthly_minor_prestige_1_modifier - modifier = artifact_courtly_vassal_opinion_1_modifier - modifier = artifact_legend_spread_mult_3_modifier - modifier = artifact_dynasty_opinion_1_modifier - save_scope_as = artifact - } - - stress_impact = { - profligate = miniscule_stress_impact_loss - greedy = minor_stress_impact_gain - arrogant = miniscule_stress_impact_loss - humble = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_greed = -0.5 - } - } - } - - option = { # There's no need for this - name = legend_spread_events.5050.d - - reverse_add_opinion = { - modifier = disappointed_opinion - target = scope:chronicler - opinion = -15 - } - - reverse_add_opinion = { - modifier = disappointed_opinion - target = scope:jeweller - opinion = -5 - } - - stress_impact = { - profligate = medium_stress_impact_gain - generous = medium_stress_impact_gain - greedy = minor_stress_impact_loss - arrogant = minor_stress_impact_gain - humble = miniscule_stress_impact_loss - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_energy = -0.5 - ai_greed = 1 - } - } - } -} - -# Choose to dress like one of your vassals' cultures -# Nothing is more legit than a king who wears your threads! -legend_spread_events.5055 = { - type = character_event - title = legend_spread_events.5055.t - desc = legend_spread_events.5055.desc - theme = legend - override_background = { reference = relaxing_room } - left_portrait = { - character = root - animation = stress - } - right_portrait = { - character = scope:chronicler - animation = worry - } - lower_left_portrait = { - character = scope:vassal1 - } - lower_right_portrait = { - character = scope:vassal2 - } - cooldown = { years = 20 } - - trigger = { - promoted_legend ?= { - legend_type = legend_type:legitimizing - legend_protagonist = root - } - any_courtier = { - this != root - is_available_ai_adult = yes - } - any_vassal = { #Requires a vassal who is part of your culture - is_ai = yes - is_adult = yes - culture = root.culture - trigger_if = { - limit = { - root.highest_held_title_tier >= tier_empire - } - highest_held_title_tier >= tier_duchy - } - trigger_else = { - highest_held_title_tier >= tier_county - } - } - any_vassal = { #And one who isn't - is_ai = yes - is_adult = yes - culture != root.culture - culture = { - save_temporary_scope_as = other_culture - } - #Should have at least two vassals of culture - root = { - any_vassal = { - count >= 2 - culture = scope:other_culture - } - } - trigger_if = { - limit = { - root.highest_held_title_tier >= tier_empire - } - highest_held_title_tier >= tier_duchy - } - trigger_else = { - highest_held_title_tier >= tier_county - } - } - location = capital_province - } - - immediate = { - grab_appropriate_chronicler_effect = yes - random_vassal = { #Requires a vassal who is part of your culture - limit = { - is_ai = yes - is_adult = yes - culture = root.culture - trigger_if = { - limit = { - root.highest_held_title_tier = tier_empire - } - highest_held_title_tier >= tier_duchy - } - trigger_else = { - highest_held_title_tier >= tier_county - } - } - save_scope_as = vassal1 - } - random_vassal = { #And one who isn't - limit = { - is_ai = yes - is_adult = yes - culture != root.culture - culture = { - save_temporary_scope_as = other_culture - } - #Should have at least two vassals of culture - root = { - any_vassal = { - count >= 2 - culture = scope:other_culture - } - } - trigger_if = { - limit = { - root.highest_held_title_tier = tier_empire - } - highest_held_title_tier >= tier_duchy - } - trigger_else = { - highest_held_title_tier >= tier_county - } - } - save_scope_as = vassal2 - } - capital_province = { - save_scope_as = capital - } - } - - option = { # Perhaps I can please both sides? - name = legend_spread_events.5055.a - - trigger = { - OR = { - has_trait = shrewd - has_trait = education_diplomacy_4 - has_trait = education_diplomacy_5 - has_trait = diplomat - } - } - - flavor = legend_spread_events.5055.a.tt - - add_character_modifier = { - modifier = legend_culturally_sensitive - years = 20 - } - - scope:vassal1 = { - set_promoted_legend = root.promoted_legend - add_opinion = { - modifier = pleased_opinion - opinion = 25 - target = root - } - } - - scope:vassal2 = { - set_promoted_legend = root.promoted_legend - add_opinion = { - modifier = pleased_opinion - opinion = 25 - target = root - } - } - - every_vassal = { - limit = { - OR = { - culture = root.culture - culture = scope:vassal2.culture - } - } - custom = 5055_every_culture_vassal - add_opinion = { - modifier = respect_opinion - opinion = 15 - target = root - } - } - - stress_impact = { - compassionate = miniscule_stress_impact_loss - callous = medium_stress_impact_gain - humble = miniscule_stress_impact_loss - arrogant = minor_stress_impact_gain - just = miniscule_stress_impact_loss - arbitrary = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_compassion = 1 - ai_sociability = 1 - } - } - } - - option = { # I shall represent my people! - name = legend_spread_events.5055.b - - scope:vassal1 = { - set_promoted_legend = root.promoted_legend - } - - every_vassal = { - limit = { - culture = root.culture - } - custom = 5055_vassal1_culture - add_opinion = { - modifier = respect_opinion - opinion = 15 - target = root - } - } - - reverse_add_opinion = { - modifier = angry_opinion - target = scope:vassal2 - opinion = -25 - } - - stress_impact = { - compassionate = minor_stress_impact_gain - callous = miniscule_stress_impact_loss - humble = minor_stress_impact_gain - arrogant = miniscule_stress_impact_loss - just = minor_stress_impact_gain - arbitrary = miniscule_stress_impact_loss - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_compassion = -0.5 - ai_sociability = -0.5 - } - } - } - - option = { # Vassal 2's people need to feel represented by me too - name = legend_spread_events.5055.c - - scope:vassal2 = { - set_promoted_legend = root.promoted_legend - } - - every_vassal = { - custom = 5055_vassal2_culture - limit = { - culture = scope:vassal2.culture - } - add_opinion = { - modifier = respect_opinion - opinion = 15 - target = root - } - } - - reverse_add_opinion = { - modifier = angry_opinion - target = scope:vassal1 - opinion = -25 - } - - stress_impact = { - compassionate = minor_stress_impact_gain - callous = miniscule_stress_impact_loss - humble = minor_stress_impact_gain - arrogant = miniscule_stress_impact_loss - just = minor_stress_impact_gain - arbitrary = miniscule_stress_impact_loss - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_compassion = -0.5 - ai_sociability = -0.5 - } - } - } - - option = { # I should avoid making enemies - name = legend_spread_events.5055.d - - flavor = legend_spread_events.5055.d.tt - - reverse_add_opinion = { - modifier = pleased_opinion - target = scope:vassal1 - opinion = 10 - } - - reverse_add_opinion = { - modifier = pleased_opinion - target = scope:vassal2 - opinion = 10 - } - - stress_impact = { - compassionate = miniscule_stress_impact_loss - callous = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_energy = -0.5 - ai_compassion = 0.5 - } - } - } -} - -# You claim your blindness was due to being blinded by seeing God -legend_spread_events.5060 = { - type = character_event - title = legend_spread_events.5060.t - desc = { - desc = legend_spread_events.5060.opening - desc = { - triggered_desc = { - trigger = { - has_trait = one_eyed - } - desc = legend_spread_events.5060.one_eyed - } - triggered_desc = { - trigger = { - has_trait = blind - } - desc = legend_spread_events.5060.blind - } - } - desc = legend_spread_events.5060.ending - } - - theme = legend - override_background = { reference = bp2_courtyard } - left_portrait = { - character = root - animation = personality_zealous - } - right_portrait = { - character = scope:chronicler - animation = admiration - } - cooldown = { years = 20 } - - trigger = { - promoted_legend ?= { - legend_type = legend_type:holy - legend_protagonist = root - } - any_courtier = { - this != root - is_available_ai_adult = yes - } - OR = { - has_trait = blind - has_trait = one_eyed - } - } - - immediate = { - grab_appropriate_chronicler_effect = yes - save_scope_as = root_scope - } - - option = { # His glory struck me fully blind! - name = legend_spread_events.5060.a - - trigger = { - has_trait = blind - } - - add_character_modifier = { - modifier = legend_visions_of_god - years = 15 - } - - every_vassal = { - vassal_stance = zealot - custom = every_zealot_vassal - add_opinion = { - modifier = pious_opinion - opinion = 50 - target = root - } - } - - stress_impact = { - zealous = miniscule_stress_impact_loss - cynical = major_stress_impact_gain - deceitful = miniscule_stress_impact_loss - honest = medium_stress_impact_gain - arbitrary = miniscule_stress_impact_loss - just = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_zeal = 1 - } - } - } - - option = { # He asked for a sacrifice of my eye, which I gladly gave! - name = legend_spread_events.5060.b - - trigger = { - has_trait = one_eyed - } - - add_character_modifier = { - modifier = legend_holy_sacrifice - years = 15 - } - - every_vassal = { - vassal_stance = zealot - custom = every_zealot_vassal - add_opinion = { - modifier = pious_opinion - opinion = 35 - target = root - } - } - - stress_impact = { - zealous = miniscule_stress_impact_loss - cynical = major_stress_impact_gain - deceitful = miniscule_stress_impact_loss - honest = medium_stress_impact_gain - arbitrary = miniscule_stress_impact_loss - just = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_zeal = 1 - } - } - } - - option = { # Losing my sight has humbled me in the eyes of god - name = legend_spread_events.5060.c - - add_character_modifier = { - modifier = legend_gods_humble_servant - years = 15 - } - - stress_impact = { - humble = miniscule_stress_impact_loss - arrogant = medium_stress_impact_loss - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_compassion = 1 - } - } - } - - option = { # It's just an old malady - name = legend_spread_events.5060.d - - flavor = legend_spread_events.5060.d.tt - - add_prestige = minor_prestige_value - - stress_impact = { - base = minor_stress_impact_loss - honest = medium_stress_impact_loss - deceitful = medium_stress_impact_gain - cynical = minor_stress_impact_loss - zealous = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_zeal = -1 - } - } - } -} - -# Lose weight to show holiness -legend_spread_events.5065 = { - type = character_event - title = legend_spread_events.5065.t - desc = legend_spread_events.5065.desc - - theme = legend - override_background = { reference = bp1_kitchen_western } - left_portrait = { - character = root - animation = stress - } - right_portrait = { - character = scope:chronicler - animation = thinking - } - cooldown = { years = 20 } - - trigger = { - promoted_legend ?= { - legend_type = legend_type:holy - legend_protagonist = root - } - any_courtier = { - this != root - is_available_ai_adult = yes - } - faith = { trait_is_virtue = temperate } - current_weight > -15 - } - - immediate = { - grab_appropriate_chronicler_effect = yes - - save_scope_as = root_scope - } - - option = { # Bah, I am much happier like this! - name = legend_spread_events.5065.a - - add_character_modifier = { - modifier = legend_fat_and_happy - years = 15 - } - - change_current_weight = 20 - - every_vassal = { - vassal_stance = zealot - custom = every_zealot_vassal - add_opinion = { - modifier = impious_opinion - opinion = -15 - target = root - } - } - - stress_impact = { - base = medium_stress_impact_loss - zealous = major_stress_impact_gain - cynical = miniscule_stress_impact_loss - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_zeal = -1 - ai_greed = 1 - } - } - } - - option = { # I will do better. - name = legend_spread_events.5065.b - - change_current_weight = -20 - - promoted_legend = { - change_legend_quality_effect = { VALUE = minor_legend_quality_increase } - } - - every_vassal = { - vassal_stance = zealot - custom = every_zealot_vassal - add_opinion = { - modifier = pious_opinion - opinion = 25 - target = root - } - } - - stress_impact = { - zealous = miniscule_stress_impact_loss - cynical = medium_stress_impact_gain - gluttonous = medium_stress_impact_gain - temperate = miniscule_stress_impact_loss - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_zeal = 1 - ai_greed = -1 - } - } - } - - option = { # A little bit here and there won't hurt, surely? - name = legend_spread_events.5065.c - - add_character_modifier = { - modifier = legend_sneaks_food - years = 10 - } - - stress_impact = { - gluttonous = miniscule_stress_impact_loss - temperate = minor_stress_impact_gain - deceitful = miniscule_stress_impact_loss - honest = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_zeal = -0.5 - ai_greed = 0.5 - } - } - } -} - -# You consider dressing in the style of ancestors -legend_spread_events.5070 = { - type = character_event - title = legend_spread_events.5070.t - desc = legend_spread_events.5070.desc - - theme = legend - override_background = { reference = throne_room } - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:chronicler - animation = ecstasy - } - cooldown = { years = 20 } - - trigger = { - promoted_legend ?= { - legend_type = legend_type:legitimizing - legend_protagonist = root - } - any_courtier = { - this != root - is_available_ai_adult = yes - } - } - - immediate = { - grab_appropriate_chronicler_effect = yes - - culture = { - save_scope_as = culture - } - save_scope_as = root_scope - } - - option = { # I shall dress myself as the first of my culture did! - name = legend_spread_events.5070.a - - remove_short_term_gold = minor_gold_value - - duel = { - skill = diplomacy - value = high_skill_rating - 50 = { #People are convinced - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = legend_spread_events.5070.a.success - send_interface_toast = { - title = legend_spread_events.5070.a.success - left_icon = root - right_icon = scope:chronicler - - add_character_modifier = { - modifier = legend_historical_bedecking - years = 15 - } - - every_vassal = { - limit = { - culture = root.culture - } - custom = every_culture_vassal - add_opinion = { - modifier = impressed_opinion - opinion = 20 - target = root - } - } - } - } - - 50 = { # People are unconvinced - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = legend_spread_events.5070.a.failure - send_interface_toast = { - title = legend_spread_events.5070.a.failure - left_icon = root - right_icon = scope:chronicler - - promoted_legend = { - change_legend_quality_effect = { VALUE = minor_legend_quality_decrease } - } - } - } - } - - stress_impact = { - arrogant = miniscule_stress_impact_loss - humble = minor_stress_impact_gain - ambitious = miniscule_stress_impact_loss - content = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_honor = 1 - ai_boldness = 1 - } - } - } - - option = { # Maybe just a few? - name = legend_spread_events.5070.b - - promoted_legend = { - change_legend_quality_effect = { VALUE = minor_legend_quality_increase } - } - - stress_impact = { - fickle = miniscule_stress_impact_loss - stubborn = minor_stress_impact_gain - humble = miniscule_stress_impact_loss - arrogant = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_rationality = 1 - } - } - } - - option = { # I won't defer to the past - name = legend_spread_events.5070.c - - add_character_modifier = { - modifier = legend_modern_ruler - years = 15 - } - - stress_impact = { - humble = miniscule_stress_impact_loss - arrogant = minor_stress_impact_gain - content = miniscule_stress_impact_loss - ambitious = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = -0.5 - } - } - } -} - -# You notice an imam has a prayer callus -legend_spread_events.5075 = { - type = character_event - title = legend_spread_events.5075.t - desc = legend_spread_events.5075.desc - - theme = legend - override_background = { reference = corridor_day } - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:chronicler - animation = ecstasy - } - lower_center_portrait = { - character = scope:imam - } - cooldown = { years = 20 } - - trigger = { - promoted_legend ?= { - legend_type = legend_type:holy - legend_protagonist = root - } - any_courtier = { - this != root - is_available_ai_adult = yes - } - OR = { - cp:councillor_court_chaplain = { - is_available_ai_adult = yes - faith.religion = religion:islam_religion - } - any_court_position_holder = { - type = camp_priest_camp_officer - is_available_ai_adult = yes - faith.religion = religion:islam_religion - } - } - faith.religion = religion:islam_religion - } - - immediate = { - grab_appropriate_chronicler_effect = yes - - cp:councillor_court_chaplain ?= { - save_scope_as = imam - } - if = { - limit = { - NOT = { exists = scope:imam } - } - random_court_position_holder = { - type = camp_priest_camp_officer - save_scope_as = imam - } - } - - save_scope_as = root_scope - } - - option = { # Try and trick everyone - name = legend_spread_events.5075.a - - trigger = { - has_trait = deceitful - } - - duel = { - skill = intrigue - value = high_skill_rating - 50 = { #It works - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = legend_spread_events.5075.a.success - send_interface_toast = { - title = legend_spread_events.5075.a.success - left_icon = root - right_icon = scope:chronicler - - add_character_modifier = { - modifier = legend_prayer_callus - years = 15 - } - - every_vassal = { - vassal_stance = zealot - custom = every_zealot_vassal - add_opinion = { - modifier = pious_opinion - opinion = 15 - target = root - } - } - } - } - - 50 = { # It does not work - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = legend_spread_events.5075.a.failure - send_interface_toast = { - title = legend_spread_events.5075.a.failure - left_icon = root - right_icon = scope:chronicler - - add_piety = miniscule_piety_loss - - every_vassal = { - vassal_stance = zealot - custom = every_zealot_vassal - add_opinion = { - modifier = impious_opinion - opinion = -35 - target = root - } - } - } - } - } - - stress_impact = { - arbitrary = miniscule_stress_impact_loss - just = medium_stress_impact_gain - cynical = miniscule_stress_impact_loss - zealous = medium_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_honor = -1 - ai_boldness = 1 - } - } - } - - option = { # Give it a go - name = legend_spread_events.5075.b - - duel = { - skills = { learning prowess } - value = high_skill_rating - 50 = { #It works - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = legend_spread_events.5075.b.success - send_interface_toast = { - title = legend_spread_events.5075.b.success - left_icon = root - right_icon = scope:chronicler - - add_character_modifier = { - modifier = legend_prayer_callus - years = 15 - } - - every_vassal = { - vassal_stance = zealot - custom = every_zealot_vassal - add_opinion = { - modifier = pious_opinion - opinion = 15 - target = root - } - } - } - } - - 50 = { # Ow - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = legend_spread_events.5075.b.failure - send_interface_toast = { - title = legend_spread_events.5075.b.failure - left_icon = root - right_icon = scope:chronicler - - add_character_modifier = { - modifier = legend_bruised_head - years = 5 - } - } - } - } - - stress_impact = { - zealous = miniscule_stress_impact_loss - cynical = medium_stress_impact_gain - arrogant = miniscule_stress_impact_loss - humble = medium_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_zeal = 1 - } - } - } - - option = { # This is ridiculous - name = legend_spread_events.5075.c - - add_piety = minor_prestige_gain - - reverse_add_opinion = { - modifier = angry_opinion - target = scope:imam - opinion = -15 - } - - stress_impact = { - humble = miniscule_stress_impact_loss - arrogant = minor_stress_impact_gain - content = miniscule_stress_impact_loss - ambitious = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_zeal = -1 - } - } - } -} - -# Motivation, Discovery and Battle chapters - 5200-5299 - -# MOTIVATION EVENTS - -# I did this to acquire EXOTIC MEATS -# by Nick Meredith -legend_spread_events.5200 = { - type = character_event - title = legend_spread_events.5200.t - desc = legend_spread_events.5200.desc - theme = legend - - left_portrait = { - character = root - animation = drink_goblet - } - right_portrait = { - character = scope:chronicler - animation = chancellor - } - cooldown = { years = 20 } - - trigger = { - promoted_legend ?= { - legend_owner = root - legend_protagonist = { - AND = { - this = root - has_trait = gluttonous - } - } - has_legend_chapter = motivation - has_legend_chapter = hunt - } - any_courtier = { - this != root - is_available_ai_adult = yes - } - } - - immediate = { - grab_appropriate_chronicler_effect = yes - promoted_legend = { - save_scope_as = legend - } - random_parent = { - even_if_dead = yes - limit = { - is_alive = no - } - save_scope_as = dead_parent - } - } - - option = { # I did it for the MEATS - name = legend_spread_events.5200.a - - trigger = { - has_trait = gluttonous - } - - promoted_legend = { - set_legend_chapter = { name = motivation localization_key = legend_chapter_motivation_delicious_meats } - add_legend_owner_modifier = { - modifier = legend_palatial_palatable - } - } - - reverse_add_opinion = { - modifier = confused_opinion - target = scope:chronicler - opinion = -5 - } - - stress_impact = { - base = medium_stress_impact_loss - honest = miniscule_stress_impact_loss - deceitful = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - humble = miniscule_stress_impact_loss - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_honor = -1 - } - } - } - - option = { # I did it to AVENGE MY MUM/DAD - name = legend_spread_events.5200.b - - trigger = { - exists = scope:dead_parent - } - - duel = { - skills = { intrigue diplomacy } - value = medium_skill_rating - - 50 = { #People believe this - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - modifier = { #Helps if your parents copped it in unknown ways - add = 75 - scope:dead_parent = { - death_reason = death_mysterious - } - } - modifier = { #Helps if your parents copped it in specifically animal-related ways - add = 125 - scope:dead_parent = { - OR = { - death_reason = death_deer - death_reason = death_antelope - death_reason = death_gazelle - death_reason = death_bison - death_reason = death_boar - death_reason = death_aurochs - death_reason = death_hyena - death_reason = death_lion - death_reason = death_tiger - death_reason = death_leopard - death_reason = death_roe - death_reason = death_hart - } - } - } - desc = legend_spread_events.5200.b.success - send_interface_toast = { - title = legend_spread_events.5200.b.success - left_icon = root - right_icon = scope:chronicler - - add_character_modifier = { - modifier = ce1_avenging_child - years = 10 - } - - promoted_legend = { - set_legend_chapter = { name = discovery localization_key = legend_chapter_motivation_dead_parent } - } - } - } - - 50 = { #Who are you trying to kid? - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = legend_spread_events.5200.b.failure - send_interface_toast = { - title = legend_spread_events.5200.b.failure - left_icon = root - right_icon = scope:chronicler - - add_prestige = medium_prestige_loss - } - } - } - - promoted_legend = { - set_legend_chapter = { name = motivation localization_key = legend_chapter_motivation_dead_parent } - } - - stress_impact = { - honest = miniscule_stress_impact_loss - deceitful = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - humble = miniscule_stress_impact_loss - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_honor = -1 - } - } - } - - option = { # What? No, no, I did it for the glory, duh. Haha. - name = legend_spread_events.5200.c - - add_prestige = minor_prestige_gain - - reverse_add_opinion = { - modifier = respect_opinion - target = scope:chronicler - opinion = 15 - } - - stress_impact = { - honest = miniscule_stress_impact_loss - deceitful = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - humble = miniscule_stress_impact_loss - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_honor = 1 - } - } - } -} - -# I did this to prove my skill -# by Nick Meredith -legend_spread_events.5205 = { - type = character_event - title = legend_spread_events.5205.t - desc = legend_spread_events.5205.desc - theme = legend - - left_portrait = { - character = root - animation = personality_honorable - } - right_portrait = { - character = scope:chronicler - animation = chancellor - } - cooldown = { years = 20 } - - trigger = { - promoted_legend ?= { - legend_owner = root - legend_protagonist = root - has_legend_chapter = motivation - has_legend_chapter = hunt - } - any_courtier = { - this != root - is_available_ai_adult = yes - } - } - - immediate = { - grab_appropriate_chronicler_effect = yes - - if = { - limit = { - any_sub_realm_county = { - NOT = { - has_county_modifier = hunt_sighting_dangerous_modifier - } - } - } - random_sub_realm_county = { - limit = { - NOT = { - has_county_modifier = hunt_sighting_dangerous_modifier - } - } - save_scope_as = hunt_sighting - } - } - } - - option = { # I did this to prove I am the greatest hunter in the land! - name = legend_spread_events.5205.a - - trigger = { - has_trait = lifestyle_hunter - } - - promoted_legend = { - set_legend_chapter = { name = motivation localization_key = legend_chapter_motivation_great_venator } - } - - add_trait_xp = { - trait = lifestyle_hunter - track = hunter - value = tournament_hastiludes_xp_gain_minor_value #Just as a randomised but low value - } - - reverse_add_opinion = { - modifier = respect_opinion - target = scope:chronicler - opinion = 20 - } - - stress_impact = { - ambitious = miniscule_stress_impact_loss - content = medium_stress_impact_gain - arrogant = miniscule_stress_impact_loss - humble = medium_stress_impact_gain - diligent = miniscule_stress_impact_loss - lazy = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_honor = 1 - ai_boldness = 1 - } - } - } - - option = { # I did it to hunt more dangerous game - name = legend_spread_events.5205.b - - trigger = { - # No extant Dangerous sightings - NOT = { - any_sub_realm_county = { has_county_modifier = hunt_sighting_dangerous_modifier } - } - } - - flavor = legend_spread_events.5205.b.tt - - random_sub_realm_county = { - limit = { hunt_activity_recent_hunt_sighting_trigger = no } - weight = { - base = 1 - hunt_activity_sighting_county_modifier = yes - } - random_county_province = { - weight = { - base = 1 - hunt_activity_sighting_terrain_modifier = yes - hunt_activity_sighting_building_modifier = { PROVINCE = this } - hunt_activity_game_building_modifier = { PROVINCE = this } - } - save_scope_as = sighting_province - } - save_scope_as = sighting_county - hidden_effect = { - hunt_activity_dangerous_game_effect = { PROVINCE = scope:sighting_province } - } - # Create new sighting - hunt_create_sighting_effect = { - TYPE = dangerous - ANIMAL = var:animal_type - OWNER = root - } - } - - stress_impact = { - brave = miniscule_stress_impact_loss - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_honor = 1 - } - } - } - - option = { # I did it to discover more amnimals - name = legend_spread_events.5205.c - - add_trait = lifestyle_hunter - add_trait_xp = { - trait = lifestyle_hunter - track = falconer - value = 15 - } - - stress_impact = { - arrogant = miniscule_stress_impact_loss - humble = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_honor = 1 - } - } - } - - option = { # To prove my skill as a hunter! - name = legend_spread_events.5205.d - - promoted_legend = { - set_legend_chapter = { name = motivation localization_key = legend_chapter_motivation_accomplished_hunter } - } - - add_prestige = minor_prestige_gain - - reverse_add_opinion = { - modifier = respect_opinion - target = scope:chronicler - opinion = 15 - } - - stress_impact = { - base = minor_stress_impact_loss - ambitious = miniscule_stress_impact_loss - content = minor_stress_impact_gain - arrogant = miniscule_stress_impact_loss - humble = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_honor = 1 - } - } - } -} - -# DISCOVERY EVENTS - -# I saw a cyclops! -# by Nick Meredith -legend_spread_events.5210 = { - type = character_event - title = legend_spread_events.5210.t - desc = legend_spread_events.5210.desc - theme = legend - - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:chronicler - animation = chancellor - } - cooldown = { years = 20 } - - trigger = { - promoted_legend ?= { - legend_owner = root - has_legend_chapter = discovery - } - any_courtier = { - this != root - is_available_ai_adult = yes - } - NOT = { - has_trait = blind - } - } - - immediate = { - grab_appropriate_chronicler_effect = yes - save_scope_as = root_scope - } - - option = { # And he thought I was a cyclops too! - name = legend_spread_events.5210.a - - trigger = { - has_trait = one_eyed - promoted_legend ?= { - legend_protagonist = root - } - } - - promoted_legend = { - set_legend_chapter = { name = discovery localization_key = legend_chapter_discovery_befriended_cyclops } - } - - give_nickname = nick_the_cyclops - - reverse_add_opinion = { - modifier = amazed_opinion - target = scope:chronicler - opinion = 20 - } - - stress_impact = { - deceitful = miniscule_stress_impact_loss - honest = medium_stress_impact_gain - ambitious = miniscule_stress_impact_loss - content = medium_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_honor = -0.5 - ai_boldness = 0.5 - } - } - } - - option = { # I saw a cyclops - name = legend_spread_events.5210.b - - promoted_legend = { - set_legend_chapter = { name = discovery localization_key = legend_chapter_discovery_cyclops } - change_legend_quality_effect = { - VALUE = minor_legend_quality_increase - } - } - - reverse_add_opinion = { - modifier = amazed_opinion - target = scope:chronicler - opinion = 5 - } - - stress_impact = { - deceitful = miniscule_stress_impact_loss - honest = medium_stress_impact_gain - arbitrary = miniscule_stress_impact_loss - just = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = 1 - } - } - } - - option = { # Just a local - name = legend_spread_events.5210.c - - add_prestige = miniscule_prestige_gain - - promoted_legend = { - add_legend_county_modifier = { - modifier = legend_monophthalmic_mythical - } - } - - every_vassal = { - vassal_stance = parochial - custom = every_parochial_vassal - add_opinion = { - modifier = respect_opinion - opinion = 15 - target = root - } - } - - stress_impact = { - lazy = miniscule_stress_impact_loss - humble = miniscule_stress_impact_loss - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_honor = 1 - ai_boldness = -1 - } - } - } -} - -# I was drugged by an evil plant -# by Nick Meredith -legend_spread_events.5215 = { - type = character_event - title = legend_spread_events.5215.t - desc = legend_spread_events.5215.desc - theme = legend - - left_portrait = { - character = root - animation = personality_bold - } - right_portrait = { - character = scope:chronicler - animation = chancellor - } - cooldown = { years = 20 } - - trigger = { - promoted_legend ?= { - legend_owner = root - has_legend_chapter = discovery - legend_protagonist = root - } - any_courtier = { - this != root - is_available_ai_adult = yes - } - } - - immediate = { - grab_appropriate_chronicler_effect = yes - } - - option = { # And I learned much from it! - name = legend_spread_events.5215.a - - trigger = { - has_trait = lifestyle_herbalist - promoted_legend ?= { - legend_protagonist = root - } - } - - promoted_legend = { - set_legend_chapter = { name = discovery localization_key = legend_chapter_discovery_renowned_herbalist } - } - - add_character_modifier = { - modifier = legend_renowned_herbalist - years = 15 - } - - stress_impact = { - arrogant = miniscule_stress_impact_loss - humble = medium_stress_impact_gain - ambitious = miniscule_stress_impact_loss - content = medium_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_honor = 0.5 - ai_boldness = 0.5 - } - } - } - - option = { # It was a terrible trap, but I fought through - name = legend_spread_events.5215.b - - promoted_legend = { - set_legend_chapter = { name = discovery localization_key = legend_chapter_discovery_evil_plants } - } - - add_prestige = medium_prestige_gain - - stress_impact = { - ambitious = miniscule_stress_impact_loss - content = medium_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = 0.5 - } - } - } - - option = { # I dunno where you heard that m8 - name = legend_spread_events.5215.c - - if = { - limit = { has_trait = lifestyle_herbalist } - add_learning_lifestyle_xp = major_lifestyle_xp - } - else = { - add_trait = lifestyle_herbalist - add_learning_lifestyle_xp = medium_lifestyle_xp - } - - reverse_add_opinion = { - modifier = honesty_opinion - target = scope:chronicler - opinion = 10 - } - - stress_impact = { - base = miniscule_stress_impact_loss - lazy = miniscule_stress_impact_loss - humble = miniscule_stress_impact_loss - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = -1 - } - } - } -} - -# I was challenged to an archery contest -# by Nick Meredith -legend_spread_events.5216 = { - type = character_event - title = legend_spread_events.5216.t - desc = legend_spread_events.5216.desc - theme = legend - - left_portrait = { - character = root - animation = ecstasy - } - right_portrait = { - character = scope:chronicler - animation = chancellor - } - cooldown = { years = 20 } - - trigger = { - promoted_legend ?= { - legend_owner = root - has_legend_chapter = discovery - legend_protagonist = { - NOR = { - has_trait = maimed - has_trait = incapable - } - } - } - any_courtier = { - this != root - is_available_ai_adult = yes - } - } - - immediate = { - grab_appropriate_chronicler_effect = yes - } - - option = { # And I won it by splitting their arrow in twain! - name = legend_spread_events.5216.a - - trigger = { - has_trait = tourney_participant - has_trait_xp = { - trait = tourney_participant - track = bow - value >= 50 - } - promoted_legend ?= { - legend_protagonist = { - this = root - } - } - } - - promoted_legend = { - set_legend_chapter = { name = discovery localization_key = legend_chapter_discovery_legendary_archer } - } - - add_character_modifier = { - modifier = legend_eagle_eyed - years = 15 - } - - stress_impact = { - arrogant = miniscule_stress_impact_loss - humble = medium_stress_impact_gain - ambitious = miniscule_stress_impact_loss - content = medium_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_honor = 1 - ai_boldness = 1 - } - } - } - - option = { # And I beat them! - name = legend_spread_events.5216.b - - duel = { - skill = prowess - value = medium_skill_rating - - 50 = { #People believe this - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = legend_spread_events.5216.b.success - send_interface_toast = { - title = legend_spread_events.5216.b.success - left_icon = root - right_icon = scope:chronicler - - add_prestige = medium_prestige_gain - - promoted_legend = { - set_legend_chapter = { name = discovery localization_key = legend_chapter_discovery_archery_contest_won } - } - } - } - - 50 = { #Who are you trying to kid? - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = legend_spread_events.5216.b.failure - send_interface_toast = { - title = legend_spread_events.5216.b.failure - left_icon = root - right_icon = scope:chronicler - - add_prestige = medium_prestige_loss - } - } - } - - stress_impact = { - ambitious = miniscule_stress_impact_loss - content = medium_stress_impact_gain - arrogant = miniscule_stress_impact_loss - humble = medium_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = 0.5 - } - } - } - - option = { # I can't really remember who won tbh - name = legend_spread_events.5216.c - - if = { - limit = { - NOT = { - has_trait = tourney_participant - } - } - add_trait = tourney_participant - } - - add_trait_xp = { - trait = tourney_participant - track = bow - value = { - integer_range = { - min = 1 - max = 5 - } - } - } - - stress_impact = { - base = miniscule_stress_impact_loss - lazy = miniscule_stress_impact_loss - humble = medium_stress_impact_loss - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = -1 - } - } - } -} - -# I fell in quicksand/bog! -# by Nick Meredith -legend_spread_events.5220 = { - type = character_event - title = legend_spread_events.5220.t - theme = legend - desc = { - desc = legend_spread_events.5220.desc.start - triggered_desc = { #Quick n dirty choice between bog and quicksand - trigger = { #Using capital province is a cheap way to choose a more 'familiar' hazard for the character - root.capital_province = { - OR = { - terrain = plains - terrain = hills - terrain = jungle - terrain = forest - terrain = taiga - terrain = wetlands - terrain = steppe - terrain = farmlands - terrain = floodplains - terrain = mountains - } - } - } - desc = legend_spread_events.5220.desc.wet - } - triggered_desc = { - trigger = { - root.capital_province = { - OR = { - terrain = desert - terrain = desert_mountains - terrain = oasis - terrain = drylands - } - } - } - desc = legend_spread_events.5220.desc.dry - } - desc = legend_spread_events.5220.desc.ending - } - - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:chronicler - animation = chancellor - } - cooldown = { years = 20 } - - trigger = { - promoted_legend ?= { - legend_owner = root - has_legend_chapter = discovery - legend_protagonist = { - this = root - NOT = { - has_trait = incapable - } - } - } - any_courtier = { - this != root - is_available_ai_adult = yes - } - } - - immediate = { - grab_appropriate_chronicler_effect = yes - } - - option = { # I hauled myself free easily! - name = legend_spread_events.5220.a - - trigger = { - OR = { - has_trait = physique_good - has_trait = strong - } - } - - promoted_legend = { - set_legend_chapter = { name = discovery localization_key = legend_chapter_discovery_bog_stronk } - } - - add_prestige = medium_prestige_gain - - give_nickname = nick_natures_bane - - stress_impact = { - arrogant = miniscule_stress_impact_loss - humble = medium_stress_impact_gain - ambitious = miniscule_stress_impact_loss - content = medium_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = 1 - } - } - } - - option = { # I struggled through - name = legend_spread_events.5220.b - - promoted_legend = { - set_legend_chapter = { name = discovery localization_key = legend_chapter_discovery_bog_struggle } - } - - add_prestige = minor_prestige_gain - - stress_impact = { - ambitious = miniscule_stress_impact_loss - content = medium_stress_impact_gain - diligent = miniscule_stress_impact_loss - lazy = medium_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = 0.5 - } - } - } - - option = { # I don't remember any bog - name = legend_spread_events.5220.c - - if = { - limit = { - NOT = { - has_trait = forder - } - } - random = { - chance = 50 - add_trait = forder - } - } - else = { - add_martial_lifestyle_xp = minor_lifestyle_experience - } - - stress_impact = { - base = miniscule_stress_impact_loss - lazy = miniscule_stress_impact_loss - humble = miniscule_stress_impact_loss - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = -1 - } - } - } -} - -# I discovered a new type of flower -# by Nick Meredith -legend_spread_events.5225 = { - type = character_event - title = legend_spread_events.5225.t - theme = legend - desc = legend_spread_events.5225.desc - - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:chronicler - animation = chancellor - } - cooldown = { years = 20 } - - trigger = { - promoted_legend ?= { - legend_owner = root - has_legend_chapter = discovery - legend_protagonist = { - this = root - } - } - any_courtier = { - this != root - is_available_ai_adult = yes - } - } - - immediate = { - grab_appropriate_chronicler_effect = yes - } - - option = { # Of course I have proof! - name = legend_spread_events.5225.a - - trigger = { - has_trait = lifestyle_herbalist - } - - flavor = legend_spread_events.5225.a.tt - - promoted_legend = { - set_legend_chapter = { name = discovery localization_key = legend_chapter_discovery_wildflower_expert } - } - - create_artifact_pressed_flower_effect = { OWNER = root } - - add_prestige = medium_prestige_gain - - stress_impact = { - arrogant = miniscule_stress_impact_loss - humble = medium_stress_impact_gain - ambitious = miniscule_stress_impact_loss - content = medium_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = 1 - } - } - } - - option = { # Er, um, of course I have proof... - name = legend_spread_events.5225.b - - flavor = legend_spread_events.5225.b.tt - - duel = { - skill = intrigue - target = scope:chronicler - - 50 = { #The chronicler's never seen a flower like that before! - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = legend_spread_events.5225.b.success - send_interface_toast = { - title = legend_spread_events.5225.b.success - left_icon = root - right_icon = scope:chronicler - - add_prestige = medium_prestige_gain - - promoted_legend = { - set_legend_chapter = { name = discovery localization_key = legend_chapter_discovery_wildflower_expert } - } - } - } - - 50 = { #...that's a daffodil mate. - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = legend_spread_events.5225.b.failure - send_interface_toast = { - title = legend_spread_events.5225.b.failure - left_icon = root - right_icon = scope:chronicler - - add_prestige = medium_prestige_loss - } - } - } - - stress_impact = { - deceitful = miniscule_stress_impact_loss - honest = medium_stress_impact_gain - arbitrary = miniscule_stress_impact_loss - just = medium_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = 0.5 - } - } - } - - option = { # Let's stay on topic, shall we? - name = legend_spread_events.5225.c - - add_character_modifier = { - modifier = ce1_black_thumb - years = 15 - } - - stress_impact = { - base = miniscule_stress_impact_loss - lazy = miniscule_stress_impact_loss - humble = miniscule_stress_impact_loss - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = -1 - } - } - } - - option = { # They were just regular flowers - name = legend_spread_events.5225.d - - stress_impact = { - base = minor_stress_impact_loss - lazy = minor_stress_impact_loss - humble = minor_stress_impact_loss - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = -1 - } - } - } -} - -# I fought off cannibals -# by Nick Meredith -legend_spread_events.5230 = { - type = character_event - title = legend_spread_events.5230.t - theme = legend - desc = legend_spread_events.5230.desc - - left_portrait = { - character = root - animation = personality_bold - } - right_portrait = { - character = scope:chronicler - animation = shock - } - cooldown = { years = 20 } - - trigger = { - promoted_legend ?= { - legend_owner = root - has_legend_chapter = discovery - legend_protagonist = { - this = root - } - } - any_courtier = { - this != root - is_available_ai_adult = yes - } - # Just to ensure people are actually freaked out by this - trait_is_shunned_or_criminal_in_my_or_lieges_faith_trigger = { - TRAIT = trait:cannibal - GENDER_CHARACTER = root - } - } - - immediate = { - grab_appropriate_chronicler_effect = yes - } - - option = { # One of them even bit me! - name = legend_spread_events.5230.a - - trigger = { - has_trait = scarred - } - - promoted_legend = { - set_legend_chapter = { name = discovery localization_key = legend_chapter_discovery_cannibal_scarred } - } - - add_character_modifier = { - modifier = legend_cannibal_scarred - years = 25 - } - - stress_impact = { - arrogant = miniscule_stress_impact_loss - humble = medium_stress_impact_gain - ambitious = miniscule_stress_impact_loss - content = medium_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = 1 - } - } - } - - option = { # Mmm, meats - name = legend_spread_events.5230.b - - add_internal_flag = dangerous - - add_secret = { type = secret_cannibal } - - reverse_add_opinion = { - modifier = uncertain_opinion - target = scope:chronicler - opinion = -10 - } - - stress_impact = { - honest = miniscule_stress_impact_loss - callous = miniscule_stress_impact_loss - } - - ai_chance = { - base = 25 - ai_value_modifier = { - ai_boldness = 1 - } - } - } - - option = { # And I lived to tell the tale! - name = legend_spread_events.5230.c - - promoted_legend = { - set_legend_chapter = { name = discovery localization_key = legend_chapter_discovery_cannibal_fight } - } - - add_prestige = minor_prestige_gain - - stress_impact = { - deceitful = miniscule_stress_impact_loss - honest = medium_stress_impact_gain - arbitrary = miniscule_stress_impact_loss - just = medium_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = 0.5 - } - } - } - - option = { # Honestly, I think they were just bandits. - name = legend_spread_events.5230.d - - if = { - limit = { - NOT = { - has_trait = shrewd - } - } - random = { - chance = 10 - add_trait = shrewd - } - } - else = { - add_learning_lifestyle_xp = minor_lifestyle_experience - } - - stress_impact = { - base = minor_stress_impact_loss - lazy = miniscule_stress_impact_loss - humble = miniscule_stress_impact_loss - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = -1 - } - } - } -} - -# BATTLE EVENTS - -# Did you slay the enemy commander? -# by Nick Meredith -legend_spread_events.5235 = { - type = character_event - title = legend_spread_events.5235.t - theme = legend - desc = legend_spread_events.5235.desc - - left_portrait = { - character = root - animation = personality_bold - } - right_portrait = { - character = scope:chronicler - animation = shock - } - cooldown = { years = 20 } - - trigger = { - promoted_legend ?= { - legend_owner = root - has_legend_chapter = battle - legend_protagonist = { - this = root - } - } - any_courtier = { - this != root - is_available_ai_adult = yes - } - } - - immediate = { - grab_appropriate_chronicler_effect = yes - } - - option = { # Yeah I slapped him around - name = legend_spread_events.5235.a - - promoted_legend = { - set_legend_chapter = { name = battle localization_key = legend_chapter_battle_enemy_commander } - } - - stress_impact = { - arrogant = miniscule_stress_impact_loss - humble = medium_stress_impact_gain - ambitious = miniscule_stress_impact_loss - content = medium_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = 1 - } - } - } - - option = { # They fell before I could get to them, sadge - name = legend_spread_events.5235.b - - add_character_modifier = { - modifier = ce1_modest_leader - years = 15 - } - - reverse_add_opinion = { - modifier = honesty_opinion - target = scope:chronicler - opinion = 5 - } - - stress_impact = { - base = miniscule_stress_impact_loss - humble = major_stress_impact_loss - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = -1 - } - } - } -} - -# Did I do a tacticool retreat -# by Nick Meredith -legend_spread_events.5240 = { - type = character_event - title = legend_spread_events.5240.t - theme = legend - desc = legend_spread_events.5240.desc - - left_portrait = { - character = root - animation = personality_dishonorable - } - right_portrait = { - character = scope:chronicler - animation = chancellor - } - cooldown = { years = 20 } - - trigger = { - promoted_legend ?= { - legend_owner = root - has_legend_chapter = battle - legend_protagonist = { - AND = { - this = root - has_trait = craven - } - } - } - any_courtier = { - this != root - is_available_ai_adult = yes - } - } - - immediate = { - grab_appropriate_chronicler_effect = yes - } - - option = { # It was, of course, a tactical retreat. - name = legend_spread_events.5240.a - - trigger = { - OR = { - has_trait = deceitful - has_trait = schemer - has_trait = education_intrigue_5 - } - } - - promoted_legend = { - set_legend_chapter = { name = battle localization_key = legend_chapter_battle_faked_retreat } - } - - add_prestige = medium_prestige_gain - - stress_impact = { - base = minor_stress_impact_loss - arrogant = minor_stress_impact_loss - humble = medium_stress_impact_gain - ambitious = miniscule_stress_impact_loss - content = minor_stress_impact_gain - brave = miniscule_stress_impact_loss - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = 0.5 - } - } - } - - option = { # It was a tactical retreat! - name = legend_spread_events.5240.b - - duel = { - skills = { martial intrigue } - value = medium_skill_rating - - 50 = { #People believe this - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = legend_spread_events.5240.b.success - send_interface_toast = { - title = legend_spread_events.5240.b.success - left_icon = root - right_icon = scope:chronicler - - add_prestige = medium_prestige_gain - - add_stress = minor_stress_loss - - promoted_legend = { - set_legend_chapter = { name = battle localization_key = legend_chapter_battle_faked_retreat } - } - } - } - - 50 = { #Who are you trying to kid? - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = legend_spread_events.5240.b.failure - send_interface_toast = { - title = legend_spread_events.5240.b.failure - left_icon = root - right_icon = scope:chronicler - - add_prestige = minor_prestige_loss - - add_character_modifier = { - modifier = legend_bravely_ran_away - years = 10 - } - } - } - } - - stress_impact = { - arrogant = miniscule_stress_impact_loss - humble = medium_stress_impact_gain - ambitious = miniscule_stress_impact_loss - content = medium_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = 1 - } - } - } - - option = { # Let's focus on the results eh - name = legend_spread_events.5240.c - - add_character_modifier = { - modifier = ce1_consequentialist - years = 10 - } - - add_prestige = minor_prestige_gain - - stress_impact = { - base = miniscule_stress_impact_loss - humble = miniscule_stress_impact_loss - arrogant = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = -1 - } - } - } -} - -# Did you lead the flank that crushed the enemy? -# by Nick Meredith -legend_spread_events.5245 = { - type = character_event - title = legend_spread_events.5245.t - theme = legend - desc = legend_spread_events.5245.desc - - left_portrait = { - character = root - animation = marshal - } - right_portrait = { - character = scope:chronicler - animation = chancellor - } - cooldown = { years = 20 } - - trigger = { - promoted_legend ?= { - legend_owner = root - has_legend_chapter = battle - legend_protagonist = { - this = root - } - } - any_courtier = { - this != root - is_available_ai_adult = yes - } - } - - immediate = { - grab_appropriate_chronicler_effect = yes - } - - option = { # Of course, and it's believable right? - name = legend_spread_events.5245.a - - promoted_legend = { - set_legend_chapter = { name = battle localization_key = legend_chapter_battle_flanking_success } - } - - random = { - chance = 25 - add_martial_skill = 1 - } - - add_prestige = medium_prestige_gain - - stress_impact = { - arrogant = minor_stress_impact_loss - humble = medium_stress_impact_gain - ambitious = miniscule_stress_impact_loss - content = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = 0.5 - } - } - } - - option = { # We actually crushed them with a frontal assault! - name = legend_spread_events.5245.b - - random = { - chance = 50 - add_trait = aggressive_attacker - } - - add_prestige = minor_prestige_gain - - stress_impact = { - brave = miniscule_stress_impact_loss - craven = medium_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = 1 - } - } - } - - option = { # I was merely overseeing the battle - name = legend_spread_events.5245.c - - if = { - limit = { - NOT = { - has_trait = logistician - } - } - random = { - chance = 75 - add_trait = logistician - } - } - else = { - add_martial_lifestyle_xp = minor_lifestyle_experience - } - - stress_impact = { - base = miniscule_stress_impact_loss - humble = miniscule_stress_impact_loss - arrogant = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = -1 - } - } - } -} - -# I heard you saved a noble maiden/mandem -# by Nick Meredith -legend_spread_events.5250 = { - type = character_event - title = legend_spread_events.5250.t - theme = legend - desc = legend_spread_events.5250.desc - - left_portrait = { - character = root - animation = flirtation_left - } - right_portrait = { - character = scope:chronicler - animation = chancellor - } - lower_center_portrait = { - trigger = { exists = scope:spouse } - character = scope:spouse - } - cooldown = { years = 20 } - - trigger = { - promoted_legend ?= { - legend_owner = root - has_legend_chapter = battle - legend_protagonist = { - this = root - } - } - any_courtier = { - this != root - is_available_ai_adult = yes - } - } - - immediate = { - grab_appropriate_chronicler_effect = yes - - if = { - limit = { - exists = primary_spouse - } - random_spouse = { - save_scope_as = spouse - } - } - } - - option = { # I did, and I RAVISHED EM - name = legend_spread_events.5250.a - - promoted_legend = { - add_legend_owner_modifier = { - modifier = legend_lecherous_lewd - } - } - - reverse_add_opinion = { - modifier = angry_opinion - target = scope:spouse - opinion = -65 - } - - promoted_legend = { - set_legend_chapter = { name = battle localization_key = legend_chapter_battle_ravished_maiden } - } - - stress_impact = { - lustful = major_stress_impact_loss - gregarious = miniscule_stress_impact_loss - shy = medium_stress_impact_gain - honest = miniscule_stress_impact_loss - deceitful = medium_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = 0.5 - ai_energy = 1 - } - } - } - - option = { # 'Twas merely a kisseth! How did it end up like thiseth? - name = legend_spread_events.5250.b # 'Twere only a kisseth, 'twere only a kisseth - - promoted_legend = { - set_legend_chapter = { name = battle localization_key = legend_chapter_battle_maiden_kiss } - } - - reverse_add_opinion = { - modifier = annoyed_opinion - target = scope:spouse - opinion = -10 - } - - stress_impact = { - lustful = medium_stress_impact_loss - chaste = medium_stress_impact_gain - brave = miniscule_stress_impact_loss - craven = medium_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_sociability = 1 - } - } - } - - option = { # Me?! Never! - name = legend_spread_events.5250.c - - promoted_legend = { - add_legend_owner_modifier = { - modifier = legend_chaste_faithful - } - } - - stress_impact = { - base = miniscule_stress_impact_loss - humble = miniscule_stress_impact_loss - arrogant = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = -1 - } - } - } -} - -# I heard you fought through some grievous wounds -# by Nick Meredith -legend_spread_events.5255 = { - type = character_event - title = legend_spread_events.5255.t - theme = legend - desc = legend_spread_events.5255.desc - - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:chronicler - animation = chancellor - } - cooldown = { years = 20 } - - trigger = { - promoted_legend ?= { - legend_owner = root - has_legend_chapter = battle - legend_protagonist = { - this = root - } - } - any_courtier = { - this != root - is_available_ai_adult = yes - } - } - - immediate = { - grab_appropriate_chronicler_effect = yes - save_scope_as = root_scope - } - - option = { # How d'you think I got these massive bodily injuries? - name = legend_spread_events.5255.a - - trigger = { - OR = { - has_trait = one_eyed - has_trait = maimed - has_trait = one_legged - } - } - - promoted_legend = { - set_legend_chapter = { name = battle localization_key = legend_chapter_battle_wounded } - } - - every_vassal = { - vassal_stance = glory_hound - custom = every_glory_hound_vassal - add_opinion = { - modifier = respect_opinion - target = root - opinion = 25 - } - } - - stress_impact = { - brave = miniscule_stress_impact_loss - craven = medium_stress_impact_gain - wrathful = miniscule_stress_impact_loss - calm = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_honor = 1 - } - } - } - - option = { # How d'you think I got these scars? - name = legend_spread_events.5255.b - - trigger = { - OR = { - has_trait = scarred - has_trait = disfigured - } - } - - promoted_legend = { - set_legend_chapter = { name = battle localization_key = legend_chapter_battle_wounded } - } - - every_vassal = { - vassal_stance = glory_hound - custom = every_glory_hound_vassal - add_opinion = { - modifier = respect_opinion - target = root - opinion = 15 - } - } - - stress_impact = { - brave = miniscule_stress_impact_loss - craven = medium_stress_impact_gain - wrathful = miniscule_stress_impact_loss - calm = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = 0.5 - } - } - } - - option = { # Thanks to god I avoided any such pain - name = legend_spread_events.5255.c - - add_piety = medium_piety_gain - - every_vassal = { - vassal_stance = zealot - custom = every_zealot_vassal - add_opinion = { - modifier = respect_opinion - target = root - opinion = 25 - } - } - - stress_impact = { - zealous = miniscule_stress_impact_loss - cynical = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_zeal = 1 - } - } - } - - option = { # I pushed through like a legend mate - name = legend_spread_events.5255.d - - add_prestige = medium_prestige_gain - - every_vassal = { - vassal_stance = glory_hound - custom = every_glory_hound_vassal - add_opinion = { - modifier = respect_opinion - target = root - opinion = 25 - } - } - - stress_impact = { - zealous = minor_stress_impact_gain - cynical = miniscule_stress_impact_loss - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_zeal = -1 - } - } - } -} - -# I heard you arrived in the nick of time with reinforcements! -# by Nick Meredith -legend_spread_events.5260 = { - type = character_event - title = legend_spread_events.5260.t - theme = legend - desc = legend_spread_events.5260.desc - - left_portrait = { - character = root - animation = personality_honorable - } - right_portrait = { - character = scope:chronicler - animation = chancellor - } - cooldown = { years = 20 } - - trigger = { - promoted_legend ?= { - legend_owner = root - has_legend_chapter = battle - legend_protagonist = { - this = root - } - } - any_courtier = { - this != root - is_available_ai_adult = yes - } - } - - immediate = { - grab_appropriate_chronicler_effect = yes - } - - option = { # I sure did! - name = legend_spread_events.5260.a - - promoted_legend = { - set_legend_chapter = { name = battle localization_key = legend_chapter_battle_reinforcement_arrival } - } - - if = { - limit = { - NOT = { - has_trait = reckless - } - } - random = { - chance = 50 - add_trait = reckless - } - } - else = { - add_martial_lifestyle_xp = minor_lifestyle_experience - } - - add_character_modifier = { - modifier = legend_nick_of_time - years = 15 - } - - stress_impact = { - brave = miniscule_stress_impact_loss - craven = medium_stress_impact_gain - wrathful = miniscule_stress_impact_loss - calm = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_honor = 1 - } - } - } - - option = { # Actually we already had that organised! - name = legend_spread_events.5260.b - - if = { - limit = { - NOT = { - has_trait = organizer - } - } - random = { - chance = 50 - add_trait = organizer - } - } - else = { - add_martial_lifestyle_xp = minor_lifestyle_experience - } - - add_character_modifier = { - modifier = legend_well_organised - years = 15 - } - - stress_impact = { - craven = miniscule_stress_impact_loss - brave = minor_stress_impact_gain - patient = miniscule_stress_impact_loss - impatient = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_zeal = 1 - } - } - } -} - -## Buying into legend events - -# You write a missive to a neighbouring ruler -legend_spread_events.5305 = { - type = character_event - title = legend_spread_events.5305.t - desc = legend_spread_events.5305.desc - theme = legend - left_portrait = { - character = root - animation = personality_honorable - } - right_portrait = { - character = scope:chronicler - animation = chancellor - } - lower_center_portrait = { - character = scope:potential_promoter - } - cooldown = { years = 25 } - - trigger = { - highest_held_title_tier > tier_barony - any_neighboring_realm_same_rank_owner = { - is_available_healthy_ai_adult = yes - save_temporary_scope_as = potential_promoter_temp - } - promoted_legend ?= { - legend_owner = root - any_legend_promoter = { - this != scope:potential_promoter_temp - } - } - } - - immediate = { - random_neighboring_realm_same_rank_owner = { - limit = { - is_available_healthy_ai_adult = yes - } - - save_scope_as = potential_promoter - } - - promoted_legend = { save_scope_as = promoted_legend } - culture = { save_scope_as = root_culture } - grab_appropriate_chronicler_effect = yes - } - - option = { # Don't you want to see a fellow [x culture] succeed? - name = legend_spread_events.5305.a - - trigger = { - culture = scope:potential_promoter.culture - } - - duel = { - skill = diplomacy - value = average_skill_rating - - 50 = { # They agree - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - modifier = { # Likes you - scope:potential_promoter = { - opinion = { - target = root - value >= 60 - } - } - add = 25 - } - send_interface_toast = { - title = legend_spread_events.5305.a.success - scope:potential_promoter = { - set_promoted_legend = root.promoted_legend - } - } - } - - 50 = { # They disagree - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - modifier = { # Reluctant to drop their existing legend - scope:potential_promoter = { exists = promoted_legend } - add = 10 - } - send_interface_toast = { - title = legend_spread_events.5305.a.failure - add_prestige = miniscule_prestige_loss - } - } - } - - stress_impact = { - calm = minor_stress_impact_loss - gregarious = miniscule_stress_impact_loss - trusting = miniscule_stress_impact_loss - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_sociability = 1 - } - } - } - - option = { # Else I'll beat you up m8 - name = legend_spread_events.5305.b - duel = { - skills = { martial prowess } - value = medium_skill_rating - - 50 = { # They acquiesce - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - modifier = { # You are scary - dread > 49 - add = 15 - } - modifier = { # You are stronger than them - root.current_military_strength > scope:potential_promoter.current_military_strength - add = 20 - } - modifier = { # You are significantly stronger than them - root.current_military_strength > scope:potential_promoter.one_and_a_half_times_current_military_strength - add = 30 - } - send_interface_toast = { - title = legend_spread_events.5305.b.success - scope:potential_promoter = { - set_promoted_legend = root.promoted_legend - add_opinion = { - target = root - modifier = threatened_opinion - opinion = -50 - } - } - } - } - - 50 = { # They don't care for your threats - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - modifier = { # Reluctant to drop their existing legend - scope:potential_promoter = { exists = promoted_legend } - add = 25 - } - modifier = { # Dislikes you - scope:potential_promoter = { - opinion = { - target = root - value <= 0 - } - } - add = 20 - } - modifier = { # Stubborn to a fault - scope:potential_promoter = { - has_trait = stubborn - } - add = 10 - } - send_interface_toast = { - title = legend_spread_events.5305.b.failure - - promoted_legend = { - change_legend_quality_effect = { VALUE = minor_legend_quality_decrease } - } - - reverse_add_opinion = { - target = scope:potential_promoter - modifier = dismissive_opinion - opinion = -20 - } - } - } - } - - stress_impact = { - calm = minor_stress_impact_gain - gregarious = miniscule_stress_impact_gain - trusting = miniscule_stress_impact_gain - wrathful = miniscule_stress_impact_loss - ambitious = miniscule_stress_impact_loss - vengeful = miniscule_stress_impact_loss - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = 1 - } - } - } - - option = { # It's the neighbourly thing to do! - name = legend_spread_events.5305.c - - duel = { - skill = diplomacy - target = scope:potential_promoter - - 50 = { # Agreed! - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - send_interface_toast = { - title = legend_spread_events.5305.c.success - scope:potential_promoter = { - set_promoted_legend = root.promoted_legend - } - } - } - - 50 = { #Disagree! - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - modifier = { # Reluctant to drop their existing legend - scope:potential_promoter = { exists = promoted_legend } - add = 15 - } - send_interface_toast = { - title = legend_spread_events.5305.c.failure - add_prestige = minor_prestige_loss - } - } - } - - stress_impact = { - gregarious = miniscule_stress_impact_loss - trusting = miniscule_stress_impact_gain - shy = minor_stress_impact_gain - deceitful = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_compassion = 1 - } - } - } - - option = { # Just send the letter as-is - name = legend_spread_events.5305.d - - random = { - chance = 10 - modifier = { # Likes you a bit - scope:potential_promoter = { - opinion = { - target = root - value > low_positive_opinion - } - } - add = 10 - } - modifier = { # Likes you a lot - scope:potential_promoter = { - opinion = { - target = root - value > medium_positive_opinion - } - } - add = 10 - } - send_interface_toast = { - title = legend_spread_events.5305.d.success - - scope:potential_promoter = { - set_promoted_legend = root.promoted_legend - } - } - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = -1 - } - } - } -} - -# You send a chronicler/herald to convince a neighbouring ruler -legend_spread_events.5310 = { - type = character_event - title = legend_spread_events.5310.t - desc = legend_spread_events.5310.desc - theme = legend - left_portrait = { - character = root - animation = worry - } - right_portrait = { - character = scope:herald - animation = chancellor - } - lower_center_portrait = { - character = scope:potential_promoter - } - cooldown = { years = 25 } - - trigger = { - promoted_legend ?= { - legend_owner = root - } - any_neighboring_top_liege_realm_owner = { - is_available_healthy_ai_adult = yes - NOT = { - promoted_legend ?= { - legend_owner = root - } - } - } - - OR = { - any_court_position_holder = { - type = chronicler_court_position - is_available_healthy_ai_adult = yes - } - any_court_position_holder = { - type = court_poet_court_position - is_available_healthy_ai_adult = yes - } - } - } - - immediate = { - random_neighboring_top_liege_realm_owner = { - limit = { - is_available_healthy_ai_adult = yes - NOT = { - promoted_legend ?= { - legend_owner = root - } - } - } - - save_scope_as = potential_promoter - } - - if = { - limit = { - any_court_position_holder = { - type = chronicler_court_position - is_available_healthy_ai_adult = yes - } - } - random_court_position_holder = { - type = chronicler_court_position - limit = { - is_available_healthy_ai_adult = yes - } - save_scope_as = herald - } - } - else = { - random_court_position_holder = { - type = court_poet_court_position - } - save_scope_as = herald - } - - promoted_legend = { save_scope_as = promoted_legend } - - save_scope_value_as = { - name = random_range - value = { - integer_range = { - min = 1 - max = 15 - } - } - } - } - - option = { # Try to charm them with your wit! - name = legend_spread_events.5310.a - - scope:herald = { - duel = { - skills = { diplomacy learning } - value = average_skill_rating - - 50 = { # They agree - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - modifier = { # Likes the diplomat - scope:potential_promoter = { - opinion = { - target = scope:herald - value > medium_positive_opinion - } - } - add = 25 - } - root = { - send_interface_toast = { - title = legend_spread_events.5310.a.success - scope:potential_promoter = { - set_promoted_legend = root.promoted_legend - } - } - } - } - - 50 = { # They disagree - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - modifier = { # Reluctant to drop their existing legend - scope:potential_promoter = { exists = promoted_legend } - add = 10 - } - root = { - send_interface_toast = { - title = legend_spread_events.5310.a.failure - - add_stress = minor_stress_gain - } - } - } - } - } - - stress_impact = { - trusting = miniscule_stress_impact_loss - paranoid = miniscule_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_rationality = 1 - } - } - } - - option = { # Take them a gift of gold to persuade them - name = legend_spread_events.5310.b - - pay_short_term_gold = { - target = scope:potential_promoter - gold = medium_gold_value - } - - random_list = { - 70 = { # They acquiesce - modifier = { # They want your money - scope:potential_promoter = { - has_trait = greedy - } - add = 15 - } - modifier = { #Natural randomness - add = scope:random_range - } - send_interface_toast = { - title = legend_spread_events.5310.b.success - - scope:potential_promoter = { - set_promoted_legend = root.promoted_legend - } - } - } - - 30 = { # They decline - modifier = { # They don't want your money - scope:potential_promoter = { - OR = { - has_trait = profligate - has_trait = generous - } - } - add = 15 - } - modifier = { # Dislikes you - scope:potential_promoter = { - opinion = { - target = root - value <= 0 - } - } - add = 20 - } - modifier = { # Reluctant to drop their existing legend - scope:potential_promoter = { exists = promoted_legend } - add = 10 - } - send_interface_toast = { - title = legend_spread_events.5310.b.failure - - add_stress = miniscule_stress_gain - } - } - } - - stress_impact = { - greedy = medium_stress_impact_gain - generous = medium_stress_impact_loss - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_greed = -1 - } - } - } - - option = { # Just go there and don't balls it up! - name = legend_spread_events.5310.c - - random = { - chance = 20 - send_interface_toast = { - title = legend_spread_events.5305.c.success - - scope:potential_promoter = { - set_promoted_legend = root.promoted_legend - } - } - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = -1 - } - } - } -} - -# You attempt to persuade a vassal by appealing to one of their traits -legend_spread_events.5315 = { - type = character_event - title = legend_spread_events.5315.t - desc = legend_spread_events.5315.desc - theme = legend - left_portrait = { - character = root - animation = worry - } - right_portrait = { - character = scope:vassal - animation = thinking - } - cooldown = { years = 25 } - - trigger = { - promoted_legend ?= { - legend_owner = root - } - any_vassal = { - is_available_healthy_ai_adult = yes - OR = { - has_trait = ambitious - has_trait = vengeful - has_trait = honest - has_trait = arrogant - } - } - } - - immediate = { - random_vassal = { - limit = { - is_available_healthy_ai_adult = yes - OR = { - has_trait = ambitious - has_trait = vengeful - has_trait = honest - has_trait = arrogant - } - } - - save_scope_as = vassal - } - - promoted_legend = { save_scope_as = promoted_legend } - } - - option = { # Appeal to their ambition - name = legend_spread_events.5315.a - - duel = { - skill = diplomacy - value = low_skill_rating - - 50 = { # They agree - desc = legend_spread_events.5315.a.success - show_chance = no - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - modifier = { # Boost for correct deduction - scope:vassal = { - has_trait = ambitious - } - add = 200 - } - send_interface_toast = { - title = legend_spread_events.5315.a.success - scope:vassal = { - set_promoted_legend = root.promoted_legend - } - } - } - - 50 = { # They disagree - desc = legend_spread_events.5315.a.failure - show_chance = no - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - modifier = { # Loss for incorrect deduction - scope:vassal = { - NOT = { - has_trait = ambitious - } - } - add = 200 - } - send_interface_toast = { - title = legend_spread_events.5315.a.failure - - add_stress = minor_stress_gain - } - } - } - - stress_impact = { - ambitious = miniscule_stress_impact_loss - humble = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_honor = 1 - } - } - } - - option = { # Appeal to their vengefulness - name = legend_spread_events.5315.b - - duel = { - skill = diplomacy - value = low_skill_rating - - 50 = { # They agree - desc = legend_spread_events.5315.a.success - show_chance = no - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - modifier = { # Boost for correct deduction - scope:vassal = { - has_trait = vengeful - } - add = 200 - } - send_interface_toast = { - title = legend_spread_events.5315.a.success - scope:vassal = { - set_promoted_legend = root.promoted_legend - } - } - } - - 50 = { # They disagree - desc = legend_spread_events.5315.a.failure - show_chance = no - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - modifier = { # Loss for incorrect deduction - scope:vassal = { - NOT = { - has_trait = vengeful - } - } - add = 200 - } - send_interface_toast = { - title = legend_spread_events.5315.a.failure - - add_stress = minor_stress_gain - } - } - } - - stress_impact = { - vengeful = miniscule_stress_impact_loss - forgiving = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_greed = -1 - } - } - } - - option = { # Appeal to their honesty - name = legend_spread_events.5315.c - - duel = { - skill = diplomacy - value = low_skill_rating - - 50 = { # They agree - desc = legend_spread_events.5315.a.success - show_chance = no - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - modifier = { # Boost for correct deduction - scope:vassal = { - has_trait = honest - } - add = 200 - } - send_interface_toast = { - title = legend_spread_events.5315.a.success - scope:vassal = { - set_promoted_legend = root.promoted_legend - } - } - } - - 50 = { # They disagree - desc = legend_spread_events.5315.a.failure - show_chance = no - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - modifier = { # Loss for incorrect deduction - scope:vassal = { - NOT = { - has_trait = honest - } - } - add = 200 - } - send_interface_toast = { - title = legend_spread_events.5315.a.failure - - add_stress = minor_stress_gain - } - } - } - - stress_impact = { - honest = miniscule_stress_impact_loss - deceitful = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_vengefulness = 1 - } - } - } - - option = { # Appeal to their arrogance - name = legend_spread_events.5315.d - - duel = { - skill = diplomacy - value = low_skill_rating - - 50 = { # They agree - desc = legend_spread_events.5315.a.success - show_chance = no - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - modifier = { # Boost for correct deduction - scope:vassal = { - has_trait = arrogant - } - add = 200 - } - send_interface_toast = { - title = legend_spread_events.5315.a.success - scope:vassal = { - set_promoted_legend = root.promoted_legend - } - } - } - - 50 = { # They disagree - desc = legend_spread_events.5315.a.failure - show_chance = no - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - modifier = { # Loss for incorrect deduction - scope:vassal = { - NOT = { - has_trait = arrogant - } - } - add = 200 - } - send_interface_toast = { - title = legend_spread_events.5315.a.failure - - add_stress = minor_stress_gain - } - } - } - - stress_impact = { - humble = miniscule_stress_impact_loss - arrogant = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_rationality = 1 - } - } - } -} - -# You attempt to bribe a vassal into promoting your legend -legend_spread_events.5320 = { - type = character_event - title = legend_spread_events.5320.t - desc = { - desc = legend_spread_events.5320.desc - desc = { - triggered_desc = { - trigger = { - scope:artifact = { - exists = scope:artifact - } - } - desc = legend_spread_events.5320.artifact - } - } - } - theme = legend - left_portrait = { - character = root - animation = scheme - } - right_portrait = { - character = scope:vassal - animation = happiness - } - artifact = { - target = scope:artifact - position = lower_center_portrait - } - cooldown = { years = 25 } - - trigger = { - promoted_legend ?= { - legend_owner = root - } - any_vassal = { - is_available_healthy_ai_adult = yes - } - } - - immediate = { - random_vassal = { - limit = { - is_available_healthy_ai_adult = yes - } - - save_scope_as = vassal - } - - random_character_artifact = { - limit = { - artifact_can_be_gift_to_trigger = { RECIPIENT = scope:vassal } - NOR = { - #And doesn't have a claim on it - any_artifact_claimant = { - is_alive = no - } - } - } - - save_scope_as = artifact - } - - scope:vassal.capital_county = { save_scope_as = capital_county } - - promoted_legend = { save_scope_as = promoted_legend } - } - - option = { # Offer them an artifact - name = legend_spread_events.5320.a - - trigger = { - exists = scope:artifact - } - - duel = { - skill = diplomacy - value = medium_skill_rating - - 60 = { # They agree - desc = legend_spread_events.5320.a.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - modifier = { # Boost for anything that's above common - scope:artifact = { - rarity = masterwork - } - add = 15 - } - modifier = { - scope:artifact = { - rarity = famed - } - add = 30 - } - modifier = { - scope:artifact = { - rarity = illustrious - } - add = 80 - } - send_interface_toast = { - title = legend_spread_events.5320.a.success - scope:vassal = { - set_promoted_legend = root.promoted_legend - } - promoted_legend = { - change_legend_quality_effect = { VALUE = minor_legend_quality_increase } - } - scope:artifact = { - set_owner = { - target = scope:vassal - history = { - location = root.capital_province - actor = root - recipient = scope:vassal - type = given - } - } - } - } - } - - 40 = { # They disagree - desc = legend_spread_events.5320.a.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - send_interface_toast = { - title = legend_spread_events.5320.a.failure - - custom_tooltip = legend_spread_events.5320.a.artifact - - hidden_effect = { - scope:artifact = { - add_artifact_modifier = artifact_monthly_prestige_penalty_modifier - } - } - - reverse_add_opinion = { - target = scope:vassal - modifier = dismissive_opinion - opinion = -5 - } - } - } - } - - stress_impact = { - generous = miniscule_stress_impact_loss - greedy = medium_stress_impact_gain - ambitious = miniscule_stress_impact_loss - content = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_greed = -1 - } - } - } - - option = { # Offer them investment in their holding - name = legend_spread_events.5320.b - - duel = { - skills = { diplomacy stewardship } - value = medium_skill_rating - - 50 = { # They agree - desc = legend_spread_events.5320.b.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - send_interface_toast = { - title = legend_spread_events.5320.a.success - scope:vassal = { - set_promoted_legend = root.promoted_legend - } - - scope:capital_county = { - add_county_modifier = { - modifier = legend_investments - years = 20 - } - } - - remove_short_term_gold = minor_gold_value - } - } - - 50 = { # They disagree - desc = legend_spread_events.5320.b.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - send_interface_toast = { - title = legend_spread_events.5320.b.failure - - reverse_add_opinion = { - target = scope:vassal - modifier = dismissive_opinion - opinion = -20 - } - } - } - } - - stress_impact = { - generous = miniscule_stress_impact_loss - greedy = minor_stress_impact_gain - trusting = miniscule_stress_impact_loss - paranoid = miniscule_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_greed = -1 - ai_sociability = 0.5 - } - } - } - - option = { # Offer them a favour - name = legend_spread_events.5320.c - - duel = { - skills = { diplomacy intrigue } - value = low_skill_rating - - 50 = { # They agree - desc = legend_spread_events.5320.a.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - send_interface_toast = { - title = legend_spread_events.5320.a.success - scope:vassal = { - set_promoted_legend = root.promoted_legend - add_hook = { - target = root - type = favor_hook - } - } - } - } - - 50 = { # They disagree - desc = legend_spread_events.5320.a.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - send_interface_toast = { - title = legend_spread_events.5320.a.failure - - add_character_modifier = { - modifier = legend_loose_lips - years = 15 - } - } - } - } - - stress_impact = { - honest = miniscule_stress_impact_loss - deceitful = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_vengefulness = 1 - } - } - } - - option = { # Opt-out - name = legend_spread_events.5320.d - - random = { - chance = 15 - send_interface_toast = { - title = legend_spread_events.5320.d.success - - scope:vassal = { - set_promoted_legend = root.promoted_legend - } - } - } - - stress_impact = { - humble = miniscule_stress_impact_loss - arrogant = minor_stress_impact_gain - content = miniscule_stress_impact_loss - ambitious = minor_stress_impact_gain - craven = miniscule_stress_impact_loss - brave = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_energy = -0.5 - } - } - } -} - -# Legend is spreading towards you: do you become a promoter for extra rewards? -legend_spread_events.5325 = { - type = character_event - title = legend_spread_events.5325.t - desc = { - desc = legend_spread_events.5325.desc - triggered_desc = { - trigger = { - scope:promoted_legend_owner = { - is_ai = yes - } - } - desc = legend_spread_events.5325.protag - } - } - theme = legend - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:legend_person - animation = happiness - } - lower_center_portrait = { - character = scope:promoted_legend_owner - trigger = { - this != scope:legend_person - } - } - cooldown = { years = 25 } - - trigger = { - #You have a neighbour who has a legend - any_neighboring_top_liege_realm_owner = { - promoted_legend ?= { - NOR = { - any_legend_promoter = { this = root } - legend_owner = root - } - legend_owner ?= { - is_within_diplo_range = { CHARACTER = root } - } - } - } - } - - immediate = { - random_neighboring_top_liege_realm_owner = { #Grab neighbouring ruler with a legend - limit = { - promoted_legend ?= { - NOR = { - any_legend_promoter = { this = root } - legend_owner = root - } - legend_owner ?= { - is_within_diplo_range = { CHARACTER = root } - } - } - } - save_scope_as = legend_person - promoted_legend = { - save_scope_as = promoted_legend - legend_owner = { save_scope_as = promoted_legend_owner } - } - } - - promoted_legend ?= { save_scope_as = your_legend } - } - - option = { # Take it on and it gains good stuff because you're cool - name = legend_spread_events.5325.a - - trigger = { - prestige_level > 2 - } - - add_internal_flag = special - - if = { - limit = { - exists = scope:your_legend - } - custom_tooltip = legend_spread_events.5325.stop_promoting_warning - custom_tooltip = legend_spread_events.5325.stop_promoting - - stop_promoting_legend = yes - } - - set_promoted_legend = scope:promoted_legend - - scope:promoted_legend = { - add_legend_county_modifier = { - modifier = legend_esteemed_expanding - } - } - - stress_impact = { - arrogant = minor_stress_impact_loss - humble = medium_stress_impact_gain - ambitious = miniscule_stress_impact_loss - content = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = 1 - } - } - } - - option = { # Sure, I'll take it - name = legend_spread_events.5325.b - - trigger = { - NOT = { - prestige_level > 2 - } - } - - if = { - limit = { - exists = scope:your_legend - } - custom_tooltip = legend_spread_events.5325.stop_promoting_warning - custom_tooltip = legend_spread_events.5325.stop_promoting - - stop_promoting_legend = yes - } - - set_promoted_legend = scope:promoted_legend - - add_prestige = minor_prestige_gain - - stress_impact = { - generous = miniscule_stress_impact_loss - greedy = minor_stress_impact_gain - trusting = miniscule_stress_impact_loss - paranoid = miniscule_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_greed = -1 - ai_sociability = 0.5 - } - } - } - - option = { # I'll do it, but for a sum... - name = legend_spread_events.5325.c - - trigger = { #Ensure you're not taking money from humans - scope:promoted_legend_owner = { - is_ai = yes - } - } - - duel = { - skill = diplomacy - target = scope:promoted_legend_owner - - 50 = { # They agree - desc = legend_spread_events.5325.c.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - custom_tooltip = legend_spread_events.5325.c.success.tt - trigger_event = legend_spread_events.5326 - } - - 50 = { # They disagree - desc = legend_spread_events.5325.c.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - custom_tooltip = legend_spread_events.5325.c.failure.tt - trigger_event = legend_spread_events.5327 - } - } - - stress_impact = { - greedy = miniscule_stress_impact_loss - generous = minor_stress_impact_gain - deceitful = miniscule_stress_impact_loss - honest = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_greed = 1 - } - } - } - - option = { # No thanks - name = legend_spread_events.5325.d - - reverse_add_opinion = { - target = scope:legend_person - modifier = angry_opinion - opinion = -10 - } - - stress_impact = { - humble = miniscule_stress_impact_loss - arrogant = minor_stress_impact_gain - content = miniscule_stress_impact_loss - ambitious = minor_stress_impact_gain - craven = miniscule_stress_impact_loss - brave = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_energy = -0.5 - } - } - } -} - -legend_spread_events.5326 = { - type = letter_event - opening = { - desc = legend_spread_events.5326.opening - } - desc = legend_spread_events.5326.desc - - sender = { - character = scope:promoted_legend_owner - animation = personality_honorable - } - - option = { - name = legend_spread_events.5326.a - - scope:promoted_legend_owner = { - pay_short_term_gold = { - target = root - gold = minor_gold_value - } - } - - custom_tooltip = legend_spread_events.5325.stop_promoting - - stop_promoting_legend = yes - - set_promoted_legend = scope:promoted_legend - } - - option = { - name = legend_spread_events.5326.b - - reverse_add_opinion = { - modifier = angry_opinion - opinion = -20 - target = scope:promoted_legend_owner - } - } -} - -legend_spread_events.5327 = { - type = letter_event - opening = { - desc = legend_spread_events.5327.opening - } - desc = legend_spread_events.5327.desc - - sender = { - character = scope:promoted_legend_owner - animation = dismissal - } - - option = { - name = legend_spread_events.5327.a - - add_stress = minor_stress_gain - } -} - -# Legend owner is evil; stop promoting? -legend_spread_events.5330 = { - type = character_event - title = legend_spread_events.5330.t - desc = legend_spread_events.5330.desc - theme = legend - left_portrait = { - character = root - animation = stress - } - right_portrait = { - character = scope:promoted_legend_owner - animation = anger - } - cooldown = { years = 25 } - - trigger = { - #You have a legend and the legend owner is sinful - any_legend = { - any_legend_promoter = { #You are promoting that legend - this = root - } - legend_owner = { - num_sinful_traits >= 1 #They have at least one sinful trait - save_temporary_scope_as = promoted_legend_owner_temp - } - save_temporary_scope_as = promoted_legend_temp - } - - scope:promoted_legend_temp = { #Ensure they own the legend - legend_owner = scope:promoted_legend_owner_temp - } - } - - immediate = { - random_legend = { #Grab the legend you're promoting - limit = { - any_legend_promoter = { - this = root - } - legend_owner = { - num_sinful_traits >= 1 - } - } - save_scope_as = promoted_legend - } - - scope:promoted_legend.legend_owner = { - save_scope_as = promoted_legend_owner - } - - save_scope_as = root_scope - } - - option = { # How dare they! I am a godly WomanMan! - name = legend_spread_events.5330.a - - trigger = { - OR = { - scope:promoted_legend_owner = { #They're REALLY evil - num_sinful_traits >= 2 - } - has_trait = zealous #Or you're really godly - } - NOT = { - has_trait = cynical - } - } - - add_internal_flag = special - - promoted_legend = { - add_legend_county_modifier = { - modifier = legend_irreverent_immoral - years = 10 - } - } - - if = { #Just to ensure human players don't get blindsided - limit = { - scope:promoted_legend_owner = { - is_ai = yes - } - } - scope:promoted_legend_owner = { - add_character_modifier = { - modifier = legend_wicked_ways - years = 15 - } - } - } - - stop_promoting_legend = yes - - every_vassal = { - vassal_stance = zealot - custom = every_zealot_vassal - add_opinion = { - modifier = pleased_opinion - opinion = 25 - target = root - } - } - - reverse_add_opinion = { - modifier = angry_opinion - opinion = -20 - target = scope:promoted_legend_owner - } - - stress_impact = { - zealous = minor_stress_impact_loss - gregarious = minor_stress_impact_gain - } - - ai_chance = { #Keep this low so we don't see non-player usage of it much if at all - base = 15 - ai_value_modifier = { - ai_zeal = 1 - } - } - } - - option = { # I have my own reputation to be thinking of - name = legend_spread_events.5330.b - - stop_promoting_legend = yes - - add_piety = minor_piety_gain - - stress_impact = { - zealous = miniscule_stress_impact_loss - cynical = minor_stress_impact_gain - ambitious = miniscule_stress_impact_loss - content = miniscule_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_greed = 0.5 - ai_sociability = -0.5 - } - } - } - - option = { # I'll grin and bear it - name = legend_spread_events.5330.c - - random = { - chance = 20 - send_interface_toast = { - title = legend_spread_events.5330.c.success - left_icon = root - - scope:promoted_legend_owner = { - add_character_modifier = { - modifier = legend_errors_exonerated - years = 10 - } - } - } - } - - reverse_add_opinion = { - target = scope:promoted_legend_owner - modifier = pleased_opinion - opinion = 30 - } - - every_vassal = { - vassal_stance = zealot - custom = every_zealot_vassal - add_opinion = { - modifier = angry_opinion - opinion = -10 - target = root - } - } - - stress_impact = { - humble = miniscule_stress_impact_loss - arrogant = minor_stress_impact_gain - content = miniscule_stress_impact_loss - ambitious = minor_stress_impact_gain - craven = miniscule_stress_impact_loss - brave = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_energy = -0.5 - } - } - } -} - -# Legend owner is very godly; promote more? -# Counterpart to 5330 -legend_spread_events.5335 = { - type = character_event - title = legend_spread_events.5335.t - desc = legend_spread_events.5335.desc - theme = legend - left_portrait = { - character = root - animation = happiness - } - right_portrait = { - character = scope:promoted_legend_owner - animation = personality_zealous - } - cooldown = { years = 25 } - - trigger = { - #You have a legend and the legend owner is virtuous - any_legend = { - any_legend_promoter = { #You are promoting that legend - this = root - } - legend_owner = { - num_virtuous_traits >= 1 #They have at least one virtuous trait - save_temporary_scope_as = promoted_legend_owner_temp - } - save_temporary_scope_as = promoted_legend_temp - } - - scope:promoted_legend_temp = { #Ensure they own the legend - legend_owner = scope:promoted_legend_owner_temp - } - } - - immediate = { - random_legend = { #Grab the legend you're promoting - limit = { - any_legend_promoter = { - this = root - } - legend_owner = { - num_virtuous_traits >= 1 - } - } - save_scope_as = promoted_legend - } - - scope:promoted_legend.legend_owner = { - save_scope_as = promoted_legend_owner - } - - save_scope_as = root_scope - } - - option = { # I love them! - name = legend_spread_events.5335.a - - trigger = { - OR = { - scope:promoted_legend_owner = { #They're REALLY godly - num_virtuous_traits >= 2 - } - has_trait = zealous #Or you're really godly - } - NOT = { - has_trait = cynical - } - } - - add_internal_flag = special - - promoted_legend = { - add_legend_owner_modifier = { - modifier = legend_saintly_sinless - years = 15 - } - } - - add_piety = medium_piety_value - - every_vassal = { - vassal_stance = zealot - custom = every_zealot_vassal - add_opinion = { - modifier = pleased_opinion - opinion = 20 - target = root - } - } - - stress_impact = { - zealous = minor_stress_impact_loss - cynical = medium_stress_impact_gain - } - - ai_chance = { #Keep this low so we don't see non-player usage of it much if at all - base = 15 - ai_value_modifier = { - ai_zeal = 1 - } - } - } - - option = { # Use them to increase my fame - name = legend_spread_events.5335.b - - add_prestige = minor_prestige_value - - promoted_legend = { - add_legend_owner_modifier = { - modifier = legend_principled_pious - years = 10 - } - } - - stress_impact = { - zealous = minor_stress_impact_gain - cynical = miniscule_stress_impact_loss - ambitious = miniscule_stress_impact_loss - content = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_greed = 1 - ai_sociability = 0.5 - } - } - } - - option = { # Perhaps I should learn from him? - name = legend_spread_events.5335.c - - random = { - chance = 20 - send_interface_toast = { - title = legend_spread_events.5335.c.success - left_icon = root - - add_learning_skill = 1 - } - } - - reverse_add_opinion = { - target = scope:promoted_legend_owner - modifier = flattered_opinion - opinion = 15 - } - - every_vassal = { - vassal_stance = zealot - custom = every_zealot_vassal - add_opinion = { - modifier = pleased_opinion - opinion = 10 - target = root - } - } - - stress_impact = { - humble = medium_stress_impact_loss - arrogant = medium_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_energy = -1 - } - } - } -} - -## Additional Spread Events - -# You are asked how the tale goes -legend_spread_events.5400 = { - type = character_event - title = legend_spread_events.5400.t - desc = legend_spread_events.5400.desc - theme = legend - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:chronicler - animation = chancellor - } - cooldown = { years = 20 } - - trigger = { - promoted_legend ?= { - legend_owner = root - } - any_courtier = { - this != root - is_available_ai_adult = yes - } - } - - immediate = { - promoted_legend = { save_scope_as = promoted_legend } - culture = { save_scope_as = root_culture } - grab_appropriate_chronicler_effect = yes - } - - option = { # Improve your legend - name = legend_spread_events.5400.a - - duel = { - skill = diplomacy - value = high_skill_rating - - 50 = { # Your story is beautifully embellished - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - - send_interface_toast = { - title = legend_spread_events.5400.a.majorsuccess - - promoted_legend = { - change_legend_quality_effect = { VALUE = minor_legend_quality_increase } - } - } - } - - 50 = { # Your story is only somewhat embellished - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - send_interface_toast = { - title = legend_spread_events.5400.a.minorsuccess - - add_prestige = medium_prestige_value - } - } - } - - stress_impact = { - honest = miniscule_stress_impact_loss - content = miniscule_stress_impact_loss - deceitful = minor_stress_impact_gain - ambitious = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_sociability = 1 - } - } - } - - option = { # Invent a story to change your legend - name = legend_spread_events.5400.b - - duel = { - skills = { diplomacy intrigue } - value = medium_skill_rating - - 50 = { # They believe you - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - modifier = { # Nobody wants to disagree with you - dread > 49 - add = 5 - } - send_interface_toast = { - title = legend_spread_events.5400.b.success - - add_intrigue_skill = 1 - - promoted_legend = { - set_legend_chapter = { - name = famous_deed - localization_key = legend_chapter_silver_tongued - } - } - } - } - - 50 = { # They don't really believe you - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - modifier = { # You're a crap liar - has_trait = honest - add = 5 - } - send_interface_toast = { - title = legend_spread_events.5400.b.failure - - promoted_legend = { - change_legend_quality_effect = { VALUE = minor_legend_quality_decrease } - } - - promoted_legend = { - set_legend_chapter = { - name = famous_deed - localization_key = legend_chapter_easily_captured - } - } - } - } - } - - stress_impact = { - deceitful = minor_stress_impact_loss - honest = minor_stress_impact_gain - ambitious = miniscule_stress_impact_loss - content = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = 1 - } - } - } - - option = { # Opt-out - name = legend_spread_events.5400.c - - promoted_legend = { - add_legend_owner_modifier = { - modifier = legend_tolerant_trusting - } - } - - stress_impact = { - trusting = miniscule_stress_impact_loss - shy = miniscule_stress_impact_loss - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_compassion = 0.5 - } - } - } -} - -# You are asked whether the tales of a mythical beast are true -legend_spread_events.5405 = { - type = character_event - title = legend_spread_events.5405.t - desc = legend_spread_events.5405.desc - theme = legend - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:chronicler - animation = chancellor - } - cooldown = { years = 20 } - - trigger = { - promoted_legend ?= { - legend_owner = root - has_legend_chapter = discovery - legend_protagonist = root - } - any_courtier = { - this != root - is_available_ai_adult = yes - } - } - - immediate = { - promoted_legend = { save_scope_as = promoted_legend } - grab_appropriate_chronicler_effect = yes - set_up_regional_mythical_creature_effect = yes - } - - option = { # Of course it was! - name = legend_spread_events.5405.a - - duel = { - skills = { diplomacy learning } - value = high_skill_rating - - 50 = { # They buy it - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - send_interface_toast = { - title = legend_spread_events.5405.a.success - - promoted_legend = { - set_legend_chapter = { name = discovery localization_key = legend_chapter_discovery_mythical_beast } - change_legend_quality_effect = { VALUE = medium_legend_quality_increase } - } - } - } - - 50 = { # They don't buy it - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - send_interface_toast = { - title = legend_spread_events.5405.a.failure - - promoted_legend = { - change_legend_quality_effect = { VALUE = medium_legend_quality_decrease } - } - } - } - } - - stress_impact = { - deceitful = miniscule_stress_impact_loss - content = minor_stress_impact_gain - honest = minor_stress_impact_gain - ambitious = miniscule_stress_impact_loss - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_sociability = 1 - } - } - } - - option = { # That's nonsense: here's what I DID see, though... - name = legend_spread_events.5405.b - - duel = { - skill = intrigue - value = high_skill_rating - - 50 = { # You make up a new creature on the spot - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - modifier = { # Nobody wants to disagree with you - dread > 49 - add = 5 - } - modifier = { # You're a good liar - has_trait = deceitful - add = 5 - } - send_interface_toast = { - title = legend_spread_events.5405.b.success - - add_intrigue_skill = 1 - - add_prestige = minor_prestige_gain - - promoted_legend = { - set_legend_chapter = { - name = discovery - localization_key = legend_chapter_discovery_new_myth - } - } - } - } - - 50 = { # What? That's ridiculous - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - modifier = { # You're a crap liar - has_trait = honest - add = 5 - } - send_interface_toast = { - title = legend_spread_events.5405.b.failure - - promoted_legend = { - change_legend_quality_effect = { VALUE = minor_legend_quality_decrease } - } - - add_prestige = medium_prestige_loss - } - } - } - - stress_impact = { - deceitful = minor_stress_impact_loss - honest = minor_stress_impact_gain - ambitious = miniscule_stress_impact_loss - content = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = 1 - } - } - } - - option = { # Who can say? So many wondrous things I saw... - name = legend_spread_events.5405.c - - promoted_legend = { - change_legend_quality_effect = { VALUE = minor_legend_quality_increase } - } - - stress_impact = { - honest = miniscule_stress_impact_loss - deceitful = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = -1 - } - } - } -} - -# You are asked what lies in the ocean depths -legend_spread_events.5410 = { - type = character_event - title = legend_spread_events.5410.t - desc = legend_spread_events.5410.desc - theme = legend - left_portrait = { - character = root - animation = personality_honorable - } - right_portrait = { - character = scope:chronicler - animation = chancellor - } - cooldown = { years = 20 } - - trigger = { - promoted_legend ?= { - legend_owner = root - has_legend_chapter = discovery - legend_protagonist = root - } - any_courtier = { - is_available_ai_adult = yes - } - } - - immediate = { - promoted_legend = { save_scope_as = promoted_legend } - grab_appropriate_chronicler_effect = yes - } - - option = { # The tales of the Vinland were true! - name = legend_spread_events.5410.a - - trigger = { - AND = { - culture = { has_cultural_pillar = heritage_north_germanic } - current_year >= 1000 #Use a rough estimate of when rumours of Vinland were beginning to propagate - } - } - - flavor = legend_spread_events.5410.a.flavor - - duel = { - skills = { diplomacy learning } - value = medium_skill_rating - - 50 = { # They buy it - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - send_interface_toast = { - title = legend_spread_events.5410.a.success - - promoted_legend = { - set_legend_chapter = { name = discovery localization_key = legend_chapter_discovery_vinland } - } - - promoted_legend = { - change_legend_quality_effect = { VALUE = major_legend_quality_increase } - } - } - } - - 50 = { # They don't buy it - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - send_interface_toast = { - title = legend_spread_events.5410.a.failure - - add_prestige = medium_prestige_loss - } - } - } - - stress_impact = { - ambitious = miniscule_stress_impact_loss - arbitrary = miniscule_stress_impact_loss - content = minor_stress_impact_gain - just = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_honor = -0.5 - } - } - } - - option = { # There were mighty sea monsters! - name = legend_spread_events.5410.b - - promoted_legend = { - set_legend_chapter = { name = discovery localization_key = legend_chapter_sea_monsters } - } - - add_character_modifier = { - modifier = sea_monsters_modifier - years = 15 - } - - stress_impact = { - deceitful = minor_stress_impact_loss - honest = minor_stress_impact_gain - ambitious = miniscule_stress_impact_loss - content = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = 1 - } - } - } - - option = { # Who can say? So many wondrous things I saw... - name = legend_spread_events.5410.c - - promoted_legend = { - change_legend_quality_effect = { VALUE = minor_legend_quality_increase } - } - - stress_impact = { - honest = miniscule_stress_impact_loss - deceitful = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = -1 - } - } - } - - option = { # There's nothing there, boy! - name = legend_spread_events.5410.d - - if = { - limit = { - NOT = { - has_trait = lifestyle_traveler - } - } - add_trait = lifestyle_traveler - } - - add_trait_xp = { - trait = lifestyle_traveler - track = danger - value = { 5 15 } - } - - stress_impact = { - honest = miniscule_stress_impact_loss - deceitful = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = -1 - } - } - } -} - -# Is your tale one of nobles or common folk? -legend_spread_events.5415 = { - type = character_event - title = legend_spread_events.5415.t - desc = legend_spread_events.5415.desc - theme = legend - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:chronicler - animation = chancellor - } - cooldown = { years = 20 } - - trigger = { - promoted_legend ?= { - legend_owner = root - } - any_courtier = { - this != root - is_available_ai_adult = yes - } - } - - immediate = { - promoted_legend = { - save_scope_as = promoted_legend - legend_protagonist = { save_scope_as = protagonist } - } - grab_appropriate_chronicler_effect = yes - } - - option = { # It's all about the nobles, baby - name = legend_spread_events.5415.a - - promoted_legend = { - add_legend_owner_modifier = { - modifier = legend_nobles_noted - years = 15 - } - } - - stress_impact = { - content = miniscule_stress_impact_loss - humble = miniscule_stress_impact_loss - ambitious = minor_stress_impact_gain - arrogant = medium_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_honor = -1 - } - } - } - - option = { # It's about the common man! - name = legend_spread_events.5415.b - - promoted_legend = { - add_legend_county_modifier = { - modifier = legend_commoners_celebrated - years = 15 - } - } - - stress_impact = { - ambitious = miniscule_stress_impact_loss - arrogant = miniscule_stress_impact_loss - content = minor_stress_impact_gain - humble = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_compassion = 1 - } - } - } - - option = { # It's about the protag themselves, duh - name = { - trigger = { - promoted_legend = { - legend_protagonist = root - } - } - text = legend_spread_events.5415.c.protag - } - name = { - trigger = { - NOT = { - promoted_legend = { - legend_protagonist = root - } - } - } - text = legend_spread_events.5415.c - } - - promoted_legend = { - change_legend_quality_effect = { VALUE = medium_legend_quality_increase } - } - - if = { - limit = { - promoted_legend = { - legend_protagonist = root - } - } - add_prestige = minor_prestige_gain - } - - stress_impact = { - arrogant = minor_stress_impact_loss - humble = minor_stress_impact_gain - stubborn = minor_stress_impact_loss - fickle = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_greed = 1 - } - } - } -} - -# You supposedly drank a mighty ogre under the table -# Inspired by Kuba Potapczyk -# As in, he suggested the event, not that he's an ogre -# ...necessarily -legend_spread_events.5420 = { - type = character_event - title = legend_spread_events.5420.t - desc = legend_spread_events.5420.desc - theme = legend - left_portrait = { - character = root - animation = toast - } - right_portrait = { - character = scope:chronicler - animation = chancellor - } - cooldown = { years = 20 } - - trigger = { - drinks_alcohol_trigger = yes - promoted_legend ?= { - legend_owner = root - legend_protagonist = root - } - any_courtier = { - this != root - is_available_ai_adult = yes - } - } - - immediate = { - promoted_legend = { - save_scope_as = promoted_legend - } - grab_appropriate_chronicler_effect = yes - } - - option = { # I'LL SHOW YOU RIGHT NOW - name = legend_spread_events.5420.a - - duel = { - skill = prowess - value = high_skill_rating - 50 = { #Chronicler is convinced - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - modifier = { # You're a drunkard - has_trait = drunkard - add = 15 - } - modifier = { # You're a legend mate - has_trait = lifestyle_reveler - add = 10 - } - modifier = { # You'll drink anything - has_trait = gluttonous - add = 5 - } - desc = legend_spread_events.5420.a.success - send_interface_toast = { - title = legend_spread_events.5420.a.success - left_icon = root - right_icon = scope:chronicler - - promoted_legend = { - change_legend_quality_effect = { VALUE = major_legend_quality_increase } - } - } - } - - 50 = { # People are unconvinced - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = legend_spread_events.5420.a.failure - send_interface_toast = { - title = legend_spread_events.5420.a.failure - left_icon = root - right_icon = scope:chronicler - - promoted_legend = { - change_legend_quality_effect = { VALUE = minor_legend_quality_decrease } - } - - add_character_modifier = { - modifier = legend_hangover_modifier - years = 3 - } - } - } - } - - stress_impact = { - arrogant = minor_stress_impact_loss - gluttonous = minor_stress_impact_loss - humble = minor_stress_impact_gain - temperate = medium_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_greed = 1 - } - } - } - - option = { # You'll just have to believe me - name = legend_spread_events.5420.b - - duel = { - skill = diplomacy - value = very_high_skill_rating - 50 = { #Chronicler is convinced - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - modifier = { # You're a drunkard - has_trait = drunkard - add = 7 - } - modifier = { # You're a legend mate - has_trait = lifestyle_reveler - add = 4 - } - modifier = { # You'll drink anything - has_trait = gluttonous - add = 2 - } - desc = legend_spread_events.5420.b.success - send_interface_toast = { - title = legend_spread_events.5420.b.success - left_icon = root - right_icon = scope:chronicler - - promoted_legend = { - change_legend_quality_effect = { VALUE = minor_legend_quality_increase } - } - } - } - - 50 = { # Chronicler is unconvinced - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = legend_spread_events.5420.b.failure - send_interface_toast = { - title = legend_spread_events.5420.b.failure - left_icon = root - right_icon = scope:chronicler - - promoted_legend = { - change_legend_quality_effect = { VALUE = minor_legend_quality_decrease } - } - } - } - } - - stress_impact = { - humble = miniscule_stress_impact_loss - temperate = miniscule_stress_impact_loss - arrogant = minor_stress_impact_gain - gluttonous = medium_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_honor = -0.5 - } - } - } - - option = { # I'm not warmed up :( - name = legend_spread_events.5420.c - - random = { - chance = 20 - send_interface_toast = { - title = legend_spread_events.5420.c.tt - left_icon = root - - add_character_modifier = { - modifier = legend_shy_drinker - years = 10 - } - } - } - - stress_impact = { - arrogant = medium_stress_impact_gain - stubborn = minor_stress_impact_gain - humble = minor_stress_impact_loss - fickle = miniscule_stress_impact_loss - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_honor = -1 - } - } - } -} diff --git a/events/dlc/ce1/legend_spread_events_veronica.txt b/events/dlc/ce1/legend_spread_events_veronica.txt deleted file mode 100644 index 169f2d18c..000000000 --- a/events/dlc/ce1/legend_spread_events_veronica.txt +++ /dev/null @@ -1,3067 +0,0 @@ -namespace = legend_spread_events -namespace = legend_debug - -############################ -## Legend Events -## 0001-1000 -## by Veronica Pazos -############################ - -# legend_spread_events.0001 - Are you the true descendant of x? -# legend_spread_events.0010 - Did you really kill that monster? -# legend_spread_events.0020 - Someone in your court doubts you! Oh no! -# legend_spread_events.0030 - Grab a recent memory - add that to your legend -# legend_spread_events.0040 - Did you do this because of a begging peasant? -# legend_spread_events.0050 - Did you do this to honor a lady/lord? -# legend_spread_events.0060 - Rumours about a powerful vassal mocking your legend -# legend_spread_events.0070 - Someone arrives at your court impressed by your legend -# legend_spread_events.0080 - People are going on a pilgrimage to the location of your legend - -##### DEBUG ###### -legend_debug.0001 = { - orphan = yes - type = character_event - theme = legend - desc = legend_debug.0001.desc - - option = { - create_legend_seed = { - type = heroic - quality = famed - chronicle = debug_legend - properties = { - beast = flag:bear - location = root.location - ancestor = character:159835 - ancestor_flag = flag:ramses - antagonist = flag:vercingetorix - culture = root.culture - title = title:k_england - god = flag:germanic_high_god_name - original_region = geographical_region:world_middle_east_jerusalem - } - } - } - - option = { - add_character_modifier = legend_spread_debug_modifier - } -} - -# Do you wanna send children to praise your legend? -legend_spread_events.0001 = { - - type = character_event - title = legend_spread_events.0001.t - desc = legend_spread_events.0001.desc - theme = legend - left_portrait = { - character = root - animation = personality_honorable - } - right_portrait = { - character = scope:chronicler - animation = chancellor - } - lower_center_portrait = { - character = scope:ancestor - } - lower_left_portrait = { - trigger = { - exists = scope:my_child - primary_title.tier = tier_county - } - character = scope:my_child - } - cooldown = { years = 5 } - override_background = { reference = study } - - trigger = { - is_available_adult = yes - promoted_legend ?= { - legend_owner = root - exists = legend_property:ancestor - } - any_courtier = { #there's someone to tell you about this - this != root - is_available_ai_adult = yes - } - } - - immediate = { - grab_appropriate_chronicler_effect = yes - save_scope_as = root_scope #save scope for loc - promoted_legend = { - save_scope_as = legend - legend_property:ancestor = { save_scope_as = ancestor } - } - if = { - limit = { - any_child = { - is_alive = yes - age <= 12 - NOT = { is_primary_heir_of = root } - } - } - random_child = { - limit = { - is_alive = yes - age <= 12 - NOT = { is_primary_heir_of = root } - } - save_scope_as = my_child - } - } - } - - option = { #I am indeed - name = legend_spread_events.0001.a - duel = { - skills = { diplomacy intrigue } - value = high_skill_rating - 50 = { #you convince people - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = legend_spread_events.0001.a.tt.success - send_interface_toast = { - title = legend_spread_events.0001.a.tt.success - left_icon = root - promoted_legend = { - change_legend_quality_effect = { - VALUE = medium_legend_quality_increase - } - } - } - } - # no one believes you - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = legend_spread_events.0001.a.tt.failure - send_interface_toast = { - title = legend_spread_events.0001.a.tt.failure - left_icon = root - promoted_legend = { - change_legend_quality_effect = { - VALUE = medium_legend_quality_decrease - } - } - } - } - } - - stress_impact = { - content = medium_stress_impact_gain - humble = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = content - has_trait = humble - } - } - } - } - - option = { #Let's keep it down - name = legend_spread_events.0001.b - every_vassal = { - custom = every_parochial_vassal - add_opinion = { - modifier = trust_opinion - opinion = 20 - target = root - } - } - stress_impact = { - arrogant = major_stress_impact_gain - deceitful = medium_stress_impact_gain - ambitious = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = arrogant - has_trait = deceitful - has_trait = ambitious - } - } - } - } - - option = { #Send your own child - name = legend_spread_events.0001.c - trigger = { - exists = scope:my_child - primary_title.tier = tier_county - } - promoted_legend = { - change_legend_quality_effect = { - VALUE = minor_legend_quality_increase - } - } - every_vassal = { - custom = every_parochial_vassal - add_opinion = { - modifier = trust_opinion - opinion = 20 - target = root - } - } - stress_impact = { - humble = medium_stress_impact_gain - content = medium_stress_impact_gain - arrogant = medium_stress_impact_gain #it's weird to have your child in the market - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = humble - has_trait = content - has_trait = arrogant - } - } - } - } - - option = { #I am my own legend - name = legend_spread_events.0001.d - trigger = { - has_trait = arrogant - } - add_character_modifier = { - modifier = legend_my_own_ancestor_modifier - years = 25 - } - stress_impact = { - humble = major_stress_impact_gain - content = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = humble - has_trait = content - } - } - modifier = { - factor = 2 - has_trait = arrogant - } - } - } -} - -# Did you kill that monster? -legend_spread_events.0010 = { - - type = character_event - title = legend_spread_events.0010.t - desc = legend_spread_events.0010.desc - theme = legend - override_background = { reference = feast } - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_trait = arrogant - has_trait = brave - has_trait = strong - has_trait = ambitious - } - } - animation = hero_flex - } - animation = personality_honorable - } - right_portrait = { - character = scope:bard - animation = instrument_active - } - cooldown = { years = 5 } - - trigger = { - is_available_adult = yes - promoted_legend ?= { - legend_owner = root - exists = legend_property:beast #any legend featuring a beast - NOT = { has_variable = had_legends_0010 } - } - any_courtier = { #there's someone to tell you about this - this != root - is_available_ai_adult = yes - } - } - - immediate = { - save_scope_as = root_scope #loc reasons - promoted_legend = { - set_variable = had_legends_0010 - save_scope_as = legend - } - grab_appropriate_bard_effect = yes - } - - option = { #Actually... I killed a dragon - name = legend_spread_events.0010.a - trigger = { - promoted_legend = { - NOT = { - legend_property:beast ?= flag:dragon - } - } - } - duel = { - skills = { diplomacy prowess } #would people believe you _can_ kill a dragon? - value = high_skill_rating - 40 = { #you convince people - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - modifier = { - has_trait = lifestyle_hunter - add = 5 - } - modifier = { - has_trait = deceitful - add = 5 - } - desc = legend_spread_events.0010.a.tt.success - send_interface_toast = { - title = legend_spread_events.0010.a.tt.success - left_icon = root - promoted_legend = { - set_legend_property = { name = beast target = flag:dragon } - } - add_character_modifier = { - modifier = legends_dragon_slayer - years = 25 - } - if = { - limit = { - is_ai = yes - } - random = { - chance = 5 - give_nickname = nick_the_dragonslayer - } - } - else = { - random = { - chance = 50 - give_nickname = nick_the_dragonslayer - } - } - add_prestige = minor_prestige_gain - } - } - # no one believes you - 60 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - modifier = { - has_trait = craven - add = 25 - } - desc = legend_spread_events.0010.a.tt.failure - send_interface_toast = { - title = legend_spread_events.0010.a.tt.failure - left_icon = root - add_prestige = major_prestige_loss - } - } - } - - stress_impact = { - honest = major_stress_impact_gain - humble = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = honest - has_trait = humble - } - } - modifier = { - factor = 2 - has_trait = arrogant - } - } - } - - option = { #I did but it was a GIGANTIC one - name = legend_spread_events.0010.b - trigger = { - promoted_legend = { - NOT = { - legend_property:beast ?= flag:huge_beast - } - } - } - duel = { - skills = { diplomacy prowess } #would people believe you _can_ kill a dragon? - value = medium_skill_rating - 50 = { #you convince people - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - modifier = { - has_trait = lifestyle_hunter - add = 25 - } - modifier = { - has_trait = strong - add = 5 - } - modifier = { - has_trait = brave - add = 5 - } - desc = legend_spread_events.0010.b.tt.success - send_interface_toast = { - title = legend_spread_events.0010.b.tt.success - left_icon = root - promoted_legend = { - set_legend_property = { name = beast target = flag:huge_beast } - } - add_prestige = minor_prestige_gain - } - } - # no one believes you - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - modifier = { - has_trait = craven - add = 10 - } - desc = legend_spread_events.0010.a.tt.failure - send_interface_toast = { - title = legend_spread_events.0010.a.tt.failure - left_icon = root - add_prestige = medium_prestige_loss - } - } - } - - stress_impact = { - humble = medium_stress_impact_gain - honest = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = humble - has_trait = honest - } - } - } - } - - option = { #Let's keep it down - name = legend_spread_events.0010.c - every_vassal = { - custom = every_parochial_vassal - add_opinion = { - modifier = trust_opinion - opinion = 20 - target = root - } - } - stress_impact = { - arrogant = major_stress_impact_gain - deceitful = medium_stress_impact_gain - ambitious = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = arrogant - has_trait = deceitful - has_trait = ambitious - } - } - } - } -} - -# Someone in your court doubts you -legend_spread_events.0020 = { - - type = character_event - title = legend_spread_events.0020.t - desc = { - desc = legend_spread_events.0020.desc.intro - first_valid = { - triggered_desc = { - trigger = { - promoted_legend.legend_protagonist = root - } - desc = legend_spread_events.0020.desc.you_protag - } - desc = legend_spread_events.0020.desc.other_protag - } - desc = legend_spread_events.0020.desc.outro - } - theme = legend - override_background = { reference = corridor_day } - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_trait = arrogant - has_trait = wrathful - } - } - animation = anger - } - animation = eavesdrop - } - right_portrait = { - character = scope:courtier - animation = scheme - } - cooldown = { years = 5 } - - trigger = { - is_available = yes - is_landed = yes - promoted_legend ?= { - legend_owner = root - } - any_courtier = { #there's someone gossipping - is_standard_legend_spreading_courtier = yes - } - } - - immediate = { - promoted_legend = { - legend_protagonist = { save_scope_as = protagonist } - } - random_courtier = { - limit = { - is_standard_legend_spreading_courtier = yes - } - save_scope_as = courtier - } - } - - option = { #Punish them - name = legend_spread_events.0020.a - trigger = { - OR = { - has_trait = arrogant - has_trait = wrathful - has_trait = callous - has_trait = sadistic - } - } - add_dread = major_dread_gain - rightfully_imprison_character_less_verbose_effect = { - TARGET = scope:courtier - IMPRISONER = root - } - every_courtier_or_guest = { - custom = all_courtiers_and_guests - add_opinion = { - opinion = -10 - target = root - modifier = cruelty_opinion - } - } - stress_impact = { - compassionate = major_stress_impact_gain - calm = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = compassionate - has_trait = calm - } - } - modifier = { - factor = 2 - OR = { - has_trait = wrathful - has_trait = sadistic - } - } - } - } - - option = { #Call them out - name = legend_spread_events.0020.b - duel = { - skill = diplomacy - target = scope:courtier - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = legend_spread_events.0020.b.tt.success - send_interface_toast = { - title = legend_spread_events.0020.b.tt.success - left_icon = scope:courtier - add_character_modifier = { - modifier = legend_put_out_rumors_modifier - years = 5 - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = legend_spread_events.0020.b.tt.failure - send_interface_toast = { - title = legend_spread_events.0020.b.tt.failure - left_icon = scope:courtier - scope:courtier = { - add_opinion = { - opinion = -30 - target = root - modifier = dismissive_opinion - } - } - } - } - } - - stress_impact = { - humble = medium_stress_impact_gain - honest = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = humble - has_trait = honest - } - } - } - } - - option = { #Ignore them - name = legend_spread_events.0020.c - add_character_modifier = { - modifier = legend_sus_rumors_modifier - years = 2 - } - stress_impact = { - base = medium_stress_impact_loss - arrogant = medium_stress_impact_gain - wrathful = medium_stress_impact_gain - callous = medium_stress_impact_gain - sadistic = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = arrogant - has_trait = wrathful - has_trait = callous - has_trait = sadistic - } - } - } - } -} - -# Do you wanna add this recent memory to your chronicle? - -scripted_trigger is_legend_worthy_memory = { - has_memory_category = positive - OR = { - has_memory_category = war - has_memory_category = travel - has_memory_category = martial - has_memory_category = battle - has_memory_category = tournament - has_memory_category = nemesis - } -} - -legend_spread_events.0030 = { - - type = character_event - title = legend_spread_events.0030.t - desc = { - desc = legend_spread_events.0030.desc.intro - first_valid = { - triggered_desc = { - trigger = { - promoted_legend.legend_protagonist = root - } - desc = legend_spread_events.0030.desc.you_protag - } - desc = legend_spread_events.0030.desc.other_protag - } - } - theme = legend - override_background = { reference = study } - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:chronicler - animation = page_flipping - } - cooldown = { years = 5 } - - trigger = { - is_available = yes - promoted_legend ?= { - legend_owner = root - has_legend_chapter = { - name = extra_deed - } - NOT = { has_variable = had_legends_0030 } - } - any_memory = { - is_legend_worthy_memory = yes - } - any_courtier = { #chronicler backup - this != root - is_available_ai_adult = yes - } - } - - weight_multiplier = { - base = 1 - modifier = { - add = 1 - any_memory = { - is_legend_worthy_memory = yes - } - } - } - - immediate = { - grab_appropriate_chronicler_effect = yes - promoted_legend = { - set_variable = { - name = had_legends_0030 - years = 10 - } - legend_protagonist = { save_scope_as = protagonist } - } - random_memory = { - limit = { is_legend_worthy_memory = yes } - weight = { - base = 1 - modifier = { - add = 10 - has_memory_category = major - } - modifier = { - add = 2 - has_memory_category = battle - } - modifier = { - add = 2 - has_memory_category = war - } - modifier = { - add = 1 - has_memory_category = martial - } - } - save_scope_as = legend_memory - } - } - - option = { #I already told you my legend once, didn't I? - name = legend_spread_events.0030.a - flavor = legend_spread_events.0030.a.flavor - trigger = { - OR = { - has_trait = stubborn - has_trait = lazy - } - } - add_character_modifier = { - modifier = legend_lazy_modifier - years = 5 - } - stress_impact = { - lazy = major_stress_impact_loss - stubborn = major_stress_impact_loss - calm = medium_stress_impact_gain - ambitious = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = ambitious - has_trait = calm - } - } - modifier = { - factor = 2 - OR = { - has_trait = lazy - has_trait = stubborn - } - } - } - } - - option = { #Sure, replace it - name = legend_spread_events.0030.b - duel = { - skill = diplomacy - value = medium_skill_rating - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = legend_spread_events.0030.b.tt.success - send_interface_toast = { - title = legend_spread_events.0030.b.tt.success - left_icon = root - promoted_legend = { - if = { - limit = { - NOT = { - exists = var:extra_deed_memory - } - } - set_variable = { - name = extra_deed_memory - value = scope:legend_memory - } - } - set_legend_chapter = { name = extra_deed localization_key = legend_chapter_extra_deed_memory } - } - if = { - limit = { #people remember you actually did this - promoted_legend.legend_protagonist = root - } - add_character_modifier = { - modifier = legend_memory_deed_modifier - years = 5 - } - } - else = { - add_prestige = minor_prestige_gain - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = legend_spread_events.0030.b.tt.failure - send_interface_toast = { - title = legend_spread_events.0030.b.tt.failure - left_icon = root - add_prestige = medium_prestige_loss - } - } - } - - stress_impact = { - lazy = medium_stress_impact_gain - stubborn = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = lazy - has_trait = stubborn - } - } - } - } - - option = { #Leave it as it is - name = legend_spread_events.0030.c - every_courtier_or_guest = { - limit = { - OR = { - has_trait = humble - has_trait = content - } - } - custom = humble_content_courtiers_and_guests - add_opinion = { - opinion = 20 - target = root - modifier = pleased_opinion - } - } - stress_impact = { - humble = medium_stress_impact_loss - content = medium_stress_impact_loss - shy = major_stress_impact_loss - arrogant = medium_stress_impact_gain - ambitious = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = humble - has_trait = content - has_trait = shy - } - } - modifier = { - factor = 2 - OR = { - has_trait = arrogant - has_trait = ambitious - } - } - } - } -} - -# Did you do this because a peasant begged you to? -legend_spread_events.0040 = { - - type = character_event - title = legend_spread_events.0040.t - desc = { - desc = legend_spread_events.0040.desc.intro - first_valid = { - triggered_desc = { - trigger = { - promoted_legend.legend_protagonist = root - } - desc = legend_spread_events.0040.desc.you_protag - } - desc = legend_spread_events.0040.desc.other_protag - } - desc = legend_spread_events.0040.desc.outro - } - theme = legend - override_background = { reference = throne_room } - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_trait = callous - has_trait = sadistic - } - } - animation = dismissal - } - animation = personality_honorable - } - right_portrait = { - character = scope:chronicler - animation = page_flipping - } - lower_center_portrait = { - trigger = { - exists = scope:chaplain - scope:chaplain != scope:chronicler - } - character = scope:chaplain - } - cooldown = { years = 5 } - - trigger = { - is_available = yes - promoted_legend ?= { - legend_owner = root - OR = { - legend_type = legend_type:heroic - legend_type = legend_type:holy - } - has_legend_chapter = motivation - NOT = { - has_legend_chapter = { - name = motivation - localization_key = legend_chapter_motivation_peasant - } - } - NOT = { has_variable = had_legends_0040 } - } - any_courtier = { #chronicler backup - this != root - is_available_ai_adult = yes - } - } - - weight_multiplier = { - base = 1 - modifier = { - add = 0.5 - promoted_legend ?= { - legend_owner = root - legend_type = legend_type:holy - } - } - } - - immediate = { - grab_appropriate_chronicler_effect = yes - promoted_legend = { - set_variable = had_legends_0040 - legend_protagonist = { save_scope_as = protagonist } - } - save_scope_as = root_scope - cp:councillor_court_chaplain ?= { save_scope_as = chaplain } - } - - option = { #I would _never_ let a peasant tell me what to do - name = legend_spread_events.0040.a - trigger = { - OR = { - has_trait = callous - has_trait = sadistic - } - } - promoted_legend = { - set_legend_chapter = { name = motivation localization_key = legend_chapter_motivation_evil } - } - stress_impact = { - callous = major_stress_impact_loss - sadistic = major_stress_impact_loss - calm = medium_stress_impact_gain - compassionate = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = calm - has_trait = compassionate - } - } - modifier = { - factor = 2 - OR = { - has_trait = callous - has_trait = sadistic - } - } - } - } - - option = { #I sure did! - name = legend_spread_events.0040.b - duel = { - skill = diplomacy - value = medium_skill_rating - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = legend_spread_events.0040.b.tt.success - send_interface_toast = { - title = legend_spread_events.0040.b.tt.success - left_icon = root - promoted_legend = { - set_legend_chapter = { name = motivation localization_key = legend_chapter_motivation_peasant } - } - add_piety = medium_piety_gain - every_vassal_or_below = { - vassal_stance = courtly - custom = every_courtly_vassal - add_opinion = { - target = root - opinion = -10 - modifier = disappointed_opinion - } - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = legend_spread_events.0040.b.tt.failure - send_interface_toast = { - title = legend_spread_events.0040.b.tt.failure - left_icon = root - if = { - limit = { - exists = cp:councillor_court_chaplain - } - cp:councillor_court_chaplain = { - add_opinion = { - target = root - opinion = -10 - modifier = impious_opinion - } - } - } - else_if = { - limit = { promoted_legend.legend_type = legend_type:holy } - add_piety = medium_piety_loss - } - else = { add_piety = minor_piety_loss } - } - } - } - - stress_impact = { - compassionate = major_stress_impact_loss - callous = medium_stress_impact_gain - sadistic = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 2 - promoted_legend.legend_type = legend_type:holy - } - modifier = { - factor = 2 - OR = { - has_trait = compassionate - has_trait = zealous - } - } - modifier = { - factor = 0 - OR = { - has_trait = callous - has_trait = sadistic - } - } - } - } - - option = { #Leave it as it is - name = legend_spread_events.0040.c - if = { - limit = { - promoted_legend.legend_type = legend_type:holy - } - add_piety = minor_piety_loss - } - else = { - add_piety = miniscule_piety_loss - } - stress_impact = { - zealous = medium_stress_impact_gain - compassionate = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = zealous - has_trait = compassionate - } - } - } - } -} - -# Did you do this to honor a fair lady/lord? -scripted_trigger 0050_valid_courtier = { - is_available_ai_adult = yes - is_close_family_or_spouse_of_root_trigger = no - is_attracted_to_gender_of = root - root = { is_attracted_to_gender_of = prev } -} - -legend_spread_events.0050 = { - type = character_event - title = legend_spread_events.0050.t - desc = legend_spread_events.0050.desc - theme = legend - override_background = { reference = garden } - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_trait = rakish - has_trait = lustful - has_trait = seducer - has_trait = deviant - } - } - animation = flirtation_left - } - triggered_animation = { - trigger = { has_trait = callous } - animation = dismissal - } - animation = laugh - } - right_portrait = { - character = scope:bard - animation = instrument_active - } - lower_left_portrait = { - trigger = { exists = scope:my_spouse } - character = scope:my_spouse - } - lower_right_portrait = scope:honored_lady - cooldown = { years = 5 } - - trigger = { - is_available_adult = yes - promoted_legend ?= { - legend_owner = root - NOT = { has_variable = had_legends_0050 } - NOR = { - has_legend_chapter = { - name = motivation - localization_key = legend_chapter_motivation_spouse - } - has_legend_chapter = { - name = motivation - localization_key = legend_chapter_motivation_honor_lady - } - } - has_legend_chapter = motivation - legend_protagonist = root - } - any_courtier_or_guest = { #we have a lady - 0050_valid_courtier = yes - count >= 2 #to make sure we also have a bard - } - } - - weight_multiplier = { - base = 1 - modifier = { - add = 0.25 - OR = { - is_married = yes - has_trait = lustful - has_trait = seducer - has_trait = rakish - } - } - } - - immediate = { - grab_appropriate_bard_effect = yes - promoted_legend = { - set_variable = had_legends_0050 - } - if = { - limit = { is_married = yes } - random_spouse = { - weight = { - base = 1 - modifier = { - add = 5 - has_relation_soulmate = root - } - modifier = { - add = 3 - primary_spouse = this - } - modifier = { - add = 1 - has_relation_lover = root - } - } - save_scope_as = my_spouse - } - } - random_courtier_or_guest = { - limit = { - 0050_valid_courtier = yes - this != scope:bard - } - weight = { - base = 1 - modifier = { - add = 20 - has_relation_soulmate = root - } - modifier = { - add = 10 - has_relation_lover = root - } - modifier = { - add = 5 - is_married = no - age >= root.age_minus_10 - age <= root.age_plus_10 - } - } - save_scope_as = honored_lady - } - } - - option = { #Of course! To honor my spouse! - name = legend_spread_events.0050.a - trigger = { - is_married = yes - } - promoted_legend = { - set_legend_chapter = { - name = motivation - localization_key = legend_chapter_motivation_spouse - } - } - if = { - limit = { - can_set_relation_soulmate_trigger = { CHARACTER = scope:my_spouse } - scope:my_spouse = { #do they like you - opinion = { - target = root - value >= 50 - } - } - } - set_relation_soulmate = { - reason = soulmate_legend_motivation - copy_reason = lover - target = scope:my_spouse - } - } - else = { - progress_towards_lover_effect = { - CHARACTER = scope:my_spouse - REASON = soulmate_legend_motivation - OPINION = default_lover_opinion - } - } - stress_impact = { - rakish = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = rakish - } - modifier = { - factor = 0 - might_cheat_on_every_partner_trigger = no - } - } - } - - option = { #That fair woman/man... - name = legend_spread_events.0050.b - duel = { - skill = intrigue - value = medium_skill_rating - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - modifier = { - has_trait = seducer - add = 10 - } - modifier = { - scope:honored_lady = { - has_trait = lustful - } - add = 5 - } - desc = legend_spread_events.0050.b.tt.success - send_interface_toast = { - title = legend_spread_events.0050.b.tt.success - left_icon = scope:honored_lady - promoted_legend = { - set_legend_chapter = { name = motivation localization_key = legend_chapter_motivation_honor_lady } - } - if = { - limit = { has_focus_or_focus_trait_trigger = { FOCUS = intrigue_temptation_focus } } - add_intrigue_lifestyle_xp = major_lifestyle_xp - } - else = { - add_intrigue_lifestyle_xp = medium_lifestyle_xp - } - progress_towards_lover_effect = { - CHARACTER = scope:honored_lady - REASON = soulmate_legend_motivation - OPINION = default_lover_opinion - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - modifier = { - scope:honored_lady = { - OR = { - has_trait = chaste - has_trait = celibate - } - } - add = 10 - } - desc = legend_spread_events.0050.b.tt.failure - send_interface_toast = { - title = legend_spread_events.0050.b.tt.failure - left_icon = scope:honored_lady - - reverse_add_opinion = { - modifier = insulted_opinion - target = scope:honored_lady - opinion = -10 - } - } - } - } - scope:my_spouse ?= { - add_opinion = { - target = root - modifier = disrespect_opinion - opinion = -25 - } - } - stress_impact = { - seducer = major_stress_impact_loss - lustful = medium_stress_impact_loss - honest = medium_stress_impact_gain - compassionate = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = honest - has_trait = compassionate - trigger_if = { - limit = { exists = scope:my_spouse } - NOT = { - might_cheat_on_partner_trigger = { PARTNER = scope:my_spouse } - } - } - } - } - modifier = { - factor = 2 - OR = { - has_trait = lustful - has_trait = seducer - } - } - } - } - - option = { #Leave it as it is - name = legend_spread_events.0050.c - add_prestige = minor_prestige_gain - scope:my_spouse ?= { - add_opinion = { - modifier = pleased_opinion - opinion = 5 - target = root - } - } - stress_impact = { - base = medium_stress_impact_loss - lustful = major_stress_impact_gain - seducer = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = lustful - has_trait = seducer - } - } - } - } -} - -#Rumors about a powerful vassal mocking you -legend_spread_events.0060 = { - - type = character_event - title = legend_spread_events.0060.t - desc = { - desc = legend_spread_events.0060.desc.intro - first_valid = { - triggered_desc = { - trigger = { - promoted_legend.legend_protagonist = root - } - desc = legend_spread_events.0060.desc.you_protag - } - desc = legend_spread_events.0060.desc.other_protag - } - desc = legend_spread_events.0060.desc.outro - } - theme = legend - override_background = { reference = throne_room } - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_trait = wrathful - has_trait = arrogant - has_trait = deceitful - has_trait = stubborn - } - } - animation = anger - } - animation = dismissal - } - right_portrait = { - character = scope:courtier - animation = worry - } - lower_center_portrait = scope:bad_vassal - cooldown = { years = 5 } - - trigger = { - is_available_adult = yes - promoted_legend ?= { - legend_owner = root - } - any_courtier_or_guest = { - is_standard_legend_spreading_courtier = yes - } - any_powerful_vassal = { - is_available_ai_adult = yes - opinion = { - target = root - value <= -20 - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - add = 0.25 - any_powerful_vassal = { - is_available_ai_adult = yes - opinion = { - target = root - value <= -75 - } - } - } - } - - immediate = { - random_courtier_or_guest = { - limit = { is_standard_legend_spreading_courtier = yes } - weight = { - base = 1 - modifier = { - add = 2 - has_any_good_relationship_with_root_trigger = yes - } - } - save_scope_as = courtier - } - random_powerful_vassal = { - limit = { - is_available_ai_adult = yes - opinion = { - target = root - value <= -20 - } - } - weight = { - base = 1 - modifier = { - add = 10 - has_relation_nemesis = root - } - modifier = { - add = 5 - has_relation_rival = root - } - modifier = { - add = 2 - opinion = { - target = root - value <= -50 - } - } - } - save_scope_as = bad_vassal - } - } - - option = { #Seethe - name = legend_spread_events.0060.a - progress_towards_rival_effect = { - CHARACTER = scope:bad_vassal - REASON = rival_mocked_legend - OPINION = -20 - } - stress_impact = { - base = medium_stress_impact_loss - wrathful = massive_stress_impact_loss - calm = medium_stress_impact_gain - forgiving = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 2 - has_trait = wrathful - } - modifier = { - factor = 0 - OR = { - has_trait = calm - has_trait = forgiving - } - } - } - } - - option = { #Try to put out the rumors - name = legend_spread_events.0060.b - duel = { - skills = { diplomacy intrigue } - target = scope:bad_vassal - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = legend_spread_events.0060.b.tt.success - send_interface_toast = { - title = legend_spread_events.0060.b.tt.success - left_icon = scope:bad_vassal - add_character_modifier = { - modifier = legend_no_mocking_modifier - years = 5 - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = legend_spread_events.0060.b.tt.failure - send_interface_toast = { - title = legend_spread_events.0060.b.tt.failure - left_icon = scope:bad_vassal - add_character_modifier = { - modifier = legend_extra_mocking_modifier - years = 5 - } - } - } - } - stress_impact = { - wrathful = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = wrathful - has_trait = arrogant - } - } - } - } - - option = { #Turn it back on them - name = legend_spread_events.0060.c - trigger = { - intrigue >= high_skill_rating - } - scope:bad_vassal = { - add_character_modifier = { - modifier = not_believable_modifier - years = 10 - } - } - stress_impact = { - base = medium_stress_impact_loss - callous = medium_stress_impact_loss - deceitful = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = callous - has_trait = deceitful - } - } - } - } - - option = { #Didn't hear anything - name = legend_spread_events.0060.d - - stress_impact = { - base = minor_stress_impact_loss - calm = medium_stress_impact_loss - forgiving = medium_stress_impact_loss - wrathful = major_stress_impact_gain - arrogant = major_stress_impact_gain - vengeful = major_stress_impact_gain - callous = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 2 - OR = { - has_trait = calm - has_trait = forgiving - } - } - modifier = { - factor = 0 - OR = { - has_trait = wrathful - has_trait = arrogant - has_trait = callous - has_trait = vengeful - } - } - } - } -} - - -#Someone sings your legend at a party - doubts -#Start of event chain - -scripted_effect trigger_appropriate_breakdown_effect = { - if = { - limit = { - promoted_legend.legend_type = legend_type:holy - } - trigger_event = { - id = legend_spread_events.0072 - days = { 10 20 } - } - } - else_if = { - limit = { - promoted_legend.legend_type = legend_type:heroic - } - trigger_event = { - id = legend_spread_events.0073 - days = { 10 20 } - } - } - else = { #Legitimizing - trigger_event = { - id = legend_spread_events.0074 - days = { 10 20 } - } - } -} - -legend_spread_events.0070 = { - type = character_event - title = legend_spread_events.0070.t - desc = legend_spread_events.0070.desc - theme = legend - override_background = { reference = feast } - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_trait = arrogant - has_trait = callous - has_trait = ambitious - } - } - animation = personality_honorable - } - triggered_animation = { - trigger = { - OR = { - has_trait = humble - has_trait = depressed_genetic - has_trait = depressed_1 - } - } - animation = grief - } - animation = worry - } - right_portrait = { - character = scope:bard - animation = instrument_active - } - cooldown = { years = 25 } - - trigger = { - is_available_adult = yes - promoted_legend ?= { - legend_owner = root - } - any_courtier_or_guest = { - is_standard_legend_spreading_courtier = yes - } - } - - weight_multiplier = { - base = 1 - } - - immediate = { - grab_appropriate_bard_effect = yes - } - - option = { #I am the very best like no one ever was - name = legend_spread_events.0070.a - trigger = { - OR = { - has_trait = arrogant - has_trait = callous - has_trait = ambitious - } - } - set_variable = legend_chain_arrogant_var - custom_tooltip = legend_spread_events.0070.a.tt - add_prestige = minor_prestige_gain - trigger_event = { - id = legend_spread_events.0071 - days = { 10 20 } - } - - stress_impact = { - base = medium_stress_impact_loss - depressed_1 = major_stress_impact_gain - depressed_genetic = major_stress_impact_gain - humble = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 2 - OR = { - has_trait = arrogant - has_trait = ambitious - has_trait = callous - } - } - modifier = { - factor = 0 - OR = { - has_trait = depressed_1 - has_trait = depressed_genetic - has_trait = humble - } - } - } - } - - option = { #I'm having a mental breakdown help - name = legend_spread_events.0070.b - trigger = { - NOR = { - has_trait = humble - has_trait = depressed_genetic - has_trait = depressed_1 - } - } - trigger_appropriate_breakdown_effect = yes - custom_tooltip = legend_spread_events.0070.a.tt - add_piety = minor_piety_gain - - stress_impact = { - arrogant = medium_stress_impact_gain - ambitious = medium_stress_impact_gain - callous = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = arrogant - has_trait = ambitious - has_trait = callous - } - } - } - } - - option = { #Im having a _really_ bad mental breakdown help - name = legend_spread_events.0070.c - trigger = { - OR = { - has_trait = humble - has_trait = depressed_genetic - has_trait = depressed_1 - } - } - custom_tooltip = legend_spread_events.0070.a.tt - set_variable = legend_chain_depressed_var - trigger_appropriate_breakdown_effect = yes - - stress_impact = { - base = medium_stress_impact_loss - arrogant = major_stress_impact_gain - ambitious = major_stress_impact_gain - callous = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = arrogant - has_trait = ambitious - has_trait = callous - } - } - } - } - - option = { #It's not that bad - name = legend_spread_events.0070.d - custom_tooltip = legend_spread_events.0070.a.tt - add_prestige = minor_prestige_gain - trigger_event = { - id = legend_spread_events.0071 - days = { 10 20 } - } - - stress_impact = { - base = medium_stress_impact_gain - depressed_1 = major_stress_impact_gain - depressed_genetic = major_stress_impact_gain - humble = major_stress_impact_gain - arrogant = medium_stress_impact_loss - ambitious = medium_stress_impact_loss - callous = medium_stress_impact_loss - } - ai_chance = { - base = 50 - modifier = { - factor = 0 - OR = { - has_trait = depressed_1 - has_trait = depressed_genetic - has_trait = humble - } - } - } - } -} - -scripted_trigger legend_spread_events_0071_promoter_trigger = { - is_physically_able_adult = yes - number_of_personality_traits_in_common = { - target = root - value >= 1 - } - NOT = { exists = promoted_legend } -} - -# You're feeling pretty good about your legend -legend_spread_events.0071 = { - type = character_event - title = legend_spread_events.0071.t - desc = { - desc = legend_spread_events.0071.desc.intro - first_valid = { - triggered_desc = { - trigger = { has_variable = legend_chain_arrogant_var } - desc = legend_spread_events.0071.desc.mid.arrogant - } - desc = legend_spread_events.0071.desc.mid - } - first_valid = { - triggered_desc = { - trigger = { - exists = scope:promoter - } - desc = legend_spread_events.0071.desc.promoter - } - desc = legend_spread_events.0071.desc.fallback - } - } - theme = legend_terrain - left_portrait = { - character = root - animation = hero_flex - camera = camera_event_very_left - } - right_portrait = { - trigger = { exists = scope:promoter } - character = scope:promoter - animation = admiration - camera = camera_event_right - } - lower_right_portrait = { - trigger = { exists = scope:other_promoter } - character = scope:other_promoter - } - - immediate = { - save_scope_as = root_scope - random_neighboring_and_across_water_top_liege_realm_owner = { - limit = { legend_spread_events_0071_promoter_trigger = yes } - weight = { - base = 1 - modifier = { - add = 10 - has_any_good_relationship_with_root_trigger = yes - } - modifier = { - add = -5 - primary_title = { is_head_of_faith = yes } - } - } - save_scope_as = promoter - } - if = { - limit = { NOT = { exists = scope:promoter } } - random_vassal = { - limit = { legend_spread_events_0071_promoter_trigger = yes } - weight = { - base = 1 - modifier = { - add = 10 - has_any_good_relationship_with_root_trigger = yes - } - modifier = { - add = 5 - is_powerful_vassal_of = root - } - } - save_scope_as = promoter - } - } - if = { - limit = { NOT = { exists = scope:promoter } } - random_courtier = { - limit = { legend_spread_events_0071_promoter_trigger = yes } - weight = { - base = 1 - modifier = { - add = 10 - has_any_good_relationship_with_root_trigger = yes - } - } - save_scope_as = promoter - } - } - random_neighboring_and_across_water_top_liege_realm_owner = { - limit = { - legend_spread_events_0071_promoter_trigger = yes - this != scope:promoter - } - weight = { - base = 1 - modifier = { - add = 10 - has_any_good_relationship_with_root_trigger = yes - } - modifier = { - add = -5 - primary_title = { is_head_of_faith = yes } - } - } - save_scope_as = other_promoter - } - if = { - limit = { NOT = { exists = scope:other_promoter } } - random_vassal = { - limit = { - legend_spread_events_0071_promoter_trigger = yes - this != scope:promoter - } - weight = { - base = 1 - modifier = { - add = 10 - has_any_good_relationship_with_root_trigger = yes - } - modifier = { - add = 5 - is_powerful_vassal_of = root - } - } - save_scope_as = other_promoter - } - } - if = { - limit = { NOT = { exists = scope:other_promoter } } - random_courtier = { - limit = { - legend_spread_events_0071_promoter_trigger = yes - this != scope:promoter - } - weight = { - base = 1 - modifier = { - add = 10 - has_any_good_relationship_with_root_trigger = yes - } - } - save_scope_as = other_promoter - } - } - } - - option = { #Convince this guy to be a promoter - name = legend_spread_events.0071.a - trigger = { - exists = scope:promoter - } - scope:promoter = { - set_promoted_legend = root.promoted_legend - add_opinion = { - modifier = impressed_opinion - target = root - opinion = 25 - } - } - - stress_impact = { - gregarious = medium_stress_impact_loss - ambitious = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 2 - has_trait = gregarious - } - modifier = { - factor = 0 - has_trait = ambitious - } - } - } - - option = { #Convince this other guy - name = legend_spread_events.0071.b - trigger = { exists = scope:other_promoter } - scope:other_promoter = { - set_promoted_legend = root.promoted_legend - add_opinion = { - modifier = impressed_opinion - target = root - opinion = 25 - } - } - - stress_impact = { - gregarious = medium_stress_impact_loss - ambitious = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 2 - has_trait = gregarious - } - modifier = { - factor = 0 - OR = { - has_trait = ambitious - has_trait = arrogant - } - } - } - } - - option = { #Try to convince your vassals you're cool instead - name = legend_spread_events.0071.c - every_vassal = { - vassal_stance = parochial - custom = every_parochial_vassal - add_opinion = { - modifier = impressed_opinion - target = root - opinion = 50 - } - } - - stress_impact = { - humble = medium_stress_impact_gain - ambitious = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = humble - } - modifier = { - factor = 2 - has_trait = ambitious - } - } - } - - option = { #I don't care about anyone's opinion but MY OWN - name = legend_spread_events.0071.d - if = { - limit = { - has_variable = legend_chain_arrogant_var - } - promoted_legend = { - add_legend_owner_modifier = { - modifier = legend_chain_arrogant_modifier - } - } - } - else = { - promoted_legend = { - add_legend_owner_modifier = { - modifier = legend_chain_kinda_arrogant_modifier - } - } - } - - stress_impact = { - arrogant = medium_stress_impact_loss - callous = medium_stress_impact_loss - deceitful = medium_stress_impact_loss - humble = medium_stress_impact_gain - gregarious = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = humble - has_trait = gregarious - } - } - modifier = { - factor = 2 - OR = { - has_trait = callous - has_trait = deceitful - has_trait = arrogant - } - } - } - } -} - -# You're feeling pretty bad about your legend - Holy -legend_spread_events.0072 = { - type = character_event - title = legend_spread_events.0072.t - desc = { - desc = legend_spread_events.0072.desc.intro - first_valid = { - triggered_desc = { - trigger = { has_variable = legend_chain_depressed_var } - desc = legend_spread_events.0072.desc.mid.depressed - } - desc = legend_spread_events.0072.desc.mid.fallback - } - first_valid = { - triggered_desc = { - trigger = { - exists = scope:praying_vassal - } - desc = legend_spread_events.0072.desc.vassal - } - desc = legend_spread_events.0072.desc.fallback - } - } - theme = legend - override_background = { reference = temple } - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_trait = humble - has_trait = depressed_genetic - has_trait = depressed_1 - } - } - animation = worry - } - animation = prayer - } - right_portrait = { - trigger = { exists = scope:praying_vassal } - character = scope:praying_vassal - animation = personality_zealous - } - lower_center_portrait = { - trigger = { exists = scope:bishop } - character = scope:bishop - } - - weight_multiplier = { - base = 1 - } - - immediate = { - save_scope_as = root_scope - if = { - limit = { - any_vassal = { - is_physically_able_adult = yes - ai_zeal > 0 - NOT = { exists = promoted_legend } - NOT = { has_council_position = councillor_court_chaplain } - } - } - random_vassal = { - limit = { - is_physically_able_adult = yes - ai_zeal > 0 - NOT = { exists = promoted_legend } - NOT = { has_council_position = councillor_court_chaplain } - } - weight = { - base = 1 - modifier = { - add = 10 - is_powerful_vassal_of = root - } - modifier = { - add = 5 - has_any_good_relationship_with_root_trigger = yes - } - modifier = { - add = 5 - has_trait = zealous - } - } - save_scope_as = praying_vassal - } - } - if = { - limit = { - exists = cp:councillor_court_chaplain - } - cp:councillor_court_chaplain = { save_scope_as = bishop } - } - } - - option = { #Think about god - name = legend_spread_events.0072.a - promoted_legend = { - add_legend_owner_modifier = { - modifier = legend_chain_zealous_modifier - } - } - - stress_impact = { - zealous = major_stress_impact_loss - cynical = medium_stress_impact_gain - gregarious = medium_stress_impact_gain - ambitious = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 2 - has_trait = zealous - } - modifier = { - factor = 0 - OR = { - has_trait = gregarious - has_trait = ambitious - has_trait = cynical - } - } - } - } - - option = { #Convince this guy that's also praying here - name = legend_spread_events.0072.b - trigger = { - exists = scope:praying_vassal - } - scope:praying_vassal = { - set_promoted_legend = root.promoted_legend - add_opinion = { - modifier = impressed_opinion - target = root - opinion = 25 - } - } - - stress_impact = { - gregarious = medium_stress_impact_loss - ambitious = medium_stress_impact_gain - zealous = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 2 - has_trait = gregarious - } - modifier = { - factor = 0 - OR = { - has_trait = ambitious - has_trait = zealous - } - } - } - } - - option = { #Try to convince your vassals you're cool instead - name = legend_spread_events.0072.c - every_vassal = { - vassal_stance = zealot - custom = every_zealot_vassal - add_opinion = { - modifier = impressed_opinion - target = root - opinion = 50 - } - } - - if = { #if you don't have another option we give you a bit of extra piety - limit = { - NOT = { exists = scope:praying_vassal } - } - add_piety = minor_piety_gain - } - - stress_impact = { - humble = medium_stress_impact_gain - zealous = medium_stress_impact_gain - ambitious = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = humble - has_trait = zealous - } - } - modifier = { - factor = 2 - has_trait = ambitious - } - } - } - - option = { #I don't care about anyone's opinion but my chaplain's - name = legend_spread_events.0072.d - trigger = { - exists = scope:bishop - } - scope:bishop = { - add_opinion = { - target = root - modifier = pleased_opinion - opinion = 50 - } - } - - stress_impact = { - zealous = medium_stress_impact_loss - callous = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - ambitious = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = callous - has_trait = arrogant - has_trait = ambitious - } - } - } - } -} - -# You're feeling pretty bad about your legend - Heroic -legend_spread_events.0073 = { - type = character_event - title = legend_spread_events.0073.t - desc = { - desc = legend_spread_events.0073.desc.intro - first_valid = { - triggered_desc = { - trigger = { has_variable = legend_chain_depressed_var } - desc = legend_spread_events.0073.desc.mid.depressed - } - desc = legend_spread_events.0073.desc.mid.fallback - } - first_valid = { - triggered_desc = { - trigger = { - exists = scope:fighting_vassal - } - desc = legend_spread_events.0073.desc.vassal - } - desc = legend_spread_events.0073.desc.fallback - } - } - theme = legend_terrain - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_trait = humble - has_trait = depressed_genetic - has_trait = depressed_1 - } - } - animation = grief - } - animation = worry - } - right_portrait = { - trigger = { exists = scope:fighting_vassal } - character = scope:fighting_vassal - animation = marshal - } - lower_center_portrait = { - trigger = { exists = scope:marshal } - character = scope:marshal - } - - weight_multiplier = { - base = 1 - } - - immediate = { - save_scope_as = root_scope - if = { - limit = { - any_vassal = { - is_physically_able_adult = yes - OR = { - ai_boldness > 0 - ai_energy > 0 - } - NOT = { exists = promoted_legend } - NOT = { has_council_position = councillor_marshal } - } - } - random_vassal = { - limit = { - is_physically_able_adult = yes - OR = { - ai_boldness > 0 - ai_energy > 0 - } - NOT = { exists = promoted_legend } - NOT = { has_council_position = councillor_marshal } - } - weight = { - base = 1 - modifier = { - add = 10 - is_powerful_vassal_of = root - } - modifier = { - add = 5 - has_any_good_relationship_with_root_trigger = yes - } - modifier = { - add = 5 - has_trait = brave - } - } - save_scope_as = fighting_vassal - } - } - if = { - limit = { - exists = cp:councillor_marshal - } - cp:councillor_marshal = { save_scope_as = marshal } - } - } - - option = { #Think about heroic battles - name = legend_spread_events.0073.a - promoted_legend = { - add_legend_owner_modifier = { - modifier = legend_chain_army_modifier - } - } - - stress_impact = { - calm = medium_stress_impact_gain - wrathful = medium_stress_impact_loss - brave = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 2 - OR = { - has_trait = wrathful - has_trait = brave - } - } - modifier = { - factor = 0 - has_trait = calm - } - } - } - - option = { #Convince this guy that's also hanging out here - name = legend_spread_events.0073.b - trigger = { - exists = scope:fighting_vassal - } - scope:fighting_vassal = { - set_promoted_legend = root.promoted_legend - add_opinion = { - modifier = impressed_opinion - target = root - opinion = 25 - } - } - - stress_impact = { - gregarious = medium_stress_impact_loss - ambitious = medium_stress_impact_gain - zealous = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 2 - has_trait = gregarious - } - modifier = { - factor = 0 - OR = { - has_trait = ambitious - has_trait = zealous - } - } - } - } - - option = { #Try to convince your vassals you're cool instead - name = legend_spread_events.0073.c - every_vassal = { - vassal_stance = glory_hound - custom = every_glory_hound_vassal - add_opinion = { - modifier = impressed_opinion - target = root - opinion = 50 - } - } - - if = { #if you don't have another option we give you a bit of extra prestige - limit = { - NOT = { exists = scope:fighting_vassal } - } - add_prestige = minor_prestige_gain - } - - stress_impact = { - ambitious = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 2 - has_trait = ambitious - } - } - } - - option = { #I don't care about anyone's opinion but my marshal's - name = legend_spread_events.0073.d - trigger = { - exists = scope:marshal - } - promoted_legend = { - add_legend_owner_modifier = { - modifier = legend_chain_marshal_modifier - } - } - scope:marshal = { - add_opinion = { - target = root - modifier = pleased_opinion - opinion = 50 - } - } - - stress_impact = { - callous = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - ambitious = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = callous - has_trait = arrogant - has_trait = ambitious - } - } - } - } -} - -# You're feeling pretty bad about your legend - Legitimizing -legend_spread_events.0074 = { - type = character_event - title = legend_spread_events.0074.t - desc = { - desc = legend_spread_events.0074.desc.intro - first_valid = { - triggered_desc = { - trigger = { has_variable = legend_chain_depressed_var } - desc = legend_spread_events.0074.desc.mid.depressed - } - desc = legend_spread_events.0074.desc.mid.fallback - } - first_valid = { - triggered_desc = { - trigger = { - exists = scope:wise_vassal - } - desc = legend_spread_events.0074.desc.vassal - } - } - first_valid = { - triggered_desc = { - trigger = { - exists = scope:spouse - } - desc = legend_spread_events.0074.desc.spouse - } - desc = legend_spread_events.0074.desc.fallback - } - } - theme = legend - override_background = { reference = ce1_catacombs } - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_trait = humble - has_trait = depressed_genetic - has_trait = depressed_1 - } - } - animation = grief - } - animation = worry - } - right_portrait = { - trigger = { exists = scope:wise_vassal } - character = scope:wise_vassal - animation = personality_honorable - } - lower_left_portrait = { - trigger = { exists = scope:spouse } - character = scope:spouse - } - lower_right_portrait = { - trigger = { exists = scope:chancellor } - character = scope:chancellor - } - - immediate = { - save_scope_as = root_scope - if = { - limit = { - any_vassal = { - is_physically_able_adult = yes - OR = { - ai_sociability > 0 - ai_compassion > 0 - } - NOT = { exists = promoted_legend } - NOT = { has_council_position = councillor_chancellor } - } - } - random_vassal = { - limit = { - is_physically_able_adult = yes - OR = { - ai_sociability > 0 - ai_compassion > 0 - } - NOT = { exists = promoted_legend } - NOT = { has_council_position = councillor_chancellor } - } - weight = { - base = 1 - modifier = { - add = 10 - is_powerful_vassal_of = root - } - modifier = { - add = 5 - has_any_good_relationship_with_root_trigger = yes - } - modifier = { - add = 5 - OR = { - has_trait = shrewd - has_trait = intellect_good - } - } - } - save_scope_as = wise_vassal - } - } - if = { - limit = { - exists = cp:councillor_chancellor - } - cp:councillor_chancellor = { save_scope_as = chancellor } - } - if = { - limit = { - any_spouse = { } - } - random_spouse = { - weight = { - base = 1 - modifier = { - add = 10 - OR = { - has_relation_lover = root - has_relation_soulmate = root - } - } - modifier = { - add = 5 - this = root.primary_spouse - } - } - save_scope_as = spouse - } - } - } - - option = { #Think about your spouse - name = legend_spread_events.0074.a - trigger = { exists = scope:spouse } - add_character_modifier = { - modifier = legend_chain_spouse_modifier - years = 25 - } - - stress_impact = { - callous = medium_stress_impact_gain - sadistic = medium_stress_impact_gain - compassionate = medium_stress_impact_loss - lustful = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 2 - OR = { - has_trait = lustful - has_trait = compassionate - } - } - modifier = { - factor = 0 - OR = { - has_trait = callous - has_trait = sadistic - } - } - } - } - - option = { #Convince this guy that's also hanging out here - name = legend_spread_events.0074.b - trigger = { - exists = scope:wise_vassal - } - scope:wise_vassal = { - set_promoted_legend = root.promoted_legend - add_opinion = { - modifier = impressed_opinion - target = root - opinion = 25 - } - } - - stress_impact = { - gregarious = medium_stress_impact_loss - ambitious = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 2 - has_trait = gregarious - } - modifier = { - factor = 0 - OR = { - has_trait = ambitious - has_trait = compassionate - has_trait = lustful - } - } - } - } - - option = { #Try to convince your vassals you're cool instead - name = legend_spread_events.0074.c - trigger = { - any_vassal = { } - } - every_vassal = { - vassal_stance = courtly - custom = every_courtly_vassal - add_opinion = { - modifier = impressed_opinion - target = root - opinion = 50 - } - } - - if = { #if you don't have another option we give you a bit of extra prestige - limit = { - NOR = { - exists = scope:wise_vassal - exists = scope:spouse - } - } - add_prestige = minor_prestige_gain - } - - stress_impact = { - - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = callous - has_trait = deceitful - } - } - } - } - - option = { #I don't care about anyone's opinion but my chancellor's - name = legend_spread_events.0074.d - trigger = { - exists = scope:chancellor - } - promoted_legend = { - add_legend_owner_modifier = { - modifier = legend_chain_chancellor_modifier - } - } - scope:chancellor = { - add_opinion = { - target = root - modifier = pleased_opinion - opinion = 50 - } - } - - stress_impact = { - callous = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - ambitious = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = callous - has_trait = arrogant - has_trait = ambitious - } - } - } - } -} diff --git a/events/dlc/ce1/legitimacy_events.txt b/events/dlc/ce1/legitimacy_events.txt deleted file mode 100644 index 8b4382379..000000000 --- a/events/dlc/ce1/legitimacy_events.txt +++ /dev/null @@ -1,32 +0,0 @@ -namespace = legitimacy_events - -############################ -## Legitimacy Maintenance Events -## 0001-1000 -## by Joe Parkin -############################ - -# legitimacy_events.0001 - Debug event for testing base legitimacy values with breakdowns of sources - -legitimacy_events.0001 = { - type = character_event - title = LOREM_IPSUM_TITLE - desc = LOREM_IPSUM_DESCRIPTION - theme = realm - orphan = yes - left_portrait = root - - trigger = { - exists = dynasty - # Exclude unplayable for now - NOR = { - government_has_flag = government_is_republic - government_has_flag = government_is_theocracy - } - } - - option = { - add_legitimacy = base_legitimacy_value - custom_tooltip = base_legitimacy_debug_tt - } -} diff --git a/events/dlc/ce1/physician_epidemic_events.txt b/events/dlc/ce1/physician_epidemic_events.txt deleted file mode 100644 index 58b5334b8..000000000 --- a/events/dlc/ce1/physician_epidemic_events.txt +++ /dev/null @@ -1,1481 +0,0 @@ -namespace = physician_epidemic_events - -############################ -## Superstitious physician irritating religious officials -## 1000 -## by James Beaumont -############################ -physician_epidemic_events.1000 = { - type = character_event - title = physician_epidemic_events.1000.t - desc = physician_epidemic_events.1000.desc - theme = plague - override_effect_2d = { reference = flies } - left_portrait = { - character = scope:zealous_courtier - animation = anger - camera = camera_event_very_left - } - right_portrait = { - character = scope:physician - animation = physician - } - cooldown = { years = 5 } - trigger = { - realm_has_any_nearby_epidemic = { INTENSITY = major SIZE = 1 } - court_position:court_physician_court_position ?= { - probably_superstitious = yes - is_available_ai_adult = yes - } - OR = { - any_vassal = { - probably_anti_superstitious = yes - is_available_ai_adult = yes - } - any_courtier_or_guest = { - probably_anti_superstitious = yes - is_available_ai_adult = yes - } - } - } - - immediate = { - get_random_nearby_realm_epidemic = { INTENSITY = major } - court_position:court_physician_court_position = { save_scope_as = physician } - if = { - limit = { - any_vassal = { - probably_anti_superstitious = yes - is_available_ai_adult = yes - } - } - random_vassal = { - limit = { - probably_anti_superstitious = yes - is_available_ai_adult = yes - } - weight = { - base = 1 - modifier = { - add = 10 - is_of_major_interest_to_root_trigger = yes - } - modifier = { - add = 5 - is_of_minor_interest_to_root_trigger = yes - } - modifier = { - add = ai_zeal - } - } - save_scope_as = zealous_courtier - } - } - else = { - random_courtier_or_guest = { - limit = { - probably_anti_superstitious = yes - is_available_ai_adult = yes - } - weight = { - base = 1 - modifier = { - add = 10 - is_of_major_interest_to_root_trigger = yes - } - modifier = { - add = 5 - is_of_minor_interest_to_root_trigger = yes - } - modifier = { - add = ai_zeal - } - } - save_scope_as = zealous_courtier - } - } - } - - option = { # How about I suggest a better solution instead - name = physician_epidemic_events.1000.a - trigger = { - has_trait = whole_of_body - } - add_character_modifier = { - modifier = ce1_non_heretical_solution - years = 5 - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_zeal = 1 - ai_compassion = 1 - ai_rationality = 1 - } - } - } - - option = { # Oh hush you bore, I'm sure this will work - name = physician_epidemic_events.1000.b - add_character_modifier = { - modifier = ce1_unorthodox_epidemic_treatment - years = 5 - } - scope:zealous_courtier = { - progress_towards_rival_effect = { - REASON = rival_heretical_physician - CHARACTER = scope:physician - OPINION = 0 - } - } - stress_impact = { - zealous = medium_stress_impact_gain - cynical = medium_stress_impact_gain - eccentric = minor_stress_impact_loss - witch = minor_stress_impact_loss - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_zeal = -1 - ai_rationality = -0.1 - ai_compassion = 1 - } - } - } - - option = { # I don't think so - name = physician_epidemic_events.1000.c - scope:zealous_courtier = { - add_opinion = { - target = root - modifier = relieved_opinion - opinion = 20 - } - } - add_piety = medium_piety_gain - stress_impact = { - witch = medium_stress_impact_gain - eccentric = medium_stress_impact_gain - diligent = minor_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_zeal = 1 - ai_rationality = 0.1 - ai_compassion = -1 - } - } - } -} - -############################ -## Physician calls for a quarantine of infected counties -## 1010 -## by James Beaumont -############################ -physician_epidemic_events.1010 = { - type = character_event - title = physician_epidemic_events.1010.t - desc = physician_epidemic_events.1010.desc - theme = plague - override_effect_2d = { reference = flies } - left_portrait = { - character = root - animation = worry - camera = camera_event_crowd - } - right_portrait = { - character = scope:physician - animation = debating - camera = camera_event_very_right - } - cooldown = { years = 5 } - trigger = { - court_position:court_physician_court_position ?= { - is_available_ai_adult = yes - } - realm_has_any_nearby_epidemic = { SIZE = 5 INTENSITY = major } - } - - immediate = { - get_random_nearby_realm_epidemic = { INTENSITY = major } - court_position:court_physician_court_position = { save_scope_as = physician } - } - - option = { # Oh well alrighty then - name = physician_epidemic_events.1010.a - add_character_modifier = { - modifier = ce1_major_quarantine - years = 5 - } - every_sub_realm_county = { - custom = every_infected_county - limit = { - any_county_province = { - any_province_epidemic = { - this = scope:epidemic_scope - } - } - } - add_county_modifier = { - modifier = ce1_major_quarantine_county - years = 5 - } - } - stress_impact = { - greedy = medium_stress_impact_gain - compassionate = medium_stress_impact_gain - just = medium_stress_impact_gain - cynical = minor_stress_impact_gain - impatient = minor_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -1 - ai_compassion = -1 - ai_rationality = 1 - } - } - } - - option = { # This is not at all worth it - name = physician_epidemic_events.1010.b - stress_impact = { - callous = medium_stress_impact_gain - diligent = medium_stress_impact_gain - scholar = minor_stress_impact_gain - patient = minor_stress_impact_gain - trusting = minor_stress_impact_gain - generous = minor_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 1 - ai_honor = -1 - ai_energy = -1 - } - } - } -} - -############################### -## PHYSICIAN EPIDEMIC TREATMENT -## 1020 -## by James Beaumont -############################### -physician_epidemic_events.1020 = { - type = character_event - title = physician_epidemic_events.1020.t - desc = { - desc = physician_epidemic_events.1020.start.desc - first_valid = { #Disease type - triggered_desc = { - trigger = { scope:epidemic.epidemic_type.epidemic_trait = trait:typhus } - desc = disease_desc_short_typhus - } - triggered_desc = { - trigger = { scope:epidemic.epidemic_type.epidemic_trait = trait:consumption } - desc = disease_desc_short_consumption - } - triggered_desc = { - trigger = { scope:epidemic.epidemic_type.epidemic_trait = trait:great_pox } - desc = disease_desc_short_smallpox - } - triggered_desc = { - trigger = { scope:epidemic.epidemic_type.epidemic_trait = trait:smallpox } - desc = disease_desc_short_smallpox - } - triggered_desc = { - trigger = { scope:epidemic.epidemic_type.epidemic_trait = trait:bubonic_plague } - desc = disease_desc_short_plague - } - triggered_desc = { - trigger = { scope:epidemic.epidemic_type.epidemic_trait = trait:measles } - desc = disease_desc_short_measles - } - triggered_desc = { - trigger = { scope:epidemic.epidemic_type.epidemic_trait = trait:ergotism } - desc = disease_desc_short_ergotism - } - triggered_desc = { - trigger = { scope:epidemic.epidemic_type.epidemic_trait = trait:dysentery } - desc = disease_desc_short_dysentery - } - desc = missing_epidemic - } - desc = physician_epidemic_events.1020.start.desc2 - random_valid = { - triggered_desc = { - trigger = { - OR = { - scope:epidemic = { outbreak_intensity <= minor } - scope:physician = { - NOR = { - has_trait = lifestyle_physician - has_trait = lifestyle_mystic - } - } - } - } - desc = physician_epidemic_events.1020.safe_recommendation.desc - } - triggered_desc = { - trigger = { - OR = { - scope:epidemic = { outbreak_intensity >= major } - scope:physician = { - NOR = { - has_trait = lifestyle_physician - has_trait = lifestyle_mystic - } - } - } - scope:physician = { - NOT = { has_trait = lifestyle_mystic } - } - } - desc = physician_epidemic_events.1020.risky_recommendation.desc - } - triggered_desc = { - trigger = { - scope:physician = { has_trait = lifestyle_mystic } - } - desc = physician_epidemic_events.1020.mystic_recommendation.desc - } - } - desc = physician_epidemic_events.1020.end.desc - } - theme = plague - override_background = { - trigger = { scope:physician ?= { is_travelling = yes } exists = scope:background_terrain_scope } - reference = terrain_scope - } - override_background = { - reference = physicians_study - } - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_trait = cynical - has_trait = callous - has_trait = deceitful - has_trait = sadistic - } - } - animation = eyeroll - } - triggered_animation = { - trigger = { - OR = { - has_trait = compassionate - has_trait = generous - has_trait = trusting - has_trait = gregarious - } - } - animation = sadness - } - animation = thinking - } - right_portrait = { - character = scope:physician - triggered_animation = { - trigger = { scope:epidemic = { outbreak_intensity >= major } } - animation = worry - } - triggered_animation = { - trigger = { scope:physician = { ai_rationality >= 0 } } - animation = personality_rational - } - triggered_animation = { - trigger = { scope:physician = { ai_rationality < -50 } } - animation = eccentric - } - animation = idle - } - - immediate = { - scope:physician.location ?= { save_scope_as = background_terrain_scope } - } - - #Minimal epidemic prevention - option = { - name = physician_epidemic_events.1020.a - epidemic_prevention_effect = { PREVENTION_LEVEL = 1 PHYSICIAN = scope:physician } - ai_chance = { base = 10 } - } - - #Moderate epidemic prevention - option = { - name = physician_epidemic_events.1020.b - epidemic_prevention_effect = { PREVENTION_LEVEL = 2 PHYSICIAN = scope:physician } - ai_chance = { base = 1 } - } - - #Superstitious epidemic prevention - option = { - trigger = { - scope:physician = { - OR = { - has_trait = lifestyle_mystic - has_trait = eccentric - } - } - } - name = physician_epidemic_events.1020.c - epidemic_prevention_effect = { PREVENTION_LEVEL = 3 PHYSICIAN = scope:physician } - ai_chance = { - base = 0.5 - modifier = { - add = -0.5 - ai_zeal >= 0 - } - } - } - - #No treatment - option = { - name = physician_epidemic_events.1020.d - - if = { # Admin governors lose a bit of trait XP if they don't try to do something - limit = { - is_governor = yes - has_trait = governor - } - increase_governance_effect = { VALUE = -2 } - } - - ai_chance = { base = 0 } - } -} - -# Minor success -physician_epidemic_events.1021 = { - type = character_event - title = physician_epidemic_events.1021.t - desc = physician_epidemic_events.1021.desc - theme = plague - override_background = { - trigger = { scope:physician ?= { is_travelling = yes } exists = scope:background_terrain_scope } - reference = terrain_scope - } - override_background = { - reference = physicians_study - } - left_portrait = { - character = scope:physician - animation = physician - } - - immediate = { - add_character_modifier = { - modifier = minor_epidemic_treatment - years = 10 - } - } - - #Neato! - option = { - name = physician_epidemic_events.1021.a - - if = { # Admin governors gain some XP when successful - limit = { - is_governor = yes - has_trait = governor - } - increase_governance_effect = { VALUE = 2 } - } - - ai_chance = { base = 10 } - } -} - -# Minor fail -physician_epidemic_events.1022 = { - type = character_event - title = physician_epidemic_events.1022.t - desc = physician_epidemic_events.1022.desc - theme = plague - override_background = { - trigger = { scope:physician ?= { is_travelling = yes } exists = scope:background_terrain_scope } - reference = terrain_scope - } - override_background = { - reference = physicians_study - } - left_portrait = { - character = scope:physician - animation = shock - } - - immediate = { - add_character_modifier = { - modifier = minor_epidemic_treatment_failed - years = 10 - } - } - - - - #Chastise - option = { - name = health.3107.b - - chastise_physician_effect = yes - - ai_chance = { - factor = 30 - modifier = { - scope:physician = { has_character_modifier = chastised_physician_modifier } - add = -20 - } - } - } - - #Oh well ¯\_(ツ)_/¯ - option = { - name = health.3107.c - - forgive_physician_effect = yes - - ai_chance = { - factor = 20 - ai_value_modifier = { - max = 80 - ai_compassion = 2.5 - ai_vengefulness = -2.5 - } - } - } - - #Imprison! - option = { - name = health.3107.d - - imprison_physician_effect = yes - - ai_chance = { - factor = 30 - ai_value_modifier = { - ai_compassion = -0.5 - } - } - } - - #Execute! - option = { - name = health.3107.e - - execute_physician_effect = yes - - ai_chance = { - factor = 15 - ai_value_modifier = { - ai_compassion = -1 - } - } - } -} - -# Major success -physician_epidemic_events.1023 = { - type = character_event - title = physician_epidemic_events.1023.t - desc = physician_epidemic_events.1023.desc - theme = plague - override_background = { - trigger = { scope:physician ?= { is_travelling = yes } exists = scope:background_terrain_scope } - reference = terrain_scope - } - override_background = { - reference = physicians_study - } - left_portrait = { - character = scope:physician - animation = admiration - } - - immediate = { - add_character_modifier = { - modifier = major_epidemic_treatment - years = 10 - } - } - - #Neato! - option = { - name = physician_epidemic_events.1023.a - - if = { # Admin governors gain some XP when successful - limit = { - is_governor = yes - has_trait = governor - } - increase_governance_effect = { VALUE = 4 } - } - - ai_chance = { base = 10 } - } -} - -# Major fail -physician_epidemic_events.1024 = { - type = character_event - title = physician_epidemic_events.1024.t - desc = physician_epidemic_events.1024.desc - theme = plague - override_background = { - trigger = { scope:physician ?= { is_travelling = yes } exists = scope:background_terrain_scope } - reference = terrain_scope - } - override_background = { - reference = physicians_study - } - left_portrait = { - character = scope:physician - animation = shock - } - - immediate = { - add_character_modifier = { - modifier = major_epidemic_treatment_failed - years = 10 - } - every_sub_realm_county = { - custom = every_infected_county - limit = { - any_county_province = { - any_province_epidemic = { - this = scope:epidemic - } - } - } - change_development_progress_with_overflow = -45 - } - } - - - - #Chastise - option = { - name = health.3107.b - - chastise_physician_effect = yes - - ai_chance = { - factor = 30 - modifier = { - scope:physician = { has_character_modifier = chastised_physician_modifier } - add = -20 - } - } - } - - #Oh well ¯\_(ツ)_/¯ - option = { - name = health.3107.c - - forgive_physician_effect = yes - - ai_chance = { - factor = 20 - ai_value_modifier = { - max = 80 - ai_compassion = 2.5 - ai_vengefulness = -2.5 - } - } - } - - #Imprison! - option = { - name = health.3107.d - - imprison_physician_effect = yes - - ai_chance = { - factor = 30 - ai_value_modifier = { - ai_compassion = -0.5 - ai_vengefulness = 1 - } - } - } - - #Execute! - option = { - name = health.3107.e - - execute_physician_effect = yes - - ai_chance = { - factor = 15 - ai_value_modifier = { - ai_compassion = -1 - ai_vengefulness = 2.5 - } - } - } -} - -# Critical success -physician_epidemic_events.1025 = { - type = character_event - title = physician_epidemic_events.1025.t - desc = physician_epidemic_events.1025.desc - theme = plague - override_background = { - trigger = { scope:physician ?= { is_travelling = yes } exists = scope:background_terrain_scope } - reference = terrain_scope - } - override_background = { - reference = physicians_study - } - left_portrait = { - character = scope:physician - animation = manic - } - - immediate = { - add_character_modifier = { - modifier = critical_epidemic_treatment - years = 10 - } - } - - #Neato! - option = { - name = physician_epidemic_events.1025.a - - if = { # Admin governors gain some XP when successful - limit = { - is_governor = yes - has_trait = governor - } - increase_governance_effect = { VALUE = 6 } - } - - ai_chance = { base = 10 } - } -} - -# Critical fail -physician_epidemic_events.1026 = { - type = character_event - title = physician_epidemic_events.1026.t - desc = physician_epidemic_events.1026.desc - theme = plague - override_background = { - trigger = { scope:physician ?= { is_travelling = yes } exists = scope:background_terrain_scope } - reference = terrain_scope - } - override_background = { - reference = physicians_study - } - left_portrait = { - character = scope:physician - animation = manic - } - - immediate = { - add_character_modifier = { - modifier = critical_epidemic_treatment_failed - years = 10 - } - every_sub_realm_county = { - custom = every_infected_county - limit = { - any_county_province = { - any_province_epidemic = { - this = scope:epidemic - } - } - } - change_development_progress_with_overflow = -150 - } - } - - - - #Chastise - option = { - name = health.3107.b - - chastise_physician_effect = yes - - ai_chance = { - factor = 30 - modifier = { - scope:physician = { has_character_modifier = chastised_physician_modifier } - add = -20 - } - } - } - - #Oh well ¯\_(ツ)_/¯ - option = { - name = health.3107.c - - forgive_physician_effect = yes - - ai_chance = { - factor = 20 - ai_value_modifier = { - max = 80 - ai_compassion = 2.5 - ai_vengefulness = -2.5 - } - } - } - - #Imprison! - option = { - name = health.3107.d - - imprison_physician_effect = yes - - ai_chance = { - factor = 30 - ai_value_modifier = { - ai_compassion = -0.5 - ai_vengefulness = 1 - } - } - } - - #Execute! - option = { - name = health.3107.e - - execute_physician_effect = yes - - ai_chance = { - factor = 15 - ai_value_modifier = { - ai_compassion = -1 - ai_vengefulness = 2.5 - } - } - } -} - -############################### -## PHYSICIAN BOOK -## 1030 -## by James Beaumont -############################### -physician_epidemic_events.1030 = { - type = character_event - title = physician_epidemic_events.1030.t - desc = physician_epidemic_events.1030.desc - theme = plague - override_effect_2d = { reference = flies } - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:physician - animation = writing - } - cooldown = { years = 10 } - - trigger = { - exists = court_position:court_physician_court_position - court_position:court_physician_court_position = { - is_available_ai_adult = yes - } - realm_has_any_nearby_epidemic = { INTENSITY = major SIZE = 1 } - } - - immediate = { - court_position:court_physician_court_position = { save_scope_as = physician } - get_random_nearby_realm_epidemic = { INTENSITY = major } - } - - #Go for it king! - option = { - name = physician_epidemic_events.1030.a - remove_short_term_gold = medium_gold_value - custom_tooltip = may_get_cool_book_tt - hidden_effect = { - scope:physician = { - duel = { - skill = learning - value = high_skill_rating - # Failure - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - modifier = { - scope:physician = { has_trait = lifestyle_physician } - factor = 0.5 - } - modifier = { - scope:physician = { - has_trait = lifestyle_physician - has_trait_xp = { - trait = lifestyle_physician - value >= 50 - } - } - factor = 0.5 - } - modifier = { - scope:physician = { - has_trait = lifestyle_physician - has_trait_xp = { - trait = lifestyle_physician - value >= 100 - } - } - factor = 0.5 - } - root = { - send_interface_toast = { - title = physician_epidemic_events.1030.a.failure - left_icon = root - right_icon = scope:physician - custom_tooltip = book_is_gibberish - } - } - } - 50 = { # Win - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - duel = { # How much did I win by? - skill = learning - value = high_skill_rating - 50 = { # Not much - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - root = { - set_artifact_rarity_masterwork = yes - send_interface_toast = { - title = physician_epidemic_events.1030.a.success - left_icon = root - right_icon = scope:physician - create_artifact = { - name = pharmaceuticals - description = pharmaceuticals_desc - type = miscellaneous - modifier = artifact_epidemic_resistance_1_modifier - modifier = artifact_negate_health_penalty_add_1_modifier - visuals = pocket_book - quality = scope:quality - wealth = scope:wealth - creator = scope:physician - } - } - } - } - 50 = { # Okay - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - root = { - set_artifact_rarity_famed = yes - send_interface_toast = { - title = physician_epidemic_events.1030.a.success - left_icon = root - right_icon = scope:physician - create_artifact = { - name = pharmaceuticals - description = pharmaceuticals_desc - type = miscellaneous - modifier = artifact_epidemic_resistance_4_modifier - modifier = artifact_negate_health_penalty_add_2_modifier - visuals = pocket_book - quality = scope:quality - wealth = scope:wealth - creator = scope:physician - } - } - } - } - 15 = { # Bigly - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - root = { - set_artifact_rarity_illustrious = yes - send_interface_toast = { - title = physician_epidemic_events.1030.a.success - left_icon = root - right_icon = scope:physician - create_artifact = { - name = pharmaceuticals - description = pharmaceuticals_desc - type = miscellaneous - modifier = artifact_epidemic_resistance_7_modifier - modifier = artifact_negate_health_penalty_add_2_modifier - visuals = pocket_book - quality = scope:quality - wealth = scope:wealth - creator = scope:physician - } - } - } - } - } - } - } - } - } - ai_chance = { - base = 10 - modifier = { - factor = 0 - short_term_gold < major_gold_value - } - ai_value_modifier = { - ai_greed = -1 - ai_rationality = 1 - } - } - } - - #How much for a bloody book? - option = { - name = physician_epidemic_events.1030.b - ai_chance = { - base = 10 - ai_value_modifier = { - ai_greed = 1 - ai_rationality = -1 - } - } - } -} - -############################### -## DISTRIBUTE ALMS -## 1040 -## by James Beaumont -############################### -physician_epidemic_events.1040 = { - type = character_event - title = physician_epidemic_events.1040.t - desc = physician_epidemic_events.1040.desc - theme = plague - override_effect_2d = { reference = flies } - left_portrait = { - character = root - animation = pondering - camera = camera_event_left_away_3_4 - } - right_portrait = { - character = scope:physician - animation = obsequious_bow - camera = camera_event_right_away - } - - cooldown = { years = 20 } - - trigger = { - realm_has_any_nearby_epidemic = { INTENSITY = major SIZE = 1 } - exists = court_position:court_physician_court_position - court_position:court_physician_court_position = { - is_available_ai_adult = yes - } - } - - immediate = { - get_random_nearby_realm_epidemic = { INTENSITY = major } - court_position:court_physician_court_position = { save_scope_as = physician } - } - - # Let's go touch some lepers - option = { - name = physician_epidemic_events.1040.a - add_piety = major_piety_gain - every_sub_realm_county = { - custom = every_infected_county - limit = { - any_county_province = { - any_province_epidemic = { - this = scope:epidemic_scope - } - } - } - add_county_modifier = { - modifier = ce1_royal_touch - years = 10 - } - } - if = { - limit = { - NOT = { - has_trait = scope:epidemic_scope.epidemic_type.epidemic_trait - } - } - if = { - limit = { - NOT = { - has_trait = scope:epidemic_scope.epidemic_type.epidemic_trait - } - } - if = { - limit = { - scope:epidemic_scope.epidemic_type.epidemic_trait = trait:smallpox - } - random = { - chance = 5 - contract_disease_effect = { DISEASE = smallpox TREATMENT_EVENT = yes } - } - } - else_if = { - limit = { - scope:epidemic_scope.epidemic_type.epidemic_trait = trait:measles - } - random = { - chance = 5 - contract_disease_effect = { DISEASE = measles TREATMENT_EVENT = yes } - } - } - else_if = { - limit = { - scope:epidemic_scope.epidemic_type.epidemic_trait = trait:dysentery - } - random = { - chance = 5 - contract_disease_effect = { DISEASE = dysentery TREATMENT_EVENT = yes } - } - } - else_if = { - limit = { - scope:epidemic_scope.epidemic_type.epidemic_trait = trait:bubonic_plague - } - random = { - chance = 5 - contract_disease_effect = { DISEASE = bubonic_plague TREATMENT_EVENT = yes } - } - } - else_if = { - limit = { - scope:epidemic_scope.epidemic_type.epidemic_trait = trait:typhus - } - random = { - chance = 5 - contract_disease_effect = { DISEASE = typhus TREATMENT_EVENT = yes } - } - } - else_if = { - limit = { - scope:epidemic_scope.epidemic_type.epidemic_trait = trait:consumption - } - random = { - chance = 5 - contract_disease_effect = { DISEASE = consumption TREATMENT_EVENT = yes } - } - } - } - } - stress_impact = { - sadistic = medium_stress_impact_gain - callous = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - } - ai_chance = { - base = 50 - modifier = { - factor = 0 - gold < minor_gold_value - } - ai_value_modifier = { - ai_compassion = 1 - } - } - } - - #I will absolutely not do this are you insane - option = { - name = physician_epidemic_events.1040.b - add_piety = minor_piety_loss - stress_impact = { - humble = minor_stress_impact_gain - compassionate = medium_stress_impact_gain - zealous = medium_stress_impact_gain - } - ai_chance = { - base = 50 - ai_value_modifier = { - ai_compassion = -1 - } - } - } -} - -############################### -## Physician is helping soldiers -## 1050 -## by James Beaumont -############################### -physician_epidemic_events.1050 = { - type = character_event - title = physician_epidemic_events.1050.t - desc = physician_epidemic_events.1050.desc - theme = plague - override_effect_2d = { reference = flies } - left_portrait = { - character = root - animation = anger - } - right_portrait = { - character = scope:physician - animation = prisonhouse - } - lower_right_portrait = { - character = scope:enemy - } - - cooldown = { years = 20 } - - trigger = { - is_at_war = yes - exists = court_position:court_physician_court_position - realm_has_any_nearby_epidemic = { INTENSITY = major SIZE = 1 } - court_position:court_physician_court_position = { - is_available_ai_adult = yes - OR = { # Would be willing to heal the enemy - has_trait = compassionate - has_trait = forgiving - has_trait = just - has_trait = zealous - } - } - } - - immediate = { - get_random_nearby_realm_epidemic = { INTENSITY = major } - court_position:court_physician_court_position = { save_scope_as = physician } - random_primary_war_enemy = { - limit = { - is_ai = yes - } - save_scope_as = enemy - } - } - - # Very good work, please continue - option = { - name = physician_epidemic_events.1050.a - add_piety = major_piety_gain - add_character_modifier = { - modifier = war_doctor - years = 10 - } - scope:enemy = { - add_character_modifier = { - modifier = war_doctor - years = 10 - } - add_opinion = { - modifier = impressed_opinion - opinion = 50 - target = root - } - } - stress_impact = { - compassionate = medium_stress_impact_loss - forgiving = medium_stress_impact_loss - sadistic = medium_stress_impact_gain - callous = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - } - ai_chance = { - base = 50 - ai_value_modifier = { - ai_compassion = 1 - ai_rationality = -0.1 - } - } - } - - #I demand that this stop at once! - option = { - name = physician_epidemic_events.1050.b - add_character_modifier = { - modifier = war_doctor - years = 10 - } - scope:physician = { - progress_towards_rival_effect = { - REASON = rival_prevented_from_protecting_sick - CHARACTER = root - OPINION = default_rival_opinion - } - } - stress_impact = { - humble = minor_stress_impact_gain - compassionate = medium_stress_impact_gain - zealous = medium_stress_impact_gain - } - ai_chance = { - base = 50 - ai_value_modifier = { - ai_compassion = -1 - ai_rationality = 0.1 - } - } - } -} - -############################### -## Physician advises you to banish all infected characters from your court -## 1060 -## by James Beaumont -############################### -physician_epidemic_events.1060 = { - type = character_event - title = physician_epidemic_events.1060.t - desc = physician_epidemic_events.1060.desc - theme = plague - override_background = physicians_study - override_effect_2d = { reference = flies } - left_portrait = { - character = scope:physician - animation = physician - } - right_portrait = { - character = scope:gross_sick_person - animation = cough - } - - trigger = { - exists = court_position:court_physician_court_position - any_sub_realm_county = { - any_county_province = { - OR = { - county.holder = root - squared_distance = { - target = root.capital_province - value <= squared_distance_medium #250 map-pixels. Roughly one Ireland away (top to bottom). - } - } - any_province_epidemic = { - count >= 1 - intensity >= major - save_temporary_scope_as = epidemic_to_check - root = { - any_close_or_extended_family_member = { - is_courtier_of = root - has_trait = scope:epidemic_to_check.epidemic_type.epidemic_trait - } - } - } - } - } - court_position:court_physician_court_position = { - is_available_ai_adult = yes - } - } - - immediate = { - get_random_nearby_realm_epidemic = { INTENSITY = major } - court_position:court_physician_court_position = { save_scope_as = physician } - random_close_or_extended_family_member = { - limit = { - is_courtier_of = root - has_trait = scope:epidemic_scope.epidemic_type.epidemic_trait - } - save_scope_as = gross_sick_person - } - } - - # Drastic times call for drastic measures - option = { - name = physician_epidemic_events.1060.a - every_courtier_or_guest = { - custom = every_infected_courtier_or_guest - limit = { - has_trait_with_flag = epidemic_disease - } - banish = yes # banish_effect not used for unlanded - } - every_courtier_or_guest = { - custom = every_uninfected_courtier_or_guest - limit = { - NOT = { - has_trait_with_flag = epidemic_disease - } - } - add_character_modifier = { - modifier = ce1_banishment_resistance - years = 10 - } - } - add_character_modifier = { - modifier = ce1_banishment_resistance - years = 10 - } - stress_impact = { - base = medium_stress_impact_gain - callous = medium_stress_impact_loss - sadistic = medium_stress_impact_loss - arbitrary = medium_stress_impact_loss - arrogant = medium_stress_impact_loss - forgiving = medium_stress_impact_gain - compassionate = medium_stress_impact_gain - } - ai_chance = { - base = 50 - ai_value_modifier = { - ai_compassion = -1 - ai_greed = 0.5 - ai_rationality = 0.5 - } - } - } - - #I will not banish my own kin! - option = { - name = physician_epidemic_events.1060.b - add_piety = medium_piety_gain - every_courtier_or_guest = { - custom = every_infected_courtier_or_guest - limit = { - has_trait_with_flag = epidemic_disease - } - add_opinion = { - modifier = grateful_opinion - opinion = 25 - target = root - } - } - stress_impact = { - callous = medium_stress_impact_gain - sadistic = medium_stress_impact_gain - arbitrary = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - } - ai_chance = { - base = 50 - ai_value_modifier = { - ai_compassion = 1 - ai_greed = -0.5 - ai_rationality = -0.5 - ai_vengefulness = -0.5 - } - } - } -} diff --git a/events/dlc/ep1/ep1_character_interaction_events.txt b/events/dlc/ep1/ep1_character_interaction_events.txt deleted file mode 100644 index 0d3f377f0..000000000 --- a/events/dlc/ep1/ep1_character_interaction_events.txt +++ /dev/null @@ -1,719 +0,0 @@ -namespace = ep1_character_interaction - -################################################## -# -# Character Interaction Events -# -# 0001 - 0010 Indebt Guest -################################################## - - - - - - - - - - -################################################## -# CHARACTER INTERACTION EVENTS - -################################################## -# A Sensible Recompense -# by Ewan Cowhig Croft -# 0001 - 0010 -################################################## - -scripted_trigger ep1_character_interaction_0001_valid_hostile_relation_trigger = { - # Must be at a court of some kind *other* than your own. - exists = host - scope:actor != host - # And not in scope:actor's prison. - NOR = { - imprisoner ?= scope:actor - } - # Double check that this'd be an appropriate court to send a plant. - save_temporary_scope_as = current_target - scope:actor = { - OR = { - # Either you've got a scheme on the go... - any_scheme = { - hostile_scheme_trigger = yes - scheme_target_character = scope:current_target - } - # ... or you could start one. - can_start_hostile_scheme_against_trigger = { TARGET = scope:current_target} - } - } -} - -scripted_trigger ep1_character_interaction_0001_valid_rival_trigger = { - ep1_character_interaction_0001_valid_hostile_relation_trigger = yes - OR = { - NOT = { exists = scope:actor_nemesis } - this != scope:actor_nemesis - } -} - -scripted_effect ep1_character_interaction_0001_move_character_and_family_effect = { - scope:recipient = { - # Whatever else happens, just move them. - scope:actor = { remove_courtier_or_guest = scope:recipient } - $DESTINATION$ = { add_courtier = scope:recipient } - # If they have any family, quietly send them along too. - hidden_effect = { - if = { - limit = { - any_traveling_family_member = { } - } - every_traveling_family_member = { - save_temporary_scope_as = family_to_shunt - scope:actor = { remove_courtier_or_guest = scope:family_to_shunt } - $DESTINATION$ = { add_courtier = scope:family_to_shunt } - } - } - } - } -} - -# Trick a guest into a debt & turn them into an agent. -ep1_character_interaction.0001 = { - type = character_event - title = ep1_character_interaction.0001.t - desc = { - desc = ep1_character_interaction.0001.desc.intro - first_valid = { - triggered_desc = { - trigger = { scope:false_flag_type = flag:lustful } - desc = ep1_character_interaction.0001.desc.lustful - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:chaste } - desc = ep1_character_interaction.0001.desc.chaste - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:gluttonous } - desc = ep1_character_interaction.0001.desc.gluttonous - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:temperate } - desc = ep1_character_interaction.0001.desc.temperate - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:greedy } - desc = ep1_character_interaction.0001.desc.greedy - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:generous } - desc = ep1_character_interaction.0001.desc.generous - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:lazy } - desc = ep1_character_interaction.0001.desc.lazy - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:diligent } - desc = ep1_character_interaction.0001.desc.diligent - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:wrathful } - desc = ep1_character_interaction.0001.desc.wrathful - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:calm } - desc = ep1_character_interaction.0001.desc.calm - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:patient } - desc = ep1_character_interaction.0001.desc.patient - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:impatient } - desc = ep1_character_interaction.0001.desc.impatient - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:arrogant } - desc = ep1_character_interaction.0001.desc.arrogant - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:humble } - desc = ep1_character_interaction.0001.desc.humble - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:deceitful } - desc = ep1_character_interaction.0001.desc.deceitful - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:honest } - desc = ep1_character_interaction.0001.desc.honest - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:craven } - desc = ep1_character_interaction.0001.desc.craven - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:brave } - desc = ep1_character_interaction.0001.desc.brave - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:shy } - desc = ep1_character_interaction.0001.desc.shy - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:gregarious } - desc = ep1_character_interaction.0001.desc.gregarious - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:ambitious } - desc = ep1_character_interaction.0001.desc.ambitious - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:content } - desc = ep1_character_interaction.0001.desc.content - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:arbitrary } - desc = ep1_character_interaction.0001.desc.arbitrary - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:just } - desc = ep1_character_interaction.0001.desc.just - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:cynical } - desc = ep1_character_interaction.0001.desc.cynical - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:zealous } - desc = ep1_character_interaction.0001.desc.zealous - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:paranoid } - desc = ep1_character_interaction.0001.desc.paranoid - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:trusting } - desc = ep1_character_interaction.0001.desc.trusting - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:compassionate } - desc = ep1_character_interaction.0001.desc.compassionate - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:callous } - desc = ep1_character_interaction.0001.desc.callous - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:sadistic } - desc = ep1_character_interaction.0001.desc.sadistic - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:stubborn } - desc = ep1_character_interaction.0001.desc.stubborn - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:fickle } - desc = ep1_character_interaction.0001.desc.fickle - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:vengeful } - desc = ep1_character_interaction.0001.desc.vengeful - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:forgiving } - desc = ep1_character_interaction.0001.desc.forgiving - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:fallback_1 } - desc = ep1_character_interaction.0001.desc.fallback_1 - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:fallback_2 } - desc = ep1_character_interaction.0001.desc.fallback_2 - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:fallback_3 } - desc = ep1_character_interaction.0001.desc.fallback_3 - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:fallback_4 } - desc = ep1_character_interaction.0001.desc.fallback_4 - } - triggered_desc = { - trigger = { scope:false_flag_type = flag:fallback_5 } - desc = ep1_character_interaction.0001.desc.fallback_5 - } - } - desc = ep1_character_interaction.0001.desc.outro - } - theme = intrigue_skulduggery_focus - left_portrait = { - character = scope:actor - animation = schadenfreude - } - right_portrait = { - character = scope:recipient - animation = fear - } - lower_center_portrait = scope:actor_nemesis - lower_right_portrait = scope:actor_rival - override_background = { reference = throne_room } - - immediate = { - # Apply the interaction's effects. - indebt_guest_interaction_accepted_effect = yes - # Roll the offending crime. - ## Percentages even throughout: we're not fussed about which result you roll. - scope:recipient = { - random_list = { - # lustful - 100 = { - trigger = { has_trait = lustful } - save_scope_value_as = { - name = false_flag_type - value = flag:lustful - } - } - # chaste - 100 = { - trigger = { has_trait = chaste } - save_scope_value_as = { - name = false_flag_type - value = flag:chaste - } - } - # gluttonous - 100 = { - trigger = { has_trait = gluttonous } - save_scope_value_as = { - name = false_flag_type - value = flag:gluttonous - } - } - # temperate - 100 = { - trigger = { has_trait = temperate } - save_scope_value_as = { - name = false_flag_type - value = flag:temperate - } - } - # greedy - 100 = { - trigger = { has_trait = greedy } - save_scope_value_as = { - name = false_flag_type - value = flag:greedy - } - } - # generous - 100 = { - trigger = { has_trait = generous } - save_scope_value_as = { - name = false_flag_type - value = flag:generous - } - } - # lazy - 100 = { - trigger = { has_trait = lazy } - save_scope_value_as = { - name = false_flag_type - value = flag:lazy - } - } - # diligent - 100 = { - trigger = { has_trait = diligent } - save_scope_value_as = { - name = false_flag_type - value = flag:diligent - } - } - # wrathful - 100 = { - trigger = { has_trait = wrathful } - save_scope_value_as = { - name = false_flag_type - value = flag:wrathful - } - } - # calm - 100 = { - trigger = { has_trait = calm } - save_scope_value_as = { - name = false_flag_type - value = flag:calm - } - } - # patient - 100 = { - trigger = { has_trait = patient } - save_scope_value_as = { - name = false_flag_type - value = flag:patient - } - } - # impatient - 100 = { - trigger = { has_trait = impatient } - save_scope_value_as = { - name = false_flag_type - value = flag:impatient - } - } - # arrogant - 100 = { - trigger = { has_trait = arrogant } - save_scope_value_as = { - name = false_flag_type - value = flag:arrogant - } - } - # humble - 100 = { - trigger = { has_trait = humble } - save_scope_value_as = { - name = false_flag_type - value = flag:humble - } - } - # deceitful - 100 = { - trigger = { has_trait = deceitful } - save_scope_value_as = { - name = false_flag_type - value = flag:deceitful - } - } - # honest - 100 = { - trigger = { has_trait = honest } - save_scope_value_as = { - name = false_flag_type - value = flag:honest - } - } - # craven - 100 = { - trigger = { has_trait = craven } - save_scope_value_as = { - name = false_flag_type - value = flag:craven - } - } - # brave - 100 = { - trigger = { has_trait = brave } - save_scope_value_as = { - name = false_flag_type - value = flag:brave - } - } - # shy - 100 = { - trigger = { has_trait = shy } - save_scope_value_as = { - name = false_flag_type - value = flag:shy - } - } - # gregarious - 100 = { - trigger = { has_trait = gregarious } - save_scope_value_as = { - name = false_flag_type - value = flag:gregarious - } - } - # ambitious - 100 = { - trigger = { has_trait = ambitious } - save_scope_value_as = { - name = false_flag_type - value = flag:ambitious - } - } - # content - 100 = { - trigger = { has_trait = content } - save_scope_value_as = { - name = false_flag_type - value = flag:content - } - } - # arbitrary - 100 = { - trigger = { has_trait = arbitrary } - save_scope_value_as = { - name = false_flag_type - value = flag:arbitrary - } - } - # just - 100 = { - trigger = { has_trait = just } - save_scope_value_as = { - name = false_flag_type - value = flag:just - } - } - # cynical - 100 = { - trigger = { has_trait = cynical } - save_scope_value_as = { - name = false_flag_type - value = flag:cynical - } - } - # zealous - 100 = { - trigger = { has_trait = zealous } - save_scope_value_as = { - name = false_flag_type - value = flag:zealous - } - } - # paranoid - 100 = { - trigger = { has_trait = paranoid } - save_scope_value_as = { - name = false_flag_type - value = flag:paranoid - } - } - # trusting - 100 = { - trigger = { has_trait = trusting } - save_scope_value_as = { - name = false_flag_type - value = flag:trusting - } - } - # compassionate - 100 = { - trigger = { has_trait = compassionate } - save_scope_value_as = { - name = false_flag_type - value = flag:compassionate - } - } - # callous - 100 = { - trigger = { has_trait = callous } - save_scope_value_as = { - name = false_flag_type - value = flag:callous - } - } - # sadistic - 100 = { - trigger = { has_trait = sadistic } - save_scope_value_as = { - name = false_flag_type - value = flag:sadistic - } - } - # stubborn - 100 = { - trigger = { has_trait = stubborn } - save_scope_value_as = { - name = false_flag_type - value = flag:stubborn - } - } - # fickle - 100 = { - trigger = { has_trait = fickle } - save_scope_value_as = { - name = false_flag_type - value = flag:fickle - } - } - # vengeful - 100 = { - trigger = { has_trait = vengeful } - save_scope_value_as = { - name = false_flag_type - value = flag:vengeful - } - } - # forgiving - 100 = { - trigger = { has_trait = forgiving } - save_scope_value_as = { - name = false_flag_type - value = flag:forgiving - } - } - # fallback_1 - 100 = { - save_scope_value_as = { - name = false_flag_type - value = flag:fallback_1 - } - } - # fallback_2 - 100 = { - save_scope_value_as = { - name = false_flag_type - value = flag:fallback_2 - } - } - # fallback_3 - 100 = { - save_scope_value_as = { - name = false_flag_type - value = flag:fallback_3 - } - } - # fallback_4 - 100 = { - save_scope_value_as = { - name = false_flag_type - value = flag:fallback_4 - } - } - # fallback_5 - 100 = { - save_scope_value_as = { - name = false_flag_type - value = flag:fallback_5 - } - } - } - } - # Sort scopes for event options. - scope:actor = { - # If scope:actor has a nemesis, save them for loc. - if = { - limit = { - any_relation = { - type = nemesis - count >= 1 - ep1_character_interaction_0001_valid_hostile_relation_trigger = yes - } - } - random_relation = { - type = nemesis - limit = { ep1_character_interaction_0001_valid_hostile_relation_trigger = yes } - save_scope_as = actor_nemesis - } - } - # If scope:actor has any valid rivals, pick a random one for option B. - if = { - limit = { - any_relation = { - type = rival - count >= 1 - ep1_character_interaction_0001_valid_rival_trigger = yes - } - } - random_relation = { - type = rival - # Prefer rivals that are targets of hostile schemes. - limit = { - any_targeting_scheme = { - scheme_owner = scope:actor - is_hostile = yes - } - ep1_character_interaction_0001_valid_rival_trigger = yes - } - # Failing that, rivals who are targets of any schemes. - alternative_limit = { - any_targeting_scheme = { - scheme_owner = scope:actor - is_hostile = no - } - ep1_character_interaction_0001_valid_rival_trigger = yes - } - # Otherwise just any rando rival who could be schemed against. - alternative_limit = { ep1_character_interaction_0001_valid_rival_trigger = yes } - save_scope_as = actor_rival - } - } - } - } - - # *Cackling* Oh yes, [actor_nemesis.GetFirstName] will never see this coming! - option = { - name = ep1_character_interaction.0001.a - trigger = { exists = scope:actor_nemesis } - - # Quietly add scope:recipient as a courtier of scope:actor_nemesis. - ep1_character_interaction_0001_move_character_and_family_effect = { DESTINATION = scope:actor_nemesis } - - stress_impact = { - patient = miniscule_stress_impact_loss - vengeful = minor_stress_impact_loss - impatient = medium_stress_impact_gain - trusting = major_stress_impact_gain - } - ai_chance = { - # If valid, this should always be the choice selected. - base = 100 - } - } - - # Excellent! Now, you will deliver yourself to [actor_rival.GetFirstNamePossessive] court... - option = { - name = ep1_character_interaction.0001.b - trigger = { exists = scope:actor_rival } - - # Quietly add scope:recipient as a courtier of scope:actor_rival. - ep1_character_interaction_0001_move_character_and_family_effect = { DESTINATION = scope:actor_rival } - - stress_impact = { - patient = miniscule_stress_impact_loss - vengeful = minor_stress_impact_loss - impatient = medium_stress_impact_gain - trusting = major_stress_impact_gain - } - ai_chance = { - # Never pick this option... - base = 0 - # ... unless there's no nemesis, in which case it should be the default. - modifier = { - add = 100 - NOT = { exists = scope:actor_rival } - } - } - } - - # Now, begone till I have need of you. - option = { - name = ep1_character_interaction.0001.c - - # Boot 'em out. - hidden_effect = { - scope:recipient = { select_and_move_to_pool_effect = yes } - } - show_as_tooltip = { - remove_courtier_or_guest = scope:recipient - } - - stress_impact = { - shy = minor_stress_impact_loss - gregarious = minor_stress_impact_gain - } - ai_chance = { - # AI should never be taking this without a nemesis, but if they do, it doesn't matter where they send scope:recipient. - base = 0 - } - } - - # Naturally, you will stay where I can keep an eye on you. - option = { - name = ep1_character_interaction.0001.d - - # Status quo: no extra changes here. - - # No stress impact necessary for the fallback option. - ai_chance = { - # AI should never be taking this without a nemesis, but if they do, it doesn't matter where they send scope:recipient. - base = 0 - } - } -} - diff --git a/events/dlc/ep1/ep1_court_position_events.txt b/events/dlc/ep1/ep1_court_position_events.txt deleted file mode 100644 index 7dd66a638..000000000 --- a/events/dlc/ep1/ep1_court_position_events.txt +++ /dev/null @@ -1,552 +0,0 @@ -namespace = court_position - -################################ -# FLAVOR EVENTS -# 1001 - 8999 -################################ - - - -############################# -# MURDER SAVE EVENTS -# 9001 - 9199 -# by Linnéa Thimrén -############################# - -############### -# SAVED BY FOOD TASTER - -# FOR MURDERER: Saved from poisoned food by food taster -# by Linnéa Thimrén -court_position.9001 = { - type = character_event - window = scheme_failed_event - title = court_position.9001.t - desc = { - desc = court_position.9001.desc - triggered_desc = { - trigger = { exists = local_var:food_taster_dies } - desc = court_position.9001.food_taster_dies - } - } - theme = murder_scheme - left_portrait = { - character = scope:owner - triggered_animation = { - trigger = { exists = scope:scheme_discovered } - animation = fear - } - animation = stress - } - center_portrait = { - character = scope:food_taster - animation = poison - } - right_portrait = { - character = scope:target - triggered_animation = { - trigger = { exists = scope:scheme_discovered } - animation = rage - } - animation = paranoia - } - override_background = { reference = feast } - widget = { - gui = "event_window_widget_scheme" - container = "custom_widgets_container" - } - - trigger = { - scope:target = { - employs_court_position = food_taster_court_position - any_court_position_holder = { - type = food_taster_court_position - foodtaster_will_actually_do_job_trigger = yes - } - } - } - - immediate = { - scope:target = { - random_court_position_holder = { - type = food_taster_court_position - limit = { is_physically_able = yes } - save_scope_as = food_taster - } - } - murder_failure_effect = yes - hidden_effect = { - random = { - chance = 75 - set_local_variable = { - name = food_taster_dies - value = yes - } - } - } - } - - option = { - name = murder_save.0001.a - scope:scheme = { end_scheme = yes } - } - - option = { - name = murder_save.0001.b - restart_murder_scheme_effect = yes - } - - after = { - # Fire the rest of the outcome. - scope:target = { trigger_event = court_position.9002 } - if = { - limit = { exists = local_var:food_taster_dies } - show_as_tooltip = { - murder_interception_handle_extra_deaths_effect = { - VICTIM = scope:food_taster - REASON = death_poison - } - } - } - } -} - -# FOR TARGET: Food taster dies to poison -court_position.9002 = { - type = character_event - window = scheme_conclusion_event_no_header - title = court_position.9001.t - desc = { - desc = court_position.9002.desc - triggered_desc = { - trigger = { exists = local_var:food_taster_dies } - desc = court_position.9002.food_taster_dies - } - triggered_desc = { - trigger = { exists = scope:scheme_discovered } - desc = court_position.9002.owner_discovered - } - } - theme = murder_scheme - left_portrait = { - character = scope:target - triggered_animation = { - trigger = { exists = scope:scheme_discovered } - animation = rage - } - animation = paranoia - } - center_portrait = { - character = scope:food_taster - animation = poison - } - right_portrait = { - character = scope:owner_to_reveal - triggered_animation = { - trigger = { exists = scope:scheme_discovered } - animation = fear - } - animation = stress - } - - immediate = { - set_variable = { - name = block_death_event_from - value = scope:food_taster - days = 3 - } - # Handle the death of the food taster, if necessary - if = { - limit = { exists = local_var:food_taster_dies } - murder_interception_handle_extra_deaths_effect = { - VICTIM = scope:food_taster - REASON = death_poison - } - } - } - - # Who could do such a thing? - option = { - name = murder_save.1001.a - trigger = { - NOT = { exists = scope:scheme_discovered } - } - custom_tooltip = murder_save.failure_unknown_owner_tt - } - - # Vengeance! - option = { - name = murder_save.1001.b - trigger = { exists = scope:scheme_discovered } - custom_tooltip = murder_save.failure_known_owner_tt - } - - after = { - add_character_modifier = { - modifier = watchful_modifier - days = watchful_modifier_duration - } - } -} - - -############### -# SAVED BY CUP-BEARER - -# FOR MURDERER: Saved from poisoned drink by cup-bearer -# by Linnéa Thimrén -court_position.9011 = { - type = character_event - window = scheme_failed_event - title = court_position.9011.t - desc = { - desc = court_position.9011.desc - triggered_desc = { - trigger = { exists = local_var:cupbearer_dies } - desc = court_position.9011.cupbearer_dies - } - } - theme = murder_scheme - left_portrait = { - character = scope:owner - triggered_animation = { - trigger = { exists = scope:scheme_discovered } - animation = fear - } - animation = stress - } - center_portrait = { - character = scope:food_taster - animation = poison - } - right_portrait = { - character = scope:target - triggered_animation = { - trigger = { exists = scope:scheme_discovered } - animation = rage - } - animation = paranoia - } - widget = { - gui = "event_window_widget_scheme" - container = "custom_widgets_container" - } - - trigger = { - scope:target = { - employs_court_position = cupbearer_court_position - any_court_position_holder = { - type = cupbearer_court_position - cupbearer_will_actually_do_job_trigger = yes - } - } - } - - immediate = { - scope:target = { - random_court_position_holder = { - type = cupbearer_court_position - limit = { is_physically_able = yes } - save_scope_as = cupbearer - } - } - murder_failure_effect = yes - hidden_effect = { - random = { - chance = 75 - set_local_variable = { - name = cupbearer_dies - value = yes - } - } - } - } - - option = { - name = murder_save.0001.a - scope:scheme = { end_scheme = yes } - } - - option = { - name = murder_save.0001.b - restart_murder_scheme_effect = yes - } - - after = { - # Fire the rest of the outcome. - scope:target = { trigger_event = court_position.9012 } - if = { - limit = { exists = local_var:cupbearer_dies } - show_as_tooltip = { - murder_interception_handle_extra_deaths_effect = { - VICTIM = scope:cupbearer - REASON = death_poison - } - } - } - } -} - - -# FOR TARGET: Cup-bearer dies to poison -court_position.9012 = { - type = character_event - window = scheme_conclusion_event_no_header - title = court_position.9011.t - desc = { - desc = court_position.9012.desc - triggered_desc = { - trigger = { exists = local_var:cupbearer_dies } - desc = court_position.9012.cupbearer_dies - } - triggered_desc = { - trigger = { exists = scope:scheme_discovered } - desc = court_position.9002.owner_discovered - } - } - theme = murder_scheme - left_portrait = { - character = scope:target - triggered_animation = { - trigger = { exists = scope:scheme_discovered } - animation = rage - } - animation = paranoia - } - center_portrait = { - character = scope:food_taster - animation = poison - } - right_portrait = { - character = scope:owner_to_reveal - triggered_animation = { - trigger = { exists = scope:scheme_discovered } - animation = fear - } - animation = stress - } - - immediate = { - set_variable = { - name = block_death_event_from - value = scope:cupbearer - days = 3 - } - # Handle the death of the cupbearer, if necessary - if = { - limit = { exists = local_var:cupbearer_dies } - murder_interception_handle_extra_deaths_effect = { - VICTIM = scope:cupbearer - REASON = death_poison - } - } - } - - # Who could do such a thing? - option = { - name = murder_save.1001.a - trigger = { - NOT = { exists = scope:scheme_discovered } - } - custom_tooltip = murder_save.failure_unknown_owner_tt - } - - # Vengeance! - option = { - name = murder_save.1001.b - trigger = { exists = scope:scheme_discovered } - custom_tooltip = murder_save.failure_known_owner_tt - } - - after = { - add_character_modifier = { - modifier = watchful_modifier - days = watchful_modifier_duration - } - } -} - - -############### -# SAVED BY BODYGUARD - -# FOR MURDERER: Saved from assassin by bodyguard -# by Linnéa Thimrén -court_position.9021 = { - type = character_event - window = scheme_failed_event - title = court_position.9021.t - desc = { - desc = court_position.9021.desc - triggered_desc = { - trigger = { exists = local_var:bodyguard_dies } - desc = court_position.9021.bodyguard_dies - } - } - theme = murder_scheme - left_portrait = { - character = scope:owner - triggered_animation = { - trigger = { exists = scope:scheme_discovered } - animation = fear - } - animation = stress - } - center_portrait = { - character = scope:bodyguard - triggered_animation = { - trigger = { is_alive = no } - animation = map_fear - } - animation = random_weapon_aggressive - camera = camera_event_center_pointing_left - } - right_portrait = { - character = scope:target - triggered_animation = { - trigger = { exists = scope:scheme_discovered } - animation = rage - } - animation = paranoia - } - widget = { - gui = "event_window_widget_scheme" - container = "custom_widgets_container" - } - - trigger = { - scope:target = { - employs_court_position = bodyguard_court_position - any_court_position_holder = { - type = bodyguard_court_position - bodyguard_will_actually_do_job_trigger = yes - } - } - } - - immediate = { - scope:target = { - random_court_position_holder = { - type = bodyguard_court_position - limit = { is_physically_able = yes } - save_scope_as = bodyguard - } - } - murder_failure_effect = yes - hidden_effect = { - random = { - chance = 75 - set_local_variable = { - name = bodyguard_dies - value = yes - } - } - } - } - - option = { - name = murder_save.0001.a - scope:scheme = { end_scheme = yes } - } - - option = { - name = murder_save.0001.b - restart_murder_scheme_effect = yes - } - - after = { - # Fire the rest of the outcome. - scope:target = { trigger_event = court_position.9022 } - if = { - limit = { exists = local_var:bodyguard_dies } - show_as_tooltip = { - murder_interception_handle_extra_deaths_effect = { - VICTIM = scope:bodyguard - REASON = death_murder - } - } - } - } -} - -# FOR TARGET: Bodyguard dies to assassin -court_position.9022 = { - type = character_event - window = scheme_conclusion_event_no_header - title = court_position.9021.t - desc = { - desc = court_position.9022.desc - triggered_desc = { - trigger = { exists = local_var:bodyguard_dies } - desc = court_position.9022.bodyguard_dies - } - triggered_desc = { - trigger = { exists = scope:scheme_discovered } - desc = court_position.9002.owner_discovered - } - } - theme = murder_scheme - left_portrait = { - character = scope:target - triggered_animation = { - trigger = { exists = scope:scheme_discovered } - animation = rage - } - animation = paranoia - } - center_portrait = { - character = scope:bodyguard - triggered_animation = { - trigger = { is_alive = no } - animation = map_fear - } - animation = random_weapon_aggressive - } - right_portrait = { - character = scope:owner_to_reveal - triggered_animation = { - trigger = { exists = scope:scheme_discovered } - animation = fear - } - animation = stress - } - - immediate = { - set_variable = { - name = block_death_event_from - value = scope:bodyguard - days = 3 - } - # Handle the death of the bodyguard, if necessary - if = { - limit = { exists = local_var:bodyguard_dies } - murder_interception_handle_extra_deaths_effect = { - VICTIM = scope:bodyguard - REASON = death_murder - } - } - } - - # Who could do such a thing? - option = { - name = murder_save.1001.a - trigger = { - NOT = { exists = scope:scheme_discovered } - } - custom_tooltip = murder_save.failure_unknown_owner_tt - } - - # Vengeance! - option = { - name = murder_save.1001.b - trigger = { exists = scope:scheme_discovered } - custom_tooltip = murder_save.failure_known_owner_tt - } - - after = { - add_character_modifier = { - modifier = watchful_modifier - days = watchful_modifier_duration - } - } -} diff --git a/events/dlc/ep1/ep1_decision_events.txt b/events/dlc/ep1/ep1_decision_events.txt deleted file mode 100644 index d24c15d5a..000000000 --- a/events/dlc/ep1/ep1_decision_events.txt +++ /dev/null @@ -1,575 +0,0 @@ -namespace = ep1_decision - -################################################## -# -# Royal Court Court Grandeur Level & Amenity Decisions Events -# -# COURT GRANDEUR LEVELS -# 0001 - 0010 Host Fundraiser -# 0011 - 0020 Host Summit -# -# AMENITIES -# 0101 - 0110 Order Mass Eviction -# 0111 - 0120 Commission Exotic Bedchamber -################################################## - - - - - - - - - - -################################################## -# COURT GRANDEUR LEVELS -ep1_decision.0201 = { - type = character_event - title = ep1_decision.0201.t - desc = ep1_decision.0201.desc - theme = education - left_portrait = scope:good_linguist - lower_left_portrait = scope:cheap_linguist - right_portrait = scope:medium_linguist - lower_right_portrait = scope:scholarly_linguist - override_background = { reference = throne_room } - - immediate = { - ### Save cultures and languages - # Find 1st culture that speaks target language natively - random_culture_global = { - limit = { - exists = culture_head - scope:target_court_language = { has_court_language_of_culture = prev } - } - save_scope_as = ling_cul_1 - } - # Save liege as example to fetch faiths if relevant - if = { - limit = { - exists = scope:language_scheme_type - liege = { has_court_language_of_culture = root.liege.culture } - } - liege = { save_scope_as = ling_cul_1_ruler } - } - # Otherwise find random cul_1 ruler - else = { - linguist_random_realm_effect = { CULTURE = ling_cul_1 } - } - # Find 2nd culture that speaks target language natively - if = { - limit = { - any_culture_global = { - exists = culture_head - scope:target_court_language = { has_court_language_of_culture = prev } - THIS != scope:ling_cul_1 - } - } - random_culture_global = { - limit = { - exists = culture_head - scope:target_court_language = { has_court_language_of_culture = prev } - THIS != scope:ling_cul_1 - } - save_scope_as = ling_cul_2 - } - } - # If none, duplicate 1st - else = { - scope:ling_cul_1 = { save_scope_as = ling_cul_2 } - } - # Save random ruler of cul 2 to find faith - linguist_random_realm_effect = { CULTURE = ling_cul_2 } - # Save own culture - culture = { save_scope_as = ling_cul_3 } - # Bonus languages good linguists may know in addition to root and target - linguist_bonus_culture_effect = { CULTURE = ling_cul_1 } - linguist_bonus_culture_effect = { CULTURE = ling_cul_2 } - linguist_bonus_culture_effect = { CULTURE = ling_cul_3 } - #### Create Linguists - hidden_effect = { - # Poor Linguist - if = { - limit = { has_trait = greedy } - create_character = { - dynasty = none - template = court_linguist_cheap_template - location = root.capital_province - save_scope_as = cheap_linguist - } - } - # Average Linguist - create_character = { - dynasty = none - template = court_linguist_medium_template - location = root.capital_province - save_scope_as = medium_linguist - } - # Good Linguist - create_character = { - dynasty = none - template = court_linguist_good_template - culture = scope:ling_cul_2 - faith = scope:ling_cul_2_ruler.faith - location = root.capital_province - save_scope_as = good_linguist - } - # Scholarly Linguist - if = { - limit = { has_trait = scholar } - create_character = { - dynasty = none - template = court_linguist_good_template - culture = scope:ling_cul_1 - faith = scope:ling_cul_1_ruler.faith - location = root.capital_province - trait = scholar - save_scope_as = scholarly_linguist - } - if = { - limit = { - exists = scope:ling_cul_2_bonus - NOT = { - scope:scholarly_linguist = { knows_language_of_culture = scope:ling_cul_2_bonus } - } - } - scope:scholarly_linguist = { learn_language_of_culture = scope:ling_cul_2_bonus } - } - } - } - } - - # Expensive linguist, great teacher - option = { - name = ep1_decision.0201.a - pay_short_term_gold = { - target = scope:good_linguist - gold = medium_gold_value - } - learn_language_linguist_effect = { LINGUIST = scope:good_linguist } - stress_impact = { - greedy = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - short_term_gold < medium_gold_value - factor = 0 - } - } - } - - # Cheaper linguist; less learning, not a good teacher - option = { - name = ep1_decision.0201.b - pay_short_term_gold = { - target = scope:medium_linguist - gold = minor_gold_value - } - learn_language_linguist_effect = { LINGUIST = scope:medium_linguist } - stress_impact = { - greedy = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - short_term_gold < minor_gold_value_check - factor = 0 - } - } - } - - # I know a good tutor through scholarly circles! - option = { - name = ep1_decision.0201.c - trait = scholar - trigger = { has_trait = scholar } - learn_language_linguist_effect = { LINGUIST = scope:scholarly_linguist } - ai_chance = { - base = 100 - } - } - - # I'm cheap, get me anyone who can vaguely speak my language - option = { - name = ep1_decision.0201.d - trait = greedy - trigger = { has_trait = greedy } - learn_language_linguist_effect = { LINGUIST = scope:cheap_linguist } - ai_chance = { - base = 1000 - modifier = { # Don't do it if you can hire the cool guy - has_trait = scholar - factor = 0 - } - } - } - - # On seconds thoughts, I won't hire a linguist at all... - option = { - name = ep1_decision.0201.e - ai_chance = { - base = 0 - modifier = { - short_term_gold < minor_gold_value_check - NOR = { - has_trait = scholar - has_trait = greedy - } - add = 10 - } - } - } - - after = { - every_in_list = { - list = court_linguist_list - limit = { - NOT = { is_courtier_of = root } - } - silent_disappearance_effect = yes - } - } -} - - - - - - - - - - - - -################################################## -# AMENITIES - -################################################## -# Out with the Old -# by Ewan Cowhig Croft -# 0101 - 0110 -################################################## - -# Pay a little prestige to boot out all the guests from your palace. -ep1_decision.0101 = { - type = character_event - title = ep1_decision.0101.t - desc = ep1_decision.0101.desc - theme = court - left_portrait = { - character = root - animation = personality_rational - } - override_background = { reference = throne_room } - - immediate = { - # Grab the capital for easy loc. - capital_barony = { save_scope_as = capital } - } - - # Scope:capital is not an inn. Away, leeches! - option = { - name = ep1_decision.0101.a - - # Evict your guests. - order_mass_eviction_decision_guests_only_effect = yes - - stress_impact = { - shy = minor_stress_impact_loss - gregarious = medium_stress_impact_gain - } - ai_chance = { - # AI cannot access this event. - base = 100 - } - } - - # Everyone who doesn't have a job or a close blood tie, *out*! - option = { - name = ep1_decision.0101.b - trigger = { - # If you have no spare rooms at all, you can dismiss useless courtiers for a bit extra. - amenity_level = { - target = court_lodging_standards - value <= low_amenity_level - } - } - - # Charge an extra premium. - add_prestige = { - value = order_mass_eviction_decision_cost_value - multiply = -1 - } - # Evict your guests *&* courtiers. - order_mass_eviction_decision_courtiers_&_guests_effect = yes - - stress_impact = { - shy = medium_stress_impact_loss - gregarious = major_stress_impact_gain - } - ai_chance = { - # AI cannot access this event. - base = 100 - } - } - - # On seconds thoughts, this is unbecoming... - option = { - name = ep1_decision.0101.c - - # Return invested prestige. - hidden_effect = { add_prestige_no_experience = order_mass_eviction_decision_cost_value } - # & reset the cooldown. - remove_decision_cooldown = order_mass_eviction_decision - - # No stress impact for cancelling out of the decision. - ai_chance = { - # AI cannot access this event. - base = 100 - } - } -} - -################################################## -# Grandiose Decor -# by Ewan Cowhig Croft -# 0111 - 0120 -################################################## - -# For technical reasons, this trigger can't be the same as exoticise_a_grand_hall_decision_list_builder_guts_trigger, but maintains (almost) technical parity with it. -scripted_trigger ep1_decision_0111_list_builder_guts_trigger = { - # Is the title presently active? - is_title_created = yes - # Filter out anyone already in the list. - NOT = { is_in_list = royal_courts_list } - # Check assorted holder things. - holder = { - # Filter out anyone who has the right rank but lacks a mechanical royal court. - has_royal_court = yes - this != root - # Can the two communicate? - in_diplomatic_range = root - } -} - -scripted_effect ep1_decision_0111_apply_hall_effect = { - # Add mutual opinion for each non-AI involved with the interaction. - $CHOICE$ = { - if = { - limit = { is_ai = yes } - add_opinion = { - target = root - modifier = flattered_opinion - opinion = 30 - } - } - } - if = { - limit = { is_ai = yes } - add_opinion = { - target = $CHOICE$ - modifier = impressed_opinion - opinion = 30 - } - } - # Gain a fraction of the CGV difference. - change_current_court_grandeur = $CHOICE$.ep1_decision_0111_proportional_cgv_gain_value - # Pay prestige proportional to how much CGV is gained. - add_prestige = $CHOICE$.ep1_decision_0111_proportional_prestige_cost_value - # Hand over a lil participation prestige for $CHOICE$ so that they know someone thinks their court is rad. - $CHOICE$ = { - send_interface_toast = { - title = ep1_decision.0111.toast.t - left_icon = root - # Give a little more for emperors doing this. - if = { - limit = { $CHOICE$.primary_title.tier >= tier_empire } - add_prestige = medium_prestige_gain - } - # Otherwise, just a few crumbs of prestige. - else = { add_prestige = minor_prestige_gain } - } - } - - # Stress impact handled in the scripted effect, since it'll always be the same for each char. - stress_impact = { - architect = minor_stress_impact_loss - humble = medium_stress_impact_loss - arrogant = major_stress_impact_gain - } -} - -# Arrange for a major room to be remodelled with decor inspired by a more grandiose culture. -ep1_decision.0111 = { - type = character_event - title = ep1_decision.0111.t - desc = ep1_decision.0111.desc - theme = court - left_portrait = { - character = root - animation = throne_room_conversation_4 - } - lower_left_portrait = scope:option_1 - lower_center_portrait = scope:option_2 - lower_right_portrait = scope:option_3 - - immediate = { - # Build a list of suitable courts. - ## We add the title rather than the characters to the list for a cleaner debug tooltip in-game. - every_empire = { - limit = { ep1_decision_0111_list_builder_guts_trigger = yes } - # Rack 'em up. - add_to_list = royal_courts_list - } - every_kingdom = { - limit = { ep1_decision_0111_list_builder_guts_trigger = yes } - # Rack 'em up. - add_to_list = royal_courts_list - } - # Then, filter through the list and grab appropriate options. - ordered_in_list = { - list = royal_courts_list - max = 4 - check_range_bounds = no - order_by = { - # Use CGV as a base. - add = holder.court_grandeur_current - # Weight up for neighbouring realms. - if = { - limit = { - holder = { - OR = { - any_neighboring_and_across_water_realm_same_rank_owner = { this = root } - any_neighboring_and_across_water_top_liege_realm_owner = { this = root } - } - } - } - multiply = 5 - } - } - if = { - limit = { - NOT = { exists = scope:option_1 } - } - holder = { save_scope_as = option_1 } - } - else_if = { - limit = { - NOT = { - holder = { this = scope:option_1 } - exists = scope:option_2 - } - } - holder = { save_scope_as = option_2 } - } - else_if = { - limit = { - NOT = { - holder = { this = scope:option_1 } - holder = { this = scope:option_2 } - exists = scope:option_3 - } - } - holder = { save_scope_as = option_3 } - } - } - } - - # Scope:option_1 is a grand, grand place. - option = { - name = { - trigger = { scope:option_1.court_grandeur_current > root.court_grandeur_current } - text = ep1_decision.0111.a.greater_cgv - } - name = { - trigger = { always = yes } - text = ep1_decision.0111.a.lesser_cgv - } - trigger = { exists = scope:option_1 } - - # Build a hall in the relevant scope's style. - ep1_decision_0111_apply_hall_effect = { CHOICE = scope:option_1 } - - # Stress_impact block handled in the scripted effect. - ai_chance = { - # Generally equal likelihood for each option. - base = 100 - # Otherwise, people want to model themselves after characters they like. - #opinion_modifier = { opinion_target = scope:option_1 } - } - } - - # I find the architecture of scope:option_2 enthralling! - option = { - name = { - trigger = { scope:option_2.court_grandeur_current > root.court_grandeur_current } - text = ep1_decision.0111.b.greater_cgv - } - name = { - trigger = { always = yes } - text = ep1_decision.0111.b.lesser_cgv - } - trigger = { exists = scope:option_2 } - - # Build a hall in the relevant scope's style. - ep1_decision_0111_apply_hall_effect = { CHOICE = scope:option_2 } - - # Stress_impact block handled in the scripted effect. - ai_chance = { - # Generally equal likelihood for each option. - base = 100 - # Otherwise, people want to model themselves after characters they like. - #opinion_modifier = { opinion_target = scope:option_2 } - } - } - - # Perhaps a scope:option_3ikkan lounge? - option = { - name = { - trigger = { scope:option_3.court_grandeur_current > root.court_grandeur_current } - text = ep1_decision.0111.c.greater_cgv - } - name = { - trigger = { always = yes } - text = ep1_decision.0111.c.lesser_cgv - } - trigger = { exists = scope:option_3 } - - # Build a hall in the relevant scope's style. - ep1_decision_0111_apply_hall_effect = { CHOICE = scope:option_3 } - - # Stress_impact block handled in the scripted effect. - ai_chance = { - # Generally equal likelihood for each option. - base = 100 - # Otherwise, people want to model themselves after characters they like. - #opinion_modifier = { opinion_target = scope:option_3 } - } - } - - # These all seem quite foreign... - option = { - name = ep1_decision.0111.d - - # Refund the gold paid; we mention this in a tooltip so that it's a bit less noticeable. - hidden_effect = { add_gold = var:exoticise_a_grand_hall_decision_refund_value } - custom_tooltip = ep1_decision.0111.d.tt - # Take the decision off cooldown. - remove_decision_cooldown = exoticise_a_grand_hall_decision - - # No stress impact for cancelling out. - ai_chance = { - # If the AI has gotten this far, they should pick an option. - base = 0 - } - } - - after = { - # Whatever else happens, clear the refund value. - remove_variable = exoticise_a_grand_hall_decision_refund_value - } -} - diff --git a/events/dlc/ep1/ep1_flavor_events.txt b/events/dlc/ep1/ep1_flavor_events.txt deleted file mode 100644 index 0afe9b7e4..000000000 --- a/events/dlc/ep1/ep1_flavor_events.txt +++ /dev/null @@ -1,6005 +0,0 @@ -namespace = ep1_flavor - -################################################## -# Ewan - -################################################## -# 0001 - 0010 Learn of the secret scion of an existing neighbouring court. -# 0011 - 0020 Diplomats from nearby realms have trashed your favourite hall. -# 0021 - 0030 You compete with another realm that shares your court language for grandeur. -# 0031 - 0040 Several fresh young scholars are newly arrived at court & need guidance. -################################################## - -################################################## -# The Secret DaughterSon -# by Ewan Cowhig Croft -# 0001 - 0010 -################################################## - -scripted_trigger ep1_flavour_0001_relative_appropriate_to_marry_trigger = { - can_marry_trigger = yes - is_adult = yes - liege = root - # Make sure we don't accidentally nab a player. - NOT = { is_ai = no } -} - -scripted_trigger ep1_flavour_0001_valid_to_have_secret_scion_trigger = { - # Standards checks: make sure the ruler is of the correct age, decently fertile, etc. - is_ai = yes - any_spouse = { - count = all - is_ai = yes - } - can_have_children = yes - fertility >= medium_fertility - ## Age needs to be relatively high so that the scion can be created successfully. - age >= ep1_flavour_0001_scion_parent_minimum_age_value - ## Having a dynasty makes things more fun - exists = dynasty - ## Soulmates are too complex to really handle hidden bastards for. - num_of_relation_soulmate = 0 - ## And though heterosexual, bisexual, and asexual characters might also conceivably have such a child, homosexual characters generally shouldn't. - NOT = { has_sexuality = homosexual } - # Hostility checks: filter out anyone who's at war with root, a bad relation, or just otherwise wouldn't be a good fit. - NOR = { - is_at_war_with = root - has_any_bad_relationship_with_root_trigger = yes - # Faiths that'd never consider marrying you are bad picks. - faith = { - faith_hostility_level = { - target = root.faith - value >= faith_evil_level - } - } - } - # Make sure we have someone who'd be personally concerned about the existence of bastards. - ## I.e, their faith discriminates against bastards. We check this manually both for ease of triggers & to keep things simple. - faith = { - OR = { - has_doctrine_parameter = bastards_legitimize - has_doctrine_parameter = bastards_always - } - } - # And finally someone who might actually actively empathise enough to try and protect their bastard from a harsh existence. - NOR = { - has_trait = lazy - has_trait = honest - has_trait = just - has_trait = trusting - has_trait = callous - has_trait = sadistic - } -} - -scripted_effect ep1_flavour_0001_marry_suitor_effect = { - # Diplo duel to try to pressure for the marriage. - duel = { - skill = diplomacy - target = scope:scion_parent - # Root wins, obtaining a forceful marriage alliance. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = ep1_flavor.0001.a.tt.success - send_interface_toast = { - title = ep1_flavor.0001.a.tt.success - left_icon = scope:scion_parent - right_icon = scope:scion_actual - # Calc all the bastard stuff. - ep1_flavour_0001_reveal_secret_child_effect = yes - # Scope:prospective_spouse & scope:scion_actual marry immediately or asap through grand wedding - if = { - limit = { - has_ep2_dlc_trigger = yes - } - create_grand_wedding_betrothal = { - SPOUSE_1 = scope:prospective_spouse - SPOUSE_2 = scope:scion_actual - HOST = root - PROMISEE = scope:scion_parent - } - } - else = { scope:prospective_spouse = { marry = scope:scion_actual } } - # Create an alliance root & scope:scion_parent via the married couple. - create_alliance = { - target = scope:scion_parent - allied_through_owner = scope:prospective_spouse - allied_through_target = scope:scion_actual - } - # Scope:scion_parent steps rivalry with root. - progress_towards_rival_effect = { - REASON = rival_succeeded_force_marriage - CHARACTER = scope:scion_parent - OPINION = -50 - } - } - } - # Scope:scion_parent obfuscates till they can whisk away their child. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = ep1_flavor.0001.a.tt.failure - send_interface_toast = { - title = ep1_flavor.0001.a.tt.failure - left_icon = scope:scion_parent - right_icon = scope:scion_actual - # Scope:scion gets away. - custom_tooltip = ep1_flavor.0001.tt.scion_escapes - # Root loses prestige. - add_prestige = major_prestige_loss - # Scope:scion_parent steps rivalry with root, but a bit less because they still won. - progress_towards_rival_effect = { - REASON = rival_attempted_to_force_marriage - CHARACTER = scope:scion_parent - OPINION = -25 - } - } - } - } - - # Sort stress. - ## If scope:scion_actual is at least a royal bastard, then arrogant characters are a little happy. - if = { - limit = { scope:scion_parent.primary_title.tier >= tier_kingdom } - stress_impact = { - arrogant = miniscule_stress_impact_loss - humble = medium_stress_impact_gain - honest = medium_stress_impact_gain - compassionate = medium_stress_impact_gain - } - } - ## Otherwise, they don't have a feeling. - else = { - stress_impact = { - humble = medium_stress_impact_gain - honest = medium_stress_impact_gain - compassionate = medium_stress_impact_gain - } - } -} - -scripted_effect ep1_flavour_0001_reveal_secret_child_effect = { - # First, set up the sex as "recent" so we can pull the reveal. - ## The affair partner's gender is picked deterministically so that it could result in pregnancy. - scope:scion_parent = { - if = { - limit = { is_female = yes } - set_variable = { - name = had_recent_sex - value = flag:male - } - } - else = { - set_variable = { - name = had_recent_sex - value = flag:female - } - } - } - # Then, do the actual reveal. - ## First the effects of the extra-marital sex. - ### We regard this as the same as cheating actively for simplicity and the sake of the scale of the lie. - extramarital_sex_exposure_consequences_with_had_recent_sex_var_effect = { SPOUSE_EVENT = no } - # Finally, deal with scope:scion_actual's transformation. - scope:scion_actual = { - # Then make scope:scion_actual a bastard. - add_trait = bastard - # Obfuscate a few irrelevant bits. - hidden_effect = { - # Set up their legal parentage. - scope:scion_parent = { - if = { - limit = { is_female = yes } - scope:scion_actual = { set_mother = scope:scion_parent } - } - else = { - scope:scion_actual = { set_father = scope:scion_parent } - } - } - # Plus, dynasty. - set_house = scope:scion_parent.house - } - } - scope:scion_parent = { - if = { - limit = { - OR = { - AND = { - is_male = yes - NOT = { - faith = { has_doctrine = doctrine_adultery_men_accepted } - } - } - AND = { - is_female = yes - NOT = { - faith = { has_doctrine = doctrine_adultery_women_accepted } - } - } - } - - } - add_trait = adulterer - } - } -} - -# Learn of the secret scion of an existing neighbouring court. -ep1_flavor.0001 = { - type = character_event - title = ep1_flavor.0001.t - desc = ep1_flavor.0001.desc - theme = diplomacy - left_portrait = { - character = scope:scion_parent - animation = disbelief - outfit_tags = { beggar_rags } - } - right_portrait = { - character = scope:scion_actual - animation = worry - outfit_tags = { beggar_rags } - } - lower_center_portrait = scope:prospective_spouse - override_background = { reference = tavern } - - cooldown = { years = 100 } - - trigger = { - is_ai = no - # Standard checks. - has_royal_court = yes - has_dlc_feature = royal_court - is_available_at_peace_adult = yes - # Is suitable/has suitable family for the marriage. - OR = { - can_marry_trigger = yes - any_close_family_member = { ep1_flavour_0001_relative_appropriate_to_marry_trigger = yes } - } - # Has a valid neighbour or vassal. - OR = { - any_neighboring_and_across_water_realm_same_rank_owner = { ep1_flavour_0001_valid_to_have_secret_scion_trigger = yes } - any_vassal = { ep1_flavour_0001_valid_to_have_secret_scion_trigger = yes } - } - } - - weight_multiplier = { - base = 1 - - # Court weightings: plug in a court type that should see this event more often. - ep1_weight_up_for_court_type_modifier = { COURT_TYPE = court_diplomatic } - } - - immediate = { - # First up, we decide whether root or a relative of theirs will be the marriable candidate. - ## If root can marry, we use root. - if = { - limit = { can_marry_trigger = yes } - save_scope_as = prospective_spouse - } - ## Otherwise, pick a family member. - else = { - random_close_family_member = { - limit = { ep1_flavour_0001_relative_appropriate_to_marry_trigger = yes } - save_scope_as = prospective_spouse - } - } - # Now we need to select a suitable dynasty to add the scion to. - ## Grab every candidate, chuck 'em in a list. - every_neighboring_and_across_water_realm_same_rank_owner = { - limit = { ep1_flavour_0001_valid_to_have_secret_scion_trigger = yes } - add_to_list = valid_scion_candidates_list - } - every_vassal = { - limit = { ep1_flavour_0001_valid_to_have_secret_scion_trigger = yes } - add_to_list = valid_scion_candidates_list - } - ## Comb through the list for the most suitable dynasty. - ordered_in_list = { - list = valid_scion_candidates_list - order_by = { - value = 0 - # We prefer characters outside your sub-realm. - if = { - limit = { - liege != root - } - add = 100 - } - # Ideally ones with at least a bit of the relevant skills. - if = { - limit = { diplomacy >= decent_skill_rating } - add = 15 - } - if = { - limit = { intrigue >= decent_skill_rating } - add = 15 - } - # Certain traits really weight up the chances of the candidate. - if = { - limit = { has_trait = lustful } - add = 20 - } - if = { - limit = { has_trait = diligent } - add = 20 - } - if = { - limit = { has_trait = paranoid } - add = 20 - } - if = { - limit = { has_trait = seducer } - add = 20 - } - if = { - limit = { has_trait = schemer } - add = 20 - } - if = { - limit = { has_trait = compassionate } - add = 20 - } - } - save_scope_as = scion_parent - } - ## Take off scope:scion_parent's headgear for the event. - scope:scion_parent = { add_character_flag = no_headgear } - # Finally, we create the scion themselves. - ## Basic setup. - create_character = { - location = scope:scion_parent.capital_county.title_province - template = hidden_scion_template - save_scope_as = scion_actual - } - ## Adjust a few details. - hidden_effect = { - scope:scion_actual = { - # Copy over their genetics. - copy_inheritable_appearance_from = scope:scion_parent - # Add the sheltered modifier. - add_character_modifier = raised_in_secrecy_modifier - } - } - } - - # Preferred candidate: No doubt scope:scion_parent was simply holding HerHis hand for me? - option = { - name = ep1_flavor.0001.a - trigger = { this = scope:prospective_spouse } - - ep1_flavour_0001_marry_suitor_effect = yes - - # Stress impact taken care of in the scripted effect. - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 0.5 - ai_rationality = 0.25 - ai_compassion = -0.5 - } - } - } - - # Backup candidate: No doubt scope:scion_parent was simply holding HerHis hand for my [Relative]? - option = { - name = ep1_flavor.0001.b - trigger = { - this != scope:prospective_spouse - } - - ep1_flavour_0001_marry_suitor_effect = yes - - # Stress impact taken care of in the scripted effect. - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 0.5 - ai_rationality = 0.25 - ai_compassion = -0.5 - } - } - } - - # Grab them both, the world must know! - option = { - name = ep1_flavor.0001.c - - # You attempt to reveal scope:scion_actual's existence, giving scope:scion_parent fairly little time to completely erase HerHis existence. - duel = { - skill = intrigue - target = scope:scion_parent - # Scope:scion_parent leaves a trace, and you become the QueenKing of gossip for a time. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = ep1_flavor.0001.c.tt.success - send_interface_toast = { - title = ep1_flavor.0001.c.tt.success - left_icon = scope:scion_parent - # Gain some permanent intrigue. - add_intrigue_skill = 2 - # Scope:scion_actual is revealed. Consequences ensue. - ep1_flavour_0001_reveal_secret_child_effect = yes - ## Remember to mark this as having happened. - save_scope_value_as = { - name = scion_revealed - value = yes - } - # Become rivals with scope:scion_parent immediately (nemeses if they're vengeful). - if = { - limit = { - scope:scion_parent = { has_trait = vengeful } - can_set_relation_nemesis_trigger = { CHARACTER = scope:scion_parent } - } - set_relation_nemesis = { - target = scope:scion_parent - reason = rival_exposed_bastard - } - } - else_if = { - limit = { - can_set_relation_rival_trigger = { CHARACTER = scope:scion_parent } - } - set_relation_rival = { - target = scope:scion_parent - reason = rival_exposed_bastard - } - } - else = { - reverse_add_opinion = { - target = scope:scion_parent - modifier = hate_opinion - opinion = -50 - } - } - } - } - # You're flummoxed by scope:scion_parent's trickery, leaving your accusations ridiculously baseless. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = ep1_flavor.0001.c.tt.failure - send_interface_toast = { - title = ep1_flavor.0001.c.tt.failure - left_icon = scope:scion_parent - # Scope:scion gets away. - custom_tooltip = ep1_flavor.0001.tt.scion_escapes - # Lose a load of prestige. - add_prestige = major_prestige_loss - # Stepped rivalry with scope:scion_parent. - progress_towards_rival_effect = { - REASON = rival_attempted_to_reveal_offspring - CHARACTER = scope:scion_parent - OPINION = -25 - } - } - } - } - - stress_impact = { - honest = miniscule_stress_impact_loss - compassionate = minor_stress_impact_gain - deceitful = medium_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 0.75 - ai_compassion = -0.75 - } - } - } - - # I'll help you, but I expect something in return... - option = { - name = ep1_flavor.0001.d - trigger = { - can_add_hook = { - target = scope:scion_parent - type = manipulation_hook - } - } - - # Scope:scion gets away. - custom_tooltip = ep1_flavor.0001.tt.scion_escapes - # Gain a hook on scope:scion_parent, who's also grateful for your assistance in their time of need. - add_hook = { - type = favor_hook - target = scope:scion_parent - } - reverse_add_opinion = { - target = scope:scion_parent - modifier = grateful_opinion - opinion = 50 - } - - stress_impact = { - deceitful = miniscule_stress_impact_loss - callous = minor_stress_impact_gain - sadistic = minor_stress_impact_gain - honest = major_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 0.5 - ai_compassion = 0.25 - } - } - } - - # What a pedestrian drama. - option = { - # Doesn't believe in bastards. - name = { - trigger = { - faith = { has_doctrine_parameter = bastards_none } - } - text = ep1_flavor.0001.e.no_bastards - } - # Fallback. - name = ep1_flavor.0001.e.fallback - - # Scope:scion gets away. - custom_tooltip = ep1_flavor.0001.tt.scion_escapes - # You pay the stranger no mind; scope:scion_parent is relieved. - reverse_add_opinion = { - target = scope:scion_parent - modifier = relieved_opinion - opinion = 25 - } - - stress_impact = { - base = medium_stress_impact_loss - shy = miniscule_stress_impact_loss - gregarious = minor_stress_impact_gain - paranoid = minor_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = -0.5 - ai_energy = -0.75 - } - } - } - - # Do a little clean-up. - after = { - # Afterwards, if scope:scion_actual isn't married or revealed, quietly disappear them. - hidden_effect = { - scope:scion_actual = { - if = { - limit = { - is_married = no - NOT = { exists = scope:scion_revealed } - } - death = { death_reason = death_vanished } - } - } - } - # Give scope:scion_parent their hat back. - scope:scion_parent = { remove_character_flag = no_headgear } - } -} - -################################################## -# An Absolute Shambles -# by Ewan Cowhig Croft -# 0011 - 0020 -################################################## - -scripted_trigger ep1_flavour_0011_valid_diplomats_trigger = { - # The title must be created first off. - is_title_created = yes - holder = { - # Make sure we're not looking at root. - this != root - # Now discard any that lack royal courts or aren't in diplomatic range. - has_royal_court = yes - has_dlc_feature = royal_court - in_diplomatic_range = root - # Then any that lack a chancellor. - exists = cp:councillor_chancellor - # Finally, their chancellor must be available & at peace. - cp:councillor_chancellor = { is_available_at_peace_ai_adult = yes } - } -} - -scripted_effect ep1_flavour_0011_friendly_diplomats_effect = { - reverse_add_opinion = { - target = scope:diplomat_1 - modifier = relieved_opinion - opinion = $OPINION$ - } - reverse_add_opinion = { - target = scope:diplomat_2 - modifier = relieved_opinion - opinion = $OPINION$ - } - ## Make them potential friends if appropriate. - hidden_effect = { - if = { - limit = { - can_set_relation_friend_trigger = { CHARACTER = scope:diplomat_1 } - } - set_relation_potential_friend = scope:diplomat_1 - } - if = { - limit = { - can_set_relation_friend_trigger = { CHARACTER = scope:diplomat_2 } - } - set_relation_potential_friend = scope:diplomat_2 - } - } -} - -# Diplomats from nearby realms have trashed your favourite hall. -ep1_flavor.0011 = { - type = character_event - title = ep1_flavor.0011.t - desc = ep1_flavor.0011.desc - theme = diplomacy - left_portrait = { - character = scope:diplomat_1 - animation = shock - } - right_portrait = { - character = scope:diplomat_2 - animation = shame - } - override_background = { reference = feast } - - cooldown = { years = 10 } - - trigger = { - # Standard checks. - has_royal_court = yes - has_dlc_feature = royal_court - is_available_at_peace_adult = yes - # Any two valid foreign chancellors are available. - any_kingdom = { - count >= 2 - ep1_flavour_0011_valid_diplomats_trigger = yes - } - } - - weight_multiplier = { - base = 1 - - # Court weightings: plug in a court type that should see this event more often. - ep1_weight_up_for_court_type_modifier = { COURT_TYPE = court_diplomatic } - } - - immediate = { - # Grab all applicable chancellors. - every_kingdom = { - limit = { ep1_flavour_0011_valid_diplomats_trigger = yes } - holder.cp:councillor_chancellor = { add_to_list = valid_chancellors_list } - } - # Now, pick out the two most relevant chancellors. - ordered_in_list = { - list = valid_chancellors_list - order_by = { - value = 0 - # Prio up realms you're allied with, since they'd have good cause. - if = { - limit = { - liege = { - any_ally = { this = root } - } - } - add = 100 - } - # Plus anyone where there's a degree of mutual religious tolerance. - if = { - limit = { - faith = { - faith_hostility_level = { - target = root.faith - value <= faith_hostile_level - } - } - save_temporary_scope_as = current_char - root.faith = { - faith_hostility_level = { - target = scope:current_char.faith - value <= faith_hostile_level - } - } - } - add = 50 - } - # Various traits make it more likely. - ## Obviously drunkards. - if = { - limit = { has_trait = drunkard } - add = 10 - } - ## Revellers of all stripes. - if = { - limit = { has_trait = lifestyle_reveler } - add = 20 - } - ## Gluttons. - if = { - limit = { has_trait = gluttonous } - add = 10 - } - ## Arbitrary folks. - if = { - limit = { has_trait = arbitrary } - add = 10 - } - ## Gregarious party-throwers. - if = { - limit = { has_trait = gregarious } - add = 10 - } - # And a few traits make it less likely. - ## Recluses. - if = { - limit = { has_trait = reclusive } - add = -10 - } - ## The temperate. - if = { - limit = { has_trait = temperate } - add = -10 - } - ## Just folks. - if = { - limit = { has_trait = just } - add = -10 - } - ## The shy. - if = { - limit = { has_trait = shy } - add = -10 - } - # Diplomatic skill decreases it, since better diplomats are less likely to make a scene. - add = { - value = diplomacy - multiply = -1 - } - } - max = 2 - if = { - limit = { - NOT = { exists = scope:diplomat_1 } - } - save_scope_as = diplomat_1 - } - else_if = { - limit = { - NOT = { - this = scope:diplomat_1 - exists = scope:diplomat_2 - } - } - save_scope_as = diplomat_2 - } - } - # Set up a cost based on root's lodgings amenity. - if = { - limit = { - amenity_level = { - target = court_lodging_standards - value <= low_amenity_level - } - } - set_variable = { - name = reimbursement_cost - value = { - value = minor_gold_value - multiply = 0.5 - round = yes - } - } - } - if = { - limit = { - amenity_level = { - target = court_lodging_standards - value <= medium_amenity_level - } - } - set_variable = { - name = reimbursement_cost - value = { - value = medium_gold_value - multiply = 0.5 - round = yes - } - } - } - if = { - limit = { - amenity_level = { - target = court_lodging_standards - value <= high_amenity_level - } - } - set_variable = { - name = reimbursement_cost - value = { - value = major_gold_value - multiply = 0.5 - round = yes - } - } - } - if = { - limit = { - amenity_level = { - target = court_lodging_standards - value >= very_high_amenity_level - } - } - set_variable = { - name = reimbursement_cost - value = { - value = massive_gold_value - multiply = 0.5 - round = yes - } - } - } - ## No more gold for max, since we've already reached a pretty expensive bill. - # Add a negative modifier for the trashed hall. - add_character_modifier = { - modifier = legendary_party_aftermath_modifier - years = 10 - } - scope:diplomat_2 = { - add_character_flag = is_naked - } - } - - # You will pay for these damages, you lickspittle curs! - option = { - name = ep1_flavor.0011.a - - # Deduct half of the damages from each diplomat, pay it towards root. - ## We're not fussed if this cost is unexpected for the diplomats: they shouldn't have messed with the hall. - scope:diplomat_1 = { - pay_short_term_gold = { - target = root - gold = root.var:reimbursement_cost - } - } - scope:diplomat_2 = { - pay_short_term_gold = { - target = root - gold = root.var:reimbursement_cost - } - } - # Remove the negative modifier. - remove_character_modifier = legendary_party_aftermath_modifier - # Gain a replacement modifier. - add_character_modifier = { - modifier = lacking_diplomatic_munity_modifier - years = 10 - } - - stress_impact = { - greedy = miniscule_stress_impact_loss - wrathful = miniscule_stress_impact_loss - calm = medium_stress_impact_gain - generous = medium_stress_impact_gain - forgiving = major_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = 1 - ai_greed = 0.5 - } - } - } - - # Alright, you trashed it, you can clean it up. SERVANTS! A mop! - option = { - name = ep1_flavor.0011.b - - # The diplomats are fairly upset with this humiliation. - reverse_add_opinion = { - target = scope:diplomat_1 - modifier = humiliated_opinion - opinion = -30 - } - reverse_add_opinion = { - target = scope:diplomat_2 - modifier = humiliated_opinion - opinion = -30 - } - ## Make them potential rivals if appropriate. - hidden_effect = { - if = { - limit = { - can_set_relation_rival_trigger = { CHARACTER = scope:diplomat_1 } - } - set_relation_potential_rival = scope:diplomat_1 - } - if = { - limit = { - can_set_relation_rival_trigger = { CHARACTER = scope:diplomat_2 } - } - set_relation_potential_rival = scope:diplomat_2 - } - } - # Remove the negative modifier. - remove_character_modifier = legendary_party_aftermath_modifier - # Replace it with a positive one. - add_character_modifier = { - modifier = humbling_hall_modifier - years = 10 - } - # Whack a lil CGV in for your swagger. - change_current_court_grandeur = miniscule_court_grandeur_gain - - stress_impact = { - just = miniscule_stress_impact_loss - calm = miniscule_stress_impact_loss - wrathful = medium_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = 0.5 - ai_vengefulness = -0.5 - } - } - } - - # Oh no, this party's not over yet: someone fill my goblet! - option = { - name = ep1_flavor.0011.c - trigger = { - NOT = { has_trait = lifestyle_reveler } - } - - # The diplomats are immensely happy. - ep1_flavour_0011_friendly_diplomats_effect = { OPINION = 30 } - # The modifier gets worse in some ways, better in others. - remove_character_modifier = legendary_party_aftermath_modifier - add_character_modifier = { - modifier = mythic_party_aftermath_modifier - years = 10 - } - - stress_impact = { - gregarious = miniscule_stress_impact_loss - shy = medium_stress_impact_gain - temperate = medium_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = 0.5 - ai_energy = 0.25 - ai_vengefulness = -0.5 - } - } - } - - # [Reveller] One night? Pathetic! Make way for the Party [TitleAsName]! - option = { - name = ep1_flavor.0011.d - trigger = { has_trait = lifestyle_reveler } - trait = lifestyle_reveler - - # The diplomats are even happier. - ep1_flavour_0011_friendly_diplomats_effect = { OPINION = 50 } - # The modifier gets *much* worse in some ways, *much* better in others. - remove_character_modifier = legendary_party_aftermath_modifier - add_character_modifier = { - modifier = world_shattering_party_aftermath_modifier - years = 10 - } - - stress_impact = { - base = medium_stress_loss - gregarious = miniscule_stress_impact_loss - shy = medium_stress_impact_gain - temperate = medium_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = 0.75 - ai_energy = 0.55 - ai_vengefulness = -0.5 - } - } - } - - # [wordlessly leave the hall] - option = { - name = ep1_flavor.0011.e - flavor = ep1_flavor.0011.e.tt - - # The diplomats gain stress & fear reprisal. - scope:diplomat_1 = { - add_opinion = { - target = root - modifier = scared_opinion - opinion = -30 - } - add_stress = major_stress_gain - } - scope:diplomat_2 = { - add_opinion = { - target = root - modifier = scared_opinion - opinion = -30 - } - add_stress = major_stress_gain - } - # People think you inscrutable. - add_character_modifier = { - modifier = inscrutable_host_modifier - years = 10 - } - - stress_impact = { - shy = minor_stress_impact_loss - reclusive = minor_stress_impact_loss - wrathful = medium_stress_impact_gain - vengeful = medium_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = -0.25 - ai_energy = -0.5 - ai_vengefulness = -0.75 - } - } - } - - # Do a little clean-up. - after = { - # Get rid of the reimbursement cost. - remove_variable = reimbursement_cost - scope:diplomat_2 = { - remove_character_flag = is_naked - } - } -} - -################################################## -# Two Realms Separated by a Courtly Language -# by Ewan Cowhig Croft -# 0021 - 0030 -################################################## - -scripted_trigger ep1_flavour_0021_valid_nitpicking_courtier_trigger = { - # A simple is available check. - is_available_ai_adult = yes - # Plus they speak the court language. - knows_court_language_of = root -} - -scripted_trigger ep1_flavour_0021_valid_wrong_spelling_realm_trigger = { - # The title must be created first off. - is_title_created = yes - holder = { - # Make sure we're not looking at root. - this != root - # For erroring reasons, double check that their court is royal. - has_royal_court = yes - has_dlc_feature = royal_court - # Now ensure they speak the same court language. - has_same_court_language = root - # And that they can speak their *own* court language. - knows_court_language_of = this - # Finally, discard any that aren't in diplomatic range. - in_diplomatic_range = root - # ... or players. - is_ai = yes - } -} - -scripted_trigger ep1_flavour_0021_valid_characters_to_fuss_trigger = { - # Must speak the court language. - knows_court_language_of = $OWN_COURT$ - # And be an AI who's around and about. - is_available_at_peace_ai_adult = yes -} - -scripted_trigger ep1_flavour_0021_different_cultured_realms_trigger = { - $THIS$ = { - any_courtier = { - percent >= 0.5 - culture = $THIS$.culture - } - OR = { - any_sub_realm_county = { - count >= 10 - culture = $THIS$.culture - } - culture = { - any_culture_county = { - percent >= 0.25 - OR = { - holder = $THIS$ - holder = { - any_liege_or_above = { this = $THIS$ } - } - } - } - } - any_sub_realm_county = { - percent >= 0.5 - culture = $THIS$.culture - } - } - } -} - -scripted_effect ep1_flavour_0021_apply_mutual_court_opinions_effect = { - hidden_effect = { - every_in_list = { - list = root_court_list - save_temporary_scope_as = current_char - every_in_list = { - list = scope_rival_monarch_court_list - add_opinion = { - target = scope:current_char - modifier = $OPINION_TYPE$ - opinion = $OPINION_VALUE$ - } - } - } - every_in_list = { - list = scope_rival_monarch_court_list - save_temporary_scope_as = current_char - every_in_list = { - list = root_court_list - add_opinion = { - target = scope:current_char - modifier = $OPINION_TYPE$ - opinion = $OPINION_VALUE$ - } - } - } - } -} - -scripted_effect ep1_flavour_0021_apply_mutual_cultural_dislike_effect = { - if = { - limit = { - # First, check they're not the same culture. - culture != scope:rival_monarch.culture - # Then make sure both actually have a decent chunk of courtiers of their culture around, and aren't ruling some total adventurer kingdom.. - ep1_flavour_0021_different_cultured_realms_trigger = { THIS = root } - ep1_flavour_0021_different_cultured_realms_trigger = { THIS = scope:rival_monarch } - } - culture = { - change_cultural_acceptance = { - target = scope:rival_monarch.culture - value = $ACCEPTANCE_CHANGE$ - desc = $ACCEPTANCE_DESC$ - } - } - } -} - -# You compete with another realm that shares your court language for grandeur. -ep1_flavor.0021 = { - type = character_event - title = ep1_flavor.0021.t - desc = ep1_flavor.0021.desc - theme = diplomacy - left_portrait = { - character = scope:nitpicker - animation = scheme - } - right_portrait = { - character = scope:rival_monarch - animation = personality_vengeful - } - - cooldown = { years = 5 } - - trigger = { - # Standard checks. - has_royal_court = yes - has_dlc_feature = royal_court - is_available_at_peace_adult = yes - # For flavour reasons, root must be able to speak their own court language. - knows_court_language_of = this - # You'll also need someone in your court who can be the focal point. - ## This might occasionally make dumb selections, but honestly, that's sorta in the spirit of the quibbling. - any_courtier = { ep1_flavour_0021_valid_nitpicking_courtier_trigger = yes } - # Make sure we've got a suitable opposing realm. - OR = { - any_kingdom = { ep1_flavour_0021_valid_wrong_spelling_realm_trigger = yes } - any_empire = { ep1_flavour_0021_valid_wrong_spelling_realm_trigger = yes } - } - } - - weight_multiplier = { - base = 1 - - # Court weightings: plug in a court type that should see this event more often. - ep1_weight_up_for_court_type_modifier = { COURT_TYPE = court_diplomatic } - } - - immediate = { - # Select an opposing realm. - ## Kingdoms look for kingdoms... - if = { - limit = { highest_held_title_tier = tier_kingdom } - random_kingdom = { - limit = { ep1_flavour_0021_valid_wrong_spelling_realm_trigger = yes } - save_scope_as = rival_realm - holder = { save_scope_as = rival_monarch } - } - # ... but otherwise will take an empire. - if = { - limit = { - NOT = { exists = scope:rival_realm } - } - random_empire = { - limit = { ep1_flavour_0021_valid_wrong_spelling_realm_trigger = yes } - save_scope_as = rival_realm - holder = { save_scope_as = rival_monarch } - } - } - } - ## Empires look for empires... - else = { - random_empire = { - limit = { ep1_flavour_0021_valid_wrong_spelling_realm_trigger = yes } - save_scope_as = rival_realm - holder = { save_scope_as = rival_monarch } - } - # ... but will otherwise take kingdoms. - if = { - limit = { - NOT = { exists = scope:rival_realm } - } - random_kingdom = { - limit = { ep1_flavour_0021_valid_wrong_spelling_realm_trigger = yes } - save_scope_as = rival_realm - holder = { save_scope_as = rival_monarch } - } - } - } - # Grab a nitpicking courtier. - ## We do this after selecting the realm so that we can weight against poor-choice characters. - random_courtier = { - limit = { ep1_flavour_0021_valid_nitpicking_courtier_trigger = yes } - weight = { - base = 0 - # Weight up according to learning. - modifier = { add = learning } - # Plus a few traits make it more likely. - modifier = { - add = 10 - has_trait = arrogant - } - modifier = { - add = 10 - has_trait = scholar - } - ## Y'know, assuming you're just a stickler for the rules of language too. - modifier = { - add = 5 - has_trait = just - } - # And a few others less likely. - modifier = { - add = -10 - has_trait = humble - } - ## And, as with just, assuming that you also don't much care for the rules of language. - modifier = { - add = -5 - has_trait = arbitrary - } - # Weight against characters that might identify with the other realm. - modifier = { - add = -20 - any_close_or_extended_family_member = { this = scope:rival_monarch } - } - modifier = { - add = -20 - culture = scope:rival_monarch.culture - } - } - save_scope_as = nitpicker - } - # Nab both courts for effects. - ## First root. - every_courtier = { - limit = { - ep1_flavour_0021_valid_characters_to_fuss_trigger = { OWN_COURT = root } - } - add_to_list = root_court_list - } - every_councillor = { - limit = { - ep1_flavour_0021_valid_characters_to_fuss_trigger = { OWN_COURT = root } - # Ensure that a vassal kingdom isn't added as disapproving of their own spelling. - this != scope:rival_monarch - } - add_to_list = root_court_list - } - ## Then scope:rival_monarch. - scope:rival_monarch = { - every_courtier = { - limit = { - ep1_flavour_0021_valid_characters_to_fuss_trigger = { OWN_COURT = scope:rival_monarch } - } - add_to_list = scope_rival_monarch_court_list - } - every_councillor = { - limit = { - ep1_flavour_0021_valid_characters_to_fuss_trigger = { OWN_COURT = scope:rival_monarch } - # Ensure that a vassal kingdom isn't added as disapproving of their own spelling. - this != root - } - add_to_list = scope_rival_monarch_court_list - } - } - } - - # This missive is missing half the vowels! Disgusting! - option = { - name = ep1_flavor.0021.a - - # Both courts gain dislike of each other. - custom_tooltip = ep1_flavor.0021.a.tt - ep1_flavour_0021_apply_mutual_court_opinions_effect = { - OPINION_TYPE = disgusted_opinion - OPINION_VALUE = ep1_flavour_0021_courts_lose_opinion_actual_value - } - # Diplo challenge to gain CGV at their expense. - duel = { - skill = diplomacy - target = scope:rival_monarch - # PrimaryTitle.GetAdjective spellings are best! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = ep1_flavor.0021.a.tt.success - send_interface_toast = { - title = ep1_flavor.0021.a.tt.success - left_icon = scope:rival_monarch - # Some for you... - change_current_court_grandeur = medium_court_grandeur_gain - # ... some from them. - scope:rival_monarch = { change_current_court_grandeur = medium_court_grandeur_loss } - } - } - # Scope:rival_monarch.PrimaryTitle.GetAdjective spellings are best! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = ep1_flavor.0021.a.tt.failure - send_interface_toast = { - title = ep1_flavor.0021.a.tt.failure - left_icon = scope:rival_monarch - # Some from you... - change_current_court_grandeur = medium_court_grandeur_loss - # ... some for them. - scope:rival_monarch = { change_current_court_grandeur = medium_court_grandeur_gain } - } - } - } - # Look at making things a bit more tense. - ep1_flavour_0021_apply_mutual_cultural_dislike_effect = { - ACCEPTANCE_CHANGE = minor_cultural_acceptance_loss - ACCEPTANCE_DESC = cultural_acceptance_courtly_spelling_differences - } - - stress_impact = { - humble = minor_stress_impact_gain - patient = minor_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 0.75 - ai_rationality = -0.25 - } - } - } - - # Are they not our linguistic cousins? - option = { - name = ep1_flavor.0021.b - - # Both courts start to like each other a bit more. - custom_tooltip = ep1_flavor.0021.b.tt - ep1_flavour_0021_apply_mutual_court_opinions_effect = { - OPINION_TYPE = respect_opinion - OPINION_VALUE = ep1_flavour_0021_courts_gain_opinion_value - } - # Stepped friendship with the other ruler. - progress_towards_friend_effect = { - CHARACTER = scope:rival_monarch - OPINION = default_friend_opinion - REASON = friend_common_language - } - # And, if appropriate, a little cultural acceptance. - ep1_flavour_0021_apply_mutual_cultural_dislike_effect = { - ACCEPTANCE_CHANGE = minor_cultural_acceptance_gain - ACCEPTANCE_DESC = cultural_acceptance_courtly_cousins - } - - stress_impact = { - arrogant = medium_stress_impact_gain - impatient = medium_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 0.25 - ai_energy = 0.5 - } - } - } - - # Two noble courts and not a sodding brain between them... - option = { - name = ep1_flavor.0021.c - - # Both courts gain dislike of each other. - custom_tooltip = ep1_flavor.0021.c.tt - ep1_flavour_0021_apply_mutual_court_opinions_effect = { - OPINION_TYPE = disgusted_opinion - OPINION_VALUE = ep1_flavour_0021_courts_lose_opinion_actual_value - } - # Look at making things a bit more tense. - ep1_flavour_0021_apply_mutual_cultural_dislike_effect = { - ACCEPTANCE_CHANGE = minor_cultural_acceptance_loss - ACCEPTANCE_DESC = cultural_acceptance_courtly_spelling_differences - } - # Gain a modifier for your troubles. - add_character_modifier = { - modifier = above_petty_differences_modifier - years = 10 - } - - stress_impact = { - cynical = miniscule_stress_impact_loss - patient = minor_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 0.25 - ai_sociability = -0.5 - ai_energy = -0.75 - } - } - } -} - -################################################## -# Fresh at Court -# by Ewan Cowhig Croft -# 0031 - 0040 -################################################## - -scripted_effect ep1_flavour_0031_give_random_inspiration_effect = { - # Sort out an appropriate tooltip. - ## One for scope:scholar_1. - if = { - limit = { $THIS$ = scope:scholar_1 } - custom_tooltip = ep1_flavor.0031.inspire.scholar_1.tt - } - ## And one for scope:scholar_2. - if = { - limit = { $THIS$ = scope:scholar_2 } - custom_tooltip = ep1_flavor.0031.inspire.scholar_2.tt - } - # We weight up the more bookish inspirations a bit. - hidden_effect = { - random_list = { - 300 = { create_inspiration = book_inspiration } - 200 = { create_inspiration = artisan_inspiration } - 200 = { create_inspiration = alchemy_inspiration } - 100 = { create_inspiration = weapon_inspiration } - 100 = { create_inspiration = armor_inspiration } - 100 = { create_inspiration = weaver_inspiration } - 100 = { create_inspiration = smith_inspiration } - 50 = { create_inspiration = adventure_inspiration } - 50 = { create_inspiration = bow_inspiration } - } - } -} - -scripted_effect ep1_flavour_0031_add_both_scholars_effect = { - # Add both scholars first-up. - add_courtier = scope:scholar_1 - add_courtier = scope:scholar_2 - # Well, this doesn't exactly paint your court in the best light. - change_current_court_grandeur = miniscule_court_grandeur_loss - # Buuuut it does make pepole think better of ye. - add_prestige = minor_prestige_gain -} - -scripted_effect ep1_flavour_031_add_scholars_stress_effect = { - stress_impact = { - drunkard = miniscule_stress_impact_loss - gregarious = miniscule_stress_impact_loss - shy = $STRESS_GAIN$ - temperate = $STRESS_GAIN$ - } -} - -# Several fresh young scholars are newly arrived at court & need guidance. -ep1_flavor.0031 = { - type = character_event - title = ep1_flavor.0031.t - desc = ep1_flavor.0031.desc - theme = learning - left_portrait = { - character = scope:scholar_1 - animation = worry - } - right_portrait = { - character = scope:scholar_2 - animation = personality_bold - } - override_background = { reference = tavern } - - cooldown = { years = 5 } - - trigger = { - # Standard checks. - has_royal_court = yes - has_dlc_feature = royal_court - is_available_at_peace_adult = yes - # Since this is a fairly scholar-specific thing, we restrict it to scholarly courts. - has_court_type = court_scholarly - } - - weight_multiplier = { - base = 1 - - # No court weighting, since we hard-restrict this to scholarly courts. - } - - immediate = { - # Create the two scholars. - ## First a scholar's scholar. - create_character = { - template = capital_scholar_character - location = root.capital_province - save_scope_as = scholar_1 - } - ## Then a writer. - create_character = { - template = capital_writer_character - location = root.capital_province - save_scope_as = scholar_2 - } - } - - # Down it, scope:scholar_1! - option = { - name = ep1_flavor.0031.a - - # Become friends with scope:scholar_1. - set_relation_friend = { reason = friend_drinking_together target = scope:scholar_1 } - # Give scope:scholar_1 an inspiration. - scope:scholar_1 = { - ep1_flavour_0031_give_random_inspiration_effect = { THIS = scope:scholar_1 } - } - # Gain both scholars. - ep1_flavour_0031_add_both_scholars_effect = yes - - # Stress impact handled in the effect. - ep1_flavour_031_add_scholars_stress_effect = { STRESS_GAIN = medium_stress_impact_gain } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = 1 - ai_energy = 0.5 - } - } - } - - # We like to drink with scope:scholar_2, because scope:scholar_2 is our mate! - option = { - name = ep1_flavor.0031.b - - # Become friends with scope:scholar_2. - set_relation_friend = { reason = friend_drinking_together target = scope:scholar_1 } - # Give scope:scholar_2 an inspiration. - scope:scholar_2 = { - ep1_flavour_0031_give_random_inspiration_effect = { THIS = scope:scholar_2 } - } - # Gain both scholars. - ep1_flavour_0031_add_both_scholars_effect = yes - - # Stress impact handled in the effect. - ep1_flavour_031_add_scholars_stress_effect = { STRESS_GAIN = medium_stress_impact_gain } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = 1 - ai_energy = 0.5 - } - } - } - - # There are some techniques that only experience can teach... - option = { - name = ep1_flavor.0031.c - flavor = ep1_flavor.0031.c.tt - trigger = { - OR = { - has_trait = scholar - has_trait = drunkard - } - } - trait = scholar - trait = drunkard - - # Become friends with *both* scholars. - set_relation_friend = { reason = friend_impressive_feat_of_alcoholism target = scope:scholar_1 } - set_relation_friend = { reason = friend_impressive_feat_of_alcoholism target = scope:scholar_2 } - # Plus, *both* get inspirations. - scope:scholar_1 = { - ep1_flavour_0031_give_random_inspiration_effect = { THIS = scope:scholar_1 } - } - scope:scholar_2 = { - ep1_flavour_0031_give_random_inspiration_effect = { THIS = scope:scholar_2 } - } - # Gain a modifier that loses you a little health for the weird concoction. - add_character_modifier = { - modifier = what_did_i_just_drink_modifier - years = 5 - } - # Gain both scholars. - ep1_flavour_0031_add_both_scholars_effect = yes - - # Stress impact handled in the effect. - ep1_flavour_031_add_scholars_stress_effect = { STRESS_GAIN = major_stress_impact_gain } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = 1 - ai_energy = 1 - } - } - } - - # These rituals are unbecoming of the scholarly. - option = { - name = ep1_flavor.0031.d - - # The scholars are booted. - hidden_effect = { - scope:scholar_1 = { silent_disappearance_effect = yes } - scope:scholar_2 = { silent_disappearance_effect = yes } - } - # Gain a modifier making you out to be a bit of a miser, but a more learned one. - add_character_modifier = { - modifier = known_killjoy_modifier - years = 10 - } - # Gain a bunch of learning lifestyle XP. - add_learning_lifestyle_xp = major_lifestyle_xp - - stress_impact = { - shy = miniscule_stress_impact_loss - temperate = miniscule_stress_impact_loss - lifestyle_reveler = minor_stress_impact_gain - drunkard = minor_stress_impact_gain - gregarious = minor_stress_impact_gain - gluttonous = minor_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = -0.25 - ai_sociability = -0.5 - } - } - } -} - - -################################################## -# Oltner - -scripted_trigger appropriate_eunuch_trigger = { - is_available_ai_adult = yes - is_eunuch_trigger = yes - NOT = { - has_relation_rival = root - } -} - -scripted_effect appoint_court_eunuch_effect = { - if = { - limit = { - culture = { has_cultural_parameter = can_appoint_chief_eunuch } - } - court_position_grant_effect = { - EMPLOYER = root - CANDIDATE = scope:eunuch_target - POS = chief_eunuch - } - } -} - -# A visiting Eunuch offers their services -ep1_flavor.1000 = { - type = character_event - title = ep1_flavor.1000.t - desc = ep1_flavor.1000.desc - theme = learning - override_background = { - reference = sitting_room - } - - cooldown = { - years = 10 - } - - left_portrait = { - character = scope:eunuch_target - animation = flirtation - } - - trigger = { - has_ep1_dlc_trigger = yes - is_landed_or_landless_administrative = yes - culture = { - OR = { - has_cultural_parameter = can_castrate_prisoners - has_cultural_parameter = eunuch_trait_bonuses - has_cultural_parameter = court_machinations_eunuch_trait_bonuses - has_cultural_parameter = can_appoint_chief_eunuch - } - } - is_available_at_peace_adult = yes - OR = { - is_ai = no - primary_title.tier > tier_duchy # So that we don't create too many characters for the AI (performance) - } - } - - immediate = { - if = { - limit = { - any_pool_character = { - province = root.capital_province - appropriate_eunuch_trigger = yes - } - } - random_pool_character = { - province = root.capital_province - limit = { - appropriate_eunuch_trigger = yes - } - save_scope_as = eunuch_target - } - } - else = { - # Find an appropriate culture for the Eunuch - if = { - limit = { - is_ai = no # This is gonna be expensive, exclude AI's - any_culture_global = { - has_cultural_parameter = can_castrate_prisoners - } - } - random_culture_global = { - limit = { - has_cultural_parameter = can_castrate_prisoners - } - weight = { # Upweight for your own culture if it's valid (more greeks in greece, but the potential for east africans to visit, etc) - base = 1 - modifier = { - add = 2 - this = root.culture - } - modifier = { - factor = 0 - this != root.culture - NOT = { - any_culture_county = { # This is the expensive part - title_province = { - squared_distance = { target = root.capital_province value < squared_distance_massive } - } - } - } - } - } - save_scope_as = eunuch_target_culture - } - } - else = { - root.culture = { - save_scope_as = eunuch_target_culture - } - } - create_character = { - location = root.capital_province - culture = scope:eunuch_target_culture - dynasty = none - template = random_learned_eunuch_character - save_scope_as = eunuch_target - } - } - - if = { # Find somewhere else for the eunuch to move if they do not get employment - limit = { - any_neighboring_and_across_water_top_liege_realm = { - always = yes - } - } - random_neighboring_and_across_water_top_liege_realm = { - save_scope_as = new_court - } - } - - if = { # Save old court eunuch if relevant - limit = { employs_court_position = chief_eunuch_court_position } - random_court_position_holder = { - type = chief_eunuch_court_position - save_scope_as = old_holder - } - } - } - - option = { # Accept the Eunuch's offer - name = ep1_flavor.1000.a - - pay_short_term_gold = { - target = scope:eunuch_target - gold = root.tiny_gold_value - } - - add_courtier = scope:eunuch_target - - appoint_court_eunuch_effect = yes - - scope:eunuch_target = { - add_opinion = { - target = root - opinion = 50 - modifier = grateful_opinion - } - add_character_flag = { - flag = blocked_from_leaving - years = 25 - } - } - - stress_impact = { - greedy = massive_stress_impact_gain - paranoid = major_stress_gain - arrogant = major_stress_impact_gain - fickle = medium_stress_impact_gain - cynical = minor_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0.1 - ai_greed >= low_positive_ai_value - } - } - } - - option = { # Negotiate with the eunuch - name = ep1_flavor.1000.b - - duel = { - skill = diplomacy - value = 12 - - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - - - desc = ep1_flavor.1000.c.success - send_interface_toast = { - title = ep1_flavor.1000.c.success - left_icon = scope:eunuch_target - - add_courtier = scope:eunuch_target - appoint_court_eunuch_effect = yes - add_prestige = minor_prestige_gain - scope:eunuch_target = { - progress_towards_friend_effect = { - CHARACTER = root - OPINION = 0 - REASON = friend_court_position_recieved - } - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - - desc = ep1_flavor.1000.c.failure - send_interface_toast = { - title = ep1_flavor.1000.c.failure - left_icon = scope:eunuch_target - - add_prestige = minor_prestige_loss - scope:eunuch_target = { - hidden_effect = { - random = { - chance = 50 - if = { - limit = { - can_set_relation_potential_rival_trigger = { CHARACTER = root } - } - set_relation_potential_rival = root - } - } - } - } - - custom_tooltip = eunuch_moves_tt - - hidden_effect = { - scope:eunuch_target = { - if = { - limit = { - exists = scope:new_court - } - move_to_pool_at = scope:new_court.holder.capital_county.title_province - } - } - } - } - } - } - - stress_impact = { - generous = medium_stress_impact_gain - patient = medium_stress_impact_gain - humble = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0.1 - ai_sociability >= low_positive_ai_value - } - } - } - - option = { # Deny the eunuch - name = ep1_flavor.1000.c - - custom_tooltip = eunuch_moves_tt - - hidden_effect = { - scope:eunuch_target = { - if = { - limit = { - exists = scope:new_court - } - move_to_pool_at = scope:new_court.holder.capital_county.title_province - } - } - } - - stress_impact = { - diligent = massive_stress_impact_gain - gregarious = major_stress_impact_gain - ambitious = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0.1 - ai_greed <= low_positive_ai_value - } - } - } -} - -# A learned eunuch wishes to sell various tips & tricks -ep1_flavor.1200 = { - type = character_event - title = ep1_flavor.1200.t - desc = ep1_flavor.1200.desc - theme = intrigue - - cooldown = { - years = 30 - } - - left_portrait = { - character = scope:eunuch_target - animation = personality_rational - } - - trigger = { - has_ep1_dlc_trigger = yes - is_landed_or_landless_administrative = yes - culture = { - OR = { - has_cultural_parameter = can_castrate_prisoners - has_cultural_parameter = eunuch_trait_bonuses - has_cultural_parameter = court_machinations_eunuch_trait_bonuses - has_cultural_parameter = can_appoint_chief_eunuch - } - } - is_available_at_peace_adult = yes - OR = { - is_ai = no - primary_title.tier > tier_duchy # So that we don't create too many characters for the AI (performance) - } - OR = { # Performance - is_ai = no - any_courtier_or_guest = { - appropriate_eunuch_trigger = yes - } - } - } - - immediate = { - if = { - limit = { - any_courtier_or_guest = { - appropriate_eunuch_trigger = yes - } - } - random_courtier_or_guest = { - limit = { - appropriate_eunuch_trigger = yes - } - assign_quirk_effect = yes - save_scope_as = eunuch_target - } - } - else_if = { - limit = { - any_pool_character = { - province = root.capital_province - appropriate_eunuch_trigger = yes - } - } - random_pool_character = { - province = root.capital_province - limit = { - appropriate_eunuch_trigger = yes - } - assign_quirk_effect = yes - save_scope_as = eunuch_target - } - } - else = { - # Find an appropriate culture for the Eunuch - if = { - limit = { - is_ai = no # This is gonna be expensive, exclude AI's - any_culture_global = { - has_cultural_parameter = can_castrate_prisoners - } - } - random_culture_global = { - limit = { - has_cultural_parameter = can_castrate_prisoners - } - weight = { # Upweight for your own culture if it's valid (more greeks in greece, but the potential for east africans to visit, etc) - base = 1 - modifier = { - add = 2 - this = root.culture - } - modifier = { - factor = 0 - this != root.culture - NOT = { - any_culture_county = { # This is the expensive part - title_province = { - squared_distance = { target = root.capital_province value < squared_distance_massive } - } - } - } - } - } - save_scope_as = eunuch_target_culture - } - } - else = { - root.culture = { - save_scope_as = eunuch_target_culture - } - } - create_character = { - location = root.capital_province - culture = scope:eunuch_target_culture - dynasty = none - template = random_learned_eunuch_character - save_scope_as = eunuch_target - } - } - } - - option = { # Boost to learning languages - name = ep1_flavor.1200.a - - pay_short_term_gold = { - target = scope:eunuch_target - gold = root.tiny_gold_value - } - - add_character_modifier = { - modifier = secrets_of_language_modifier - years = 15 - } - - stress_impact = { - greedy = massive_stress_impact_gain - paranoid = major_stress_gain - arrogant = major_stress_impact_gain - fickle = medium_stress_impact_gain - cynical = minor_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - add = ai_sociability - } - } - } - - option = { # Hostile Scheme boost - name = ep1_flavor.1200.b - - pay_short_term_gold = { - target = scope:eunuch_target - gold = root.tiny_gold_value - } - - add_character_modifier = { - modifier = secrets_of_murder_modifier - years = 15 - } - - stress_impact = { - forgiving = massive_stress_impact_gain - compassionate = major_stress_gain - content = major_stress_impact_gain - humble = medium_stress_impact_gain - calm = medium_stress_impact_gain - temperate = minor_stress_impact_gain - } - ai_chance = { - base = 0 - modifier = { - add = ai_vengefulness - } - } - } - - option = { # Stewardship tips - name = ep1_flavor.1200.c - - pay_short_term_gold = { - target = scope:eunuch_target - gold = root.tiny_gold_value - } - - add_character_modifier = { - modifier = secrets_of_the_realm_modifier - years = 15 - } - - stress_impact = { - lazy = massive_stress_impact_gain - impatient = medium_stress_impact_gain - vengeful = medium_stress_impact_gain - } - ai_chance = { - base = 100 - } - } - - option = { # No, thank you - name = ep1_flavor.1200.d - - scope:eunuch_target = { - add_opinion = { - target = root - opinion = -15 - modifier = disappointed_opinion - } - hidden_effect = { - random = { - chance = 50 - if = { - limit = { - can_set_relation_potential_rival_trigger = { CHARACTER = root } - } - set_relation_potential_rival = root - } - } - } - } - - stress_impact = { - diligent = massive_stress_impact_gain - gregarious = medium_stress_impact_gain - ambitious = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - add = ai_energy - ai_energy <= 0 - } - } - } -} - - -################################################## -# Joe - -################################################## -# 2000 - 2999 -################################################## - -######################### -# Martial Exercises # -# by Joe Parkin # -######################### - -scripted_trigger ep1_flavor_2000_maa_scope_trigger = { - NAND = { - exists = scope:maa_type_1 - scope:maa_type_1 = flag:$TYPE$ - } - NAND = { - exists = scope:maa_type_2 - scope:maa_type_2 = flag:$TYPE$ - } -} - -scripted_effect ep1_flavor_2000_maa_scope_effect = { - if = { - limit = { - NOT = { exists = scope:maa_type_1 } - } - save_scope_value_as = { - name = maa_type_1 - value = flag:$TYPE$ - } - } - else_if = { - limit = { - NOT = { exists = scope:maa_type_2 } - } - save_scope_value_as = { - name = maa_type_2 - value = flag:$TYPE$ - } - } -} - -# Positive opinion modifiers for all vassal/courtier characters of root culture (they like you respecting their cultural MAA) -scripted_effect ep1_flavor_2000_culture_opinion_effect = { - every_vassal_or_below = { - custom = ep1_flavor.2000.culture_tt - limit = { - culture = root.culture - NOR = { - AND = { - exists = scope:knight_scope - this = scope:knight_scope - } - AND = { - exists = scope:marshal_scope - this = scope:marshal_scope - } - } - } - add_opinion = { - target = root - modifier = respect_opinion - opinion = 5 - } - } - hidden_effect = { - every_courtier = { - limit = { - culture = root.culture - NOR = { - AND = { - exists = scope:knight_scope - this = scope:knight_scope - } - AND = { - exists = scope:marshal_scope - this = scope:marshal_scope - } - } - } - add_opinion = { - target = root - modifier = respect_opinion - opinion = 5 - } - } - } -} - -# Apply correct modifier and opinion boosts based on selected MAA type -scripted_effect ep1_flavor_2000_type_effect = { - switch = { - trigger = scope:$TYPE$ - flag:archers = { - add_character_modifier = { - modifier = ep1_2000_archer_modifier - years = 10 - } - if = { - limit = { - culture = { culture_has_archer_maa = yes } - } - ep1_flavor_2000_culture_opinion_effect = yes # Applies opinion modifiers to all vassal/courtier characters of root culture - } - } - flag:infantry = { - add_character_modifier = { - modifier = ep1_2000_infantry_modifier - years = 10 - } - if = { - limit = { - OR = { - culture = { culture_has_heavy_infantry_maa = yes } - culture = { culture_has_pikemen_maa = yes } - } - } - ep1_flavor_2000_culture_opinion_effect = yes # Applies opinion modifiers to all vassal/courtier characters of root culture - } - } - flag:cavalry = { - add_character_modifier = { - modifier = ep1_2000_cavalry_modifier - years = 10 - } - if = { - limit = { - OR = { - culture = { culture_has_light_cavalry_maa = yes } - culture = { culture_has_heavy_cavalry_maa = yes } - } - } - ep1_flavor_2000_culture_opinion_effect = yes # Applies opinion modifiers to all vassal/courtier characters of root culture - } - } - flag:archer_cavalry = { - add_character_modifier = { - modifier = ep1_2000_acavalry_modifier - years = 10 - } - if = { - limit = { - OR = { - culture = { culture_has_archer_cavalry_maa = yes } - mpo_can_recruit_nomad_maa_trigger = yes - } - } - ep1_flavor_2000_culture_opinion_effect = yes - } - } - flag:skirmishers = { - add_character_modifier = { - modifier = ep1_2000_skirmisher_modifier - years = 10 - } - if = { - limit = { - culture = { culture_has_skirmisher_maa = yes } - } - ep1_flavor_2000_culture_opinion_effect = yes # Applies opinion modifiers to all vassal/courtier characters of root culture - } - } - flag:elephant_cavalry = { - add_character_modifier = { - modifier = ep1_2000_ecavalry_modifier - years = 10 - } - } - flag:camel_cavalry = { - add_character_modifier = { - modifier = ep1_2000_ccavalry_modifier - years = 10 - } - } - flag:levies = { - add_character_modifier = { - modifier = ep1_2000_levies_modifier - years = 10 - } - } - } -} - -ep1_flavor.2000 = { - type = character_event - title = ep1_flavor.2000.t - desc = { - desc = ep1_flavor.2000.desc_intro - first_valid = { - triggered_desc = { - trigger = { scope:maa_type_1 = flag:archers } - desc = ep1_flavor.2000.desc_archers - } - triggered_desc = { - trigger = { scope:maa_type_1 = flag:infantry } - desc = ep1_flavor.2000.desc_infantry - } - triggered_desc = { - trigger = { scope:maa_type_1 = flag:cavalry } - desc = ep1_flavor.2000.desc_cavalry - } - triggered_desc = { - trigger = { scope:maa_type_1 = flag:archer_cavalry } - desc = ep1_flavor.2000.desc_archer_cavalry - } - triggered_desc = { - trigger = { scope:maa_type_1 = flag:elephant_cavalry } - desc = ep1_flavor.2000.desc_elephant_cavalry - } - triggered_desc = { - trigger = { scope:maa_type_1 = flag:camel_cavalry } - desc = ep1_flavor.2000.camel_cavalry - } - triggered_desc = { - trigger = { scope:maa_type_1 = flag:levies } - desc = ep1_flavor.2000.desc_levies - } - } - desc = ep1_flavor.2000.desc_bridge - first_valid = { - triggered_desc = { - trigger = { scope:maa_type_2 = flag:archers } - desc = ep1_flavor.2000.desc_archers - } - triggered_desc = { - trigger = { scope:maa_type_2 = flag:infantry } - desc = ep1_flavor.2000.desc_infantry - } - triggered_desc = { - trigger = { scope:maa_type_2 = flag:cavalry } - desc = ep1_flavor.2000.desc_cavalry - } - triggered_desc = { - trigger = { scope:maa_type_2 = flag:archer_cavalry } - desc = ep1_flavor.2000.desc_archer_cavalry - } - triggered_desc = { - trigger = { scope:maa_type_2 = flag:elephant_cavalry } - desc = ep1_flavor.2000.desc_elephant_cavalry - } - triggered_desc = { - trigger = { scope:maa_type_2 = flag:camel_cavalry } - desc = ep1_flavor.2000.camel_cavalry - } - triggered_desc = { - trigger = { scope:maa_type_2 = flag:levies } - desc = ep1_flavor.2000.desc_levies - } - } - desc = ep1_flavor.2000.desc_outro - } - theme = martial - override_background = { reference = army_camp } - cooldown = { years = 10 } - left_portrait = { - character = scope:knight_scope - animation = throne_room_two_handed_passive_1 - } - right_portrait = { - character = cp:councillor_marshal - animation = marshal - } - - trigger = { - has_ep1_dlc_trigger = yes - has_royal_court = yes - has_dlc_feature = royal_court - is_landed_or_landless_administrative = yes - is_available_adult = yes - exists = cp:councillor_marshal - any_knight = { - count >= 1 - is_available_ai_adult = yes - NOT = { this = root.cp:councillor_marshal } - } - OR = { - OR = { - culture = { culture_has_archer_maa = yes } - number_maa_regiments_of_base_type = { type = archers value > 0 } - } - OR = { - culture = { culture_has_light_cavalry_maa = yes } - culture = { culture_has_heavy_cavalry_maa = yes } - number_maa_regiments_of_base_type = { type = light_cavalry value > 0 } - number_maa_regiments_of_base_type = { type = heavy_cavalry value > 0 } - } - OR = { - culture = { culture_has_heavy_infantry_maa = yes } - culture = { culture_has_pikemen_maa = yes } - number_maa_regiments_of_base_type = { type = heavy_infantry value > 0 } - number_maa_regiments_of_base_type = { type = pikemen value > 0 } - - } - OR = { - OR = { - culture = { culture_has_archer_cavalry_maa = yes } - mpo_can_recruit_nomad_maa_trigger = yes - } - number_maa_regiments_of_base_type = { type = archer_cavalry value > 0 } - } - OR = { - culture = { culture_has_skirmisher_maa = yes } - number_maa_regiments_of_base_type = { type = skirmishers value > 0 } - } - number_maa_regiments_of_base_type = { type = elephant_cavalry value > 0 } - number_maa_regiments_of_base_type = { type = camel_cavalry value > 0 } - } - } - - weight_multiplier = { - base = 1 - # Court weightings. - ep1_weight_up_for_court_type_modifier = { COURT_TYPE = court_warlike } - } - - immediate = { - cp:councillor_marshal = { save_scope_as = marshal_scope } - ordered_knight = { - limit = { - is_available_ai_adult = yes - this != scope:marshal_scope - } - order_by = prowess - save_scope_as = knight_scope - } - hidden_effect = { - while = { - count = 3 - random_list = { - 10 = { # archers - trigger = { - OR = { - number_maa_regiments_of_base_type = { type = archers value > 0 } - culture = { culture_has_archer_maa = yes } - } - ep1_flavor_2000_maa_scope_trigger = { TYPE = archers } - } - modifier = { - factor = 2 - number_maa_regiments_of_base_type = { type = archers value > 4 } - } - ep1_flavor_2000_maa_scope_effect = { TYPE = archers } - } - 10 = { # infantry - trigger = { - OR = { - number_maa_regiments_of_base_type = { type = heavy_infantry value > 0 } - number_maa_regiments_of_base_type = { type = pikemen value > 0 } - culture = { culture_has_heavy_infantry_maa = yes } - culture = { culture_has_pikemen_maa = yes } - } - ep1_flavor_2000_maa_scope_trigger = { TYPE = infantry } - } - modifier = { - factor = 2 - number_maa_regiments_of_base_type = { type = heavy_infantry value > 4 } - } - modifier = { - factor = 2 - number_maa_regiments_of_base_type = { type = pikemen value > 4 } - } - ep1_flavor_2000_maa_scope_effect = { TYPE = infantry } - } - 10 = { # cavalry - trigger = { - OR = { - number_maa_regiments_of_base_type = { type = light_cavalry value > 0 } - number_maa_regiments_of_base_type = { type = heavy_cavalry value > 0 } - culture = { culture_has_light_cavalry_maa = yes } - culture = { culture_has_heavy_cavalry_maa = yes } - } - ep1_flavor_2000_maa_scope_trigger = { TYPE = cavalry } - } - modifier = { - factor = 2 - number_maa_regiments_of_base_type = { type = light_cavalry value > 4 } - } - modifier = { - factor = 2 - number_maa_regiments_of_base_type = { type = heavy_cavalry value > 4 } - } - ep1_flavor_2000_maa_scope_effect = { TYPE = cavalry } - } - 10 = { # archer_cavalry - trigger = { - OR = { - number_maa_regiments_of_base_type = { type = archer_cavalry value > 0 } - OR = { - culture = { culture_has_archer_cavalry_maa = yes } - mpo_can_recruit_nomad_maa_trigger = yes - } - } - ep1_flavor_2000_maa_scope_trigger = { TYPE = archer_cavalry } - } - modifier = { - factor = 2 - number_maa_regiments_of_base_type = { type = archer_cavalry value > 4 } - } - ep1_flavor_2000_maa_scope_effect = { TYPE = archer_cavalry } - } - 10 = { # skirmishers - trigger = { - OR = { - number_maa_regiments_of_base_type = { type = skirmishers value > 0 } - culture = { culture_has_skirmisher_maa = yes } - } - ep1_flavor_2000_maa_scope_trigger = { TYPE = skirmishers } - } - modifier = { - factor = 2 - number_maa_regiments_of_base_type = { type = skirmishers value > 4 } - } - ep1_flavor_2000_maa_scope_effect = { TYPE = skirmishers } - } - 10 = { # elephant_cavalry - trigger = { - number_maa_regiments_of_base_type = { type = elephant_cavalry value > 0 } - ep1_flavor_2000_maa_scope_trigger = { TYPE = elephant_cavalry } - } - modifier = { - factor = 2 - number_maa_regiments_of_base_type = { type = elephant_cavalry value > 4 } - } - ep1_flavor_2000_maa_scope_effect = { TYPE = elephant_cavalry } - } - 10 = { # camel_cavalry - trigger = { - number_maa_regiments_of_base_type = { type = camel_cavalry value > 0 } - ep1_flavor_2000_maa_scope_trigger = { TYPE = camel_cavalry } - } - modifier = { - factor = 2 - number_maa_regiments_of_base_type = { type = camel_cavalry value > 4 } - } - ep1_flavor_2000_maa_scope_effect = { TYPE = camel_cavalry } - } - 1 = { # levies - trigger = { - ep1_flavor_2000_maa_scope_trigger = { TYPE = levies } - } - ep1_flavor_2000_maa_scope_effect = { TYPE = levies } - } - } - } - } - } - - option = { # First type - name = { - trigger = { scope:maa_type_1 = flag:archers } - text = ep1_flavor.2000.archers - } - name = { - trigger = { - scope:maa_type_1 = flag:archers - culture = { has_cultural_tradition = tradition_longbow_competitions } - } - text = ep1_flavor.2000.archers_longbow - } - name = { - trigger = { scope:maa_type_1 = flag:infantry } - text = ep1_flavor.2000.infantry - } - name = { - trigger = { scope:maa_type_1 = flag:cavalry } - text = ep1_flavor.2000.cavalry - } - name = { - trigger = { - scope:maa_type_1 = flag:cavalry - OR = { - culture = culture:french - culture = { has_cultural_tradition = tradition_chivalry } - } - } - text = ep1_flavor.2000.cavalry_joust - } - name = { - trigger = { - scope:maa_type_1 = flag:cavalry - OR = { - culture = { has_cultural_pillar = heritage_byzantine } - is_roman_emperor_trigger = yes - } - } - text = ep1_flavor.2000.cavalry_tzykanion - } - name = { - trigger = { - scope:maa_type_1 = flag:cavalry - OR = { - culture = { has_cultural_pillar = heritage_iranian } - has_title = title:e_persia #Must be the current emperor. - } - } - text = ep1_flavor.2000.cavalry_chovgan - } - name = { - trigger = { scope:maa_type_1 = flag:archer_cavalry } - text = ep1_flavor.2000.archer_cavalry - } - name = { - trigger = { scope:maa_type_1 = flag:skirmishers } - text = ep1_flavor.2000.skirmishers - } - name = { - trigger = { scope:maa_type_1 = flag:elephant_cavalry } - text = ep1_flavor.2000.elephant_cavalry - } - name = { - trigger = { scope:maa_type_1 = flag:camel_cavalry } - text = ep1_flavor.2000.camel_cavalry - } - name = { - trigger = { scope:maa_type_1 = flag:levies } - text = ep1_flavor.2000.levies - } - name = { - trigger = { - scope:maa_type_1 = flag:levies - culture = { has_cultural_pillar = heritage_goidelic } - } - text = ep1_flavor.2000.levies_caid - } - # Costs - stress_impact = { - arrogant = medium_stress_impact_gain - greedy = medium_stress_impact_gain - } - remove_treasury_or_gold = medium_treasury_or_gold_value - # Effects - ep1_flavor_2000_type_effect = { TYPE = maa_type_1 } # Add relevant modifier and cultural opinion if relevant - scope:marshal_scope = { - add_opinion = { - target = root - modifier = respect_opinion - opinion = 10 - } - } - scope:knight_scope = { - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -10 - } - } - ai_chance = { - base = 25 - ai_value_modifier = { - ai_greed = -1 - ai_boldness = 0.5 - ai_rationality = 0.5 - } - modifier = { - factor = 2 - OR = { - has_relation_friend = scope:marshal_scope - has_relation_rival = scope:knight_scope - } - } - } - } - - option = { # Second type - name = { # Archers - trigger = { scope:maa_type_2 = flag:archers } - text = ep1_flavor.2000.archers - } - name = { # Longbowmen - welsh - trigger = { - scope:maa_type_2 = flag:archers - culture = { has_cultural_tradition = tradition_longbow_competitions } - } - text = ep1_flavor.2000.archers_longbow - } - name = { # Infantry - trigger = { scope:maa_type_2 = flag:infantry } - text = ep1_flavor.2000.infantry - } - name = { # Cavalry - trigger = { scope:maa_type_2 = flag:cavalry } - text = ep1_flavor.2000.cavalry - } - name = { # Joust - chivalry - trigger = { - scope:maa_type_2 = flag:cavalry - OR = { - culture = culture:french - culture = { has_cultural_tradition = tradition_chivalry } - } - } - text = ep1_flavor.2000.cavalry_joust - } - name = { # Tyzkanion - byzaboo - trigger = { - scope:maa_type_2 = flag:cavalry - OR = { - culture = { has_cultural_pillar = heritage_byzantine } - is_roman_emperor_trigger = yes - } - } - text = ep1_flavor.2000.cavalry_tzykanion - } - name = { # Chovgan - parsi - trigger = { - scope:maa_type_2 = flag:cavalry - OR = { - culture = { has_cultural_pillar = heritage_iranian } - has_title = title:e_persia #Must be the current emperor. - } - } - text = ep1_flavor.2000.cavalry_chovgan - } - name = { # Horse archers - trigger = { scope:maa_type_2 = flag:archer_cavalry } - text = ep1_flavor.2000.archer_cavalry - } - name = { # Skirmishers - trigger = { scope:maa_type_2 = flag:skirmishers } - text = ep1_flavor.2000.skirmishers - } - name = { # Elephantry - trigger = { scope:maa_type_2 = flag:elephant_cavalry } - text = ep1_flavor.2000.elephant_cavalry - } - name = { # Camelry - trigger = { scope:maa_type_2 = flag:camel_cavalry } - text = ep1_flavor.2000.camel_cavalry - } - name = { # Peasants - trigger = { scope:maa_type_2 = flag:levies } - text = ep1_flavor.2000.levies - } - name = { # Caid - gaelic - trigger = { - scope:maa_type_2 = flag:levies - culture = { has_cultural_pillar = heritage_goidelic } - } - text = ep1_flavor.2000.levies_caid - } - # Costs - stress_impact = { - arrogant = medium_stress_impact_gain - greedy = medium_stress_impact_gain - } - remove_treasury_or_gold = medium_treasury_or_gold_value - # Effects - ep1_flavor_2000_type_effect = { TYPE = maa_type_2 } # Add relevant modifier and cultural opinion if relevant - scope:marshal_scope = { - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -10 - } - } - scope:knight_scope = { - add_opinion = { - target = root - modifier = respect_opinion - opinion = 10 - } - } - ai_chance = { - base = 25 - ai_value_modifier = { - ai_greed = -1 - ai_boldness = 0.5 - ai_rationality = 0.5 - } - modifier = { - factor = 2 - OR = { - has_relation_friend = scope:knight_scope - has_relation_rival = scope:marshal_scope - } - } - } - } - - option = { # Hunting is the best sport - name = ep1_flavor.2000.c - # Costs - remove_treasury_or_gold = medium_treasury_or_gold_value - stress_impact = { - humble = medium_stress_impact_gain - lazy = medium_stress_impact_gain - greedy = major_stress_impact_gain - lifestyle_hunter = medium_stress_impact_loss - athletic = minor_stress_impact_loss - } - # Effects - add_character_modifier = { - modifier = ep1_2000_knights_modifier - years = 5 - } - if = { - limit = { - culture = { - OR = { - has_cultural_tradition = tradition_hunters - has_cultural_tradition = tradition_sacred_hunts - } - } - } - custom_tooltip = ep1_flavor.2000.tradition_tt - ep1_flavor_2000_culture_opinion_effect = yes - } - else = { - every_knight = { - custom = ep1_flavor.2000.knight_tt - limit = { - NOR = { - this = scope:knight_scope - this = scope:marshal_scope - } - } - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 5 - } - } - } - ai_chance = { - base = 10 - ai_value_modifier = { - ai_greed = -2 - ai_boldness = 1 - ai_energy = 1 - } - modifier = { - factor = 2 - OR = { - has_trait = lifestyle_hunter - has_trait = athletic - } - } - } - } - - option = { # Too expensive - name = ep1_flavor.2000.d - # Costs - change_current_court_grandeur = minor_court_grandeur_loss - scope:marshal_scope = { - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -10 - } - } - scope:knight_scope = { - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -10 - } - } - stress_impact = { - generous = medium_stress_impact_gain - athletic = medium_stress_impact_gain - lifestyle_hunter = medium_stress_impact_gain - improvident = medium_stress_impact_gain - profligate = medium_stress_impact_gain - } - ai_chance = { - base = 10 - ai_value_modifier = { - ai_greed = 1 - ai_boldness = -1 - } - modifier = { - factor = 0.5 - OR = { - has_trait = lifestyle_hunter - has_trait = athletic - } - } - modifier = { - factor = 0.5 - OR = { - has_trait = improvident - has_trait = profligate - } - } - } - } -} - -######################### -# Court of Vipers # -# by Joe Parkin # -######################### - -# Councillor exists and is not already saved -scripted_trigger ep1_flavor_councillor_scope_trigger = { - exists = cp:councillor_$ROLE$ - NAND = { - exists = scope:councillor_1 - scope:councillor_1 = cp:councillor_$ROLE$ - } -} - -# Scheme is secret and hostile -scripted_trigger ep1_flavor_2010_base_scheme_trigger = { - scheme_owner.liege = root - is_hostile = yes - is_scheme_exposed = no -} - -# Scheme is above and contains a single councillor from event -scripted_trigger ep1_flavor_2010_councillor_scheme_trigger = { - ep1_flavor_2010_base_scheme_trigger = yes # Scheme is secret and hostile - OR = { # Only 1 councillor in a plot against you - AND = { - scheme_owner = { is_in_list = ep1_2010_list } - any_scheme_agent_character = { - count = 0 - is_in_list = ep1_2010_list - } - } - any_scheme_agent_character = { - count = 1 - is_in_list = ep1_2010_list - } - } -} - -# Character is not involved in plot already -scripted_trigger ep1_flavor_2010_real_plot_involvement_trigger = { - AND = { - exists = scope:real_plot - OR = { - this = scope:real_plot.scheme_owner - scope:real_plot = { scheme_is_character_agent = prev } - } - } -} - -# Character is not involved in event already -scripted_trigger ep1_flavor_2010_scapegoat_trigger = { - is_adult = yes - NOR = { - ep1_flavor_2010_real_plot_involvement_trigger = yes - AND = { - exists = scope:real_plot_revealer - this = scope:real_plot_revealer - } - AND = { - exists = scope:fake_plot_revealer_1 - this = scope:fake_plot_revealer_1 - } - AND = { - exists = scope:fake_plot_revealer_2 - this = scope:fake_plot_revealer_2 - } - AND = { - exists = scope:scapegoat_1 - this = scope:scapegoat_1 - } - } -} - -# Save scopes and add to list dynamically -scripted_effect ep1_flavor_2010_councillor_scope_effect = { - if = { - limit = { - NOT = { exists = scope:councillor_1 } - } - save_scope_as = councillor_1 - } - else = { save_scope_as = councillor_2 } - add_to_list = ep1_2010_list -} - -# Imprison selected character, and notify if it was the right one -scripted_effect ep1_flavor_2010_imprison_effect = { - if = { - limit = { $COUNCILLOR$ = scope:real_plot_revealer } - scope:real_plotter = { save_scope_as = accused } - } - else_if = { - limit = { $COUNCILLOR$ = scope:fake_plot_revealer_1 } - scope:scapegoat_1 = { save_scope_as = accused } - } - else_if = { - limit = { $COUNCILLOR$ = scope:fake_plot_revealer_2 } - scope:scapegoat_2 = { save_scope_as = accused } - } - rightfully_imprison_character_effect = { - TARGET = scope:accused - IMPRISONER = root - } - random_list = { - 2 = { - desc = ep1_flavor.2010.guilty - show_chance = no - modifier = { - trigger = { - scope:real_plotter != scope:accused - } - factor = 0 - } - send_interface_toast = { - title = ep1_flavor.2010.guilty - left_icon = scope:accused - hidden_effect = { - scope:real_plot = { - expose_scheme = yes - expose_scheme_agent = scope:real_plotter - } - } - add_prestige = minor_prestige_gain - change_current_court_grandeur = miniscule_court_grandeur_gain - } - } - 2 = { - desc = ep1_flavor.2010.innocent - show_chance = no - modifier = { - trigger = { scope:real_plotter = scope:accused } - factor = 0 - } - send_interface_toast = { - title = ep1_flavor.2010.innocent - left_icon = scope:accused - add_tyranny = minor_tyranny_gain - change_current_court_grandeur = miniscule_court_grandeur_loss - } - } - } -} - -ep1_flavor.2010 = { - type = character_event - title = ep1_flavor.2010.t - desc = { - desc = ep1_flavor.2010.desc - # Spymaster - first_valid = { - triggered_desc = { #Real - trigger = { scope:spymaster = scope:real_plot_revealer } - desc = ep1_flavor.2010.desc_spy_real - } - triggered_desc = { #Fake 1 - trigger = { scope:spymaster = scope:fake_plot_revealer_1 } - desc = ep1_flavor.2010.desc_spy_1 - } - triggered_desc = { #Fake 2 - trigger = { scope:spymaster = scope:fake_plot_revealer_2 } - desc = ep1_flavor.2010.desc_spy_2 - } - } - # Councillor 1 - first_valid = { - triggered_desc = { #Real - trigger = { scope:councillor_1 = scope:real_plot_revealer } - desc = ep1_flavor.2010.desc_1_real - } - triggered_desc = { #Fake 1 - trigger = { scope:councillor_1 = scope:fake_plot_revealer_1 } - desc = ep1_flavor.2010.desc_1_1 - } - triggered_desc = { #Fake 2 - trigger = { scope:councillor_1 = scope:fake_plot_revealer_2 } - desc = ep1_flavor.2010.desc_1_2 - } - } - # Councillor 2 - first_valid = { - triggered_desc = { #Real - trigger = { scope:councillor_2 = scope:real_plot_revealer } - desc = ep1_flavor.2010.desc_2_real - } - triggered_desc = { #Fake 1 - trigger = { scope:councillor_2 = scope:fake_plot_revealer_1 } - desc = ep1_flavor.2010.desc_2_1 - } - triggered_desc = { #Fake 2 - trigger = { scope:councillor_2 = scope:fake_plot_revealer_2 } - desc = ep1_flavor.2010.desc_2_2 - } - } - # Context - first_valid = { - triggered_desc = { - trigger = { - OR = { - scope:real_plotter = { is_close_family_of = root } - scope:scapegoat_1 = { is_close_family_of = root } - scope:scapegoat_2 = { is_close_family_of = root } - } - } - desc = ep1_flavor.2010.desc_family - } - triggered_desc = { - trigger = { - OR = { - scope:real_plotter = { is_consort_of = root } - scope:scapegoat_1 = { is_consort_of = root } - scope:scapegoat_2 = { is_consort_of = root } - } - } - desc = ep1_flavor.2010.desc_consort - } - triggered_desc = { - trigger = { - OR = { - scope:real_plotter = { is_councillor_of = root } - scope:scapegoat_1 = { is_councillor_of = root } - scope:scapegoat_2 = { is_councillor_of = root } - } - } - desc = ep1_flavor.2010.desc_councillor - } - desc = ep1_flavor.2010.desc_fallback - } - desc = ep1_flavor.2010.desc_outro - } - theme = intrigue - cooldown = { years = 10 } - left_portrait = { - character = scope:spymaster - animation = spymaster - } - lower_left_portrait = { - character = scope:councillor_1 - } - lower_center_portrait = { - character = scope:councillor_2 - } - - trigger = { - is_ai = no # Murder schemes are heavy for performance - has_ep1_dlc_trigger = yes - is_landed_or_landless_administrative = yes - has_royal_court = yes - has_dlc_feature = royal_court - is_available_adult = yes - exists = cp:councillor_spymaster - cp:councillor_spymaster = { is_available_ai_adult = yes } - calc_true_if = { - amount >= 2 - AND = { - exists = cp:councillor_chancellor - cp:councillor_chancellor = { is_available_ai_adult = yes } - } - AND = { - exists = cp:councillor_marshal - cp:councillor_marshal = { is_available_ai_adult = yes } - } - AND = { - exists = cp:councillor_steward - cp:councillor_steward = { is_available_ai_adult = yes } - } - AND = { - exists = cp:councillor_court_chaplain - cp:councillor_court_chaplain = { is_available_ai_adult = yes } - } - } - any_courtier = { - is_available_ai_adult = yes - can_start_scheme = { - type = murder - target_character = root - } - } - } - - weight_multiplier = { - base = 1 - # Court weightings. - ep1_weight_up_for_court_type_modifier = { COURT_TYPE = court_intrigue } - } - - immediate = { - # save 3 councillors - cp:councillor_spymaster = { - save_scope_as = spymaster - add_to_list = ep1_2010_list - } - hidden_effect = { - while = { - count = 2 - random_list = { - 2 = { - trigger = { # Councillor exists and is not already saved - ep1_flavor_councillor_scope_trigger = { ROLE = chancellor } - } - modifier = { - factor = 4 - cp:councillor_chancellor = { - is_scheming_against = { target = root } - } - } - cp:councillor_chancellor = { ep1_flavor_2010_councillor_scope_effect = yes } - } - 2 = { - trigger = { # Councillor exists and is not already saved - ep1_flavor_councillor_scope_trigger = { ROLE = marshal } - } - modifier = { - factor = 4 - cp:councillor_marshal = { - is_scheming_against = { target = root } - } - } - cp:councillor_marshal = { ep1_flavor_2010_councillor_scope_effect = yes } - } - 2 = { - trigger = { # Councillor exists and is not already saved - ep1_flavor_councillor_scope_trigger = { ROLE = steward } - } - modifier = { - factor = 4 - cp:councillor_steward = { - is_scheming_against = { target = root } - } - } - cp:councillor_steward = { ep1_flavor_2010_councillor_scope_effect = yes } - } - 1 = { - trigger = { # Councillor exists and is not already saved - ep1_flavor_councillor_scope_trigger = { ROLE = court_chaplain } - } - modifier = { - factor = 4 - cp:councillor_court_chaplain = { - is_scheming_against = { target = root } - } - } - cp:councillor_court_chaplain = { ep1_flavor_2010_councillor_scope_effect = yes } - } - } - } - } - # find hostile scheme that does involve councillor as an agent - if = { - limit = { - any_targeting_scheme = { ep1_flavor_2010_councillor_scheme_trigger = yes } - } - ordered_targeting_scheme = { - limit = { ep1_flavor_2010_councillor_scheme_trigger = yes } - order_by = scheme_phase_duration - save_scope_as = real_plot - } - random_in_list = { - list = ep1_2010_list - limit = { ep1_flavor_2010_real_plot_involvement_trigger = yes } - save_scope_as = real_plotter - } - } - # find hostile scheme that does not involve councillor as an agent - else_if = { - limit = { # Scheme is secret and hostile - any_targeting_scheme = { ep1_flavor_2010_base_scheme_trigger = yes } - } - ordered_targeting_scheme = { - limit = { ep1_flavor_2010_base_scheme_trigger = yes } - order_by = scheme_phase_duration - save_scope_as = real_plot - scheme_owner = { save_scope_as = real_plotter } - } - } - # create hostile scheme via a random courtier - else = { - random_courtier = { - limit = { - is_available_ai_adult = yes - can_start_scheme = { - type = murder - target_character = root - } - } - weight = { - modifier = { - factor = 10 - has_relation_rival = root - } - modifier = { - factor = 4 - opinion = { - target = root - value < 0 - } - } - modifier = { - factor = 2 - opinion = { - target = root - value < 50 - } - } - } - save_scope_as = plotter - hidden_effect = { - start_scheme = { - target_character = root - type = murder - } - } - random_scheme = { - type = murder - limit = { - scheme_target_character = root - } - save_scope_as = real_plot - scheme_owner = { save_scope_as = real_plotter } - } - } - } - # Save councillor roles in event - random_in_list = { - list = ep1_2010_list - limit = { ep1_flavor_2010_real_plot_involvement_trigger = no } - save_scope_as = real_plot_revealer - } - random_in_list = { - list = ep1_2010_list - limit = { - NOT = { scope:real_plot_revealer ?= this } - } - save_scope_as = fake_plot_revealer_1 - } - random_in_list = { - list = ep1_2010_list - limit = { - NOR = { - scope:real_plot_revealer ?= this - scope:fake_plot_revealer_1 ?= this - } - } - save_scope_as = fake_plot_revealer_2 - } - random_courtier = { - limit = { ep1_flavor_2010_scapegoat_trigger = yes } - weight = { - modifier = { - factor = 4 - trigger = { - any_in_list = { - list = ep1_2010_list - ep1_flavor_2010_real_plot_involvement_trigger = yes - } - } - is_councillor = yes - } - } - save_scope_as = scapegoat_1 - } - random_vassal_or_below = { - limit = { ep1_flavor_2010_scapegoat_trigger = yes } - weight = { - modifier = { - factor = 4 - trigger = { - any_in_list = { - list = ep1_2010_list - ep1_flavor_2010_real_plot_involvement_trigger = yes - } - } - is_councillor = yes - } - } - save_scope_as = scapegoat_2 - } - } - - option = { # Spymaster - name = { - trigger = { scope:spymaster = scope:real_plot_revealer } - text = ep1_flavor.2010.a.real - } - name = { - trigger = { scope:spymaster = scope:fake_plot_revealer_1 } - text = ep1_flavor.2010.a.fake_1 - } - name = { - trigger = { scope:spymaster = scope:fake_plot_revealer_2 } - text = ep1_flavor.2010.a.fake_2 - } - ep1_flavor_2010_imprison_effect = { COUNCILLOR = scope:spymaster } - stress_impact = { - just = medium_stress_impact_gain - paranoid = medium_stress_impact_gain - diligent = medium_stress_impact_gain - } - ai_chance = { - base = 25 - ai_value_modifier = { - ai_energy = 1 - ai_boldness = 1 - } - } - } - - option = { # Councillor 1 - name = { - trigger = { scope:councillor_1 = scope:real_plot_revealer } - text = ep1_flavor.2010.b.real - } - name = { - trigger = { scope:councillor_1 = scope:fake_plot_revealer_1 } - text = ep1_flavor.2010.b.fake_1 - } - name = { - trigger = { scope:councillor_1 = scope:fake_plot_revealer_2 } - text = ep1_flavor.2010.b.fake_2 - } - ep1_flavor_2010_imprison_effect = { COUNCILLOR = scope:councillor_1 } - stress_impact = { - just = medium_stress_impact_gain - paranoid = medium_stress_impact_gain - diligent = medium_stress_impact_gain - } - ai_chance = { - base = 25 - ai_value_modifier = { - ai_energy = 1 - ai_boldness = 1 - } - } - } - - option = { # Councillor 2 - name = { - trigger = { scope:councillor_2 = scope:real_plot_revealer } - text = ep1_flavor.2010.c.real - } - name = { - trigger = { scope:councillor_2 = scope:fake_plot_revealer_1 } - text = ep1_flavor.2010.c.fake_1 - } - name = { - trigger = { scope:councillor_2 = scope:fake_plot_revealer_2 } - text = ep1_flavor.2010.c.fake_2 - } - ep1_flavor_2010_imprison_effect = { COUNCILLOR = scope:councillor_2 } - stress_impact = { - just = medium_stress_impact_gain - paranoid = medium_stress_impact_gain - diligent = medium_stress_impact_gain - } - ai_chance = { - base = 25 - ai_value_modifier = { - ai_energy = 1 - ai_boldness = 1 - } - } - } - - option = { # Untangle the truth - name = ep1_flavor.2010.d - duel = { - skill = intrigue - value = high_skill_rating - 60 = { - desc = ep1_flavor.2010.d.success - compare_modifier = { - value = scope:duel_value - multiplier = 5 - } - min = 10 - custom_tooltip = ep1_flavor.2010.d.success_tt - hidden_effect = { - send_interface_toast = { - title = ep1_flavor.2010.d.success - left_icon = root - scope:real_plot = { - expose_scheme = yes - expose_scheme_agent = scope:real_plotter - } - rightfully_imprison_character_effect = { - TARGET = scope:real_plotter - IMPRISONER = root - } - show_as_tooltip = { - add_prestige = medium_prestige_gain - change_current_court_grandeur = minor_court_grandeur_gain - } - } - } - add_prestige = medium_prestige_gain - change_current_court_grandeur = minor_court_grandeur_gain - } - 40 = { - desc = ep1_flavor.2010.d.failure - compare_modifier = { - value = scope:duel_value - multiplier = -5 - } - min = 10 - send_interface_toast = { - title = ep1_flavor.2010.d.failure - left_icon = root - add_prestige = medium_prestige_loss - change_current_court_grandeur = minor_court_grandeur_loss - add_character_modifier = { - modifier = ep1_2010_failure_modifier - years = 5 - } - } - } - } - stress_impact = { - arbitrary = medium_stress_impact_gain - lazy = medium_stress_impact_gain - trusting = medium_stress_impact_gain - } - ai_chance = { - base = 25 - ai_value_modifier = { - ai_honor = 1 - ai_rationality = 1 - ai_compassion = 1 - } - } - } -} - -######################### -# Interservice Rivalry # -# by Joe Parkin # -######################### - -# Save scopes and add to list dynamically -scripted_effect ep1_flavor_2020_maa_type_scope_effect = { - if = { - limit = { - NOT = { exists = scope:maa_type_1 } - } - save_scope_value_as = { name = maa_type_1 value = flag:$TYPE$ } - } - else = { - save_scope_value_as = { name = maa_type_2 value = flag:$TYPE$ } - } -} - -# Applies correct modifier based on relevant MAA (saved in event) -scripted_effect ep1_flavor_2020_modifier_effect = { - if = { - limit = { scope:$TYPE$ = flag:archers } - add_character_modifier = { - modifier = ep1_flavor_2020_archers_modifier - years = 5 - } - } - else_if = { - limit = { scope:$TYPE$ = flag:light_cavalry } - add_character_modifier = { - modifier = ep1_flavor_2020_light_cavalry_modifier - years = 5 - } - } - else_if = { - limit = { scope:$TYPE$ = flag:heavy_infantry } - add_character_modifier = { - modifier = ep1_flavor_2020_heavy_infantry_modifier - years = 5 - } - } - else_if = { - limit = { scope:$TYPE$ = flag:pikemen } - add_character_modifier = { - modifier = ep1_flavor_2020_pikemen_modifier - years = 5 - } - } - else_if = { - limit = { scope:$TYPE$ = flag:heavy_cavalry } - add_character_modifier = { - modifier = ep1_flavor_2020_heavy_cavalry_modifier - years = 5 - } - } - else_if = { - limit = { scope:$TYPE$ = flag:archer_cavalry } - add_character_modifier = { - modifier = ep1_flavor_2020_archer_cavalry_modifier - years = 5 - } - } - else_if = { - limit = { scope:$TYPE$ = flag:skirmishers } - add_character_modifier = { - modifier = ep1_flavor_2020_skirmishers_modifier - years = 5 - } - } - else_if = { - limit = { scope:$TYPE$ = flag:elephant_cavalry } - add_character_modifier = { - modifier = ep1_flavor_2020_elephant_cavalry_modifier - years = 5 - } - } - else_if = { - limit = { scope:$TYPE$ = flag:camel_cavalry } - add_character_modifier = { - modifier = ep1_flavor_2020_camel_cavalry_modifier - years = 5 - } - } -} - -ep1_flavor.2020 = { - type = character_event - title = ep1_flavor.2020.t - desc = { - desc = ep1_flavor.2020.desc - first_valid = { - triggered_desc = { - trigger = { scope:maa_type_1 = flag:archers } - desc = ep1_flavor.2020.desc_knight_1_archers - } - triggered_desc = { - trigger = { scope:maa_type_1 = flag:light_cavalry } - desc = ep1_flavor.2020.desc_knight_1_light_cavalry - } - triggered_desc = { - trigger = { scope:maa_type_1 = flag:heavy_infantry } - desc = ep1_flavor.2020.desc_knight_1_heavy_infantry - } - triggered_desc = { - trigger = { scope:maa_type_1 = flag:pikemen } - desc = ep1_flavor.2020.desc_knight_1_pikemen - } - triggered_desc = { - trigger = { scope:maa_type_1 = flag:heavy_cavalry } - desc = ep1_flavor.2020.desc_knight_1_heavy_cavalry - } - triggered_desc = { - trigger = { scope:maa_type_1 = flag:archer_cavalry } - desc = ep1_flavor.2020.desc_knight_1_archer_cavalry - } - triggered_desc = { - trigger = { scope:maa_type_1 = flag:skirmishers } - desc = ep1_flavor.2020.desc_knight_1_skirmishers - } - triggered_desc = { - trigger = { scope:maa_type_1 = flag:elephant_cavalry } - desc = ep1_flavor.2020.desc_knight_1_elephant_cavalry - } - triggered_desc = { - trigger = { scope:maa_type_1 = flag:camel_cavalry } - desc = ep1_flavor.2020.desc_knight_1_camel_cavalry - } - } - desc = ep1_flavor.2020.desc_bridge - first_valid = { - triggered_desc = { - trigger = { scope:maa_type_2 = flag:archers } - desc = ep1_flavor.2020.desc_knight_2_archers - } - triggered_desc = { - trigger = { scope:maa_type_2 = flag:light_cavalry } - desc = ep1_flavor.2020.desc_knight_2_light_cavalry - } - triggered_desc = { - trigger = { scope:maa_type_2 = flag:heavy_infantry } - desc = ep1_flavor.2020.desc_knight_2_heavy_infantry - } - triggered_desc = { - trigger = { scope:maa_type_2 = flag:pikemen } - desc = ep1_flavor.2020.desc_knight_2_pikemen - } - triggered_desc = { - trigger = { scope:maa_type_2 = flag:heavy_cavalry } - desc = ep1_flavor.2020.desc_knight_2_heavy_cavalry - } - triggered_desc = { - trigger = { scope:maa_type_2 = flag:archer_cavalry } - desc = ep1_flavor.2020.desc_knight_2_archer_cavalry - } - triggered_desc = { - trigger = { scope:maa_type_2 = flag:skirmishers } - desc = ep1_flavor.2020.desc_knight_2_skirmishers - } - triggered_desc = { - trigger = { scope:maa_type_2 = flag:elephant_cavalry } - desc = ep1_flavor.2020.desc_knight_2_elephant_cavalry - } - triggered_desc = { - trigger = { scope:maa_type_2 = flag:camel_cavalry } - desc = ep1_flavor.2020.desc_knight_2_camel_cavalry - } - } - } - theme = martial - override_background = { reference = army_camp } - cooldown = { years = 10 } - left_portrait = { - character = scope:knight_1 - animation = disapproval - } - right_portrait = { - character = scope:knight_2 - animation = marshal - } - - trigger = { - has_ep1_dlc_trigger = yes - has_royal_court = yes - has_dlc_feature = royal_court - is_landed_or_landless_administrative = yes - is_available_adult = yes - number_of_maa_regiments > 0 - calc_true_if = { - amount >= 2 - number_maa_regiments_of_base_type = { type = archers value > 0 } - number_maa_regiments_of_base_type = { type = light_cavalry value > 0 } - number_maa_regiments_of_base_type = { type = heavy_infantry value > 0 } - number_maa_regiments_of_base_type = { type = pikemen value > 0 } - number_maa_regiments_of_base_type = { type = heavy_cavalry value > 0 } - number_maa_regiments_of_base_type = { type = archer_cavalry value > 0 } - number_maa_regiments_of_base_type = { type = skirmishers value > 0 } - number_maa_regiments_of_base_type = { type = elephant_cavalry value > 0 } - number_maa_regiments_of_base_type = { type = camel_cavalry value > 0 } - } - any_knight = { - count >= 2 - is_available_ai_adult = yes - } - } - - weight_multiplier = { - base = 1 - # Court weightings. - ep1_weight_up_for_court_type_modifier = { COURT_TYPE = court_warlike } - } - - immediate = { - hidden_effect = { - while = { - count = 2 - ordered_knight = { - limit = { - is_available_ai_adult = yes - NAND = { - exists = scope:knight_1 - THIS = scope:knight_1 - } - } - order_by = prowess - if = { - limit = { - NOT = { exists = scope:knight_1 } - } - save_scope_as = knight_1 - } - else = { save_scope_as = knight_2 } - } - } - while = { - count = 2 - random_list = { - 2 = { # archers - trigger = { - number_maa_regiments_of_base_type = { type = archers value > 0 } - NAND = { - exists = scope:maa_type_1 - scope:maa_type_1 = flag:archers - } - } - modifier = { - factor = 10 - culture = { culture_has_archer_maa = yes } - } - ep1_2020_maa_regiment_modifier = { TYPE = archers } - ep1_flavor_2020_maa_type_scope_effect = { TYPE = archers } - } - 2 = { # light_cavalry - trigger = { - number_maa_regiments_of_base_type = { type = light_cavalry value > 0 } - NAND = { - exists = scope:maa_type_1 - scope:maa_type_1 = flag:light_cavalry - } - } - modifier = { - factor = 10 - culture = { culture_has_light_cavalry_maa = yes } - } - ep1_2020_maa_regiment_modifier = { TYPE = light_cavalry } - ep1_flavor_2020_maa_type_scope_effect = { TYPE = light_cavalry } - } - 2 = { # heavy_infantry - trigger = { - number_maa_regiments_of_base_type = { type = heavy_infantry value > 0 } - NAND = { - exists = scope:maa_type_1 - scope:maa_type_1 = flag:heavy_infantry - } - } - modifier = { - factor = 10 - culture = { culture_has_heavy_infantry_maa = yes } - } - ep1_2020_maa_regiment_modifier = { TYPE = heavy_infantry } - ep1_flavor_2020_maa_type_scope_effect = { TYPE = heavy_infantry } - } - 2 = { # pikemen - trigger = { - number_maa_regiments_of_base_type = { type = pikemen value > 0 } - NAND = { - exists = scope:maa_type_1 - scope:maa_type_1 = flag:pikemen - } - } - ep1_2020_maa_regiment_modifier = { TYPE = pikemen } - ep1_flavor_2020_maa_type_scope_effect = { TYPE = pikemen } - - } - 2 = { # heavy_cavalry - trigger = { - number_maa_regiments_of_base_type = { type = heavy_cavalry value > 0 } - NAND = { - exists = scope:maa_type_1 - scope:maa_type_1 = flag:heavy_cavalry - } - } - modifier = { - factor = 10 - culture = { culture_has_heavy_cavalry_maa = yes } - } - ep1_2020_maa_regiment_modifier = { TYPE = heavy_cavalry } - ep1_flavor_2020_maa_type_scope_effect = { TYPE = heavy_cavalry } - } - 2 = { # archer_cavalry - trigger = { - number_maa_regiments_of_base_type = { type = archer_cavalry value > 0 } - NAND = { - exists = scope:maa_type_1 - scope:maa_type_1 = flag:archer_cavalry - } - } - modifier = { - factor = 10 - OR = { - culture = { culture_has_archer_cavalry_maa = yes } - mpo_can_recruit_nomad_maa_trigger = yes - } - } - ep1_2020_maa_regiment_modifier = { TYPE = archer_cavalry } - ep1_flavor_2020_maa_type_scope_effect = { TYPE = archer_cavalry } - } - 2 = { # skirmishers - trigger = { - number_maa_regiments_of_base_type = { type = skirmishers value > 0 } - NAND = { - exists = scope:maa_type_1 - scope:maa_type_1 = flag:skirmishers - } - } - modifier = { - factor = 10 - culture = { culture_has_skirmisher_maa = yes } - } - ep1_2020_maa_regiment_modifier = { TYPE = skirmishers } - ep1_flavor_2020_maa_type_scope_effect = { TYPE = skirmishers } - } - 2 = { # elephant_cavalry - trigger = { - number_maa_regiments_of_base_type = { type = elephant_cavalry value > 0 } - NAND = { - exists = scope:maa_type_1 - scope:maa_type_1 = flag:elephant_cavalry - } - } - ep1_2020_maa_regiment_modifier = { TYPE = elephant_cavalry } - ep1_flavor_2020_maa_type_scope_effect = { TYPE = elephant_cavalry } - } - 2 = { # camel_cavalry - trigger = { - number_maa_regiments_of_base_type = { type = camel_cavalry value > 0 } - NAND = { - exists = scope:maa_type_1 - scope:maa_type_1 = flag:camel_cavalry - } - } - ep1_2020_maa_regiment_modifier = { TYPE = camel_cavalry } - ep1_flavor_2020_maa_type_scope_effect = { TYPE = camel_cavalry } - } - } - } - - } - } - - option = { # Side with 1st - name = ep1_flavor.2020.a - ep1_flavor_2020_modifier_effect = { TYPE = maa_type_1 } # Applies modifier based on relevant MAA type - scope:knight_1 = { - add_opinion = { - target = root - modifier = respect_opinion - opinion = 10 - } - progress_towards_rival_effect = { - REASON = rival_snubbed_maa - CHARACTER = scope:knight_2 - OPINION = 0 - } - } - scope:knight_2 = { - add_opinion = { - target = root - modifier = insulted_opinion - opinion = -10 - } - } - if = { - limit = { has_relation_rival = scope:knight_1 } - stress_impact = { - base = medium_stress_impact_gain - } - } - ai_chance = { - base = 50 - ai_value_modifier = { - ai_honor = 1 - ai_vengefulness = 0.5 - } - modifier = { - factor = 1.5 - opinion = { target = scope:knight_1 value > 25 } - } - modifier = { - factor = 0 - has_relation_rival = scope:knight_1 - } - } - stress_impact = { - just = minor_stress_impact_gain - calm = minor_stress_impact_gain - humble = minor_stress_impact_gain - } - } - - option = { # Side with 2nd - name = ep1_flavor.2020.b - ep1_flavor_2020_modifier_effect = { TYPE = maa_type_2 } # Applies modifier based on relevant MAA type - scope:knight_2 = { - add_opinion = { - target = root - modifier = respect_opinion - opinion = 10 - } - progress_towards_rival_effect = { - REASON = rival_snubbed_maa - CHARACTER = scope:knight_1 - OPINION = 0 - } - } - scope:knight_1 = { - add_opinion = { - target = root - modifier = insulted_opinion - opinion = -10 - } - } - if = { - limit = { has_relation_rival = scope:knight_2 } - stress_impact = { - base = medium_stress_impact_gain - } - } - stress_impact = { - just = minor_stress_impact_gain - calm = minor_stress_impact_gain - humble = minor_stress_impact_gain - } - ai_chance = { - base = 50 - ai_value_modifier = { - ai_honor = 1 - ai_vengefulness = 0.5 - } - modifier = { - factor = 1.5 - opinion = { target = scope:knight_2 value > 25 } - } - modifier = { - factor = 0 - has_relation_rival = scope:knight_2 - } - } - } - - option = { # Side with neither - name = ep1_flavor.2020.c - duel = { - skill = martial - target = scope:knight_1 - 2 = { - compare_modifier = { - value = scope:duel_value - multiplier = 0.5 - } - desc = ep1_flavor.2020.c.success - send_interface_toast = { - title = ep1_flavor.2020.c.success - left_icon = scope:knight_1 - right_icon = scope:knight_2 - add_character_modifier = { - modifier = ep1_flavor_2020_both_modifier - years = 5 - } - scope:knight_1 = { - add_opinion = { - target = root - modifier = pleased_opinion - opinion = 5 - } - } - scope:knight_2 = { - add_opinion = { - target = root - modifier = pleased_opinion - opinion = 5 - } - } - } - } - 3 = { - compare_modifier = { - value = scope:duel_value - multiplier = -0.5 - } - desc = ep1_flavor.2020.c.failure - send_interface_toast = { - title = ep1_flavor.2020.c.failure - left_icon = scope:knight_1 - right_icon = scope:knight_2 - add_prestige = minor_prestige_loss - scope:knight_1 = { - add_opinion = { - target = root - modifier = annoyed_opinion - opinion = -5 - } - } - scope:knight_2 = { - add_opinion = { - target = root - modifier = annoyed_opinion - opinion = -5 - } - } - } - } - } - stress_impact = { - arrogant = minor_stress_impact_gain - wrathful = minor_stress_impact_gain - arbitrary = minor_stress_impact_gain - } - ai_chance = { - base = 25 - ai_value_modifier = { - ai_honor = 1 - ai_vengefulness = -1 - } - modifier = { - factor = 0.5 - martial < average_skill_rating - } - modifier = { - factor = 2 - martial > average_skill_rating - } - } - } - - option = { # Chastise - name = ep1_flavor.2020.d - add_prestige = minor_prestige_loss - scope:knight_1 = { - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -10 - } - } - scope:knight_2 = { - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -10 - } - } - stress_impact = { - brave = minor_stress_impact_gain - arbitrary = minor_stress_impact_gain - compassionate = minor_stress_impact_gain - } - ai_chance = { - base = 25 - ai_value_modifier = { - ai_energy = -1 - ai_boldness = -1 - } - } - } -} - -######################### -# Exotic Arms # -# by Joe Parkin # -######################### - -scripted_trigger ep1_flavor_2040_foreign_holder_trigger = { - NOR = { - has_variable = exotic_arms_cooldown - this = prev - in_diplomatic_range = prev - } - has_royal_court = yes - has_dlc_feature = royal_court - is_landed_or_landless_administrative = yes - is_available_adult = yes - gold >= major_gold_value -} - -scripted_trigger ep1_flavor_2040_artifact_trigger = { - is_equipped = no - artifact_durability >= 25 - AND = { - has_variable = quality - var:quality >= 33 - } - AND = { - has_variable = wealth - var:wealth >= 33 - } - OR = { - artifact_slot_type = primary_armament - artifact_slot_type = armor - } -} - -scripted_effect ep1_flavor_2040_artifact_effect = { - dummy_female = { save_scope_as = dummy_gender } - ## Chance for artifact to be bad - random = { - chance = 40 - save_scope_value_as = { - name = exotic_blade_quality - value = no - } - } - random_list = { - 2 = { - create_artifact_weapon_effect = { - OWNER = scope:exotic_blade_holder - CREATOR = scope:dummy_gender - SET_WEAPON_TYPE = flag:no - } - } - 2 = { - create_artifact_armor_effect = { - OWNER = scope:exotic_blade_holder - CREATOR = scope:dummy_gender - SET_ARMOR_TYPE = flag:no - } - } - } - ## Create Merchant - scope:exotic_arms_target = { - if = { - limit = { - any_character_to_title_neighboring_and_across_water_county = { - NOT = { - culture = { this = scope:exotic_arms_target.culture } - } - } - } - random_character_to_title_neighboring_and_across_water_county = { - limit = { - NOT = { - culture = { this = scope:exotic_arms_target.culture } - } - } - save_scope_as = merchant_county - } - } - else = { - random_independent_ruler = { - limit = { - in_diplomatic_range = root - any_realm_county = { - NOT = { - culture = { this = scope:exotic_arms_target.culture } - } - } - } - random_realm_county = { - limit = { - NOT = { - culture = { this = scope:exotic_arms_target.culture } - } - } - save_scope_as = merchant_county - } - } - } - } - create_character = { - template = foreign_merchant_template - location = scope:exotic_arms_target.capital_province - save_scope_as = foreign_merchant - } - if = { - limit = { exists = scope:newly_created_artifact } - scope:newly_created_artifact = { save_scope_as = exotic_blade } - } -} - -scripted_effect ep1_flavor_2040_transfer_effect = { - if = { - limit = { exists = scope:exotic_blade_quality } - send_interface_toast = { - title = ep1_flavor.2040.toast_poor - left_icon = scope:exotic_blade - scope:exotic_blade = { - set_owner = { - target = scope:exotic_arms_target - history = { - location = scope:exotic_arms_target.capital_province - actor = scope:foreign_merchant - recipient = scope:exotic_arms_target - type = given - } - } - } - } - } - else = { - send_interface_toast = { - title = ep1_flavor.2040.toast - left_icon = scope:exotic_blade - scope:exotic_blade = { - set_owner = { - target = scope:exotic_arms_target - history = { - location = scope:exotic_arms_target.capital_province - actor = scope:foreign_merchant - recipient = scope:exotic_arms_target - type = given - } - } - } - } - } -} - -ep1_flavor.2040 = { - type = character_event - title = ep1_flavor.2040.t - desc = { - desc = ep1_flavor.2040.desc - first_valid = { - triggered_desc = { - trigger = { exists = scope:my_artifact } - desc = ep1_flavor.2040.desc.artifact - } - desc = ep1_flavor.2040.desc.gold - } - first_valid = { - triggered_desc = { - trigger = { exists = scope:antiquarian } - desc = { - desc = ep1_flavor.2040.desc.outro_antiquarian - first_valid = { - triggered_desc = { - trigger = { - exists = scope:antiquarian - scope:antiquarian.aptitude:court_tutor_court_position >= 4 - } - desc = ep1_flavor.2040.desc.outro_good_praise - } - triggered_desc = { - trigger = { - exists = scope:antiquarian - scope:antiquarian.aptitude:court_tutor_court_position = 3 - } - desc = ep1_flavor.2040.desc.outro_good_unsure - } - triggered_desc = { - trigger = { - exists = scope:antiquarian - scope:antiquarian.aptitude:court_tutor_court_position <= 2 - } - desc = ep1_flavor.2040.desc.outro_good_warning - } - triggered_desc = { - trigger = { - exists = scope:antiquarian - scope:antiquarian.aptitude:court_tutor_court_position >= 4 - exists = scope:exotic_blade_quality - } - desc = ep1_flavor.2040.desc.outro_bad_warning - } - triggered_desc = { - trigger = { - exists = scope:antiquarian - scope:antiquarian.aptitude:court_tutor_court_position = 3 - exists = scope:exotic_blade_quality - } - desc = ep1_flavor.2040.desc.outro_bad_unsure - } - triggered_desc = { - trigger = { - exists = scope:antiquarian - scope:antiquarian.aptitude:court_tutor_court_position <= 2 - exists = scope:exotic_blade_quality - } - desc = ep1_flavor.2040.desc.outro_bad_praise - } - } - } - } - desc = ep1_flavor.2040.desc.outro - } - } - theme = martial - left_portrait = { - character = scope:antiquarian - animation = worry - } - right_portrait = { - character = scope:foreign_merchant - animation = admiration - } - - immediate = { - if = { - limit = { - employs_court_position = antiquarian_court_position - any_court_position_holder = { - is_available_ai_adult = yes - type = antiquarian_court_position - } - } - random_court_position_holder = { - type = antiquarian_court_position - limit = { is_available_ai_adult = yes } - save_scope_as = antiquarian - } - } - ## Save own artifact if exists - if = { - limit = { - any_character_artifact = { ep1_flavor_2040_artifact_trigger = yes } - } - random_character_artifact = { - limit = { ep1_flavor_2040_artifact_trigger = yes } - save_scope_as = my_artifact - } - } - } - - option = { - name = ep1_flavor.2040.a - trigger = { exists = scope:my_artifact } - custom_tooltip = ep1_flavor.2040.tt_my - custom_tooltip = ep1_flavor.2040.tt_exotic - hidden_effect = { - ep1_flavor_2040_transfer_effect = yes - scope:my_artifact = { - set_owner = { - target = scope:foreign_merchant - history = { - location = scope:exotic_arms_target.capital_province - actor = scope:exotic_arms_target - recipient = scope:foreign_merchant - type = purchased - } - } - set_owner = { - target = scope:exotic_blade_holder - history = { - location = scope:exotic_blade_holder.capital_province - actor = scope:foreign_merchant - recipient = scope:exotic_blade_holder - type = purchased - } - } - } - } - stress_impact = { - greedy = major_stress_impact_gain - arrogant = major_stress_impact_gain - paranoid = major_stress_impact_gain - } - ai_chance = { - base = 10 - ai_value_modifier = { - ai_greed = 2 - } - } - } - - option = { - name = ep1_flavor.2040.b - trigger = { - NOT = { exists = scope:my_artifact } - } - remove_short_term_gold = major_gold_value - custom_tooltip = ep1_flavor.2040.tt_exotic - hidden_effect = { ep1_flavor_2040_transfer_effect = yes } - stress_impact = { - greedy = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - paranoid = medium_stress_impact_gain - } - ai_chance = { - base = 10 - ai_value_modifier = { - ai_greed = 2 - } - modifier = { - factor = 0 - gold <= major_gold_value - } - } - } - - option = { - name = ep1_flavor.2040.c - stress_impact = { - profligate = medium_stress_impact_gain - trusting = medium_stress_impact_gain - improvident = medium_stress_impact_gain - } - ai_chance = { - base = 50 - ai_value_modifier = { - ai_greed = 4 - } - } - } - - after = { - scope:foreign_merchant = { silent_disappearance_effect = yes } - } -} - -ep1_flavor.2041 = { - type = character_event - hidden = yes - cooldown = { years = 10 } - - trigger = { - has_ep1_dlc_trigger = yes - has_royal_court = yes - has_dlc_feature = royal_court - is_ai = yes - is_landed_or_landless_administrative = yes - any_character_with_royal_court = { ep1_flavor_2040_foreign_holder_trigger = yes } - } - - weight_multiplier = { - base = 1 - modifier = { - factor = 2 - primary_title.tier = tier_empire - } - } - - immediate = { - save_scope_as = exotic_blade_holder - random_character_with_royal_court = { - limit = { ep1_flavor_2040_foreign_holder_trigger = yes } - weight = { - base = 1 - modifier = { - add = 10 - is_ai = no - } - modifier = { - add = 1 - has_court_type = court_warlike - } - modifier = { - add = 2 - any_character_artifact = { ep1_flavor_2040_artifact_trigger = yes } - } - } - save_scope_as = exotic_arms_target - set_variable = { - name = exotic_arms_cooldown - years = 50 - } - } - ep1_flavor_2040_artifact_effect = yes - scope:exotic_arms_target = { - trigger_event = { - id = ep1_flavor.2040 - days = 1 - } - } - } -} - -######################### -# Academic Disagreement # -# by Joe Parkin # -######################### - -scripted_trigger ep1_flavor_2070_foreign_court_trigger = { - this != root - in_diplomatic_range = root - faith = { - faith_hostility_level = { - target = root.faith - value < faith_hostile_level - } - } - save_temporary_scope_as = symposium_ruler_temp - root = { - faith = { - faith_hostility_level = { - target = scope:symposium_ruler_temp.faith - value < faith_hostile_level - } - } - } -} - -ep1_flavor.2070 = { - type = character_event - title = ep1_flavor.2070.t - desc = { - desc = ep1_flavor.2070.desc.intro - first_valid = { - triggered_desc = { # Theological - trigger = { - OR = { - scope:symposium_scholar = { is_theological_character_trigger = yes } - scope:symposium_courtier = { is_theological_character_trigger = yes } - } - } - desc = { - first_valid = { - triggered_desc = { # Same faith same culture - trigger = { - scope:symposium_scholar.faith = scope:symposium_courtier.faith - scope:symposium_scholar.culture = scope:symposium_courtier.culture - - } - desc = ep1_flavor.2070.desc.theo_same_faith - } - triggered_desc = { # Same faith diff culture - trigger = { scope:symposium_scholar.faith = scope:symposium_courtier.faith } - desc = ep1_flavor.2070.desc.theo_same_faith_diff_cult - } - triggered_desc = { # Same religion - trigger = { - scope:symposium_scholar.religion = scope:symposium_courtier.religion - scope:symposium_scholar.faith != scope:symposium_courtier.faith - } - desc = ep1_flavor.2070.desc.theo_same_relig - } - triggered_desc = { # Different religion - trigger = { - scope:symposium_scholar.religion != scope:symposium_courtier.religion - } - desc = ep1_flavor.2070.desc.theo_diff_relig - } - } - } - } - triggered_desc = { # Mystic - trigger = { - scope:symposium_scholar = { has_trait = lifestyle_mystic } - NOT = { - scope:symposium_courtier = { has_trait = lifestyle_mystic } - } - } - desc = ep1_flavor.2070.desc.mystic - } - triggered_desc = { # Medicine - trigger = { - OR = { - scope:symposium_scholar = { has_trait = lifestyle_physician } - scope:symposium_courtier = { has_trait = lifestyle_physician } - } - } - desc = ep1_flavor.2070.desc.medicine - } - triggered_desc = { # Culture - trigger = { scope:symposium_scholar.culture = scope:symposium_courtier.culture } - desc = ep1_flavor.2070.desc.ling_same_cult - } - triggered_desc = { # Language - trigger = { - scope:symposium_scholar.culture != scope:symposium_courtier.culture - scope:symposium_scholar.culture = { has_same_culture_language = scope:symposium_courtier.culture } - } - desc = ep1_flavor.2070.desc.ling_diff_cult - } - triggered_desc = { # Diff language - trigger = { - NOT = { - scope:symposium_scholar.culture = { has_same_culture_language = scope:symposium_courtier.culture } - } - } - desc = ep1_flavor.2070.desc.ling_diff_lang - } - random_valid = { # Fallback - desc = ep1_flavor.2070.desc.fall_alchemy - desc = ep1_flavor.2070.desc.fall_stars - desc = ep1_flavor.2070.desc.fall_books - } - } - } - theme = learning - cooldown = { years = 10 } - left_portrait = { - character = scope:symposium_courtier - animation = personality_rational - } - right_portrait = { - character = scope:symposium_scholar - animation = schadenfreude - } - - trigger = { - has_ep1_dlc_trigger = yes - has_royal_court = yes - has_dlc_feature = royal_court - is_landed_or_landless_administrative = yes - is_available_adult = yes - any_character_with_royal_court = { ep1_flavor_2070_foreign_court_trigger = yes } - any_vassal_or_below = { learning >= 6 } - } - - weight_multiplier = { - base = 1 - # Court weightings. - ep1_weight_up_for_court_type_modifier = { COURT_TYPE = court_scholarly } - } - - immediate = { - culture = { save_scope_as = ling_cul_1 } - every_vassal_or_below = { - limit = { learning >= 15 } - alternative_limit = { learning >= 10 } - alternative_limit = { learning >= 6 } - add_to_list = symposium_list - } - random_in_list = { - list = symposium_list - limit = { learning >= 15 } - alternative_limit = { learning >= 10 } - alternative_limit = { learning >= 6 } - weight = { - modifier = { - factor = 2 - is_powerful_vassal = yes - } - } - save_scope_as = symposium_courtier - } - random_character_with_royal_court = { - limit = { ep1_flavor_2070_foreign_court_trigger = yes } - weight = { - modifier = { - factor = 2 - primary_title.tier = tier_empire - } - } - save_scope_as = symposium_ruler - } - scope:symposium_ruler.culture = { save_scope_as = ling_cul_2 } - linguist_bonus_culture_effect = { CULTURE = ling_cul_1 } - linguist_bonus_culture_effect = { CULTURE = ling_cul_2 } - create_character = { - dynasty = none - location = root.capital_province - template = symposium_template - save_scope_as = symposium_scholar - } - } - - option = { - name = ep1_flavor.2070.a - stress_impact = { - greedy = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - paranoid = medium_stress_impact_gain - } - pay_short_term_gold = { - target = scope:symposium_scholar - gold = medium_gold_value - } - add_courtier = scope:symposium_scholar - hidden_effect = { - scope:symposium_scholar = { return_to_court = yes } - } - reverse_add_opinion = { - target = scope:symposium_courtier - modifier = angry_opinion - opinion = -15 - } - ai_chance = { - base = 25 - ai_value_modifier = { - ai_greed = -0.5 - ai_compassion = 0.5 - ai_rationality = 1 - } - } - } - - option = { - name = { - trigger = { - NOT = { - scope:symposium_scholar.culture = { has_same_culture_language = scope:symposium_courtier.culture } - } - root = { knows_language_of_culture = scope:symposium_scholar.culture } - } - text = ep1_flavor.2070.c.lang - } - name = { - trigger = { always = yes } - text = ep1_flavor.2070.c - } - stress_impact = { - humble = medium_stress_impact_gain - shy = medium_stress_impact_gain - } - duel = { - skill = learning - target = scope:symposium_scholar - 4 = { - desc = ep1_flavor.2070.c.success - compare_modifier = { - value = scope:duel_value - multiplier = 5 - } - modifier = { - add = 1 - has_trait = scholar - } - modifier = { - add = 4 - NOT = { - scope:symposium_scholar.culture = { has_same_culture_language = scope:symposium_courtier.culture } - } - root = { knows_language_of_culture = scope:symposium_scholar.culture } - } - min = 5 - send_interface_toast = { - title = ep1_flavor.2070.c.success - left_icon = scope:symposium_scholar - right_icon = scope:symposium_courtier - add_learning_lifestyle_xp = medium_lifestyle_xp - add_prestige = medium_prestige_gain - reverse_add_opinion = { - target = scope:symposium_courtier - modifier = impressed_opinion - opinion = 10 - } - custom_tooltip = ep1_flavor.2070.c.tt - hidden_effect = { - random_list = { - 2 = { - send_interface_toast = { - title = ep1_flavor.2070.c.success - left_icon = scope:symposium_scholar - add_courtier = scope:symposium_scholar - } - } - 2 = { - send_interface_toast = { - title = ep1_flavor.2070.c.failure - left_icon = scope:symposium_scholar - show_as_tooltip = { - scope:symposium_ruler = { add_courtier = scope:symposium_scholar } - } - } - } - } - } - } - } - 6 = { - desc = ep1_flavor.2070.c.failure - compare_modifier = { - value = scope:duel_value - multiplier = -2 - } - min = 10 - send_interface_toast = { - title = ep1_flavor.2070.c.failure - left_icon = scope:symposium_scholar - right_icon = scope:symposium_courtier - add_prestige = medium_prestige_loss - reverse_add_opinion = { - target = scope:symposium_courtier - modifier = disappointed_opinion - opinion = -10 - } - show_as_tooltip = { - scope:symposium_ruler = { add_courtier = scope:symposium_scholar } - } - } - } - } - ai_chance = { - base = 25 - ai_value_modifier = { - ai_boldness = 1 - ai_compassion = -0.5 - ai_rationality = 1 - } - } - } - - option = { - name = ep1_flavor.2070.d - stress_impact = { - humble = medium_stress_impact_gain - compassionate = medium_stress_impact_gain - generous = medium_stress_impact_gain - shy = medium_stress_impact_gain - forgiving = medium_stress_impact_gain - } - add_prestige = minor_prestige_loss - reverse_add_opinion = { - target = scope:symposium_courtier - modifier = grateful_opinion - opinion = 5 - } - show_as_tooltip = { - scope:symposium_ruler = { add_courtier = scope:symposium_scholar } - } - ai_chance = { - base = 25 - ai_value_modifier = { - ai_boldness = 0.5 - ai_compassion = -1 - ai_rationality = -0.5 - } - } - } - - option = { - name = ep1_flavor.2070.e - trigger = { - OR = { - OR = { - scope:symposium_scholar = { is_theological_character_trigger = yes } - scope:symposium_courtier = { is_theological_character_trigger = yes } - } - AND = { - scope:symposium_scholar = { has_trait = lifestyle_mystic } - NOT = { has_trait = lifestyle_mystic } - } - } - has_trait = zealous - } - add_learning_skill = -1 - add_piety = medium_piety_gain - stress_impact = { - zealous = medium_stress_impact_loss - } - show_as_tooltip = { - scope:symposium_ruler = { add_courtier = scope:symposium_scholar } - } - ai_chance = { - base = 25 - ai_value_modifier = { - ai_zeal = 1 - ai_compassion = -1 - ai_rationality = -1 - } - } - } - - after = { - hidden_effect = { - scope:symposium_ruler = { - if = { - limit = { - scope:symposium_scholar.employer != root - } - add_courtier = scope:symposium_scholar - } - } - scope:symposium_scholar = { return_to_court = yes } - } - } -} - -######################### -# The Greater Good # -# by Joe Parkin # -######################### - -ep1_flavor.2060 = { - type = character_event - title = ep1_flavor.2060.t - desc = ep1_flavor.2060.desc - theme = intrigue - cooldown = { years = 10 } - left_portrait = { - character = scope:detective_scope - animation = worry - } - right_portrait = { - character = scope:grocer_scope - animation = scheme - } - lower_right_portrait = { - character = scope:victim_scope - outfit_tags = { beggar_rags } - } - - trigger = { - has_ep1_dlc_trigger = yes - has_royal_court = yes - has_dlc_feature = royal_court - is_landed_or_landless_administrative = yes - is_available_adult = yes - # Victim - any_pool_guest = { - is_lowborn = yes - is_married = no - } - } - - weight_multiplier = { - base = 1 - # Court weightings. - ep1_weight_up_for_court_type_modifier = { COURT_TYPE = court_intrigue } - } - - immediate = { - # Detective - create_character = { - age = { 30 35 } - dynasty = none - faith = root.capital_county.faith - culture = root.capital_county.culture - location = root.capital_province - # Education - random_traits_list = { - count = 1 - education_martial_2 = {} - education_martial_3 = {} - } - # Personality - trait = brave - trait = diligent - trait = compassionate - trait = intellect_good_1 - # Misc - random_traits = no - gender_female_chance = root_faith_dominant_gender_female_chance - # Skills - diplomacy = { min_template_low_skill max_template_decent_skill } - martial = { min_template_low_skill max_template_decent_skill } - stewardship = { min_template_low_skill max_template_decent_skill } - intrigue = { min_template_low_skill max_template_decent_skill } - learning = { min_template_low_skill max_template_decent_skill } - prowess = { min_template_low_skill max_template_decent_skill } - save_scope_as = detective_scope - } - # Grocer - create_character = { - age = { 50 55 } - dynasty = none - faith = root.capital_county.faith - culture = root.capital_county.culture - location = root.capital_province - # Education - random_traits_list = { - count = 1 - education_intrigue_2 = {} - education_intrigue_3 = {} - } - # Personality - trait = deceitful - trait = callous - trait = arrogant - # Misc - random_traits = no - gender_female_chance = root_faith_dominant_gender_female_chance - # Skills - diplomacy = { min_template_low_skill max_template_decent_skill } - martial = { min_template_low_skill max_template_decent_skill } - stewardship = { min_template_low_skill max_template_decent_skill } - intrigue = { min_template_low_skill max_template_low_skill } - learning = { min_template_low_skill max_template_decent_skill } - prowess = { min_template_low_skill max_template_decent_skill } - save_scope_as = grocer_scope - } - scope:grocer_scope = { - add_character_flag = { - flag = use_stealth_clothes - days = 1 - } - } - # Victim - random_pool_guest = { - limit = { - is_lowborn = yes - is_married = no - } - save_scope_as = victim_scope - } - hidden_effect = { - scope:victim_scope = { - death = { - death_reason = death_disappearance - killer = scope:grocer_scope - } - } - scope:grocer_scope = { - add_secret = { - type = secret_murder - target = scope:victim_scope - } - } - } - custom_tooltip = ep1_flavor.2060.death_tt - random_realm_province = { - limit = { - county != root.capital_county - has_holding_type = city_holding - } - alternative_limit = { has_holding_type = city_holding } - alternative_limit = { always = yes } - save_scope_as = sandford_scope - } - } - - option = { - name = ep1_flavor.2060.a - add_prestige = medium_prestige_loss - scope:detective_scope = { silent_disappearance_effect = yes } - custom_tooltip = ep1_flavor.2060.a.tt - change_current_court_grandeur = minor_court_grandeur_loss - every_pool_guest = { - custom = custom.every_guest - move_to_pool = yes - } - stress_impact = { - paranoid = medium_stress_impact_gain - diligent = medium_stress_impact_gain - wrathful = medium_stress_impact_gain - impatient = medium_stress_impact_gain - craven = medium_stress_impact_gain - } - ai_chance = { - ai_value_modifier = { - ai_compassion = 1 - ai_boldness = -1 - ai_energy = -1 - } - } - } - - option = { - name = ep1_flavor.2060.b - hidden_effect = { - scope:victim_scope = { set_killer_public = yes } - } - send_interface_toast = { - title = ep1_flavor.2060.b.title - left_icon = scope:detective_scope - right_icon = scope:grocer_scope - show_as_tooltip = { - imprison = { - target = scope:grocer_scope - type = dungeon - } - } - add_courtier = scope:detective_scope - } - hidden_effect = { - scope:grocer_scope = { - random_secret = { - type = secret_murder - limit = { - secret_target = scope:victim_scope - } - expose_secret = scope:detective_scope - } - } - rightfully_imprison_character_effect = { - TARGET = scope:grocer_scope - IMPRISONER = root - } - } - scope:detective_scope = { - hidden_effect = { return_to_court = yes } - add_opinion = { - target = root - modifier = respect_opinion - opinion = 20 - } - } - stress_impact = { - callous = medium_stress_impact_gain - arbitrary = medium_stress_impact_gain - deceitful = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - trusting = medium_stress_impact_gain - } - ai_chance = { - ai_value_modifier = { - ai_compassion = 1 - ai_honor = 1 - ai_boldness = 1 - } - } - } - - option = { - name = ep1_flavor.2060.c - send_interface_toast = { - title = ep1_flavor.2060.c.title - left_icon = scope:grocer_scope - right_icon = scope:detective_scope - scope:detective_scope = { - death = { - death_reason = death_disappearance - killer = root - } - } - add_courtier = scope:grocer_scope - } - add_secret = { - type = secret_murder - target = scope:detective_scope - } - random_secret = { - type = secret_murder - limit = { - secret_target = scope:detective_scope - } - reveal_to = scope:grocer_scope - } - scope:grocer_scope = { - hidden_effect = { return_to_court = yes } - add_opinion = { - target = root - modifier = respect_opinion - opinion = 20 - } - hidden_effect = { - scope:grocer_scope = { - random_secret = { - type = secret_murder - limit = { - secret_target = scope:victim_scope - } - reveal_to = root - } - } - } - } - change_current_court_grandeur = minor_court_grandeur_gain - stress_impact = { - compassionate = medium_stress_impact_gain - just = medium_stress_impact_gain - honest = medium_stress_impact_gain - humble = medium_stress_impact_gain - trusting = medium_stress_impact_gain - } - ai_chance = { - ai_value_modifier = { - ai_compassion = -1 - ai_honor = -1 - ai_boldness = 1 - } - } - } -} - -######################### -# Taking Sides # -# by Joe Parkin # -######################### - -# Save scopes and add to list dynamically -scripted_effect ep1_flavor_2030_local_dispute_scope_effect = { - if = { - limit = { - NOT = { exists = scope:local_dispute_1 } - } - save_scope_as = local_dispute_1 - if = { - limit = { is_landed_or_landless_administrative = yes } - capital_province.county = { save_scope_as = local_county_1 } - } - else = { - root = { - random_sub_realm_county = { - weight = { - modifier = { - factor = 5 - culture = scope:local_dispute_1.culture - } - modifier = { - factor = 5 - faith = scope:local_dispute_1.faith - } - modifier = { - factor = 0.1 - this = root.capital_province.county - } - } - save_scope_as = local_county_1 - } - } - } - } - else_if = { - limit = { - exists = scope:local_dispute_1 - this != scope:local_dispute_1 - } - save_scope_as = local_dispute_2 - if = { - limit = { is_landed_or_landless_administrative = yes } - capital_province.county = { save_scope_as = local_county_2 } - } - else = { - root = { - random_sub_realm_county = { - weight = { - modifier = { - factor = 5 - culture = scope:local_dispute_2.culture - } - modifier = { - factor = 5 - faith = scope:local_dispute_2.faith - } - modifier = { - factor = 0.1 - this = root.capital_province.county - } - modifier = { - factor = 0.1 - exists = scope:local_county_1 - this = scope:local_county_1 - } - } - save_scope_as = local_county_2 - } - } - } - } -} - -scripted_effect ep1_flavor_2030_option_effect = { - scope:local_county_$WIN$ = { - add_county_modifier = { - modifier = ep1_flavor_2030_positive_modifier - years = 5 - } - } - scope:local_county_$LOSE$ = { - add_county_modifier = { - modifier = ep1_flavor_2030_negative_modifier - years = 5 - } - } - scope:local_dispute_$WIN$ = { - if = { - limit = { - NOT = { is_in_list = generated_dispute_characters } - } - add_opinion = { - target = root - modifier = pleased_opinion - opinion = 10 - } - } - } - scope:local_dispute_$LOSE$ = { - if = { - limit = { - NOT = { is_in_list = generated_dispute_characters } - } - add_opinion = { - target = root - modifier = annoyed_opinion - opinion = -10 - } - } - } -} - -scripted_effect ep1_flavor_2030_boon_effect = { - switch = { - trigger = scope:taking_sides_boon_$NUM$ - 0 = { - add_character_modifier = { - modifier = ep1_flavor_2030_boon_1_modifier - years = 5 - } - } - 1 = { - add_character_modifier = { - modifier = ep1_flavor_2030_boon_2_modifier - years = 5 - } - } - 2 = { - add_character_modifier = { - modifier = ep1_flavor_2030_boon_3_modifier - years = 5 - } - } - 3 = { - add_character_modifier = { - modifier = ep1_flavor_2030_boon_4_modifier - years = 5 - } - } - 4 = { - add_character_modifier = { - modifier = ep1_flavor_2030_boon_5_modifier - years = 5 - } - } - 5 = { - add_character_modifier = { - modifier = ep1_flavor_2030_boon_6_modifier - years = 5 - } - } - 6 = { - add_character_modifier = { - modifier = ep1_flavor_2030_boon_7_modifier - years = 5 - } - } - 7 = { - add_character_modifier = { - modifier = ep1_flavor_2030_boon_8_modifier - years = 5 - } - } - 8 = { - add_character_modifier = { - modifier = ep1_flavor_2030_boon_9_modifier - years = 5 - } - } - 9 = { - add_character_modifier = { - modifier = ep1_flavor_2030_boon_10_modifier - years = 5 - } - } - } -} - -ep1_flavor.2030 = { - type = character_event - title = ep1_flavor.2030.t - desc = { - desc = ep1_flavor.2030.desc_intro - first_valid = { - triggered_desc = { # Monk - trigger = { - exists = scope:local_dispute_1 - scope:local_dispute_1 = { has_trait = devoted } - } - desc = ep1_flavor.2030.desc_1_monk - } - triggered_desc = { # Bishop - trigger = { - exists = scope:local_dispute_1 - scope:local_dispute_1 = { - is_landed_or_landless_administrative = yes - government_has_flag = government_is_theocracy - } - } - desc = ep1_flavor.2030.desc_1_bishop - } - triggered_desc = { # Baron - trigger = { - exists = scope:local_dispute_1 - scope:local_dispute_1 = { is_landed_or_landless_administrative = yes } - } - desc = ep1_flavor.2030.desc_1_baron - } - triggered_desc = { # Scholar - trigger = { - exists = scope:local_dispute_1 - scope:local_dispute_1 = { has_trait = scholar } - } - desc = ep1_flavor.2030.desc_1_scholar - } - triggered_desc = { # Cultural minority - trigger = { - exists = scope:local_dispute_1 - culture != root.culture - } - desc = ep1_flavor.2030.desc_1_culture - } - triggered_desc = { # Religious minority - trigger = { - exists = scope:local_dispute_1 - faith != root.faith - } - desc = ep1_flavor.2030.desc_1_faith - } - triggered_desc = { # Judge - trigger = { - exists = scope:local_dispute_1 - scope:local_dispute_1 = { has_trait = education_learning } - } - desc = ep1_flavor.2030.desc_1_judge - } - triggered_desc = { # Captain - trigger = { - exists = scope:local_dispute_1 - scope:local_dispute_1 = { has_trait = education_martial } - } - desc = ep1_flavor.2030.desc_1_captain - } - triggered_desc = { # Merchant - trigger = { - exists = scope:local_dispute_1 - scope:local_dispute_1 = { always = yes } - } - desc = ep1_flavor.2030.desc_1_merchant - } - } - desc = ep1_flavor.2030.desc_bridge - first_valid = { - triggered_desc = { # Monk - trigger = { - exists = scope:local_dispute_2 - scope:local_dispute_2 = { has_trait = devoted } - } - desc = ep1_flavor.2030.desc_2_monk - } - triggered_desc = { # Bishop - trigger = { - exists = scope:local_dispute_2 - scope:local_dispute_2 = { - is_landed_or_landless_administrative = yes - government_has_flag = government_is_theocracy - } - } - desc = ep1_flavor.2030.desc_2_bishop - } - triggered_desc = { # Baron - trigger = { - exists = scope:local_dispute_2 - scope:local_dispute_2 = { is_landed_or_landless_administrative = yes } - } - desc = ep1_flavor.2030.desc_2_baron - } - triggered_desc = { # Scholar - trigger = { - exists = scope:local_dispute_2 - scope:local_dispute_2 = { has_trait = scholar } - } - desc = ep1_flavor.2030.desc_2_scholar - } - triggered_desc = { # Cultural minority - trigger = { - exists = scope:local_dispute_2 - culture != root.culture - } - desc = ep1_flavor.2030.desc_2_culture - } - triggered_desc = { # Religious minority - trigger = { - exists = scope:local_dispute_2 - faith != root.faith - } - desc = ep1_flavor.2030.desc_2_faith - } - triggered_desc = { # Judge - trigger = { - exists = scope:local_dispute_2 - scope:local_dispute_2 = { has_trait = education_learning } - } - desc = ep1_flavor.2030.desc_2_judge - } - triggered_desc = { # Captain - trigger = { - exists = scope:local_dispute_2 - scope:local_dispute_2 = { has_trait = education_martial } - } - desc = ep1_flavor.2030.desc_2_captain - } - triggered_desc = { # Merchant - trigger = { - exists = scope:local_dispute_2 - scope:local_dispute_2 = { always = yes } - } - desc = ep1_flavor.2030.desc_2_merchant - } - } - desc = ep1_flavor.2030.desc_outro - } - theme = stewardship - override_background = { reference = market } - cooldown = { years = 100 } - left_portrait = { - character = scope:local_dispute_1 - animation = dismissal - } - right_portrait = { - character = scope:local_dispute_2 - animation = disapproval - } - - trigger = { - has_ep1_dlc_trigger = yes - is_landed_or_landless_administrative = yes - has_royal_court = yes - has_dlc_feature = royal_court - is_available_adult = yes - any_sub_realm_county = { count >= 3 } - } - - weight_multiplier = { - base = 1 - # Court weightings. - ep1_weight_up_for_court_type_modifier = { COURT_TYPE = court_administrative } - } - - immediate = { - save_scope_value_as = { - name = taking_sides_boon_1 - value = { - integer_range = { - min = 0 - max = 9 - } - } - } - save_scope_value_as = { - name = taking_sides_boon_2 - value = { - integer_range = { - min = 0 - max = 9 - } - } - } - if = { - limit = { scope:taking_sides_boon_2 = scope:taking_sides_boon_1 } - while = { - limit = { scope:taking_sides_boon_2 = scope:taking_sides_boon_1 } - clear_saved_scope = taking_sides_boon_2 - save_scope_value_as = { - name = taking_sides_boon_2 - value = { - integer_range = { - min = 0 - max = 9 - } - } - } - } - } - hidden_effect = { - while = { - count = 2 - random_list = { - 10 = { - trigger = { - any_vassal_or_below = { - primary_title.tier = tier_barony - primary_title.county = { save_temporary_scope_as = local_dispute_temp_county } - NOR = { - is_in_list = dispute_characters - any_in_list = { - list = dispute_characters - AND = { - exists = scope:local_dispute_temp_county - is_landed_or_landless_administrative = yes - primary_title.county = scope:local_dispute_temp_county - } - } - } - } - } - modifier = { - add = -5 - any_in_list = { - list = dispute_characters - is_landed_or_landless_administrative = yes - has_same_government = prev - } - } - modifier = { - add = -4 - any_in_list = { - list = dispute_characters - count = all - faith = prev.faith - } - } - random_vassal_or_below = { - limit = { - primary_title.tier = tier_barony - NOT = { is_in_list = dispute_characters } - } - add_to_list = dispute_characters - } - } - 10 = { - modifier = { - add = -9 - any_in_list = { - list = dispute_characters - is_landed_or_landless_administrative = no - } - } - every_sub_realm_county = { add_to_list = local_dispute_county_list } - every_in_list = { - list = local_dispute_county_list - culture = { add_to_temporary_list = local_dispute_culture_list } - faith = { add_to_temporary_list = local_dispute_faith_list } - } - random_in_list = { - list = local_dispute_culture_list - weight = { - modifier = { - add = 10 - this = root.culture - } - modifier = { - add = -10 - any_in_list = { - list = dispute_characters - culture = prev - } - } - } - save_temporary_scope_as = local_dispute_culture - } - random_in_list = { - list = local_dispute_faith_list - weight = { - modifier = { - add = 10 - this = root.faith - } - modifier = { - add = -10 - any_in_list = { - list = dispute_characters - faith = prev - } - } - modifier = { - factor = 50 - any_in_list = { - list = local_dispute_county_list - faith = prev - culture = scope:local_dispute_culture - } - } - } - save_temporary_scope_as = local_dispute_faith - } - create_character = { - dynasty = none - culture = scope:local_dispute_culture - faith = scope:local_dispute_faith - location = root.capital_province - template = local_dispute_template - } - } - } - } - every_in_list = { - list = dispute_characters - ep1_flavor_2030_local_dispute_scope_effect = yes - } - } - } - - option = { # Side with 1st - name = ep1_flavor.2030.a - ep1_flavor_2030_option_effect = { WIN = 1 LOSE = 2 } - ep1_flavor_2030_boon_effect = { NUM = 1 } - ai_chance = { - base = 50 - ai_value_modifier = { - ai_compassion = 1 - ai_honor = 1 - } - modifier = { - add = -50 - has_relation_rival = scope:local_dispute_1 - } - modifier = { - add = 25 - has_relation_friend = scope:local_dispute_1 - } - } - } - - option = { # Side with 2nd - name = ep1_flavor.2030.b - ep1_flavor_2030_option_effect = { WIN = 2 LOSE = 1 } - ep1_flavor_2030_boon_effect = { NUM = 2 } - ai_chance = { - base = 50 - ai_value_modifier = { - ai_compassion = 1 - ai_honor = 1 - } - modifier = { - add = -50 - has_relation_rival = scope:local_dispute_2 - } - modifier = { - add = 25 - has_relation_friend = scope:local_dispute_2 - } - } - } - - option = { # Recruit 1st - name = ep1_flavor.2030.c - trigger = { - exists = scope:local_dispute_1 - scope:local_dispute_1 = { is_in_list = generated_dispute_characters } - } - add_prestige = medium_prestige_loss - send_interface_toast = { - title = ep1_flavor.2030.c.tt - left_icon = scope:local_dispute_1 - add_courtier = scope:local_dispute_1 - } - scope:local_dispute_1 = { - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 15 - } - hidden_effect = { return_to_court = yes } - } - scope:local_county_2 = { - add_county_modifier = { - modifier = ep1_flavor_2030_negative_modifier - years = 5 - } - } - stress_impact = { - arrogant = medium_stress_impact_gain - } - ai_chance = { - base = 10 - ai_value_modifier = { - ai_compassion = -1 - } - } - } - - option = { # Recruit 2nd - name = ep1_flavor.2030.d - trigger = { - exists = scope:local_dispute_2 - scope:local_dispute_2 = { is_in_list = generated_dispute_characters } - } - add_prestige = medium_prestige_loss - send_interface_toast = { - title = ep1_flavor.2030.d.tt - left_icon = scope:local_dispute_2 - add_courtier = scope:local_dispute_2 - } - scope:local_dispute_2 = { - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 15 - } - hidden_effect = { return_to_court = yes } - } - scope:local_county_1 = { - add_county_modifier = { - modifier = ep1_flavor_2030_negative_modifier - years = 5 - } - } - stress_impact = { - arrogant = medium_stress_impact_gain - } - ai_chance = { - base = 10 - ai_value_modifier = { - ai_compassion = -1 - } - } - } - - after = { - stress_impact = { - just = minor_stress_impact_gain - } - if = { - limit = { - any_in_list = { - list = generated_dispute_characters - employer != root - } - } - every_in_list = { - list = generated_dispute_characters - limit = { - employer != root - } - silent_disappearance_effect = yes - } - } - } -} diff --git a/events/dlc/ep1/ep1_fund_inspiration_events.txt b/events/dlc/ep1/ep1_fund_inspiration_events.txt index 01aa6491a..f1ea60ba2 100644 --- a/events/dlc/ep1/ep1_fund_inspiration_events.txt +++ b/events/dlc/ep1/ep1_fund_inspiration_events.txt @@ -2392,7 +2392,7 @@ fund_inspiration.0031 = { if = { limit = { NOT = { is_witch_trigger = yes } - trait_is_criminal_in_faith_trigger = { TRAIT = trait:witch FAITH = root.faith GENDER_CHARACTER = root } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:witch RITE = root.rite GENDER_CHARACTER = root } } if = { limit = { @@ -2499,19 +2499,19 @@ fund_inspiration.0031 = { add = -70 exists = scope:lifestyle_option_witch NOT = { has_trait = witch } - trait_is_criminal_in_faith_trigger = { TRAIT = trait:witch FAITH = root.faith GENDER_CHARACTER = root } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:witch RITE = root.rite GENDER_CHARACTER = root } } modifier = { # If it's hidden secrets it's rare that they write about it add = -70 exists = scope:lifestyle_option_deviant NOT = { has_trait = deviant } - trait_is_criminal_in_faith_trigger = { TRAIT = trait:deviant FAITH = root.faith GENDER_CHARACTER = root } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:deviant RITE = root.rite GENDER_CHARACTER = root } } modifier = { # If it's hidden secrets it's rare that they write about it add = -70 exists = scope:lifestyle_option_cannibal NOT = { has_trait = cannibal } - trait_is_criminal_in_faith_trigger = { TRAIT = trait:cannibal FAITH = root.faith GENDER_CHARACTER = root } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:cannibal RITE = root.rite GENDER_CHARACTER = root } } modifier = { #However, the might if they're arrogant add = 50 @@ -3326,7 +3326,7 @@ fund_inspiration.0041 = { hidden_effect = { random_list = { 33 = { - trigger = { NOT = { faith = { has_doctrine_parameter = pacifist_opinion_active } } } + trigger = { NOT = { faith = { has_doctrine_parameter = pacifist } } } modifier = { has_trait = lifestyle_hunter factor = 4 # 66% chance if hunter, 33% chance otherwise @@ -3339,7 +3339,7 @@ fund_inspiration.0041 = { } } 33 = { - trigger = { NOT = { faith = { has_doctrine_parameter = pacifist_opinion_active } } } + trigger = { NOT = { faith = { has_doctrine_parameter = pacifist } } } scope:inspiration_owner = { set_variable = { name = artifact_tapestry_scene @@ -4024,21 +4024,6 @@ scripted_effect fund_inspiration_0051_pick_options_to_show_effect = { value = yes } } - 1 = { - # Burma - trigger = { - scope:inspiration_owner = { - adventurer_potential_destination_distance_check = { - REGION = world_burma - } - } - NOT = { exists = scope:burma_option } - } - save_scope_value_as = { - name = burma_option - value = yes - } - } 1 = { # Tibet trigger = { @@ -4129,6 +4114,36 @@ scripted_effect fund_inspiration_0051_pick_options_to_show_effect = { value = yes } } + 1 = { + # Southeast Asia + trigger = { + scope:inspiration_owner = { + adventurer_potential_destination_distance_check = { + REGION = world_asia_southeast_mainland + } + } + NOT = { exists = scope:southeast_asia_mainland_option } + } + save_scope_value_as = { + name = southeast_asia_mainland_option + value = yes + } + } + 1 = { + # Southeast Asia + trigger = { + scope:inspiration_owner = { + adventurer_potential_destination_distance_check = { + REGION = world_asia_southeast_islands + } + } + NOT = { exists = scope:southeast_asia_islands_option } + } + save_scope_value_as = { + name = southeast_asia_islands_option + value = yes + } + } } } } @@ -4144,11 +4159,10 @@ scripted_effect fund_adventure_inspiration_start_effect = { if = { #Should always exists, but we add this check to avoid the tooltip errors limit = { exists = scope:location - exists = scope:location.title_province } start_adventure_effect = { ADVENTURER = $ADVENTURER$ - LOCATION = scope:location.title_province + LOCATION = scope:location } } } @@ -4521,21 +4535,6 @@ fund_inspiration.0051 = { } } - option = { #burma - name = fund_inspiration.0051.burma - trigger = { exists = scope:burma_option } - custom_tooltip = fund_inspiration.you_decide_option_tt - scope:inspiration_owner = { - set_variable = { - name = adventure_destination - value = flag:burma - } - } - ai_chance = { - base = 50 - } - } - option = { #tibet name = fund_inspiration.0051.tibet trigger = { exists = scope:tibet_option } @@ -4626,6 +4625,36 @@ fund_inspiration.0051 = { } } + option = { #Southeast Asia + name = fund_inspiration.0051.southeast_asia_islands + trigger = { exists = scope:southeast_asia_islands_option } + custom_tooltip = fund_inspiration.you_decide_option_tt + scope:inspiration_owner = { + set_variable = { + name = adventure_destination + value = flag:southeast_asia_islands + } + } + ai_chance = { + base = 50 + } + } + + option = { #Southeast Asia + name = fund_inspiration.0051.southeast_asia_mainland + trigger = { exists = scope:southeast_asia_mainland_option } + custom_tooltip = fund_inspiration.you_decide_option_tt + scope:inspiration_owner = { + set_variable = { + name = adventure_destination + value = flag:southeast_asia_mainland + } + } + ai_chance = { + base = 50 + } + } + option = { #Go where you want to go! name = fund_inspiration.0051.d custom_tooltip = fund_inspiration.they_decide_option_tt @@ -4880,15 +4909,6 @@ scripted_effect fund_adventure_inspiration_travel_progress_effect = { title_province = { save_scope_as = location } } } - else_if = { # Burma - limit = { - var:adventure_destination = flag:burma - } - random_county_in_region = { - region = world_burma - title_province = { save_scope_as = location } - } - } else_if = { # Tibet limit = { var:adventure_destination = flag:tibet @@ -5839,7 +5859,7 @@ fund_inspiration.0081 = { base = 10 modifier = { add = 10 - has_trait = scholar + has_trait = erudite } ai_value_modifier = { ai_boldness = 0.15 @@ -6817,15 +6837,15 @@ fund_inspiration.1031 = { OR = { AND = { scope:newly_created_artifact = { has_artifact_feature = book_subject_witch } - trait_is_criminal_in_faith_trigger = { TRAIT = trait:witch FAITH = root.faith GENDER_CHARACTER = root } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:witch RITE = root.rite GENDER_CHARACTER = root } } AND = { scope:newly_created_artifact = { has_artifact_feature = book_subject_cannibal } - trait_is_criminal_in_faith_trigger = { TRAIT = trait:cannibal FAITH = root.faith GENDER_CHARACTER = root } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:cannibal RITE = root.rite GENDER_CHARACTER = root } } AND = { scope:newly_created_artifact = { has_artifact_feature = book_subject_deviant } - trait_is_criminal_in_faith_trigger = { TRAIT = trait:deviant FAITH = root.faith GENDER_CHARACTER = root } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:deviant RITE = root.rite GENDER_CHARACTER = root } } } } @@ -7877,11 +7897,9 @@ fund_inspiration.1061 = { triggered_desc = { trigger = { exists = scope:sculpture - faith = { - NOR = { - has_doctrine = tenet_aniconism - religion = religion:islam_religion - } + NOR = { + rite = { rite_has_tenet = tenet_aniconism } + faith.religion = religion:islam_religion } } desc = artifact_sculpture_description @@ -7889,11 +7907,9 @@ fund_inspiration.1061 = { triggered_desc = { trigger = { exists = scope:sculpture - faith = { - OR = { - has_doctrine = tenet_aniconism - religion = religion:islam_religion - } + OR = { + rite = { rite_has_tenet = tenet_aniconism } + faith.religion = religion:islam_religion } } desc = artifact_sculpture_animal_description @@ -7940,6 +7956,10 @@ fund_inspiration.1061 = { trigger = { exists = scope:icon } desc = artifact_icon_description } + triggered_desc = { + trigger = { exists = scope:phallus } + desc = artifact_wooden_phallus_description + } } } theme = inspiration_complete @@ -7967,6 +7987,7 @@ fund_inspiration.1061 = { immediate = { play_music_cue = "mx_cue_epic_sacral_moment" remove_character_flag = trigger_artisan_completion_event + scope:inspiration_owner.location = { save_scope_as = location } switch = { trigger = scope:inspiration_owner.var:artifact_artisan_type @@ -8066,6 +8087,16 @@ fund_inspiration.1061 = { value = yes } } + flag:artisan_type_phallus = { + create_artifact_phallus_effect = { + OWNER = root + CARPENTER = scope:inspiration_owner + } + save_scope_value_as = { + name = phallus + value = yes + } + } } # Add a dedication to the description - fund_inspiration.7001 if = { @@ -9158,6 +9189,12 @@ fund_inspiration.9001 = { } desc = fund_inspiration.9001.desc_research } + triggered_desc = { + trigger = { + exists = scope:religious_artifact_inspiration + } + desc = fund_inspiration.9001.desc_religious_artifact + } } } @@ -9242,6 +9279,12 @@ fund_inspiration.9002 = { } desc = fund_inspiration.9002.desc_research } + triggered_desc = { + trigger = { + exists = scope:religious_artifact_inspiration + } + desc = fund_inspiration.9002.desc_religious_artifact + } } } theme = realm @@ -9325,6 +9368,12 @@ fund_inspiration.9003 = { } desc = fund_inspiration.9002.desc_research } + triggered_desc = { + trigger = { + exists = scope:religious_artifact_inspiration + } + desc = fund_inspiration.9002.desc_religious_artifact + } } } theme = realm @@ -9375,9 +9424,9 @@ fund_inspiration.9004 = { trigger = { scope:inspiration_owner = { - OR = { - has_character_flag = adventurer_tired_of_europe - has_character_flag = adventurer_stuck_in_swamp + has_variable = { + name = adventurer_tired_of_europe + name = adventurer_stuck_in_swamp } } } @@ -9488,16 +9537,16 @@ fund_inspiration.9005 = { # Check used to make sure you're not currently on cooldown for inspiration events (so that we don't spam the player) # Has to be used in the inspiration_owner's scope! scripted_trigger has_no_inspiration_event_cooldown = { - NOR = { - has_character_flag = fund_weapon_inspiration_event_cooldown - has_character_flag = fund_armor_inspiration_event_cooldown - has_character_flag = fund_book_inspiration_event_cooldown - has_character_flag = fund_weaver_inspiration_event_cooldown - has_character_flag = fund_adventure_inspiration_event_cooldown - has_character_flag = fund_artisan_inspiration_event_cooldown - has_character_flag = fund_smith_inspiration_event_cooldown - has_character_flag = fund_alchemy_inspiration_event_cooldown - has_character_flag = fund_research_inspiration_event_cooldown + has_none_of_variables = { + name = fund_weapon_inspiration_event_cooldown + name = fund_armor_inspiration_event_cooldown + name = fund_book_inspiration_event_cooldown + name = fund_weaver_inspiration_event_cooldown + name = fund_adventure_inspiration_event_cooldown + name = fund_artisan_inspiration_event_cooldown + name = fund_smith_inspiration_event_cooldown + name = fund_alchemy_inspiration_event_cooldown + name = fund_research_inspiration_event_cooldown } } @@ -9594,6 +9643,15 @@ scripted_effect add_inspiration_cooldown_flag = { days = { 30 60 } } } + else_if = { + limit = { + inspiration = { has_inspiration_type = religious_artifact_inspiration } + } + add_character_flag = { + flag = fund_religious_artifact_inspiration_event_cooldown + days = { 30 60 } + } + } } @@ -9673,7 +9731,7 @@ fund_inspiration.2001 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { generous = medium_stress_impact_loss greedy = medium_stress_impact_gain } @@ -10065,7 +10123,7 @@ fund_inspiration.2002 = { modifier = { add = 25 faith = { - has_doctrine_parameter = pacifist_opinion_active + has_doctrine_parameter = pacifist } } } @@ -10255,7 +10313,7 @@ fund_inspiration.2003 = { modifier = { add = 25 OR = { - has_trait = scholar #smart + has_trait = erudite #smart AND = { has_education_learning_trigger = yes learning > medium_skill_rating @@ -10290,7 +10348,7 @@ fund_inspiration.2003 = { REASON = friend_new_inspiration_owner } - stress_impact = { + stress_and_fulfillment_impact = { wrathful = medium_stress_loss irritable = medium_stress_loss shy = minor_stress_gain @@ -10487,7 +10545,7 @@ fund_inspiration.2004 = { opinion = 20 } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain generous = medium_stress_impact_loss } @@ -10592,7 +10650,7 @@ fund_inspiration.2004 = { scope:inspiration_owner = { change_artifact_quality_effect = { AMOUNT = 4 } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = major_stress_impact_gain sadistic = medium_stress_impact_loss wrathful = medium_stress_impact_loss @@ -10617,7 +10675,7 @@ fund_inspiration.2004 = { opinion = -15 } } - stress_impact = { + stress_and_fulfillment_impact = { generous = minor_stress_impact_gain compassionate = minor_stress_impact_gain sadistic = minor_stress_impact_loss @@ -10900,9 +10958,10 @@ fund_inspiration.2021 = { exists = scope:inspiration scope:inspiration_owner = { is_available_ai_adult = yes - NOR = { #These flags are set on the inspiration owner since the sponsor might be sponsoring multiple inspirations at once - has_character_flag = had_event_fund_inspiration_2021 - has_character_flag = fund_armor_inspiration_event_cooldown + has_none_of_variables = { + #These flags are set on the inspiration owner since the sponsor might be sponsoring multiple inspirations at once + name = had_event_fund_inspiration_2021 + name = fund_armor_inspiration_event_cooldown } NOT = { has_character_flag = local_artisan } exists = var:artifact_armor_type @@ -10961,7 +11020,7 @@ fund_inspiration.2021 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { generous = medium_stress_impact_loss greedy = medium_stress_impact_gain } @@ -11257,7 +11316,7 @@ fund_inspiration.2041 = { TARGET = scope:rival IMPRISONER = root } - stress_impact = { + stress_and_fulfillment_impact = { calm = medium_stress_impact_gain patient = medium_stress_impact_gain forgiving = medium_stress_impact_gain @@ -11284,7 +11343,7 @@ fund_inspiration.2041 = { modifier = ep1_fund_inspiration_2040_scheme_modifier years = 5 } - stress_impact = { + stress_and_fulfillment_impact = { wrathful = medium_stress_impact_gain impatient = medium_stress_impact_gain vengeful = medium_stress_impact_gain @@ -11699,7 +11758,7 @@ fund_inspiration.2050 = { } skill = prowess fund_inspiration_skillcheck_duel_effect = { SKILL = prowess AMOUNT = 4 CHANCE = 10 } - stress_impact = { + stress_and_fulfillment_impact = { humble = minor_stress_impact_gain shy = minor_stress_impact_gain } @@ -11714,7 +11773,7 @@ fund_inspiration.2050 = { option = { # Don't get involved name = fund_inspiration.2050.e - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_gain } ai_chance = { @@ -11896,6 +11955,7 @@ fund_inspiration.2060 = { gender_female_chance = root_soldier_female_chance culture = root.culture faith = root.faith + rite = root.rite dynasty = none location = root.capital_province save_scope_as = donator @@ -11939,7 +11999,7 @@ fund_inspiration.2060 = { scope:inspiration_owner = { change_artifact_quality_effect = { AMOUNT = 2 } } - stress_impact = { + stress_and_fulfillment_impact = { generous = medium_stress_impact_gain arrogant = medium_stress_impact_gain } @@ -11984,7 +12044,7 @@ fund_inspiration.2060 = { modifier = annoyed_opinion opinion = -10 } - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain arrogant = medium_stress_impact_gain } @@ -12023,7 +12083,7 @@ fund_inspiration.2060 = { years = 5 } } - stress_impact = { + stress_and_fulfillment_impact = { humble = medium_stress_impact_gain compassionate = medium_stress_impact_gain } @@ -12273,18 +12333,18 @@ fund_inspiration.2070 = { } invest_gold = root.medium_gold_value root = { - stress_impact = { greedy = medium_stress_impact_gain } + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain } } } else = { invest_gold = root.minor_gold_value root = { - stress_impact = { greedy = minor_stress_impact_gain } + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain } } } change_inspiration_progress = 1 } - stress_impact = { + stress_and_fulfillment_impact = { vengeful = minor_stress_impact_gain impatient = minor_stress_impact_gain wrathful = minor_stress_impact_gain @@ -12307,7 +12367,7 @@ fund_inspiration.2070 = { modifier = forgiven_opinion opinion = 10 } - stress_impact = { + stress_and_fulfillment_impact = { vengeful = medium_stress_impact_gain callous = medium_stress_impact_gain impatient = medium_stress_impact_gain @@ -12327,14 +12387,14 @@ fund_inspiration.2070 = { name = fund_inspiration.2070.c scope:inspiration_owner = { inspiration = { change_inspiration_progress = 2 } - stress_impact = { + stress_and_fulfillment_impact = { base = massive_stress_impact_gain craven = medium_stress_impact_gain lazy = medium_stress_impact_gain } change_artifact_quality_effect = { AMOUNT = -4 } } - stress_impact = { + stress_and_fulfillment_impact = { forgiving = medium_stress_impact_gain compassionate = medium_stress_impact_gain patient = medium_stress_impact_gain @@ -12376,7 +12436,7 @@ fund_inspiration.2070 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { forgiving = major_stress_impact_gain patient = major_stress_impact_gain greedy = major_stress_impact_gain @@ -12430,7 +12490,7 @@ fund_inspiration.2080 = { animation = dismissal } right_portrait = { - character = scope:antiquarian + character = scope:rival animation = disapproval } cooldown = { years = 5 } @@ -12441,9 +12501,9 @@ fund_inspiration.2080 = { #These flags are set on the inspiration owner since the sponsor might be sponsoring multiple inspirations at once fund_inspiration_court_inspiration_owner_trigger = yes has_no_inspiration_event_cooldown = yes - NOR = { - has_character_flag = had_event_fund_inspiration_2080 - has_variable = banner_commission + has_none_of_variables = { + name = had_event_fund_inspiration_2080 + name = banner_commission } } OR = { @@ -12564,7 +12624,7 @@ fund_inspiration.2080 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { generous = minor_stress_impact_gain patient = minor_stress_impact_gain compassionate = minor_stress_impact_gain @@ -12590,7 +12650,7 @@ fund_inspiration.2080 = { modifier = respect_opinion opinion = 5 } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain impatient = minor_stress_impact_gain callous = minor_stress_impact_gain @@ -12646,7 +12706,7 @@ fund_inspiration.2080 = { change_artifact_quality_effect = { AMOUNT = 2 } } } - stress_impact = { + stress_and_fulfillment_impact = { calm = medium_stress_impact_gain just = medium_stress_impact_gain } @@ -12683,9 +12743,9 @@ fund_inspiration.2090 = { #These flags are set on the inspiration owner since the sponsor might be sponsoring multiple inspirations at once fund_inspiration_court_inspiration_owner_trigger = yes has_no_inspiration_event_cooldown = yes - NOR = { - has_character_flag = had_event_fund_inspiration_2090 - has_variable = banner_commission + has_none_of_variables = { + name = had_event_fund_inspiration_2090 + name = banner_commission } } scope:inspiration = { @@ -12785,7 +12845,7 @@ fund_inspiration.2090 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { generous = minor_stress_impact_gain patient = minor_stress_impact_gain compassionate = minor_stress_impact_gain @@ -12811,7 +12871,7 @@ fund_inspiration.2090 = { modifier = grateful_opinion opinion = 5 } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain impatient = minor_stress_impact_gain callous = minor_stress_impact_gain @@ -12867,9 +12927,9 @@ fund_inspiration.2100 = { #These flags are set on the inspiration owner since the sponsor might be sponsoring multiple inspirations at once fund_inspiration_court_inspiration_owner_trigger = yes has_no_inspiration_event_cooldown = yes - NOR = { - has_character_flag = had_event_fund_inspiration_2100 - has_variable = banner_commission + has_none_of_variables = { + name = had_event_fund_inspiration_2100 + name = banner_commission } OR = { NOR = { @@ -12947,7 +13007,7 @@ fund_inspiration.2100 = { modifier = pleased_opinion opinion = 5 } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = medium_stress_impact_gain callous = medium_stress_impact_gain } @@ -12984,7 +13044,7 @@ fund_inspiration.2100 = { modifier = annoyed_opinion opinion = -10 } - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain arbitrary = medium_stress_impact_gain } @@ -13025,7 +13085,7 @@ fund_inspiration.2100 = { 20 = { compare_modifier = { value = scope:duel_value - multiplier = 2 + multiplier = -2 } min = 5 send_interface_toast = { @@ -13048,7 +13108,7 @@ fund_inspiration.2100 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { lazy = medium_stress_impact_gain arbitrary = medium_stress_impact_gain } @@ -13098,7 +13158,7 @@ fund_inspiration.2100 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain generous = minor_stress_impact_gain patient = minor_stress_impact_gain @@ -13126,7 +13186,7 @@ scripted_trigger fi_2110_generous_vassal_trigger = { } OR = { gold >= major_gold_value - has_trait = scholar + has_trait = erudite has_trait = theologian has_trait = diligent has_trait = profligate @@ -13173,7 +13233,7 @@ fund_inspiration.2110 = { scope:inspiration = { has_inspiration_type = research_inspiration } } OR = { - has_trait = scholar + has_trait = erudite has_trait = theologian has_trait = diligent } @@ -13186,7 +13246,7 @@ fund_inspiration.2110 = { scope:generous_vassal = { scope:inspiration = { has_inspiration_type = research_inspiration } OR = { - has_trait = scholar + has_trait = erudite has_trait = theologian has_trait = diligent } @@ -13207,7 +13267,7 @@ fund_inspiration.2110 = { has_trait = profligate has_trait = generous has_trait = improvident - has_trait = scholar + has_trait = erudite has_trait = theologian has_trait = diligent has_any_good_relationship_with_root_trigger = yes @@ -13232,9 +13292,9 @@ fund_inspiration.2110 = { #These flags are set on the inspiration owner since the sponsor might be sponsoring multiple inspirations at once fund_inspiration_court_inspiration_owner_trigger = yes has_no_inspiration_event_cooldown = yes - NOR = { - has_character_flag = had_event_fund_inspiration_2100 - has_variable = banner_commission + has_none_of_variables = { + name = had_event_fund_inspiration_2100 + name = banner_commission } } any_vassal_or_below = { fi_2110_generous_vassal_trigger = yes } @@ -13276,7 +13336,7 @@ fund_inspiration.2110 = { inspiration = { invest_gold = scope:generous_vassal.minor_gold_value } } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain arbitrary = minor_stress_impact_gain } @@ -13298,7 +13358,7 @@ fund_inspiration.2110 = { gold = minor_gold_value } } - stress_impact = { + stress_and_fulfillment_impact = { honest = medium_stress_impact_gain generous = medium_stress_impact_gain just = medium_stress_impact_gain @@ -13326,7 +13386,7 @@ fund_inspiration.2110 = { modifier = disappointed_opinion opinion = -5 } - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain } ai_chance = { @@ -13343,7 +13403,7 @@ fund_inspiration.2110 = { scripted_trigger fi_2120_homosexuality_not_accepted_trigger = { sex_same_as = scope:inspiration_owner NOT = { - faith = { has_doctrine = doctrine_homosexuality_accepted } + rite = { rite_has_doctrine = doctrine_homosexuality_accepted } } } @@ -13384,7 +13444,7 @@ fund_inspiration.2120 = { has_trait = zealous sex_same_as = scope:inspiration_owner NOT = { - faith = { has_doctrine = doctrine_homosexuality_accepted } + rite = { rite_has_doctrine = doctrine_homosexuality_accepted } } } desc = fund_inspiration.2120.desc.me_zealous_homosexuality @@ -13619,11 +13679,11 @@ fund_inspiration.2120 = { } if = { limit = { would_be_sinful_adulterer_trigger = yes } - stress_impact = { + stress_and_fulfillment_impact = { zealous = medium_stress_impact_gain } } - stress_impact = { + stress_and_fulfillment_impact = { chaste = medium_stress_impact_gain } ai_chance = { @@ -13646,14 +13706,14 @@ fund_inspiration.2120 = { is_attracted_to_gender_of = scope:inspiration_owner } trigger_if = { - limit = { relation_with_character_is_sodomy_in_my_or_lieges_faith_trigger = { CHARACTER = scope:inspiration_owner } } + limit = { relation_with_character_is_sodomy_in_my_or_lieges_rite_trigger = { CHARACTER = scope:inspiration_owner } } OR = { has_perk = unshackled_lust_perk freely_accepts_sodomy_with_trigger = { CHARACTER = scope:inspiration_owner } } } trigger_if = { - limit = { relation_with_character_is_incestuous_in_my_faith_trigger = { CHARACTER = scope:inspiration_owner } } + limit = { relation_with_character_is_incestuous_in_my_rite_trigger = { CHARACTER = scope:inspiration_owner } } OR = { has_perk = subtle_desire_perk accepts_incest_with_trigger = { CHARACTER = scope:inspiration_owner } @@ -13680,11 +13740,11 @@ fund_inspiration.2120 = { } if = { limit = { would_be_sinful_adulterer_trigger = yes } - stress_impact = { + stress_and_fulfillment_impact = { zealous = medium_stress_impact_gain } } - stress_impact = { + stress_and_fulfillment_impact = { chaste = medium_stress_impact_gain } if = { @@ -13728,7 +13788,7 @@ fund_inspiration.2120 = { modifier = disappointed_opinion opinion = -10 } - stress_impact = { + stress_and_fulfillment_impact = { lustful = medium_stress_impact_gain } if = { @@ -13770,7 +13830,7 @@ fund_inspiration.2120 = { } if = { limit = { would_be_sinful_adulterer_trigger = yes } - stress_impact = { + stress_and_fulfillment_impact = { zealous = medium_stress_impact_gain } } @@ -13802,7 +13862,7 @@ fund_inspiration.2120 = { show_as_tooltip = { scope:secret_scope = { reveal_to = root } } - stress_impact = { + stress_and_fulfillment_impact = { zealous = medium_stress_impact_gain } } @@ -13822,7 +13882,7 @@ fund_inspiration.2120 = { } flavor = fund_inspiration.2120.leave_flavor add_piety = miniscule_piety_gain - stress_impact = { + stress_and_fulfillment_impact = { cynical = medium_stress_impact_gain lustful = major_stress_impact_gain } @@ -13867,7 +13927,7 @@ fund_inspiration.2120 = { } flavor = fund_inspiration.2120.leave_flavor add_piety = miniscule_piety_gain - stress_impact = { + stress_and_fulfillment_impact = { cynical = medium_stress_impact_gain lustful = major_stress_impact_gain } @@ -13905,7 +13965,7 @@ fund_inspiration.2120 = { scope:inspiration_owner = { change_artifact_quality_effect = { AMOUNT = -4 } } - stress_impact = { + stress_and_fulfillment_impact = { humble = medium_stress_impact_gain lustful = medium_stress_impact_gain compassionate = medium_stress_impact_gain @@ -13938,7 +13998,7 @@ fund_inspiration.2120 = { } change_artifact_quality_effect = { AMOUNT = -4 } } - stress_impact = { + stress_and_fulfillment_impact = { cynical = major_stress_impact_gain } if = { @@ -13976,7 +14036,7 @@ fund_inspiration.2120 = { } } flavor = fund_inspiration.2120.leave_flavor - stress_impact = { + stress_and_fulfillment_impact = { lustful = medium_stress_impact_gain } if = { @@ -14037,9 +14097,9 @@ fund_inspiration.2130 = { #These flags are set on the inspiration owner since the sponsor might be sponsoring multiple inspirations at once fund_inspiration_court_inspiration_owner_trigger = yes has_no_inspiration_event_cooldown = yes - NOR = { - has_character_flag = had_event_fund_inspiration_2130 - has_variable = banner_commission + has_none_of_variables = { + name = had_event_fund_inspiration_2130 + name = banner_commission } } } @@ -14109,7 +14169,7 @@ fund_inspiration.2130 = { id = fund_inspiration.2131 days = 3 } - stress_impact = { + stress_and_fulfillment_impact = { lazy = medium_stress_impact_gain arrogant = medium_stress_impact_gain } @@ -14143,7 +14203,7 @@ fund_inspiration.2130 = { scope:inspiration_owner = { if = { limit = { has_trait = temperate } - stress_impact = { temperate = medium_stress_impact_gain } + stress_and_fulfillment_impact = { temperate = medium_stress_impact_gain } } } } @@ -14157,7 +14217,7 @@ fund_inspiration.2130 = { scope:inspiration_owner = { if = { limit = { has_trait = shy } - stress_impact = { temperate = medium_stress_impact_gain } + stress_and_fulfillment_impact = { temperate = medium_stress_impact_gain } } } } @@ -14172,7 +14232,7 @@ fund_inspiration.2130 = { scope:inspiration_owner = { if = { limit = { has_trait = lazy } - stress_impact = { lazy = medium_stress_impact_gain } + stress_and_fulfillment_impact = { lazy = medium_stress_impact_gain } } } } @@ -14181,7 +14241,7 @@ fund_inspiration.2130 = { scope:inspiration_owner = { if = { limit = { has_trait = craven } - stress_impact = { craven = medium_stress_impact_gain } + stress_and_fulfillment_impact = { craven = medium_stress_impact_gain } } } } @@ -14268,7 +14328,7 @@ fund_inspiration.2130 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { lazy = medium_stress_impact_gain arrogant = medium_stress_impact_gain } @@ -14359,7 +14419,7 @@ fund_inspiration.2130 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { lazy = medium_stress_impact_gain arrogant = medium_stress_impact_gain } @@ -14376,7 +14436,7 @@ fund_inspiration.2130 = { modifier = annoyed_opinion opinion = -10 } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = medium_stress_impact_gain diligent = medium_stress_impact_gain generous = medium_stress_impact_gain @@ -14453,7 +14513,7 @@ scripted_trigger fi_2131_artifact_type_trigger = { } } trigger_else_if = { - limit = { scope:inspiration_owner.var:artifact_artisan_type = flag:artisan_type_sculpture } + limit = { scope:inspiration_owner.var:artifact_artisan_type ?= flag:artisan_type_sculpture } artifact_type = sculpture } trigger_else = { @@ -14479,7 +14539,7 @@ fund_inspiration.2131 = { has_trait = education_learning has_lifestyle = learning_lifestyle learning >= decent_skill_rating - has_trait = scholar + has_trait = erudite has_trait = theologian has_trait = lifestyle_mystic has_trait = lifestyle_physician @@ -14737,7 +14797,7 @@ fund_inspiration.2131 = { modifier = grateful_opinion opinion = 20 } - stress_impact = { greedy = medium_stress_impact_gain } + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain } } } else = { @@ -14748,7 +14808,7 @@ fund_inspiration.2131 = { modifier = grateful_opinion opinion = 10 } - stress_impact = { greedy = minor_stress_impact_gain } + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain } } } } @@ -14790,7 +14850,7 @@ fund_inspiration.2131 = { modifier = grateful_opinion opinion = 20 } - stress_impact = { greedy = medium_stress_impact_gain } + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain } } } else = { @@ -14801,7 +14861,7 @@ fund_inspiration.2131 = { modifier = grateful_opinion opinion = 10 } - stress_impact = { greedy = minor_stress_impact_gain } + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain } } } destroy_artifact = scope:artifact_2 @@ -14865,7 +14925,7 @@ fund_inspiration.2131 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { lazy = medium_stress_impact_gain } ai_chance = { @@ -14887,7 +14947,7 @@ fund_inspiration.2131 = { modifier = grateful_opinion opinion = 5 } - stress_impact = { + stress_and_fulfillment_impact = { lazy = medium_stress_impact_gain generous = medium_stress_impact_gain } @@ -14964,7 +15024,7 @@ fund_inspiration.2131 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = medium_stress_impact_gain } ai_chance = { @@ -14987,7 +15047,7 @@ fund_inspiration.2131 = { modifier = disappointed_opinion opinion = -10 } - stress_impact = { + stress_and_fulfillment_impact = { diligent = medium_stress_impact_gain patient = medium_stress_impact_gain greedy = medium_stress_impact_gain @@ -15007,28 +15067,28 @@ fund_inspiration.2131 = { scripted_trigger fund_inspiration_3001_witch_topic_trigger = { exists = scope:inspiration_owner.var:book_subject scope:inspiration_owner.var:book_subject = flag:witch - trait_is_shunned_or_criminal_in_faith_trigger = { + trait_is_shunned_or_criminal_in_rite_trigger = { TRAIT = trait:witch GENDER_CHARACTER = root - FAITH = root.faith + RITE = root.rite } } scripted_trigger fund_inspiration_3001_cannibal_topic_trigger = { exists = scope:inspiration_owner.var:book_subject scope:inspiration_owner.var:book_subject = flag:cannibal - trait_is_criminal_in_faith_trigger = { + trait_is_criminal_in_rite_trigger = { TRAIT = trait:cannibal GENDER_CHARACTER = root - FAITH = root.faith + RITE = root.rite } } scripted_trigger fund_inspiration_3001_deviant_topic_trigger = { exists = scope:inspiration_owner.var:book_subject scope:inspiration_owner.var:book_subject = flag:deviant - trait_is_shunned_or_criminal_in_faith_trigger = { + trait_is_shunned_or_criminal_in_rite_trigger = { TRAIT = trait:deviant GENDER_CHARACTER = root - FAITH = root.faith + RITE = root.rite } } scripted_trigger fund_inspiration_3001_torturer_topic_trigger = { @@ -15044,7 +15104,7 @@ scripted_trigger fund_inspiration_3001_lustful_topic_trigger = { scope:inspiration_owner.var:book_topic = flag:fertility scope:inspiration_owner.var:book_topic = flag:love_sorcery } - faith = { trait_is_sin = lustful } + rite = { trait_is_sin_rite = lustful } } fund_inspiration.3001 = { @@ -15928,9 +15988,9 @@ fund_inspiration.4001 = { inspiration_owner = { is_available_ai_adult = yes has_no_inspiration_event_cooldown = yes - NOR = { - has_character_flag = had_event_fund_inspiration_4001 - has_variable = banner_commission + has_none_of_variables = { + name = had_event_fund_inspiration_4001 + name = banner_commission } } } @@ -16595,44 +16655,6 @@ fund_inspiration.5021 = { value = yes } } - 1 = { - # Burma - trigger = { - #There's a county you don't hold there - any_county_in_region = { - region = world_burma - holder != root - } - scope:inspiration_owner = { #Distance check - from where the adventurer is right now. - adventurer_potential_destination_distance_check = { - REGION = world_burma - } - } - #This was not the original destination of the adventurer - NOT = { scope:inspiration_owner.var:adventure_destination = flag:burma } - } - modifier = { - add = 30 - NOT = { - any_county_in_region = { - region = world_burma - holder = root - count >= 1 - } - } - } - random_county_in_region = { - region = world_burma - limit = { - holder != root - } - save_scope_as = adventuring_location - } - save_scope_value_as = { - name = world_burma_location - value = yes - } - } 1 = { # Tibet trigger = { @@ -16709,6 +16731,44 @@ fund_inspiration.5021 = { value = yes } } + 1 = { + # East Asia + trigger = { + #There's a county you don't hold there + any_county_in_region = { + region = world_asia_southeast + holder != root + } + scope:inspiration_owner = { #Distance check - from where the adventurer is right now. + adventurer_potential_destination_distance_check = { + REGION = world_asia_southeast + } + } + #This was not the original destination of the adventurer + NOT = { scope:inspiration_owner.var:adventure_destination = flag:southeast_asia } + } + modifier = { + add = 30 + NOT = { + any_county_in_region = { + region = world_asia_southeast + holder = root + count >= 1 + } + } + } + random_county_in_region = { + region = world_asia_southeast + limit = { + holder != root + } + save_scope_as = adventuring_location + } + save_scope_value_as = { + name = world_southeast_asia_location + value = yes + } + } } if = { @@ -16718,6 +16778,7 @@ fund_inspiration.5021 = { template = hunter_template culture = scope:adventuring_location.culture faith = scope:adventuring_location.faith + rite = scope:adventuring_location.rite dynasty = none save_scope_as = adventurer_aide } @@ -16728,6 +16789,7 @@ fund_inspiration.5021 = { template = hunter_template culture = root.culture faith = root.faith + rite = root.rite dynasty = none save_scope_as = adventurer_aide } @@ -16837,11 +16899,11 @@ fund_inspiration.5021 = { } else_if = { limit = { - exists = scope:world_burma_location + exists = scope:world_southeast_asia_location } set_variable = { name = adventure_destination - value = flag:burma + value = flag:southeast_asia } } else_if = { @@ -17558,7 +17620,6 @@ fund_inspiration.6100 = { desc = fund_inspiration.6100.desc theme = realm - theme = realm left_portrait = { character = scope:inspiration_owner animation = worry @@ -17649,7 +17710,6 @@ fund_inspiration.6101 = { desc = fund_inspiration.6101.desc theme = realm - theme = realm left_portrait = { character = scope:inspiration_owner animation = personality_honorable @@ -18433,8 +18493,8 @@ scripted_trigger homosexual_poet_trigger = { has_sexuality = bisexual } OR = { - trait_is_shunned_in_faith_trigger = { TRAIT = trait:sodomite FAITH = root.faith GENDER_CHARACTER = scope:inspiration_owner } - trait_is_criminal_in_faith_trigger = { TRAIT = trait:sodomite FAITH = root.faith GENDER_CHARACTER = scope:inspiration_owner } + trait_is_shunned_in_rite_trigger = { TRAIT = trait:sodomite RITE = root.rite GENDER_CHARACTER = scope:inspiration_owner } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:sodomite RITE = root.rite GENDER_CHARACTER = scope:inspiration_owner } } } @@ -18442,14 +18502,11 @@ scripted_trigger unloved_poet_trigger = { NOR = { any_relation = { type = lover - exists = yes } any_child = { - exists = yes even_if_dead = yes } any_spouse = { - exists = yes even_if_dead = yes } } @@ -18578,10 +18635,15 @@ fund_inspiration.6300 = { homosexual_poet_trigger = no unloved_poet_trigger = yes is_attracted_to_gender_of = root - might_cheat_on_every_partner_trigger = yes } is_attracted_to_gender_of = scope:inspiration_owner - might_cheat_on_every_partner_trigger = yes + OR = { + scope:inspiration_owner = { is_spouse_or_romantic_partner_of_root = yes } + AND = { + might_cheat_on_every_partner_trigger = yes + scope:inspiration_owner = { might_cheat_on_every_partner_trigger = yes } + } + } } had_sex_with_effect = { CHARACTER = scope:inspiration_owner @@ -18608,6 +18670,13 @@ fund_inspiration.6300 = { scope:inspiration_owner = { homosexual_poet_trigger = no } + OR = { + scope:inspiration_owner = { is_spouse_or_romantic_partner_of_root = yes } + AND = { + might_cheat_on_every_partner_trigger = yes + scope:inspiration_owner = { might_cheat_on_every_partner_trigger = yes } + } + } } progress_towards_lover_effect = { CHARACTER = scope:inspiration_owner @@ -18625,10 +18694,7 @@ fund_inspiration.6300 = { scope:inspiration_owner = { homosexual_poet_trigger = yes } - OR = { - has_sexuality = homosexual - has_sexuality = bisexual - } + attracted_to_same_gender_trigger = yes OR = { #Only really makes sense to get the later lover same sex love event if it actually is same sex love AND = { is_female = yes @@ -18639,11 +18705,17 @@ fund_inspiration.6300 = { scope:inspiration_owner = { is_male = yes } } } - is_attracted_to_gender_of = scope:inspiration_owner OR = { can_set_relation_potential_lover_trigger = { CHARACTER = scope:inspiration_owner } can_set_relation_lover_trigger = { CHARACTER = scope:inspiration_owner } } + OR = { + scope:inspiration_owner = { is_spouse_or_romantic_partner_of_root = yes } + AND = { + might_cheat_on_every_partner_trigger = yes + scope:inspiration_owner = { might_cheat_on_every_partner_trigger = yes } + } + } } scope:inspiration_owner = { change_artifact_book_content_quality_effect = { AMOUNT = 4 } @@ -18754,7 +18826,7 @@ fund_inspiration.6301 = { } triggered_desc = { trigger = { - trait_is_criminal_in_faith_trigger = { TRAIT = trait:sodomite FAITH = root.faith GENDER_CHARACTER = scope:inspiration_owner } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:sodomite RITE = root.rite GENDER_CHARACTER = scope:inspiration_owner } } desc = fund_inspiration.6301.crime_desc } @@ -18784,6 +18856,7 @@ fund_inspiration.6301 = { add_artifact_modifier = artifact_seduce_scheme_phase_duration_add_2_modifier add_artifact_modifier = artifact_tolerance_advantage_mod_1_modifier flag_as_trash_artifact = yes + set_variable = witch_queen_love_poem } } else = { @@ -18800,6 +18873,7 @@ fund_inspiration.6301 = { add_artifact_modifier = artifact_seduce_scheme_phase_duration_add_2_modifier add_artifact_modifier = artifact_tolerance_advantage_mod_1_modifier flag_as_trash_artifact = yes + set_variable = prince_archivist_love_poem } } } @@ -18855,7 +18929,7 @@ fund_inspiration.6301 = { limit = { NOR = { has_trait = compassionate - this = inspiration_owner + this = scope:inspiration_owner is_close_family_of = root } } @@ -19827,6 +19901,7 @@ fund_inspiration.6513 = { location = scope:inspiration_owner.location template = adventurer_pregnant_lover_character faith = scope:location_template.faith + rite = scope:location_template.rite culture = scope:location_template.culture save_scope_as = adventurer_lover } @@ -19852,6 +19927,7 @@ fund_inspiration.6513 = { location = scope:inspiration_owner.location template = adventurer_female_lover_character faith = scope:location_template.faith + rite = scope:location_template.rite culture = scope:location_template.culture save_scope_as = adventurer_lover } @@ -19865,6 +19941,7 @@ fund_inspiration.6513 = { location = scope:inspiration_owner.location template = adventurer_male_lover_character faith = scope:location_template.faith + rite = scope:location_template.rite culture = scope:location_template.culture save_scope_as = adventurer_lover } @@ -19904,7 +19981,7 @@ fund_inspiration.6513 = { if = { limit = { sex_same_as = scope:adventurer_lover - trait_is_shunned_or_criminal_in_my_or_lieges_faith_trigger = { TRAIT = trait:sodomite GENDER_CHARACTER = scope:inspiration_owner } + trait_is_shunned_or_criminal_in_my_or_lieges_rite_trigger = { TRAIT = trait:sodomite GENDER_CHARACTER = scope:inspiration_owner } } if = { limit = { @@ -19925,7 +20002,7 @@ fund_inspiration.6513 = { if = { limit = { sex_same_as = scope:inspiration_owner - trait_is_shunned_or_criminal_in_my_or_lieges_faith_trigger = { TRAIT = trait:sodomite GENDER_CHARACTER = scope:adventurer_lover } + trait_is_shunned_or_criminal_in_my_or_lieges_rite_trigger = { TRAIT = trait:sodomite GENDER_CHARACTER = scope:adventurer_lover } } if = { limit = { @@ -20490,8 +20567,7 @@ fund_inspiration.6507 = { NOT = { has_character_flag = had_fund_inspiration.6507 } location = { terrain = plains - exists = this.barony.holder - this.barony.holder = { + barony.holder ?= { is_adult = yes opinion = { target = root @@ -20508,9 +20584,7 @@ fund_inspiration.6507 = { immediate = { scope:inspiration_owner = { - location = { - this.barony.holder = { save_scope_as = grumpy_liege } - } + location.barony.holder = { save_scope_as = grumpy_liege } add_character_flag = had_fund_inspiration.6507 if = { limit = { @@ -20687,7 +20761,8 @@ fund_inspiration.6508 = { animation = personality_bold } lower_left_portrait = { - character = scope:royal_architect + trigger = { exists = scope:court_architect } + character = scope:court_architect } lower_right_portrait = { character = scope:child @@ -21333,7 +21408,7 @@ fund_inspiration.6512 = { option = { #scoff at the idea of not respecting the local name name = fund_inspiration.6512.a add_prestige = medium_prestige_gain - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_gain } ai_chance = { @@ -21366,7 +21441,7 @@ fund_inspiration.6512 = { target = root } } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_gain } ai_chance = { @@ -21393,7 +21468,7 @@ fund_inspiration.6512 = { skill = martial add_martial_skill = 1 add_piety = minor_piety_gain - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_gain cynical = medium_stress_impact_gain } @@ -21421,7 +21496,7 @@ fund_inspiration.6512 = { skill = intrigue add_intrigue_skill = 1 add_piety = minor_piety_gain - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_gain cynical = medium_stress_impact_gain } @@ -21449,7 +21524,7 @@ fund_inspiration.6512 = { modifier = love_opinion } } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_gain callous = medium_stress_impact_gain } @@ -21466,7 +21541,7 @@ fund_inspiration.6512 = { trigger = { is_cannibal_trigger = yes } trait = cannibal add_dread = medium_dread_gain - stress_impact = { + stress_and_fulfillment_impact = { humble = minor_stress_impact_gain } ai_chance = { @@ -21488,7 +21563,7 @@ fund_inspiration.6512 = { modifier = phallic_mountain_modifier years = 10 } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_loss } ai_chance = { @@ -21507,7 +21582,7 @@ fund_inspiration.6512 = { CHARACTER = scope:rival OPINION = 0 } - stress_impact = { + stress_and_fulfillment_impact = { forgiving = medium_stress_impact_gain } ai_chance = { @@ -21524,7 +21599,7 @@ fund_inspiration.6512 = { trait = greedy scope:mountain_rock = { set_owner = root } add_character_flag = got_mountain_rock - stress_impact = { + stress_and_fulfillment_impact = { content = minor_stress_impact_gain compassionate = minor_stress_impact_gain } @@ -21735,7 +21810,7 @@ fund_inspiration.8011 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { forgiving = medium_stress_impact_loss wrathful = medium_stress_impact_gain } @@ -21772,7 +21847,7 @@ fund_inspiration.8011 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { wrathful = medium_stress_impact_loss forgiving = medium_stress_impact_gain compassionate = minor_stress_impact_gain @@ -21802,7 +21877,7 @@ fund_inspiration.8011 = { death = { death_reason = death_execution killer = root } } execute_opinion_effect = { VICTIM = scope:inspiration_owner EXECUTIONER = root } - stress_impact = { + stress_and_fulfillment_impact = { wrathful = medium_stress_impact_loss sadistic = medium_stress_impact_loss forgiving = medium_stress_impact_gain @@ -22065,7 +22140,7 @@ fund_inspiration.8013 = { modifier = { add = 50 OR = { - has_trait = scholar + has_trait = erudite has_lifestyle = learning_lifestyle } } @@ -22221,7 +22296,7 @@ fund_inspiration.8014 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { impatient = minor_stress_impact_loss patient = minor_stress_impact_gain compassionate = minor_stress_impact_gain @@ -22253,7 +22328,7 @@ fund_inspiration.8014 = { change_inspiration_progress = -3 } } - stress_impact = { + stress_and_fulfillment_impact = { impatient = medium_stress_impact_gain patient = minor_stress_impact_loss } @@ -22276,7 +22351,7 @@ fund_inspiration.8014 = { end_inspiration_sponsorship = scope:inspiration #To clean out flags and stuff inspiration_completion_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { compassionate = medium_stress_impact_gain wrathful = medium_stress_impact_loss } @@ -22361,7 +22436,7 @@ fund_inspiration.8015 = { option = { #Talk instead name = fund_inspiration.8015.a add_stress = medium_stress_loss - stress_impact = { + stress_and_fulfillment_impact = { arrogant = medium_stress_impact_gain shy = minor_stress_impact_gain } @@ -22387,7 +22462,7 @@ fund_inspiration.8015 = { id = fund_inspiration.8016 days = { 3 7 } } - stress_impact = { + stress_and_fulfillment_impact = { gregarious = medium_stress_impact_gain compassionate = minor_stress_impact_gain } @@ -22432,7 +22507,7 @@ fund_inspiration.8016 = { option = { #Ugh name = fund_inspiration.8016.a - stress_impact = { + stress_and_fulfillment_impact = { arrogant = medium_stress_impact_gain shy = minor_stress_impact_gain } @@ -22526,7 +22601,7 @@ fund_inspiration.8017 = { REASON = friend_shared_knowledge } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_loss } ai_chance = { @@ -22564,7 +22639,7 @@ fund_inspiration.8017 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = medium_stress_impact_gain wrathful = medium_stress_impact_loss diligent = minor_stress_impact_loss @@ -22600,7 +22675,12 @@ fund_inspiration.7001 = { animation = happiness } - lower_left_portrait = scope:dedication_a + lower_left_portrait = { + character = scope:dedication_a # spouse + trigger = { + NOT = { this = scope:inspiration_owner } + } + } lower_center_portrait = scope:dedication_b trigger = { @@ -22667,10 +22747,15 @@ fund_inspiration.7001 = { #Option A: spouse option = { - name = fund_inspiration.7001.a - trigger = { - exists = scope:dedication_a + name = { + trigger = { scope:inspiration_owner != scope:dedication_a } + text = fund_inspiration.7001.a } + name = { + trigger = { scope:inspiration_owner = scope:dedication_a } + text = fund_inspiration.7001.a.same + } + trigger = { exists = scope:dedication_a } scope:inspiration_owner = { set_variable = { name = artifact_dedication_a_var @@ -22708,6 +22793,7 @@ fund_inspiration.7001 = { name = fund_inspiration.7001.b trigger = { exists = scope:dedication_b + exists = dynasty } scope:inspiration_owner = { set_variable = { @@ -22731,6 +22817,9 @@ fund_inspiration.7001 = { } } add_piety = major_piety_gain + stress_and_fulfillment_impact = { + zealous = minor_stress_impact_loss + } ai_chance = { base = 100 ai_value_modifier = { @@ -22765,7 +22854,12 @@ fund_inspiration.7002 = { animation = happiness } - lower_left_portrait = scope:dedication_a + lower_left_portrait = { + character = scope:dedication_a + trigger = { + NOT = { this = scope:inspiration_owner } + } + } lower_center_portrait = scope:dedication_b lower_right_portrait = scope:dedication_d @@ -22924,10 +23018,15 @@ fund_inspiration.7002 = { #Option A: public soulmate/lover option = { - name = fund_inspiration.7001.a - trigger = { - exists = scope:dedication_a + name = { + trigger = { scope:inspiration_owner != scope:dedication_a } + text = fund_inspiration.7001.a } + name = { + trigger = { scope:inspiration_owner = scope:dedication_a } + text = fund_inspiration.7001.a.same + } + trigger = { exists = scope:dedication_a } scope:inspiration_owner = { set_variable = { name = artifact_dedication_a_var @@ -23298,7 +23397,7 @@ fund_inspiration.7004 = { value = flag:dedication_h } } - stress_impact = { + stress_and_fulfillment_impact = { humble = major_stress_impact_gain } ai_chance = { @@ -23343,6 +23442,7 @@ fund_inspiration.7010 = { trigger = { exists = scope:inspiration + exists = dynasty scope:inspiration = { NOR = { has_variable = inspiration_dedication_var @@ -23414,9 +23514,9 @@ fund_inspiration.7100 = { trigger = { exists = scope:inspiration scope:inspiration = { - NOR = { - has_variable = inspiration_dedication_var - has_variable = inspiration_mod_choice_var + has_none_of_variables = { + name = inspiration_dedication_var + name = inspiration_mod_choice_var } OR = { has_inspiration_type = weapon_inspiration @@ -23527,9 +23627,9 @@ fund_inspiration.7110 = { trigger = { exists = scope:inspiration scope:inspiration = { - NOR = { - has_variable = inspiration_dedication_var - has_variable = inspiration_mod_choice_var + has_none_of_variables = { + name = inspiration_dedication_var + name = inspiration_mod_choice_var } has_inspiration_type = smith_inspiration } @@ -23718,9 +23818,9 @@ fund_inspiration.7120 = { trigger = { exists = scope:inspiration scope:inspiration = { - NOR = { - has_variable = inspiration_dedication_var - has_variable = inspiration_mod_choice_var + has_none_of_variables = { + name = inspiration_dedication_var + name = inspiration_mod_choice_var } has_inspiration_type = artisan_inspiration } diff --git a/events/dlc/ep1/ep1_fund_inspiration_events_oltner.txt b/events/dlc/ep1/ep1_fund_inspiration_events_oltner.txt deleted file mode 100644 index ef1170fa1..000000000 --- a/events/dlc/ep1/ep1_fund_inspiration_events_oltner.txt +++ /dev/null @@ -1,483 +0,0 @@ -namespace = fund_inspiration - -# Adventurer fights a bandit -# Adventurer travels through beast-infested terrain - -# Adventurer fights a bandit -fund_inspiration.9000 = { - type = character_event - title = fund_inspiration.9000.t - desc = fund_inspiration.9000.desc - theme = war - - left_portrait = { - character = scope:adventurer - animation = worry - } - - right_portrait = { - character = scope:bandit - animation = throne_room_one_handed_passive_1 - } - - override_background = { - reference = wilderness_scope - } - - cooldown = { years = 5 } - - trigger = { - exists = scope:inspiration - scope:inspiration_owner = { - exists = var:adventure_destination - exists = var:adventure_type - NOR = { - has_character_flag = fund_adventure_inspiration_event_cooldown - } - exists = location - any_pool_character = { - province = scope:inspiration_owner.location - is_available_ai_adult = yes - } - } - } - - immediate = { - scope:inspiration_owner = { - save_scope_as = adventurer - location.barony.title_province = { save_scope_as = background_wilderness_scope } - random_pool_character = { - province = location.barony.title_province - limit = { - is_available_ai_adult = yes - } - weight = { - base = 10 - modifier = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = THIS } - add = 100 - } - } - save_scope_as = bandit - } - } - } - option = { - name = fund_inspiration.9000.a - - scope:adventurer = { - duel = { - skill = intrigue - target = scope:bandit - 2 = { - desc = fund_inspiration.9000.a.critical_success - compare_modifier = { - value = scope:duel_value - } - root = { - send_interface_toast = { - title = fund_inspiration.9000.a.critical_success - left_icon = scope:adventurer - scope:inspiration = { change_inspiration_progress = 2 } - scope:bandit = { - pay_short_term_gold = { - target = root - gold = medium_gold_value - } - } - hidden_effect = { # The adventurer also gains some gold! - scope:bandit = { - pay_short_term_gold = { - target = scope:adventurer - gold = medium_gold_value - } - } - } - } - } - } - 8 = { - desc = fund_inspiration.9000.a.success - compare_modifier = { - value = scope:duel_value - } - root = { - send_interface_toast = { - title = fund_inspiration.9000.a.success - left_icon = scope:adventurer - scope:inspiration = { change_inspiration_progress = 1 } - } - } - } - 8 = { - desc = fund_inspiration.9000.a.failure - compare_modifier = { - value = scope:duel_value - multiplier = -1 - } - root = { - send_interface_toast = { - title = fund_inspiration.9000.a.failure - left_icon = scope:adventurer - scope:adventurer = { - increase_wounds_effect = { REASON = fight } - } - scope:inspiration = { change_inspiration_progress = -2 } - } - } - } - } - } - - ai_chance = { - base = 4 - modifier = { - add = scope:adventurer.intrigue - } - modifier = { - add = { - value = scope:bandit.intrigue - multiply = -1 - } - } - } - } - option = { - name = fund_inspiration.9000.b - - scope:adventurer = { - duel = { - skill = prowess - target = scope:bandit - 1 = { - desc = fund_inspiration.9000.b.critical_success - compare_modifier = { - value = scope:duel_value - } - root = { - send_interface_toast = { - title = fund_inspiration.9000.b.critical_success - left_icon = scope:adventurer - scope:adventurer = { - if = { - limit = { - NOR = { - has_trait = compassionate - ai_compassion >= high_positive_ai_value - } - } - hidden_effect = { - scope:bandit = { - death = { - death_reason = death_duel - killer = scope:adventurer - } - } - } - custom_tooltip = fund_inspiration.9000.b.boil_skull - scope:inspiration_owner = { - change_artifact_quality_effect = { AMOUNT = 4 } - } - root = { - hidden_effect_new_object = { - create_artifact_pedestal_human_skull_effect = { - OWNER = root - CREATOR = scope:adventurer - DESKULLED = scope:bandit - } - scope:newly_created_artifact = { - set_artifact_description = artifact_bandit_skull - } - } - } - } - else = { - scope:bandit = { - death = { - death_reason = death_duel - killer = scope:adventurer - } - scope:inspiration_owner = { - change_artifact_quality_effect = { AMOUNT = 4 } - } - scope:inspiration = { change_inspiration_progress = 1 } - } - } - } - } - } - } - 11 = { - desc = fund_inspiration.9000.b.success - compare_modifier = { - value = scope:duel_value - } - root = { - send_interface_toast = { - title = fund_inspiration.9000.b.success - left_icon = scope:adventurer - scope:adventurer = { - scope:bandit = { - increase_wounds_effect = { REASON = fight } - } - scope:inspiration_owner = { - change_artifact_quality_effect = { AMOUNT = 2 } - } - } - } - } - } - 8 = { - desc = fund_inspiration.9000.b.failure - compare_modifier = { - value = scope:duel_value - multiplier = -1 - } - root = { - send_interface_toast = { - title = fund_inspiration.9000.b.failure - left_icon = scope:adventurer - scope:adventurer = { - increase_wounds_effect = { REASON = fight } - } - } - } - } - 1 = { - desc = fund_inspiration.9000.b.critical_failure - compare_modifier = { - value = scope:duel_value - multiplier = -1 - } - root = { - send_interface_toast = { - title = fund_inspiration.9000.b.critical_failure - left_icon = scope:adventurer - scope:adventurer = { - death = { - death_reason = death_duel - killer = scope:bandit - } - } - } - } - } - } - } - - ai_chance = { - base = 4 - modifier = { - add = scope:adventurer.prowess - } - modifier = { - add = { - value = scope:bandit.prowess - multiply = -1 - } - } - } - } - option = { - name = fund_inspiration.9000.c - pay_short_term_gold = { - target = scope:bandit - gold = minor_gold_value - } - ai_chance = { - base = 8 - - modifier = { - factor = 2 - ai_compassion >= medium_positive_ai_value - } - - modifier = { - factor = 0.1 - OR = { - has_trait = stubborn - has_trait = wrathful - has_trait = greedy - } - } - - modifier = { - factor = 0 - gold < 0 - } - } - } -} - -# Adventurer travels through beast-infested terrain -fund_inspiration.9100 = { - type = character_event - title = fund_inspiration.9100.t - desc = fund_inspiration.9100.desc - theme = war - - left_portrait = { - character = scope:adventurer - scripted_animation = duel_wield_weapon - } - - override_background = { - reference = wilderness_scope - } - - cooldown = { years = 5 } - - trigger = { - exists = scope:inspiration - scope:inspiration_owner = { - exists = var:adventure_destination - exists = var:adventure_type - NOR = { - has_character_flag = fund_adventure_inspiration_event_cooldown - has_trait = humble - has_trait = content - } - exists = location - } - } - - immediate = { - scope:inspiration_owner = { - save_scope_as = adventurer - location.barony.title_province = { save_scope_as = background_wilderness_scope } - scope:adventurer = { - select_local_animal_effect = { TYPE = dangerous } # Save scope to limit possible animals: any/big/small/dangerous/harmless/prowling - } - } - } - option = { - name = fund_inspiration.9100.a - - scope:adventurer = { - duel = { - skill = learning - value = 8 - - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - - - desc = fund_inspiration.9100.a.success - root = { - send_interface_toast = { - title = fund_inspiration.9100.a.success - left_icon = scope:adventurer - scope:inspiration = { change_inspiration_progress = 2 } - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - - desc = fund_inspiration.9100.a.failure - send_interface_toast = { - title = fund_inspiration.9100.a.failure - left_icon = scope:adventurer - root = { - scope:adventurer = { - increase_wounds_effect = { REASON = fight } - } - } - } - } - } - } - - ai_chance = { - base = 4 - modifier = { - add = scope:adventurer.learning - } - } - } - option = { - name = fund_inspiration.9100.b - - scope:adventurer = { - duel = { - skill = prowess - value = 8 - - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - - - desc = fund_inspiration.9100.b.success - root = { - send_interface_toast = { - title = fund_inspiration.9100.b.success - left_icon = scope:adventurer - scope:inspiration_owner = { - change_artifact_quality_effect = { AMOUNT = 3 } - } - scope:inspiration = { change_inspiration_progress = 1 } - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - - desc = fund_inspiration.9100.b.failure - root = { - send_interface_toast = { - title = fund_inspiration.9100.b.failure - left_icon = scope:adventurer - scope:adventurer = { - increase_wounds_effect = { REASON = fight } - random = { - chance = 25 - custom_tooltip = fund_inspiration.9100.b.maimed - hidden_effect = { - maimed_in_battle_effect = yes - } - } - } - } - } - } - } - } - - ai_chance = { - base = 4 - modifier = { - add = scope:adventurer.prowess - } - } - } - option = { - name = fund_inspiration.9100.c - - scope:inspiration = { change_inspiration_progress = -1 } - - ai_chance = { - base = 4 - - modifier = { - factor = 2 - ai_compassion >= medium_positive_ai_value - } - } - } -} diff --git a/events/dlc/ep1/ep1_inspiration_system_events.txt b/events/dlc/ep1/ep1_inspiration_system_events.txt deleted file mode 100644 index 2bd1d5abc..000000000 --- a/events/dlc/ep1/ep1_inspiration_system_events.txt +++ /dev/null @@ -1,146 +0,0 @@ -namespace = inspiration_system - -################################################## -# Inspiration Generation -# Checks how many inspirations currently exist and, if there are not enough, generates new ones for pool characters. -# by Sean Hughes -# 0005 -################################################## - -inspiration_system.0005 = { - scope = none - hidden = yes - - trigger = { - has_ep1_dlc_trigger = yes - - num_world_inspired_characters_value < ideal_total_world_inspirations - } - - immediate = { - set_local_variable = { - name = try_create_inspiration_attempts - value = max_new_inspirations_per_year_value - } - - while = { - limit = { - AND = { - local_var:try_create_inspiration_attempts > 0 - num_world_inspired_characters_value < ideal_total_world_inspirations - } - } - grant_new_inspiration_in_world_effect = yes - change_local_variable = { - name = try_create_inspiration_attempts - subtract = 1 - } - } - } -} - -################################################## -# Inspired Character Maintenance -# Every Royal Court owner occasionally checks guests who have an Inspiration and, if unsponsored, moves them to a different Royal Court -# by Sean Hughes -# 1001-1101 -################################################## - -inspiration_system.1001 = { - hidden = yes - - trigger = { - has_ep1_dlc_trigger = yes - } - - immediate = { - every_pool_guest = { - limit = { - exists = inspiration - NOR = { - # Inspiration is not currently being sponsored - inspiration = { exists = inspiration_sponsor } - # Has not arrived at our court in the last X months (defined in 00_ep1_script_values.txt ) - has_character_flag = inspired_character_recent_arrival - } - } - if = { - limit = { - inspiration = { - days_since_creation > 3650 - } - } - # Destroy our inspiration, since nobody seems interested in sponsoring it. - trigger_event = inspiration_system.1101 - } - else = { - # Look for a new royal court to visit. - inspired_character_seek_out_new_royal_court_effect = yes - } - } - } -} - -# After going an extended period of time without being recruited or having their Inspiration sponsored, characters lose it in order to make room for new Inspired characters in the pool. -inspiration_system.1101 = { - hidden = yes - - immediate = { - destroy_inspiration = inspiration - move_to_pool = yes - - # Unrealized potential is tough on people. - random_list = { - 25 = { - add_trait = depressed_1 - add_stress = minor_stress_gain - } - 25 = { - trigger = { can_be_drunkard = yes } - add_trait = drunkard - add_stress = minor_stress_gain - } - 25 = { - trigger = { can_be_hashishiyah = yes } - add_trait = hashishiyah - add_stress = minor_stress_gain - } - 50 = { - add_stress = major_stress_gain - } - } - } -} - -inspiration_system.1200 = { # Courtier becomes Adventurer - type = character_event - hidden = yes - - trigger = { - scope:antiquarian_from_task ?= { - has_court_position = antiquarian_court_position - } - scope:adventure_target ?= { - is_physically_able_adult = yes - NOR = { - exists = inspiration - has_court_position = antiquarian_court_position - } - adventure_inspiration_average_skill_value >= medium_inspiration_skill - host ?= root - } - } - - immediate = { - send_interface_toast = { - type = msg_court_inspiration - left_icon = scope:adventure_target - right_icon = scope:antiquarian_from_task - title = antiquarian_inspired_adventurer_message - desc = antiquarian_inspired_adventurer_effect - scope:adventure_target = { - create_inspiration = adventure_inspiration - } - } - } -} diff --git a/events/dlc/ep2/ep2_accolade_events.txt b/events/dlc/ep2/ep2_accolade_events.txt deleted file mode 100644 index 820baf95e..000000000 --- a/events/dlc/ep2/ep2_accolade_events.txt +++ /dev/null @@ -1,1197 +0,0 @@ -namespace = ep2_accolade_events - -############################ -## Accolade Events -## 0200-999 -## by Jason Cantalini -############################ - -# ep2_accolade_events.0100 - Hunter gives you and/or your heir the hunter trait -# ep2_accolade_events.0200 - Blademaster gives you and/or your heir the Blademaster trait -# ep2_accolade_events.0300 - Master of Revels gives you and/or your heir the Reveler trait - -scripted_trigger ep2_accolade_events_0100_hunting_knight_trigger = { - accolade ?= { - has_accolade_parameter = acclaimed_knight_trains_hunting - } - is_healthy = yes - is_imprisoned = no - OR = { - AND = { - is_available = yes - root = { is_available = yes } - } - AND = { - is_available = yes - root.primary_heir ?= { is_available = yes } - } - location = root.location - root.primary_heir.location ?= location - } -} - -# Huntsmaster shares the Hunter trait with your line -ep2_accolade_events.0100 = { - type = character_event - title = ep2_accolade_events.0100.t - desc = { - desc = ep2_accolade_events.0100.desc - first_valid = { - triggered_desc = { - trigger = { - scope:new_hunter = { - this = root - } - scope:new_hunter_2 = { - this = root.primary_heir - } - } - desc = ep2_accolade_events.0100.desc.both - } - triggered_desc = { - trigger = { - scope:new_hunter = { - this = root.primary_heir - } - } - desc = ep2_accolade_events.0100.desc.heir - } - triggered_desc = { - trigger = { - scope:new_hunter = { - this = root - } - } - desc = ep2_accolade_events.0100.desc.liege - } - } - } - theme = hunt_activity - left_portrait = { - character = scope:new_hunter - animation = hunting_horn - } - right_portrait = { - character = scope:huntsmaster - animation = war_over_win - } - lower_right_portrait = { - character = scope:new_hunter_2 - } - - trigger = { - has_dlc_feature = accolades - any_active_accolade = { - accolade_parameter = acclaimed_knight_trains_hunting - } - OR = { - NOT = { - has_trait = lifestyle_hunter - } - AND = { - primary_heir ?= { - NOT = { - has_trait = lifestyle_hunter - } - } - } - } - any_knight = { - ep2_accolade_events_0100_hunting_knight_trigger = yes - } - trigger_if = { - limit = { - NOT = { - has_trait = lifestyle_hunter - } - } - OR = { - is_available = yes - involved_activity ?= { has_activity_type = activity_hunt } - } - is_healthy = yes - is_imprisoned = no - age >= 13 - } - trigger_else = { - primary_heir ?= { - NOT = { - has_trait = lifestyle_hunter - } - } - primary_heir = { - OR = { - is_available = yes - involved_activity ?= { has_activity_type = activity_hunt } - } - is_healthy = yes - is_ai = yes - is_imprisoned = no - age >= 13 - is_courtier_of = root - } - } - } - - immediate = { - random_knight = { - limit = { - ep2_accolade_events_0100_hunting_knight_trigger = yes - } - save_scope_as = huntsmaster - } - if = { - limit = { - NOT = { - has_trait = lifestyle_hunter - } - OR = { - is_available = yes - involved_activity ?= { has_activity_type = activity_hunt } - } - is_healthy = yes - is_imprisoned = no - age >= 13 - } - save_scope_as = new_hunter - } - else_if = { - limit = { - primary_heir ?= { - NOT = { - has_trait = lifestyle_hunter - } - OR = { - is_available = yes - involved_activity ?= { has_activity_type = activity_hunt } - } - is_healthy = yes - is_ai = yes - is_imprisoned = no - age >= 13 - } - } - primary_heir = { - save_scope_as = new_hunter - } - } - if = { - limit = { - scope:new_hunter = { - this = root - } - primary_heir ?= { - NOT = { - has_trait = lifestyle_hunter - } - OR = { - is_available = yes - involved_activity ?= { has_activity_type = activity_hunt } - } - is_healthy = yes - is_ai = yes - is_imprisoned = no - age >= 13 - is_courtier_of = root - } - } - primary_heir = { - save_scope_as = new_hunter_2 - } - } - } - - option = { - name = ep2_accolade_events.0100.a - scope:new_hunter = { - add_trait = lifestyle_hunter - } - if = { - limit = { - exists = scope:new_hunter_2 - } - scope:new_hunter_2 = { - add_trait = lifestyle_hunter - } - } - if = { - limit = { - culture = { - OR = { - has_cultural_tradition = tradition_bush_hunting - has_cultural_tradition = tradition_hunters - has_cultural_tradition = tradition_sacred_hunts - } - } - } - stress_impact = { - base = miniscule_stress_impact_loss - brave = miniscule_stress_impact_loss - diligent = miniscule_stress_impact_loss - lifestyle_hunter = miniscule_stress_impact_loss - } - } - else = { - stress_impact = { - lifestyle_hunter = miniscule_stress_impact_loss - } - } - ai_chance = { - base = 100 - } - } -} - -scripted_trigger ep2_accolade_events_0200_blademaster_knight_trigger = { - accolade ?= { - has_accolade_parameter = acclaimed_knight_trains_swordfighting - } - is_healthy = yes - is_imprisoned = no - OR = { - AND = { - is_available = yes - root = { is_available = yes } - } - AND = { - is_available = yes - root.primary_heir = { is_available = yes } - } - location = root.location - location = root.primary_heir.location - } -} - -# Blademaster shares the Blademaster trait with your line -ep2_accolade_events.0200 = { - type = character_event - title = ep2_accolade_events.0200.t - desc = { - desc = ep2_accolade_events.0200.desc - first_valid = { - triggered_desc = { - trigger = { - scope:new_blademaster = { - this = root - NOT = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - } - exists = scope:new_blademaster_2 - scope:new_blademaster_2 = { - NOT = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - } - } - desc = ep2_accolade_events.0200.desc.both_not_martial - } - triggered_desc = { - trigger = { - scope:new_blademaster = { - this = root - } - exists = scope:new_blademaster_2 - scope:new_blademaster_2 = { - NOT = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - } - } - desc = ep2_accolade_events.0200.desc.heir_not_martial - } - triggered_desc = { - trigger = { - scope:new_blademaster = { - this = root - } - exists = scope:new_blademaster_2 - scope:new_blademaster_2 = { - NOT = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - } - } - desc = ep2_accolade_events.0200.desc.heir_not_martial - } - triggered_desc = { - trigger = { - scope:new_blademaster = { - this = root - } - exists = scope:new_blademaster_2 - } - desc = ep2_accolade_events.0200.desc.both - } - triggered_desc = { - trigger = { - scope:new_blademaster = { - this = root.primary_heir - } - } - desc = ep2_accolade_events.0200.desc.heir - } - triggered_desc = { - trigger = { - scope:new_blademaster = { - this = root - } - } - desc = ep2_accolade_events.0200.desc.liege - } - } - } - theme = martial - override_background = { - reference = courtyard - } - left_portrait = { - trigger = { - exists = scope:new_blademaster - } - character = scope:new_blademaster - animation = marshal - } - right_portrait = { - character = scope:acclaimed_blademaster - animation = throne_room_one_handed_passive_1 - } - lower_right_portrait = { - character = scope:new_blademaster_2 - } - - trigger = { - has_dlc_feature = accolades - any_active_accolade = { - accolade_parameter = acclaimed_knight_trains_swordfighting - } - OR = { - NOT = { - has_trait = lifestyle_blademaster - } - AND = { - primary_heir ?= { - NOT = { - has_trait = lifestyle_blademaster - } - } - } - } - any_knight = { - ep2_accolade_events_0200_blademaster_knight_trigger = yes - } - trigger_if = { - limit = { - NOT = { - has_trait = lifestyle_blademaster - } - } - OR = { - is_available = yes - involved_activity ?= { has_activity_type = activity_tournament } - } - is_healthy = yes - is_imprisoned = no - age >= 13 - NOT = { has_character_flag = denied_blademaster_training } - } - trigger_else = { - primary_heir ?= { - NOT = { - has_trait = lifestyle_blademaster - } - } - OR = { - primary_heir = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - primary_heir = { - NOT = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - NOR = { - has_trait = craven - has_trait = lazy - has_trait = content - } - } - } - primary_heir = { - OR = { - is_available = yes - involved_activity ?= { has_activity_type = activity_tournament } - } - is_healthy = yes - is_ai = yes - is_imprisoned = no - age >= 13 - is_courtier_of = root - NOT = { has_character_flag = denied_blademaster_training } - } - } - } - - immediate = { - #save trainer knight - random_knight = { - limit = { - ep2_accolade_events_0200_blademaster_knight_trigger = yes - } - save_scope_as = acclaimed_blademaster - } - #save non-blademaster liege - if = { - limit = { - NOT = { - has_trait = lifestyle_blademaster - } - OR = { - is_available = yes - involved_activity ?= { has_activity_type = activity_tournament } - } - is_healthy = yes - is_imprisoned = no - age >= 13 - NOT = { has_character_flag = denied_blademaster_training } - } - save_scope_as = new_blademaster - } - #save non-blademaster heir - else = { - primary_heir = { - save_scope_as = new_blademaster - } - } - #save non-blademaster heir, if liege exists - if = { - limit = { - scope:new_blademaster = { - this = root - } - primary_heir ?= { - NOT = { - has_trait = lifestyle_blademaster - } - OR = { - is_available = yes - involved_activity ?= { has_activity_type = activity_hunt } - } - is_healthy = yes - is_ai = yes - is_imprisoned = no - age >= 13 - is_courtier_of = root - NOT = { has_character_flag = denied_blademaster_training } - } - } - primary_heir = { - save_scope_as = new_blademaster_2 - } - } - scope:new_blademaster = { - add_character_flag = wear_armor - } - scope:acclaimed_blademaster = { - add_character_flag = wear_armor - } - scope:new_blademaster_2 ?= { - add_character_flag = wear_armor - } - } - - # we're going to be blademasters - option = { - name = ep2_accolade_events.0200.a - scope:new_blademaster = { - add_trait = lifestyle_blademaster - } - if = { - limit = { - exists = scope:new_blademaster_2 - } - scope:new_blademaster_2 = { - add_trait = lifestyle_blademaster - } - } - if = { - limit = { - OR = { - scope:new_blademaster = { - NOT = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - } - scope:new_blademaster_2 ?= { - NOT = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - } - } - } - add_piety = medium_piety_loss - add_character_modifier = { - modifier = defied_martial_custom_modifier - years = 20 - } - } - if = { - limit = { - OR = { - scope:new_blademaster = { - NOT = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - this = root.primary_heir - } - scope:new_blademaster_2 ?= { - NOT = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - this = root.primary_heir - } - } - } - reverse_add_opinion = { - modifier = grateful_opinion - target = primary_heir - opinion = 30 - } - } - if = { - limit = { - culture = { - OR = { - has_cultural_tradition = tradition_druzhina - has_cultural_tradition = tradition_futuwaa - has_cultural_tradition = tradition_khadga_puja - has_cultural_tradition = tradition_talent_acquisition - has_cultural_tradition = tradition_swords_for_hire - has_cultural_tradition = tradition_warriors_by_merit - has_cultural_tradition = tradition_only_the_strong - has_cultural_tradition = tradition_martial_admiration - has_cultural_tradition = tradition_fp1_trials_by_combat - has_cultural_tradition = tradition_chanson_de_geste - } - } - } - stress_impact = { - base = miniscule_stress_impact_loss - sadistic = miniscule_stress_impact_loss - brave = miniscule_stress_impact_loss - ambitious = miniscule_stress_impact_loss - wrathful = miniscule_stress_impact_loss - lifestyle_blademaster = miniscule_stress_impact_loss - } - } - else_if = { - limit = { - OR = { - scope:new_blademaster = { - NOT = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - } - scope:new_blademaster_2 ?= { - NOT = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - } - } - } - stress_impact = { - craven = major_stress_impact_gain - lazy = major_stress_impact_gain - content = major_stress_impact_gain - zealous = minor_stress_impact_gain - humble = minor_stress_impact_gain - just = minor_stress_impact_gain - lifestyle_blademaster = miniscule_stress_impact_loss - } - } - else_if = { - limit = { - OR = { - scope:new_blademaster = { - NOT = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - } - scope:new_blademaster_2 ?= { - NOT = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - } - } - culture = { - OR = { - has_cultural_tradition = tradition_druzhina - has_cultural_tradition = tradition_futuwaa - has_cultural_tradition = tradition_khadga_puja - has_cultural_tradition = tradition_talent_acquisition - has_cultural_tradition = tradition_swords_for_hire - has_cultural_tradition = tradition_warriors_by_merit - has_cultural_tradition = tradition_only_the_strong - has_cultural_tradition = tradition_martial_admiration - has_cultural_tradition = tradition_fp1_trials_by_combat - has_cultural_tradition = tradition_chanson_de_geste - } - } - } - stress_impact = { - base = miniscule_stress_impact_loss - sadistic = miniscule_stress_impact_loss - brave = miniscule_stress_impact_loss - ambitious = miniscule_stress_impact_loss - wrathful = miniscule_stress_impact_loss - craven = major_stress_impact_gain - lazy = major_stress_impact_gain - content = major_stress_impact_gain - zealous = minor_stress_impact_gain - humble = minor_stress_impact_gain - just = minor_stress_impact_gain - lifestyle_blademaster = miniscule_stress_impact_loss - } - } - else = { - stress_impact = { - lifestyle_blademaster = miniscule_stress_impact_loss - } - } - ai_chance = { - base = 100 - modifier = { - add = -75 - OR = { - scope:new_blademaster = { - NOT = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - } - scope:new_blademaster_2 ?= { - NOT = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - } - } - OR = { - has_trait = zealous - has_trait = humble - has_trait = just - } - } - modifier = { - add = 100 - OR = { - scope:new_blademaster = { - NOT = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - } - scope:new_blademaster_2 ?= { - NOT = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - } - } - OR = { - has_trait = brave - has_trait = ambitious - has_trait = arrogant - has_trait = arbitrary - has_trait = cynical - } - } - modifier = { - factor = 0 - OR = { - scope:new_blademaster = { - NOT = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - } - scope:new_blademaster_2 ?= { - NOT = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - } - } - OR = { - has_trait = craven - has_trait = lazy - has_trait = content - } - } - } - } - - # better not defy gender norms - option = { - trigger = { - OR = { - scope:new_blademaster = { - NOT = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - } - scope:new_blademaster_2 ?= { - NOT = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - } - } - } - name = ep2_accolade_events.0200.b - flavor = ep2_accolade_events.0200.b.tt - if = { - limit = { - scope:new_blademaster = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - } - scope:new_blademaster = { - add_trait = lifestyle_blademaster - } - } - else = { - scope:new_blademaster = { - add_character_flag = denied_blademaster_training - } - } - if = { - limit = { - exists = scope:new_blademaster_2 - scope:new_blademaster_2 = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - } - scope:new_blademaster_2 = { - add_trait = lifestyle_blademaster - } - } - else = { - scope:new_blademaster_2 ?= { - add_character_flag = denied_blademaster_training - } - } - if = { - limit = { - OR = { - scope:new_blademaster = { - NOT = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - this = root.primary_heir - } - scope:new_blademaster_2 ?= { - NOT = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - this = root.primary_heir - } - } - } - reverse_add_opinion = { - modifier = angry_opinion - target = primary_heir - opinion = -30 - } - } - if = { - limit = { - OR = { - scope:new_blademaster = { - NOT = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - this != root.primary_heir - } - scope:new_blademaster_2 ?= { - NOT = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - this != root.primary_heir - } - } - } - stress_impact = { - arrogant = medium_stress_impact_gain - ambitious = medium_stress_impact_gain - brave = medium_stress_impact_gain - cynical = medium_stress_impact_gain - arbitrary = medium_stress_impact_gain - } - } - else_if = { - limit = { - OR = { - scope:new_blademaster = { - NOT = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - this = root.primary_heir - } - scope:new_blademaster_2 ?= { - NOT = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - this = root.primary_heir - } - } - } - stress_impact = { - compassionate = major_stress_impact_gain - arrogant = medium_stress_impact_gain - ambitious = medium_stress_impact_gain - brave = medium_stress_impact_gain - cynical = medium_stress_impact_gain - arbitrary = medium_stress_impact_gain - } - } - ai_chance = { - base = 0 - modifier = { - add = 100 - OR = { - scope:new_blademaster = { - NOT = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - } - scope:new_blademaster_2 ?= { - NOT = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - } - } - } - modifier = { - add = -75 - OR = { - scope:new_blademaster = { - NOT = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - } - scope:new_blademaster_2 ?= { - NOT = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - } - } - OR = { - has_trait = arrogant - has_trait = ambitious - has_trait = brave - has_trait = cynical - has_trait = arbitrary - } - } - modifier = { - add = 100 - OR = { - scope:new_blademaster = { - NOT = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - } - scope:new_blademaster_2 ?= { - NOT = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - } - } - OR = { - has_trait = humble - has_trait = content - has_trait = craven - has_trait = zealous - has_trait = just - has_trait = lazy - } - } - modifier = { - factor = 0 - OR = { - scope:new_blademaster = { - NOT = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - this = root.primary_heir - } - scope:new_blademaster_2 ?= { - NOT = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - this = root.primary_heir - } - } - has_trait = compassionate - } - } - } - after = { - scope:acclaimed_blademaster = { - remove_character_flag = wear_armor - } - scope:new_blademaster = { - remove_character_flag = wear_armor - } - } -} - -scripted_trigger ep2_accolade_events_0300_reveler_knight_trigger = { - accolade ?= { - has_accolade_parameter = acclaimed_knight_trains_reveling - } - is_healthy = yes - is_imprisoned = no - OR = { - AND = { - is_available = yes - root = { is_available = yes } - } - AND = { - is_available = yes - root.primary_heir = { is_available = yes } - } - location = root.location - location = root.primary_heir.location - } -} - -# master_of_revels shares the reveler trait with your line -ep2_accolade_events.0300 = { - type = character_event - title = ep2_accolade_events.0300.t - desc = { - desc = ep2_accolade_events.0300.desc - first_valid = { - triggered_desc = { - trigger = { - scope:new_reveler = { - this = root - } - scope:new_reveler_2 = { - this = root.primary_heir - } - } - desc = ep2_accolade_events.0300.desc.both - } - triggered_desc = { - trigger = { - scope:new_reveler = { - this = root.primary_heir - } - } - desc = ep2_accolade_events.0300.desc.heir - } - triggered_desc = { - trigger = { - scope:new_reveler = { - this = root - } - } - desc = ep2_accolade_events.0300.desc.liege - } - } - } - theme = feast_activity - left_portrait = { - character = scope:new_reveler - animation = laugh - } - right_portrait = { - character = scope:master_of_revels - animation = toast_goblet - } - lower_right_portrait = { - character = scope:new_reveler_2 - } - - trigger = { - has_dlc_feature = accolades - any_active_accolade = { - accolade_parameter = acclaimed_knight_trains_reveling - } - OR = { - NOR = { - has_trait = lifestyle_reveler - has_trait = temperate - has_trait = shy - } - AND = { - primary_heir ?= { - NOR = { - has_trait = lifestyle_reveler - has_trait = temperate - has_trait = shy - } - } - } - } - any_knight = { - ep2_accolade_events_0300_reveler_knight_trigger = yes - } - trigger_if = { - limit = { - NOT = { - has_trait = lifestyle_reveler - } - } - OR = { - is_available = yes - involved_activity ?= { has_activity_type = activity_feast } - involved_activity ?= { has_activity_type = activity_wedding } - } - is_healthy = yes - is_imprisoned = no - age >= 13 - } - trigger_else = { - primary_heir ?= { - NOT = { - has_trait = lifestyle_reveler - } - } - primary_heir = { - OR = { - is_available = yes - involved_activity ?= { has_activity_type = activity_feast } - involved_activity ?= { has_activity_type = activity_wedding } - } - is_healthy = yes - is_ai = yes - is_imprisoned = no - age >= 13 - is_courtier_of = root - } - } - } - - immediate = { - random_knight = { - limit = { - ep2_accolade_events_0300_reveler_knight_trigger = yes - } - save_scope_as = master_of_revels - } - if = { - limit = { - NOR = { - has_trait = lifestyle_reveler - has_trait = temperate - has_trait = shy - } - OR = { - is_available = yes - involved_activity ?= { has_activity_type = activity_feast } - involved_activity ?= { has_activity_type = activity_wedding } - } - is_healthy = yes - is_imprisoned = no - age >= 13 - } - save_scope_as = new_reveler - } - else_if = { - limit = { - primary_heir ?= { - NOR = { - has_trait = lifestyle_reveler - has_trait = temperate - has_trait = shy - } - OR = { - is_available = yes - involved_activity ?= { has_activity_type = activity_feast } - involved_activity ?= { has_activity_type = activity_wedding } - } - is_healthy = yes - is_ai = yes - is_imprisoned = no - age >= 13 - is_courtier_of = root - } - } - primary_heir = { - save_scope_as = new_reveler - } - } - if = { - limit = { - scope:new_reveler ?= { - this = root - } - primary_heir ?= { - NOT = { - has_trait = lifestyle_reveler - has_trait = temperate - has_trait = shy - } - OR = { - is_available = yes - involved_activity ?= { has_activity_type = activity_feast } - involved_activity ?= { has_activity_type = activity_wedding } - } - is_healthy = yes - is_ai = yes - is_imprisoned = no - age >= 13 - is_courtier_of = root - } - } - primary_heir = { - save_scope_as = new_reveler_2 - } - } - } - - option = { - name = ep2_accolade_events.0300.a - scope:new_reveler ?= { - add_trait = lifestyle_reveler - } - if = { - limit = { - exists = scope:new_reveler_2 - } - scope:new_reveler_2 = { - add_trait = lifestyle_reveler - } - } - if = { - limit = { - culture = { - OR = { - has_cultural_tradition = tradition_festivities - has_cultural_tradition = tradition_welcoming - } - } - faith = { - OR = { - has_doctrine = tenet_ritual_celebrations - has_doctrine = tenet_hedonistic - } - } - } - stress_impact = { - base = miniscule_stress_impact_loss - gregarious = miniscule_stress_impact_loss - gluttonous = miniscule_stress_impact_loss - drunkard = miniscule_stress_impact_loss - profligate = miniscule_stress_impact_loss - comfort_eater = miniscule_stress_impact_loss - lustful = miniscule_stress_impact_loss - lifestyle_reveler = miniscule_stress_impact_loss - } - } - else = { - stress_impact = { - lifestyle_reveler = miniscule_stress_impact_loss - } - } - ai_chance = { - base = 100 - } - } -} diff --git a/events/dlc/ep2/ep2_tournament_events.txt b/events/dlc/ep2/ep2_tournament_events.txt index f132f9dc7..162d270ff 100644 --- a/events/dlc/ep2/ep2_tournament_events.txt +++ b/events/dlc/ep2/ep2_tournament_events.txt @@ -85,7 +85,7 @@ ep2_tournament_events.0001 = { activity_tournament_change_contestant_score_effect = { SCORE = increase_major } custom_tooltip = ep2_tournament_events.0001.a.tt - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss paranoid = minor_stress_impact_loss trusting = minor_stress_impact_gain @@ -131,7 +131,7 @@ ep2_tournament_events.0001 = { } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_loss trusting = minor_stress_impact_gain } @@ -153,7 +153,7 @@ ep2_tournament_events.0001 = { desc = ep2_tournament_events.0001.b.tt.lose - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_gain trusting = minor_stress_impact_loss } @@ -171,7 +171,7 @@ ep2_tournament_events.0001 = { activity_tournament_change_contestant_score_effect = { SCORE = decrease_minor } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_gain trusting = minor_stress_impact_loss } @@ -245,7 +245,7 @@ ep2_tournament_events.0002 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss arrogant = medium_stress_impact_loss humble = medium_stress_impact_gain @@ -260,7 +260,7 @@ ep2_tournament_events.0002 = { option = { name = ep2_tournament_events.0002.b - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_loss humble = minor_stress_impact_gain } @@ -282,7 +282,7 @@ ep2_tournament_events.0002 = { opinion = -30 } - stress_impact = { + stress_and_fulfillment_impact = { craven = medium_stress_impact_loss brave = medium_stress_impact_gain } @@ -427,7 +427,7 @@ ep2_tournament_events.0003 = { } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_gain sadistic = minor_stress_impact_loss } @@ -451,7 +451,7 @@ ep2_tournament_events.0003 = { opinion = 20 } - stress_impact = { + stress_and_fulfillment_impact = { craven = medium_stress_impact_loss arrogant = minor_stress_impact_gain compassionate = minor_stress_impact_loss @@ -492,7 +492,7 @@ ep2_tournament_events.0003 = { opinion = 20 } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_loss sadistic = minor_stress_impact_gain } @@ -511,7 +511,7 @@ ep2_tournament_events.0003 = { opinion = -30 } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_loss compassionate = minor_stress_impact_gain humble = minor_stress_impact_gain @@ -550,7 +550,7 @@ ep2_tournament_events.0003 = { opinion = 20 } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_gain compassionate = minor_stress_impact_loss humble = minor_stress_impact_loss @@ -677,7 +677,7 @@ ep2_tournament_events.0004 = { } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = medium_stress_impact_gain just = medium_stress_impact_gain sadistic = miniscule_stress_impact_loss @@ -726,8 +726,6 @@ ep2_tournament_events.0004 = { } } } - - desc = ep2_tournament_events.1001.c.success } 50 = { #They don't accept the apology compare_modifier = { @@ -764,7 +762,7 @@ ep2_tournament_events.0004 = { } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = miniscule_stress_impact_loss just = miniscule_stress_impact_loss honest = minor_stress_impact_loss @@ -799,7 +797,7 @@ ep2_tournament_events.0004 = { opinion = -40 } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = miniscule_stress_impact_loss craven = miniscule_stress_impact_loss impatient = minor_stress_impact_loss @@ -928,7 +926,7 @@ ep2_tournament_events.0005 = { } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = medium_stress_impact_gain just = medium_stress_impact_gain honest = medium_stress_impact_gain @@ -963,7 +961,7 @@ ep2_tournament_events.0005 = { opinion = -20 } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = miniscule_stress_impact_loss just = miniscule_stress_impact_loss honest = minor_stress_impact_loss @@ -997,7 +995,7 @@ ep2_tournament_events.0005 = { opinion = -25 } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = miniscule_stress_impact_loss craven = miniscule_stress_impact_loss impatient = minor_stress_impact_loss @@ -1091,7 +1089,7 @@ ep2_tournament_events.0006 = { } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = medium_stress_impact_gain just = medium_stress_impact_gain honest = medium_stress_impact_gain @@ -1117,7 +1115,7 @@ ep2_tournament_events.0006 = { activity_tournament_change_contestant_score_effect = { SCORE = increase_medium } - stress_impact = { + stress_and_fulfillment_impact = { just = miniscule_stress_impact_loss arbitrary = medium_stress_impact_gain } @@ -1145,7 +1143,7 @@ ep2_tournament_events.0006 = { OPINION = default_friend_opinion } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = medium_stress_impact_gain craven = medium_stress_impact_gain impatient = medium_stress_impact_gain @@ -1236,7 +1234,7 @@ ep2_tournament_events.0007 = { } } - stress_impact = { + stress_and_fulfillment_impact = { honest = medium_stress_impact_gain just = medium_stress_impact_gain ambitious = medium_stress_impact_gain @@ -1283,7 +1281,7 @@ ep2_tournament_events.0007 = { } } - stress_impact = { + stress_and_fulfillment_impact = { honest = medium_stress_impact_gain greedy = minor_stress_impact_gain deceitful = miniscule_stress_impact_loss @@ -1311,7 +1309,7 @@ ep2_tournament_events.0007 = { } } - stress_impact = { + stress_and_fulfillment_impact = { arbitrary = medium_stress_impact_gain just = miniscule_stress_impact_loss greedy = medium_stress_impact_gain @@ -1471,7 +1469,7 @@ ep2_tournament_events.0010 = { } } - stress_impact = { + stress_and_fulfillment_impact = { brave = miniscule_stress_impact_loss ambitious = miniscule_stress_impact_loss impatient = miniscule_stress_impact_loss @@ -1580,7 +1578,7 @@ ep2_tournament_events.0010 = { } } - stress_impact = { + stress_and_fulfillment_impact = { fickle = miniscule_stress_impact_loss patient = miniscule_stress_impact_loss humble = miniscule_stress_impact_loss @@ -1608,7 +1606,7 @@ ep2_tournament_events.0010 = { activity_tournament_change_contestant_score_effect = { SCORE = decrease_miniscule } - stress_impact = { + stress_and_fulfillment_impact = { brave = minor_stress_impact_gain ambitious = minor_stress_impact_gain impatient = minor_stress_impact_gain @@ -1706,7 +1704,7 @@ ep2_tournament_events.0011 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss deceitful = miniscule_stress_impact_loss arrogant = miniscule_stress_impact_loss @@ -1896,7 +1894,7 @@ ep2_tournament_events.0011 = { } } - stress_impact = { + stress_and_fulfillment_impact = { deceitful = miniscule_stress_impact_loss arrogant = miniscule_stress_impact_loss honest = minor_stress_impact_gain @@ -1957,7 +1955,7 @@ ep2_tournament_events.0011 = { } } - stress_impact = { + stress_and_fulfillment_impact = { brave = miniscule_stress_impact_loss ambitious = miniscule_stress_impact_loss wrathful = miniscule_stress_impact_loss @@ -2040,7 +2038,7 @@ ep2_tournament_events.0012 = { activity_tournament_change_contestant_score_effect = { SCORE = decrease_miniscule } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss stubborn = miniscule_stress_impact_loss fickle = minor_stress_impact_gain @@ -2080,7 +2078,7 @@ ep2_tournament_events.0012 = { } } - stress_impact = { + stress_and_fulfillment_impact = { deceitful = minor_stress_impact_loss arbitrary = minor_stress_impact_loss just = medium_stress_impact_gain @@ -2102,7 +2100,7 @@ ep2_tournament_events.0012 = { flavor = ep2_tournament_events.0012.c.tt - stress_impact = { + stress_and_fulfillment_impact = { ambitious = miniscule_stress_impact_loss fickle = miniscule_stress_impact_loss humble = miniscule_stress_impact_loss @@ -2147,7 +2145,7 @@ ep2_tournament_events.0012 = { activity_tournament_change_contestant_score_effect = { SCORE = decrease_minor } - stress_impact = { + stress_and_fulfillment_impact = { stubborn = miniscule_stress_impact_loss fickle = minor_stress_impact_gain } @@ -2175,9 +2173,7 @@ ep2_tournament_events.0020 = { first_valid = { triggered_desc = { trigger = { - scope:secret = { - exists = this - } + exists = scope:secret } desc = ep2_tournament_events.0020.secret } @@ -2218,9 +2214,7 @@ ep2_tournament_events.0020 = { name = ep2_tournament_events.0020.a trigger = { - scope:secret = { - exists = this - } + exists = scope:secret OR = { has_trait = sadistic has_trait = callous @@ -2254,7 +2248,7 @@ ep2_tournament_events.0020 = { } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = medium_stress_impact_gain just = medium_stress_impact_gain sadistic = miniscule_stress_impact_loss @@ -2280,9 +2274,7 @@ ep2_tournament_events.0020 = { name = ep2_tournament_events.0020.b trigger = { - scope:secret = { - exists = this - } + exists = scope:secret } add_internal_flag = special @@ -2299,7 +2291,7 @@ ep2_tournament_events.0020 = { opinion = -30 } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_gain just = minor_stress_impact_gain sadistic = miniscule_stress_impact_loss @@ -2363,7 +2355,7 @@ ep2_tournament_events.0020 = { } } - stress_impact = { + stress_and_fulfillment_impact = { just = medium_stress_impact_gain honest = minor_stress_impact_gain arbitrary = miniscule_stress_impact_gain @@ -2385,7 +2377,7 @@ ep2_tournament_events.0020 = { accolade_minimal_glory_gain_with_checks_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { just = miniscule_stress_impact_loss honest = miniscule_stress_impact_loss arbitrary = minor_stress_impact_gain @@ -2497,7 +2489,7 @@ ep2_tournament_events.0021 = { opinion = -20 } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss compassionate = medium_stress_impact_gain } @@ -2529,7 +2521,7 @@ ep2_tournament_events.0021 = { opinion = -40 } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_gain just = minor_stress_impact_gain sadistic = miniscule_stress_impact_loss @@ -2553,7 +2545,7 @@ ep2_tournament_events.0021 = { activity_tournament_change_contestant_score_effect = { SCORE = decrease_minor } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = miniscule_stress_impact_loss just = miniscule_stress_impact_loss content = miniscule_stress_impact_loss @@ -2626,7 +2618,7 @@ ep2_tournament_events.1001 = { add_prestige = medium_prestige_value - stress_impact = { + stress_and_fulfillment_impact = { craven = medium_stress_impact_gain content = minor_stress_impact_gain humble = minor_stress_impact_gain @@ -2672,7 +2664,7 @@ ep2_tournament_events.1001 = { } } - stress_impact = { + stress_and_fulfillment_impact = { craven = medium_stress_impact_gain content = minor_stress_impact_gain humble = minor_stress_impact_gain @@ -2759,7 +2751,7 @@ ep2_tournament_events.1001 = { } } - stress_impact = { + stress_and_fulfillment_impact = { brave = medium_stress_impact_gain ambitious = minor_stress_impact_gain arrogant = minor_stress_impact_gain @@ -2795,7 +2787,7 @@ ep2_tournament_events.1001 = { } } - stress_impact = { + stress_and_fulfillment_impact = { craven = minor_stress_impact_loss content = miniscule_stress_impact_loss brave = medium_stress_impact_gain @@ -2879,7 +2871,7 @@ ep2_tournament_events.1002 = { } } - stress_impact = { + stress_and_fulfillment_impact = { content = minor_stress_impact_gain humble = minor_stress_impact_gain } @@ -2913,7 +2905,7 @@ ep2_tournament_events.1002 = { modifier = scared_opinion } - stress_impact = { + stress_and_fulfillment_impact = { sadistic = minor_stress_impact_loss content = minor_stress_impact_gain humble = minor_stress_impact_gain @@ -2960,7 +2952,7 @@ ep2_tournament_events.1002 = { } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = major_stress_impact_gain generous = miniscule_stress_impact_loss } @@ -2985,7 +2977,7 @@ ep2_tournament_events.1002 = { OPINION = default_rival_opinion } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = miniscule_stress_impact_loss compassionate = minor_stress_impact_gain just = minor_stress_impact_gain @@ -3105,7 +3097,7 @@ ep2_tournament_events.1003 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss arrogant = miniscule_stress_impact_loss @@ -3122,7 +3114,7 @@ ep2_tournament_events.1003 = { left_icon = root } - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_gain arrogant = minor_stress_impact_gain @@ -3163,7 +3155,7 @@ ep2_tournament_events.1003 = { activity_tournament_change_contestant_score_effect = { SCORE = decrease_minor } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = medium_stress_impact_gain content = minor_stress_impact_gain humble = minor_stress_impact_gain @@ -3184,11 +3176,11 @@ ep2_tournament_events.1004 = { theme = tournament_contest left_portrait = { character = root - animation = personality_honorable + animation = stayback } right_portrait = { character = scope:comely_stray - animation = worry + animation = map_fear } lower_center_portrait = { character = scope:rescuer_knight @@ -3222,6 +3214,7 @@ ep2_tournament_events.1004 = { gender_female_chance = root_attraction_based_female_chance location = scope:activity.activity_location faith = root.location.faith + rite = root.location.rite culture = root.location.culture save_scope_as = comely_stray @@ -3292,7 +3285,7 @@ ep2_tournament_events.1004 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss chaste = massive_stress_impact_gain #technically possible if you're a Seducer content = minor_stress_impact_gain @@ -3359,7 +3352,7 @@ ep2_tournament_events.1004 = { } } - stress_impact = { + stress_and_fulfillment_impact = { chaste = major_stress_impact_gain content = minor_stress_impact_gain lazy = minor_stress_impact_gain @@ -3397,7 +3390,7 @@ ep2_tournament_events.1004 = { } } - stress_impact = { + stress_and_fulfillment_impact = { lustful = major_stress_impact_gain arrogant = medium_stress_impact_gain brave = medium_stress_impact_gain @@ -3502,7 +3495,7 @@ ep2_tournament_events.1004 = { } } - stress_impact = { + stress_and_fulfillment_impact = { lustful = major_stress_impact_gain brave = medium_stress_impact_gain compassionate = medium_stress_impact_gain @@ -3752,12 +3745,6 @@ ep2_tournament_events.1006 = { } } } - else = { - create_artifact_brooch_effect = { - OWNER = scope:surrendering_knight - SMITH = scope:surrendering_knight - } - } if = { limit = { has_trait = tourney_participant } @@ -3812,7 +3799,7 @@ ep2_tournament_events.1006 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss compassionate = massive_stress_impact_gain forgiving = massive_stress_impact_gain @@ -3838,7 +3825,7 @@ ep2_tournament_events.1006 = { name = ep2_tournament_events.1006.b trigger = { - scope:surrendering_knight.gold > 4 + scope:surrendering_knight.gold > 5 } scope:surrendering_knight = { @@ -3858,7 +3845,7 @@ ep2_tournament_events.1006 = { } } - stress_impact = { # Deliberately low; we want the player to pick this option the most + stress_and_fulfillment_impact = { # Deliberately low; we want the player to pick this option the most greedy = miniscule_stress_impact_loss just = miniscule_stress_impact_loss generous = miniscule_stress_impact_gain @@ -3910,12 +3897,8 @@ ep2_tournament_events.1006 = { name = ep2_tournament_events.1006.d trigger = { - scope:surrendering_knight = { - any_equipped_character_artifact = { - count = 0 - } - gold < 4 - } + scope:surrendering_knight.gold <= 5 + NOT = { exists = scope:artifact } } scope:surrendering_knight = { @@ -3973,7 +3956,6 @@ ep2_tournament_events.1007 = { desc = ep2_tournament_events.1007.desc theme = tournament_contest window = widget_activity_locale_fullscreen_event - theme = tournament_contest left_portrait = { character = root animation = thinking @@ -4136,7 +4118,7 @@ ep2_tournament_events.1007 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss diligent = miniscule_stress_impact_gain gluttonous = miniscule_stress_impact_loss @@ -4222,7 +4204,7 @@ ep2_tournament_events.1007 = { } } - stress_impact = { + stress_and_fulfillment_impact = { shy = medium_stress_impact_gain lazy = minor_stress_impact_gain greedy = miniscule_stress_impact_loss @@ -4245,7 +4227,7 @@ ep2_tournament_events.1007 = { activity_tournament_change_contestant_score_effect = { SCORE = increase_minor } - stress_impact = { + stress_and_fulfillment_impact = { shy = minor_stress_impact_loss lazy = miniscule_stress_impact_loss greedy = miniscule_stress_impact_loss @@ -4614,7 +4596,7 @@ ep2_tournament_events.1011 = { } } - stress_impact = { + stress_and_fulfillment_impact = { craven = minor_stress_impact_loss deceitful = minor_stress_impact_loss wrathful = miniscule_stress_impact_loss @@ -4827,7 +4809,7 @@ ep2_tournament_events.1011 = { } } - stress_impact = { + stress_and_fulfillment_impact = { craven = medium_stress_impact_gain wrathful = miniscule_stress_impact_loss brave = minor_stress_impact_loss @@ -4869,7 +4851,7 @@ ep2_tournament_events.1011 = { opinion = -30 } - stress_impact = { + stress_and_fulfillment_impact = { brave = major_stress_impact_gain ambitious = medium_stress_impact_gain arrogant = medium_stress_impact_gain @@ -4991,7 +4973,7 @@ ep2_tournament_events.1011 = { } } - stress_impact = { + stress_and_fulfillment_impact = { brave = medium_stress_impact_loss #In face of very unlikely odds! ambitious = miniscule_stress_impact_loss arrogant = miniscule_stress_impact_loss @@ -5075,7 +5057,7 @@ ep2_tournament_events.1011 = { } } - stress_impact = { + stress_and_fulfillment_impact = { brave = major_stress_impact_gain ambitious = medium_stress_impact_gain arrogant = medium_stress_impact_gain @@ -5216,7 +5198,7 @@ ep2_tournament_events.1012 = { } } - stress_impact = { + stress_and_fulfillment_impact = { brave = miniscule_stress_impact_loss ambitious = miniscule_stress_impact_loss deceitful = miniscule_stress_impact_loss @@ -5382,7 +5364,7 @@ ep2_tournament_events.1012 = { opinion = 25 } - stress_impact = { + stress_and_fulfillment_impact = { brave = miniscule_stress_impact_loss ambitious = miniscule_stress_impact_loss deceitful = miniscule_stress_impact_loss @@ -5527,7 +5509,7 @@ ep2_tournament_events.1012 = { } } - stress_impact = { + stress_and_fulfillment_impact = { brave = miniscule_stress_impact_loss ambitious = miniscule_stress_impact_loss deceitful = miniscule_stress_impact_loss @@ -5550,7 +5532,7 @@ ep2_tournament_events.1012 = { option = { name = ep2_tournament_events.1012.d - stress_impact = { + stress_and_fulfillment_impact = { brave = medium_stress_impact_gain ambitious = medium_stress_impact_gain deceitful = medium_stress_impact_gain @@ -5666,7 +5648,7 @@ ep2_tournament_events.1013 = { NICKNAME = nick_the_honorable } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss compassionate = miniscule_stress_impact_loss arbitrary = minor_stress_impact_gain @@ -5721,7 +5703,7 @@ ep2_tournament_events.1013 = { } } - stress_impact = { + stress_and_fulfillment_impact = { brave = minor_stress_impact_gain just = medium_stress_impact_gain compassionate = medium_stress_impact_gain @@ -5857,7 +5839,7 @@ ep2_tournament_events.1013 = { } } - stress_impact = { + stress_and_fulfillment_impact = { brave = miniscule_stress_impact_loss just = miniscule_stress_impact_loss craven = minor_stress_impact_gain @@ -5878,7 +5860,7 @@ ep2_tournament_events.1013 = { option = { name = ep2_tournament_events.1013.d - stress_impact = { + stress_and_fulfillment_impact = { brave = miniscule_stress_impact_gain sadistic = minor_stress_impact_gain craven = miniscule_stress_impact_loss @@ -6033,7 +6015,7 @@ ep2_tournament_events.1015 = { } } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = miniscule_stress_impact_loss deceitful = miniscule_stress_impact_loss craven = miniscule_stress_impact_loss @@ -6113,7 +6095,7 @@ ep2_tournament_events.1015 = { } } - stress_impact = { + stress_and_fulfillment_impact = { diligent = miniscule_stress_impact_loss stubborn = miniscule_stress_impact_loss lazy = medium_stress_impact_gain @@ -6132,7 +6114,7 @@ ep2_tournament_events.1015 = { option = { name = ep2_tournament_events.1015.c - stress_impact = { + stress_and_fulfillment_impact = { diligent = minor_stress_impact_gain stubborn = medium_stress_impact_gain lazy = miniscule_stress_impact_loss @@ -6270,7 +6252,7 @@ ep2_tournament_events.1016 = { years = 1 } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = miniscule_stress_impact_loss paranoid = miniscule_stress_impact_loss craven = miniscule_stress_impact_loss @@ -6393,7 +6375,7 @@ ep2_tournament_events.1016 = { } } - stress_impact = { + stress_and_fulfillment_impact = { humble = miniscule_stress_impact_loss diligent = miniscule_stress_impact_loss arrogant = medium_stress_impact_gain @@ -6439,7 +6421,7 @@ ep2_tournament_events.1016 = { opinion = -25 } - stress_impact = { + stress_and_fulfillment_impact = { humble = minor_stress_impact_gain compassionate = minor_stress_impact_gain fickle = medium_stress_impact_gain @@ -6658,7 +6640,7 @@ ep2_tournament_events.1017 = { } } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = minor_stress_impact_loss brave = minor_stress_impact_loss stubborn = miniscule_stress_impact_loss @@ -6736,7 +6718,7 @@ ep2_tournament_events.1017 = { } } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = minor_stress_impact_gain brave = minor_stress_impact_gain stubborn = minor_stress_impact_gain @@ -6890,7 +6872,7 @@ ep2_tournament_events.1018 = { modifier = respect_opinion } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = miniscule_stress_impact_loss shy = miniscule_stress_impact_loss content = minor_stress_impact_gain @@ -6947,7 +6929,7 @@ ep2_tournament_events.1018 = { modifier = loyalty_opinion } - stress_impact = { + stress_and_fulfillment_impact = { gregarious = miniscule_stress_impact_loss compassionate = miniscule_stress_impact_loss callous = miniscule_stress_impact_loss @@ -7085,7 +7067,7 @@ ep2_tournament_events.1501 = { } } - stress_impact = { + stress_and_fulfillment_impact = { deceitful = minor_stress_impact_loss arbitrary = miniscule_stress_impact_loss vengeful = miniscule_stress_impact_loss @@ -7130,7 +7112,7 @@ ep2_tournament_events.1501 = { } } - stress_impact = { + stress_and_fulfillment_impact = { arbitrary = miniscule_stress_impact_loss deceitful = miniscule_stress_impact_loss just = medium_stress_impact_gain @@ -7155,7 +7137,7 @@ ep2_tournament_events.1501 = { activity_tournament_change_contestant_score_effect = { SCORE = increase_miniscule } } - stress_impact = { + stress_and_fulfillment_impact = { deceitful = medium_stress_impact_gain arbitrary = medium_stress_impact_gain vengeful = medium_stress_impact_gain @@ -7248,7 +7230,7 @@ ep2_tournament_events.1502 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss ambitious = miniscule_stress_impact_loss diligent = miniscule_stress_impact_loss @@ -7318,7 +7300,7 @@ ep2_tournament_events.1502 = { } } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = miniscule_stress_impact_loss deceitful = miniscule_stress_impact_loss arbitrary = miniscule_stress_impact_loss @@ -7390,7 +7372,7 @@ ep2_tournament_events.1502 = { } } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = minor_stress_impact_gain deceitful = minor_stress_impact_gain arbitrary = minor_stress_impact_gain @@ -7549,7 +7531,7 @@ ep2_tournament_events.1503 = { } } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = miniscule_stress_impact_loss arbitrary = miniscule_stress_impact_loss content = minor_stress_impact_gain @@ -7621,7 +7603,7 @@ ep2_tournament_events.1503 = { } } - stress_impact = { + stress_and_fulfillment_impact = { lazy = miniscule_stress_impact_loss gregarious = miniscule_stress_impact_loss shy = minor_stress_impact_gain @@ -7641,7 +7623,7 @@ ep2_tournament_events.1503 = { option = { name = ep2_tournament_events.1503.c - stress_impact = { + stress_and_fulfillment_impact = { gregarious = miniscule_stress_impact_gain deceitful = miniscule_stress_impact_gain impatient = miniscule_stress_impact_gain @@ -7671,7 +7653,6 @@ ep2_tournament_events.2001 = { desc = ep2_tournament_events.2001.desc theme = tournament_contest window = widget_activity_locale_fullscreen_event - theme = tournament_contest left_portrait = { character = root animation = aggressive_unarmed @@ -7700,7 +7681,7 @@ ep2_tournament_events.2001 = { activity_tournament_change_contestant_score_effect = { SCORE = increase_medium } - stress_impact = { + stress_and_fulfillment_impact = { craven = medium_stress_impact_gain brave = medium_stress_impact_loss content = minor_stress_impact_gain @@ -7778,7 +7759,7 @@ ep2_tournament_events.2001 = { } } - stress_impact = { + stress_and_fulfillment_impact = { craven = medium_stress_impact_loss brave = medium_stress_impact_gain content = minor_stress_impact_loss @@ -7866,7 +7847,7 @@ ep2_tournament_events.2002 = { } } - stress_impact = { + stress_and_fulfillment_impact = { honest = major_stress_impact_gain just = major_stress_impact_gain arbitrary = minor_stress_impact_loss @@ -7911,7 +7892,7 @@ ep2_tournament_events.2002 = { } } - stress_impact = { + stress_and_fulfillment_impact = { honest = minor_stress_impact_loss just = minor_stress_impact_loss arbitrary = major_stress_impact_gain @@ -8031,7 +8012,7 @@ ep2_tournament_events.2003 = { activity_tournament_change_contestant_score_effect = { SCORE = increase_major } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss brave = minor_stress_impact_gain compassionate = minor_stress_impact_gain @@ -8072,7 +8053,7 @@ ep2_tournament_events.2003 = { } } - stress_impact = { + stress_and_fulfillment_impact = { craven = medium_stress_impact_loss brave = medium_stress_impact_gain content = minor_stress_impact_gain @@ -8115,7 +8096,7 @@ ep2_tournament_events.2003 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss compassionate = medium_stress_impact_loss craven = medium_stress_impact_gain @@ -8232,7 +8213,7 @@ ep2_tournament_events.2004 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss } @@ -8278,7 +8259,7 @@ ep2_tournament_events.2004 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss craven = minor_stress_impact_gain brave = minor_stress_impact_loss @@ -8345,7 +8326,7 @@ ep2_tournament_events.2004 = { activity_tournament_change_contestant_score_effect = { SCORE = decrease_minor } - stress_impact = { + stress_and_fulfillment_impact = { craven = minor_stress_impact_gain brave = minor_stress_impact_loss } @@ -8411,13 +8392,13 @@ ep2_tournament_events.2005 = { option = { name = ep2_tournament_events.2005.a trigger = { - OR = { - has_trait = rakish - has_trait = seducer - has_trait = lustful - } - NOT = { - has_trait = chaste + has_lustful_adjacent_trait_trigger = yes + might_cheat_on_every_partner_trigger = yes + scope:versus_contestant = { + OR = { + might_cheat_on_every_partner_trigger = yes + is_spouse_or_romantic_partner_of_root = yes + } } } @@ -8428,7 +8409,7 @@ ep2_tournament_events.2005 = { activity_tournament_change_contestant_score_effect = { SCORE = increase_minor } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss } @@ -8444,11 +8425,7 @@ ep2_tournament_events.2005 = { name = ep2_tournament_events.2005.b trigger = { - NOR = { - has_trait = rakish - has_trait = seducer - has_trait = lustful - } + has_lustful_adjacent_trait_trigger = no } random_list = { @@ -8490,7 +8467,10 @@ ep2_tournament_events.2005 = { modifier = { add = -100 scope:versus_contestant = { - has_trait = celibate + NOR = { + might_cheat_on_every_partner_trigger = yes + is_spouse_or_romantic_partner_of_root = yes + } } } @@ -8500,7 +8480,7 @@ ep2_tournament_events.2005 = { right_icon = scope:versus_contestant } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss lustful = minor_stress_impact_loss arrogant = minor_stress_impact_loss @@ -8535,7 +8515,7 @@ ep2_tournament_events.2005 = { right_icon = scope:versus_contestant } - stress_impact = { + stress_and_fulfillment_impact = { lustful = minor_stress_impact_gain stubborn = minor_stress_impact_gain arrogant = minor_stress_impact_gain @@ -8563,7 +8543,7 @@ ep2_tournament_events.2005 = { right_icon = scope:versus_contestant } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain lustful = medium_stress_impact_gain arrogant = medium_stress_impact_gain @@ -8571,7 +8551,7 @@ ep2_tournament_events.2005 = { } } - stress_impact = { + stress_and_fulfillment_impact = { chaste = major_stress_impact_gain celibate = massive_stress_impact_gain } @@ -8595,7 +8575,7 @@ ep2_tournament_events.2005 = { activity_tournament_change_contestant_score_effect = { SCORE = increase_medium } - stress_impact = { + stress_and_fulfillment_impact = { just = medium_stress_impact_gain deceitful = minor_stress_impact_loss arbitrary = minor_stress_impact_loss @@ -8804,7 +8784,7 @@ ep2_tournament_events.2007 = { OPINION = 0 } - stress_impact = { + stress_and_fulfillment_impact = { wrathful = miniscule_stress_impact_loss ambitious = miniscule_stress_impact_loss deceitful = miniscule_stress_impact_loss @@ -8882,7 +8862,7 @@ ep2_tournament_events.2007 = { } } - stress_impact = { + stress_and_fulfillment_impact = { stubborn = miniscule_stress_impact_loss diligent = miniscule_stress_impact_loss fickle = medium_stress_impact_gain @@ -8924,7 +8904,7 @@ ep2_tournament_events.2007 = { opinion = 20 } - stress_impact = { + stress_and_fulfillment_impact = { honest = minor_stress_impact_loss just = minor_stress_impact_loss arbitrary = medium_stress_impact_gain @@ -9275,7 +9255,7 @@ ep2_tournament_events.2502 = { } } - stress_impact = { + stress_and_fulfillment_impact = { craven = medium_stress_impact_gain impatient = minor_stress_impact_loss } @@ -9310,7 +9290,7 @@ ep2_tournament_events.2502 = { name = ep2_tournament_events.2502.c tournament_contest_versus_resignation_effect = { RESIGNER = root CONTEST = wrestling SKILL = pugilism } - stress_impact = { + stress_and_fulfillment_impact = { craven = medium_stress_impact_loss brave = medium_stress_impact_gain content = minor_stress_impact_loss @@ -9422,7 +9402,7 @@ ep2_tournament_events.2503 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss vengeful = minor_stress_impact_gain wrathful = minor_stress_impact_gain @@ -9686,7 +9666,7 @@ ep2_tournament_events.2504 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss vengeful = minor_stress_impact_gain wrathful = minor_stress_impact_gain @@ -9721,7 +9701,7 @@ ep2_tournament_events.2504 = { tournament_contest_versus_resignation_effect = { RESIGNER = root CONTEST = wrestling SKILL = pugilism } - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss vengeful = minor_stress_impact_gain wrathful = minor_stress_impact_gain @@ -9806,8 +9786,11 @@ ep2_tournament_events.2506 = { tags = { bad } score = 10 character = root - death = { - death_reason = death_tournament_roundhouse + + root = { + death = { + death_reason = death_tournament_roundhouse + } } } } @@ -9909,7 +9892,7 @@ ep2_tournament_events.2507 = { activity_tournament_change_contestant_score_effect = { SCORE = increase_major } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss } @@ -9945,7 +9928,7 @@ ep2_tournament_events.2507 = { opinion = 10 } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_loss sadistic = minor_stress_impact_gain } @@ -10070,14 +10053,11 @@ scripted_trigger tournament_events_3501_knight_trigger = { can_be_knight_trigger = { ARMY_OWNER = root } # CAN be a knight... is_knight = no #...but isn't currently is_landed = no #is not landed, to avoid taking anyone good - NOR = { #is not employed, to avoid taking anyone useful - has_council_position = councillor_spouse - has_council_position = councillor_marshal - has_council_position = councillor_court_chaplain - has_council_position = councillor_steward - has_council_position = councillor_spymaster - } + is_councillor = no this != root #isn't you, or the either knight + NOT = { is_courtier_of = root } + NOT = { exists = inspiration.inspiration_sponsor } + is_diarch = no } # Two young knights vie for your attention @@ -10246,13 +10226,15 @@ ep2_tournament_events.3501 = { target = scope:knight1 } } - send_interface_toast = { - title = ep2_tournament_events.knight_1_wins - left_icon = root - right_icon = scope:knight1 - add_courtier = scope:knight1 - scope:knight1 = { - accolade_minor_glory_gain_with_checks_effect = yes + root = { + send_interface_toast = { + title = ep2_tournament_events.knight_1_wins + left_icon = root + right_icon = scope:knight1 + add_courtier = scope:knight1 + scope:knight1 = { + accolade_minor_glory_gain_with_checks_effect = yes + } } } } @@ -10272,13 +10254,15 @@ ep2_tournament_events.3501 = { target = scope:knight2 } } - send_interface_toast = { - title = ep2_tournament_events.knight_2_wins - left_icon = root - right_icon = scope:knight2 - add_courtier = scope:knight2 - scope:knight2 = { - accolade_minor_glory_gain_with_checks_effect = yes + root = { + send_interface_toast = { + title = ep2_tournament_events.knight_2_wins + left_icon = root + right_icon = scope:knight2 + add_courtier = scope:knight2 + scope:knight2 = { + accolade_minor_glory_gain_with_checks_effect = yes + } } } } @@ -10388,19 +10372,22 @@ ep2_tournament_events.3502 = { } if = { - limit = { activity_is_competing_trigger = yes} + limit = { activity_is_competing_trigger = yes } activity_tournament_change_contestant_score_effect = { SCORE = increase_minor } } add_prestige = medium_prestige_loss - progress_towards_rival_effect = { - REASON = rival_quintain_collapse_blame - CHARACTER = scope:mayor - OPINION = default_rival_opinion + if = { + limit = { scope:mayor != root } + progress_towards_rival_effect = { + REASON = rival_quintain_collapse_blame + CHARACTER = scope:mayor + OPINION = default_rival_opinion + } } - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_gain calm = minor_stress_impact_gain wrathful = miniscule_stress_impact_loss @@ -10437,7 +10424,7 @@ ep2_tournament_events.3502 = { opinion = -30 } - stress_impact = { + stress_and_fulfillment_impact = { forgiving = medium_stress_impact_gain } @@ -10469,7 +10456,7 @@ ep2_tournament_events.3502 = { } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain generous = miniscule_stress_impact_loss } @@ -10493,7 +10480,7 @@ ep2_tournament_events.3502 = { opinion = 20 } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_gain humble = miniscule_stress_impact_loss } @@ -10768,7 +10755,7 @@ ep2_tournament_events.3503 = { OPINION = default_friend_opinion } - stress_impact = { + stress_and_fulfillment_impact = { sadistic = medium_stress_impact_gain callous = medium_stress_impact_gain } @@ -10801,7 +10788,7 @@ ep2_tournament_events.3503 = { activity_tournament_change_contestant_score_effect = { SCORE = decrease_major } } - stress_impact = { + stress_and_fulfillment_impact = { base = major_stress_impact_loss compassionate = minor_stress_impact_gain } @@ -10983,7 +10970,7 @@ ep2_tournament_events.4001 = { add_prestige = medium_prestige_gain - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_gain fickle = minor_stress_impact_gain stubborn = minor_stress_impact_loss @@ -11012,7 +10999,7 @@ ep2_tournament_events.4001 = { add_prestige = medium_prestige_gain - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain fickle = minor_stress_impact_gain stubborn = minor_stress_impact_loss @@ -11027,7 +11014,7 @@ ep2_tournament_events.4001 = { tournament_contest_versus_resignation_effect = { RESIGNER = root CONTEST = joust SKILL = horse } - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss brave = minor_stress_impact_gain craven = minor_stress_impact_loss @@ -11133,7 +11120,7 @@ ep2_tournament_events.4002 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss ambitious = minor_stress_impact_gain } @@ -11156,7 +11143,7 @@ ep2_tournament_events.4002 = { activity_tournament_change_contestant_score_effect = { SCORE = increase_minor } - stress_impact = { + stress_and_fulfillment_impact = { just = miniscule_stress_impact_loss compassionate = miniscule_stress_impact_loss callous = minor_stress_impact_gain @@ -11180,7 +11167,7 @@ ep2_tournament_events.4002 = { activity_tournament_change_contestant_score_effect = { SCORE = increase_major } - stress_impact = { + stress_and_fulfillment_impact = { just = minor_stress_impact_gain brave = minor_stress_impact_gain } @@ -11244,7 +11231,7 @@ ep2_tournament_events.4003 = { add_prestige = minor_prestige_loss - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss ambitious = minor_stress_impact_gain just = minor_stress_impact_loss @@ -11306,7 +11293,7 @@ ep2_tournament_events.4003 = { } } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = minor_stress_impact_gain just = minor_stress_impact_loss craven = minor_stress_impact_loss @@ -11380,7 +11367,7 @@ ep2_tournament_events.4003 = { } } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = minor_stress_impact_loss just = minor_stress_impact_gain craven = minor_stress_impact_gain @@ -11491,7 +11478,7 @@ ep2_tournament_events.4004 = { add_prestige = minor_prestige_loss - stress_impact = { + stress_and_fulfillment_impact = { ambitious = medium_stress_impact_loss paranoid = medium_stress_impact_gain craven = minor_stress_impact_gain @@ -11556,7 +11543,7 @@ ep2_tournament_events.4004 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss } @@ -11681,7 +11668,7 @@ ep2_tournament_events.4005 = { add_prestige = medium_prestige_gain - stress_impact = { + stress_and_fulfillment_impact = { compassionate = medium_stress_impact_loss sadistic = medium_stress_impact_gain callous = medium_stress_impact_gain @@ -11738,7 +11725,7 @@ ep2_tournament_events.4005 = { } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = medium_stress_impact_gain sadistic = medium_stress_impact_loss callous = medium_stress_impact_loss @@ -11811,7 +11798,7 @@ ep2_tournament_events.4006 = { add_prestige = minor_prestige_gain - stress_impact = { + stress_and_fulfillment_impact = { compassionate = medium_stress_impact_loss sadistic = medium_stress_impact_gain callous = medium_stress_impact_gain @@ -11842,7 +11829,7 @@ ep2_tournament_events.4006 = { activity_tournament_change_contestant_score_effect = { SCORE = increase_medium } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = medium_stress_impact_gain sadistic = medium_stress_impact_loss callous = minor_stress_impact_loss @@ -11895,6 +11882,7 @@ ep2_tournament_events.4007 = { create_character = { location = root.location faith = scope:versus_contestant.faith + rite = scope:versus_contestant.rite culture = scope:versus_contestant.culture random_traits_list = { count = 1 @@ -11906,11 +11894,11 @@ ep2_tournament_events.4007 = { random_traits = yes gender_female_chance = { if = { - limit = { scope:versus_contestant.faith = { has_doctrine = doctrine_gender_male_dominated } } + limit = { scope:versus_contestant.rite = { rite_has_doctrine = doctrine_gender_male_dominated } } add = 0 } else_if = { - limit = { scope:versus_contestant.faith = { has_doctrine = doctrine_gender_female_dominated } } + limit = { scope:versus_contestant.rite = { rite_has_doctrine = doctrine_gender_female_dominated } } add = 100 } else = { @@ -11941,7 +11929,7 @@ ep2_tournament_events.4007 = { opinion = -30 } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss gregarious = medium_stress_impact_gain } @@ -12004,7 +11992,7 @@ ep2_tournament_events.4007 = { gold = minor_gold_value } - stress_impact = { + stress_and_fulfillment_impact = { just = medium_stress_impact_gain ambitious = minor_stress_impact_loss greedy = medium_stress_impact_gain @@ -12055,7 +12043,7 @@ ep2_tournament_events.4008 = { } immediate = { - play_sound_effect = "event:/DLC/EP2/SFX/Events/Grand_Activities/Tournaments/ConstructionKits/ep2_amb_2d_crowd_negative_reaction" + play_sound_effect = "event:/DLC/EP2/SFX/Ambience/2D/ep2_amb_2d_crowd_negative_reaction" contest_versus_player_vs_ai_scope_effect = yes tournament_pivotal_flavor_variable_effect = { CONTEST = joust ID = 4008 } scope:activity = { @@ -12117,7 +12105,7 @@ ep2_tournament_events.4008 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss } } @@ -12132,7 +12120,7 @@ ep2_tournament_events.4008 = { activity_tournament_change_contestant_score_effect = { SCORE = decrease_minor } - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_gain } } @@ -12194,7 +12182,7 @@ ep2_tournament_events.4008 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain } } @@ -12214,7 +12202,7 @@ ep2_tournament_events.4008 = { tournament_contest_versus_resignation_effect = { RESIGNER = root CONTEST = joust SKILL = horse } - stress_impact = { + stress_and_fulfillment_impact = { brave = medium_stress_impact_gain craven = minor_stress_impact_loss } @@ -12276,7 +12264,7 @@ ep2_tournament_events.4009 = { OPINION = default_rival_opinion } - stress_impact = { + stress_and_fulfillment_impact = { sadistic = minor_stress_impact_loss arrogant = minor_stress_impact_loss just = medium_stress_impact_loss @@ -12319,7 +12307,7 @@ ep2_tournament_events.4009 = { opinion = 30 } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_loss generous = minor_stress_impact_loss just = minor_stress_impact_loss @@ -12347,7 +12335,7 @@ ep2_tournament_events.4009 = { add_prestige = minor_prestige_loss - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_gain generous = minor_stress_impact_gain just = minor_stress_impact_gain @@ -12444,7 +12432,7 @@ ep2_tournament_events.5501 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss arrogant = minor_stress_impact_loss } @@ -12522,7 +12510,7 @@ ep2_tournament_events.5501 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss } } @@ -12538,7 +12526,7 @@ ep2_tournament_events.5501 = { activity_tournament_change_contestant_score_effect = { SCORE = decrease_minor } - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_gain } } @@ -12576,7 +12564,7 @@ ep2_tournament_events.5501 = { desc = ep2_tournament_events.5501.c.success - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss paranoid = major_stress_impact_loss #I KNEW IT! just = minor_stress_impact_loss @@ -12600,7 +12588,7 @@ ep2_tournament_events.5501 = { desc = ep2_tournament_events.5501.c.failure - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_gain paranoid = medium_stress_impact_gain just = medium_stress_impact_gain @@ -12724,7 +12712,7 @@ ep2_tournament_events.5502 = { desc = ep2_tournament_events.5502.c.success - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss gregarious = miniscule_stress_impact_loss just = minor_stress_impact_loss @@ -12753,7 +12741,7 @@ ep2_tournament_events.5502 = { desc = ep2_tournament_events.5502.c.failure - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_gain } } @@ -12779,7 +12767,7 @@ ep2_tournament_events.5502 = { OPINION = default_rival_opinion } - stress_impact = { + stress_and_fulfillment_impact = { gregarious = minor_stress_impact_gain just = medium_stress_impact_gain lazy = miniscule_stress_impact_loss @@ -12810,7 +12798,7 @@ ep2_tournament_events.5502 = { activity_tournament_change_contestant_score_effect = { SCORE = decrease_minor } } - stress_impact = { + stress_and_fulfillment_impact = { gregarious = miniscule_stress_impact_gain just = miniscule_stress_impact_gain honest = minor_stress_impact_gain @@ -12919,7 +12907,7 @@ ep2_tournament_events.5503 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss } @@ -12945,7 +12933,7 @@ ep2_tournament_events.5503 = { remove_short_term_gold = tiny_gold_value - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss greedy = major_stress_impact_gain generous = minor_stress_impact_loss @@ -12975,10 +12963,10 @@ ep2_tournament_events.5503 = { if = { limit = { - faith = { + rite = { NOR = { - trait_is_virtue = lustful - trait_is_sin = lustful + trait_is_virtue_rite = lustful + trait_is_sin_rite = lustful } } } @@ -12990,8 +12978,8 @@ ep2_tournament_events.5503 = { } else_if = { limit = { - faith = { - trait_is_sin = lustful + rite = { + trait_is_sin_rite = lustful } } add_piety = medium_piety_loss @@ -13031,7 +13019,7 @@ ep2_tournament_events.5503 = { desc = ep2_tournament_events.5503.d.win - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss deceitful = minor_stress_impact_loss } @@ -13052,7 +13040,7 @@ ep2_tournament_events.5503 = { desc = ep2_tournament_events.5503.d.lose - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain arrogant = minor_stress_impact_gain shy = minor_stress_impact_gain @@ -13071,7 +13059,7 @@ ep2_tournament_events.5503 = { activity_tournament_change_contestant_score_effect = { SCORE = decrease_medium } - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_gain arrogant = minor_stress_impact_gain shy = minor_stress_impact_gain @@ -13192,7 +13180,7 @@ ep2_tournament_events.5504 = { desc = ep2_tournament_events.5504.a.success - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss brave = miniscule_stress_impact_loss } @@ -13225,7 +13213,7 @@ ep2_tournament_events.5504 = { desc = ep2_tournament_events.5504.a.failure - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_gain craven = medium_stress_impact_gain } @@ -13244,7 +13232,7 @@ ep2_tournament_events.5504 = { activity_tournament_change_contestant_score_effect = { SCORE = decrease_minor } - stress_impact = { + stress_and_fulfillment_impact = { brave = medium_stress_impact_gain shy = miniscule_stress_impact_loss craven = minor_stress_impact_loss @@ -13417,7 +13405,7 @@ ep2_tournament_events.5505 = { } } - stress_impact = { + stress_and_fulfillment_impact = { chaste = medium_stress_impact_gain celibate = medium_stress_impact_gain sadistic = minor_stress_impact_loss @@ -13481,7 +13469,7 @@ ep2_tournament_events.5505 = { } } - stress_impact = { + stress_and_fulfillment_impact = { sadistic = minor_stress_impact_loss arrogant = minor_stress_impact_loss gregarious = medium_stress_impact_gain @@ -13544,7 +13532,7 @@ ep2_tournament_events.5505 = { } } - stress_impact = { + stress_and_fulfillment_impact = { sadistic = minor_stress_impact_loss arrogant = minor_stress_impact_loss gregarious = medium_stress_impact_gain @@ -13584,7 +13572,7 @@ ep2_tournament_events.5505 = { opinion = -5 } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss } @@ -13642,7 +13630,7 @@ ep2_tournament_events.5505 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss sadistic = medium_stress_impact_loss gregarious = major_stress_impact_gain @@ -13691,7 +13679,7 @@ ep2_tournament_events.5505 = { } } - stress_impact = { + stress_and_fulfillment_impact = { sadistic = medium_stress_impact_gain arrogant = medium_stress_impact_gain compassionate = minor_stress_impact_loss @@ -13723,10 +13711,12 @@ ep2_tournament_events.5505 = { OPINION = default_rival_opinion } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = medium_stress_impact_gain humble = medium_stress_impact_gain gregarious = minor_stress_impact_gain + sadistic = minor_stress_impact_loss + arrogant = minor_stress_impact_loss } scope:activity = { @@ -13758,7 +13748,7 @@ ep2_tournament_events.5505 = { activity_tournament_change_contestant_score_effect = { SCORE = decrease_medium } - stress_impact = { + stress_and_fulfillment_impact = { sadistic = medium_stress_impact_gain arrogant = medium_stress_impact_gain compassionate = minor_stress_impact_loss @@ -13883,6 +13873,7 @@ ep2_tournament_events.4500 = { template = tournament_locale_character culture = root.location.culture faith = root.location.faith + rite = root.location.rite location = root.location gender_female_chance = root_soldier_female_chance save_scope_as = jockey1 @@ -13934,6 +13925,7 @@ ep2_tournament_events.4500 = { template = tournament_locale_character culture = root.location.culture faith = root.location.faith + rite = root.location.rite location = root.location gender_female_chance = root_soldier_female_chance save_scope_as = jockey2 @@ -13948,6 +13940,7 @@ ep2_tournament_events.4500 = { template = tournament_locale_character culture = root.location.culture faith = root.location.faith + rite = root.location.rite location = root.location gender_female_chance = root_soldier_female_chance save_scope_as = jockey3 @@ -14025,7 +14018,7 @@ ep2_tournament_events.6501 = { theme = tournament_contest left_portrait = { character = root - animation = bow_closed + scripted_animation = bow_closed } cooldown = { years = 1 } @@ -14105,7 +14098,7 @@ ep2_tournament_events.6501 = { desc = ep2_tournament_events.6501.a.tt.win - stress_impact = { + stress_and_fulfillment_impact = { arrogant = medium_stress_impact_loss shy = medium_stress_impact_gain brave = minor_stress_impact_loss @@ -14131,7 +14124,7 @@ ep2_tournament_events.6501 = { desc = ep2_tournament_events.6501.a.tt.lose - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain arrogant = major_stress_impact_gain } @@ -14145,7 +14138,7 @@ ep2_tournament_events.6501 = { character = root } } - stress_impact = { + stress_and_fulfillment_impact = { craven = minor_stress_impact_gain shy = minor_stress_impact_gain humble = minor_stress_impact_gain @@ -14191,7 +14184,7 @@ ep2_tournament_events.6501 = { desc = ep2_tournament_events.6501.b.tt.win - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_loss shy = minor_stress_impact_gain brave = miniscule_stress_impact_loss @@ -14217,7 +14210,7 @@ ep2_tournament_events.6501 = { desc = ep2_tournament_events.6501.b.tt.lose - stress_impact = { + stress_and_fulfillment_impact = { arrogant = medium_stress_impact_gain } } @@ -14238,7 +14231,7 @@ ep2_tournament_events.6501 = { # Leave it option = { name = ep2_tournament_events.6501.c - stress_impact = { + stress_and_fulfillment_impact = { stubborn = minor_stress_impact_gain arrogant = minor_stress_impact_gain ambitious = minor_stress_impact_gain @@ -14331,7 +14324,7 @@ ep2_tournament_events.6502 = { opinion = -40 } - stress_impact = { + stress_and_fulfillment_impact = { sadistic = miniscule_stress_impact_loss callous = miniscule_stress_impact_loss just = medium_stress_impact_gain @@ -14457,7 +14450,7 @@ ep2_tournament_events.6502 = { opinion = 20 } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = miniscule_stress_impact_loss generous = miniscule_stress_impact_loss just = miniscule_stress_impact_loss @@ -14497,7 +14490,7 @@ ep2_tournament_events.6502 = { add_prestige = minor_prestige_gain - stress_impact = { + stress_and_fulfillment_impact = { compassionate = miniscule_stress_impact_loss generous = miniscule_stress_impact_loss just = miniscule_stress_impact_loss @@ -14538,7 +14531,7 @@ ep2_tournament_events.6502 = { } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_gain } @@ -14641,7 +14634,7 @@ ep2_tournament_events.6503 = { CHARACTER = scope:competitor2 OPINION = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss arbitrary = minor_stress_impact_gain callous = minor_stress_impact_gain @@ -14677,7 +14670,7 @@ ep2_tournament_events.6503 = { CHARACTER = scope:competitor2 OPINION = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_gain greedy = minor_stress_impact_gain callous = minor_stress_impact_gain diff --git a/events/dlc/ep2/wedding_events/ep2_bloody_wedding_events.txt b/events/dlc/ep2/wedding_events/ep2_bloody_wedding_events.txt deleted file mode 100644 index b9d88167d..000000000 --- a/events/dlc/ep2/wedding_events/ep2_bloody_wedding_events.txt +++ /dev/null @@ -1,1857 +0,0 @@ -namespace = ep2_wedding - -# ON START - CEREMONY - BLOODY WEDDING - -ep2_wedding.0101 = { - type = activity_event - title = ep2_wedding.0101.t - desc = { - desc = ep2_wedding.0101.desc.intro - first_valid = { - triggered_desc = { - trigger = { root = scope:spouse_1 } - desc = ep2_wedding.0101.desc.spouse - } - triggered_desc = { - trigger = { has_any_bad_relationship_with_character_trigger = { CHARACTER = scope:spouse_2 } } - desc = ep2_wedding.0101.desc.bad - } - triggered_desc = { - trigger = { has_any_good_relationship_with_character_trigger = { CHARACTER = scope:spouse_2 } } - desc = ep2_wedding.0101.desc.good - } - } - } - - theme = bloody_wedding_ceremony - left_portrait = { - character = root - animation = schadenfreude - } - right_portrait = { - character = scope:spouse_2 - animation = admiration - } - - immediate = { - play_sound_effect = "event:/DLC/EP2/SFX/Events/Grand_Activities/Feasts/ep2_event_grand_murder_feast" - scope:activity.special_guest:spouse_1 = { save_scope_as = spouse_1 } - scope:activity.var:spouse_2_var = { save_scope_as = spouse_2 } - random_dummy_gender_soldier_effect = { SCOPE_NAME = dummy_gender } #for loc - } - - option = { #kill all of them - name = { - trigger = { scope:spouse_2 = { is_lowborn = no } } - text = ep2_wedding.0101.a - } - name = { - trigger = { scope:spouse_2 = { is_lowborn = yes } } - text = ep2_wedding.0101.a_lowborn - } - custom_tooltip = ep2_wedding.0101.a.tt - set_variable = { - name = bloody_wedding_murder - value = flag:family - years = 1 - } - ai_chance = { - base = 100 - modifier = { - OR = { - has_trait = arbitrary - has_trait = paranoid - has_trait = deceitful - has_trait = wrathful - has_trait = vengeful - has_trait = callous - has_trait = sadistic - } - NOT = { has_trait = calm } - add = 50 - } - modifier = { - OR = { - has_trait = calm - has_trait = compassionate - has_trait = forgiving - has_trait = just - has_trait = honest - } - add = -50 - } - } - } - - option = { #kill only the spouse - name = ep2_wedding.0101.b - custom_tooltip = ep2_wedding.0101.a.tt - set_variable = { - name = bloody_wedding_murder - value = flag:solo - years = 1 - } - ai_chance = { - base = 100 - modifier = { - OR = { - has_trait = just - has_trait = brave - has_trait = temperate - has_trait = impatient - } - NOT = { has_trait = wrathful } - add = 50 - } - } - } - - option = { #kill only the spouse - during OUR wedding night - name = ep2_wedding.0101.c - custom_tooltip = ep2_wedding.0101.c.tt - trigger = { - root = scope:spouse_1 - scope:spouse_2 = { is_ai = yes } #too complex to account for this if it's a player - NOT = { - scope:activity = { - any_attending_character = { - is_close_or_extended_family_of = scope:spouse_2 - is_ai = no - } - } - } - } - set_variable = { - name = bloody_wedding_murder - value = flag:spouse - years = 1 - } - ai_chance = { - base = 100 - modifier = { - OR = { - has_trait = just - has_trait = brave - has_trait = patient - has_trait = craven - } - add = 50 - } - } - } - - option = { #back down - name = ep2_wedding.0101.d - custom_tooltip = ep2_wedding.0101.d.tt - set_variable = { - name = bloody_wedding_backed_down_var - years = 1 - } - ai_chance = { - base = 10 #unlikely to back down once it's started - modifier = { #UNLESS - OR = { - has_trait = calm - has_trait = compassionate - has_trait = forgiving - has_trait = just - has_trait = honest - } - has_any_good_relationship_with_character_trigger = { CHARACTER = scope:spouse_2 } - add = 200 - } - } - } -} - -# ON COMPLETE BANQUET - MASSACRE - BLOODY WEDDING - KILL EVERYONE - -scripted_trigger ep2_wedding_0202_valid_family_member_trigger = { - is_close_or_extended_family_of = scope:spouse_2 - this != root - is_close_family_or_spouse_of_root_trigger = no - this != scope:spouse_2 -} - -ep2_wedding.0202 = { - type = activity_event - title = { - first_valid = { - triggered_desc = { - trigger = { - root = scope:spouse_1 - } - desc = ep2_wedding.0202.t.spouse - } - triggered_desc = { - desc = ep2_wedding.0202.t - } - } - } - desc = { - desc = ep2_wedding.0202.desc.intro - random_valid = { - triggered_desc = { - trigger = { #compassionate - OR = { - has_trait = compassionate - has_trait = forgiving - } - } - desc = ep2_wedding.0202.desc.compassionate - } - triggered_desc = { #paranoid - trigger = { - has_trait = paranoid - } - desc = ep2_wedding.0202.desc.paranoid - } - triggered_desc = { #zealous - trigger = { - has_trait = zealous - } - desc = ep2_wedding.0202.desc.zealous - } - triggered_desc = { #sadistic - trigger = { - OR = { - has_trait = sadistic - has_trait = callous - has_trait = torturer - } - } - desc = ep2_wedding.0202.desc.sadistic - } - triggered_desc = { #cannibal - trigger = { - is_cannibal_trigger = yes - } - desc = ep2_wedding.0202.desc.cannibal - } - triggered_desc = { #craven - trigger = { - has_trait = craven - } - desc = ep2_wedding.0202.desc.craven - } - triggered_desc = { #arrogant - trigger = { - OR = { - has_trait = ambitious - has_trait = arrogant - } - NOT = { has_trait = humble } - } - desc = ep2_wedding.0202.desc.arrogant - } - triggered_desc = { #lazy - trigger = { - has_trait = lazy - } - desc = ep2_wedding.0202.desc.lazy - } - triggered_desc = { #just - trigger = { - OR = { - has_trait = just - has_trait = honest - } - } - desc = ep2_wedding.0202.desc.just - } - triggered_desc = { #wrathful - trigger = { - OR = { - has_trait = wrathful - has_trait = stubborn - has_trait = vengeful - } - NOT = { has_trait = calm } - } - desc = ep2_wedding.0202.desc.wrathful - } - desc = ep2_wedding.0202.desc.fallback - } - desc = ep2_wedding.0202.desc.outro - } - - theme = bloody_wedding_banquet - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_trait = compassionate - has_trait = forgiving - has_trait = calm - has_trait = craven - } - } - animation = worry - } - animation = schadenfreude - } - center_portrait = { - character = scope:mercenary_1 - animation = aggressive_sword - } - right_portrait = { - character = scope:spouse_2 - animation = fear - } - lower_center_portrait = { - trigger = { exists = scope:entourage_1 } - character = scope:entourage_1 - } - lower_right_portrait = { - trigger = { exists = scope:entourage_2 } - character = scope:entourage_2 - } - lower_left_portrait = { - trigger = { exists = scope:entourage_3 } - character = scope:entourage_3 - } - cooldown = { years = 3 } #so you don't get it again and again - - trigger = { - exists = scope:activity - var:bloody_wedding_murder ?= flag:family - } - - immediate = { - play_sound_effect = "event:/DLC/EP2/SFX/Events/Grand_Activities/Feasts/ep2_event_grand_murder_feast" - scope:activity.special_guest:spouse_1 = { save_scope_as = spouse_1 } - scope:activity.var:spouse_2_var = { save_scope_as = spouse_2 } - random_dummy_gender_soldier_effect = { SCOPE_NAME = dummy_gender } #for loc - hidden_effect = { - create_character = { - template = mercenary - dynasty = none - location = root.location - culture = root.location.culture - faith = root.location.faith - gender_female_chance = root_soldier_female_chance - save_scope_as = mercenary_1 - } - create_character = { #random peasant is present so the whole activity doesn't cancel - template = servant_character - dynasty = none - location = root.location - culture = root.location.culture - faith = root.location.faith - gender_female_chance = 50 - save_scope_as = shocked_rob - } - scope:shocked_rob = { - add_to_activity = scope:activity - } - } - if = { - limit = { - scope:activity = { - any_attending_character = { - ep2_wedding_0202_valid_family_member_trigger = yes - } - } - } - scope:activity = { - random_attending_character = { - limit = { - ep2_wedding_0202_valid_family_member_trigger = yes - } - save_scope_as = entourage_1 - } - random_attending_character = { - limit = { - ep2_wedding_0202_valid_family_member_trigger = yes - this != scope:entourage_1 - } - save_scope_as = entourage_2 - } - random_attending_character = { - limit = { - ep2_wedding_0202_valid_family_member_trigger = yes - this != scope:entourage_1 - this != scope:entourage_2 - } - save_scope_as = entourage_3 - } - } - } - } - - option = { - name = { - trigger = { scope:spouse_2 = { is_lowborn = no } } - text = ep2_wedding.0202.a - } - name = { - trigger = { scope:spouse_2 = { is_lowborn = yes } } - text = ep2_wedding.0202.a.lowborn - } - if = { - limit = { scope:spouse_2 = { is_ai = no } } - scope:spouse_2 = { trigger_event = ep2_wedding.0204 } - } - else_if = { - limit = { - scope:activity = { - any_attending_character = { - ep2_wedding_0202_valid_family_member_trigger = yes - is_ai = no #there's a player family member - } - } - } - scope:activity = { - every_attending_character = { - limit = { - ep2_wedding_0202_valid_family_member_trigger = yes - is_ai = no #there's a player family member - } - trigger_event = ep2_wedding.0204 - } - } - } - else = { - if = { - limit = { - scope:activity = { - any_attending_character = { - ep2_wedding_0202_valid_family_member_trigger = yes - } - } - } - scope:activity = { - every_attending_character = { - limit = { - ep2_wedding_0202_valid_family_member_trigger = yes - } - custom = every_attending_relative_of_spouse_2 - death = { - death_reason = death_bloody_wedding - } - } - } - } - show_as_tooltip = { #we wanna show this - scope:spouse_2 = { - death = { death_reason = death_bloody_wedding } - scope:host = { - add_secret = { - type = secret_murder - target = scope:spouse_2 - } - } - } - } - hidden_effect = { #this does the effect - unknown_murder_effect = { - VICTIM = scope:spouse_2 - MURDERER = root - REASON = death_bloody_wedding - } - } - create_character_memory = { - type = grand_wedding_massacre - participants = { - spouse_1 = scope:spouse_1 - spouse_2 = scope:spouse_2 - } - } - } - } - - after = { - if = { - limit = { is_ai = yes } - scope:mercenary_1 = { silent_disappearance_effect = yes } - } - hidden_effect = { - scope:activity = { progress_activity_phase_after = { days = 1 } } - } - } -} - -# ON COMPLETE BANQUET - MASSACRE - BLOODY WEDDING - KILL THE SPOUSE -ep2_wedding.0203 = { - type = activity_event - title = { - first_valid = { - triggered_desc = { - trigger = { - root = scope:spouse_1 - } - desc = ep2_wedding.0203.t.spouse - } - triggered_desc = { - desc = ep2_wedding.0203.t - } - } - } - desc = { - desc = ep2_wedding.0203.desc.intro - random_valid = { - triggered_desc = { - trigger = { #compassionate - OR = { - has_trait = compassionate - has_trait = forgiving - } - } - desc = ep2_wedding.0203.desc.compassionate - } - triggered_desc = { #paranoid - trigger = { - has_trait = paranoid - } - desc = ep2_wedding.0203.desc.paranoid - } - triggered_desc = { #zealous - trigger = { - has_trait = zealous - } - desc = ep2_wedding.0203.desc.zealous - } - triggered_desc = { #sadistic - trigger = { - OR = { - has_trait = sadistic - has_trait = callous - has_trait = torturer - } - } - desc = ep2_wedding.0203.desc.sadistic - } - triggered_desc = { #cannibal - trigger = { - is_cannibal_trigger = yes - } - desc = ep2_wedding.0203.desc.cannibal - } - triggered_desc = { #craven - trigger = { - has_trait = craven - } - desc = ep2_wedding.0203.desc.craven - } - triggered_desc = { #arrogant - trigger = { - OR = { - has_trait = ambitious - has_trait = arrogant - } - NOT = { has_trait = humble } - } - desc = ep2_wedding.0203.desc.arrogant - } - triggered_desc = { #just - trigger = { - OR = { - has_trait = just - has_trait = honest - } - } - desc = ep2_wedding.0203.desc.just - } - triggered_desc = { #wrathful - trigger = { - OR = { - has_trait = wrathful - has_trait = stubborn - has_trait = vengeful - } - NOT = { has_trait = calm } - } - desc = ep2_wedding.0203.desc.wrathful - } - desc = ep2_wedding.0203.desc.fallback - } - desc = ep2_wedding.0203.desc.outro - } - theme = bloody_wedding_banquet - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_trait = compassionate - has_trait = forgiving - has_trait = calm - has_trait = craven - } - } - animation = worry - } - animation = schadenfreude - } - center_portrait = { - character = scope:my_agent - animation = aggressive_dagger - } - right_portrait = { - character = scope:spouse_2 - animation = shock - } - cooldown = { years = 3 } #so you don't get it again and again - - trigger = { - exists = scope:activity - var:bloody_wedding_murder ?= flag:solo - } - - immediate = { - play_sound_effect = "event:/DLC/EP2/SFX/Events/Grand_Activities/Feasts/ep2_event_grand_murder_feast" - scope:activity.special_guest:spouse_1 = { save_scope_as = spouse_1 } - scope:activity.var:spouse_2_var = { save_scope_as = spouse_2 } - #save scopes for the celebration_spy_character template - location.faith = { - save_scope_as = guest_faith - } - location.culture = { - save_scope_as = guest_culture - } - hidden_effect = { - create_character = { - template = celebration_spy_character - dynasty = none - location = root.location - gender_female_chance = root_soldier_female_chance - save_scope_as = my_agent - } - } - } - - option = { - name = ep2_wedding.0203.a - if = { - limit = { scope:spouse_2 = { is_ai = no } } - scope:spouse_2 = { trigger_event = ep2_wedding.0204 } - } - else = { - show_as_tooltip = { #we wanna show this - scope:spouse_2 = { - death = { death_reason = death_bloody_wedding } - add_secret = { - type = secret_murder - target = scope:spouse_2 - } - } - } - hidden_effect = { #this does the effect - unknown_murder_effect = { - VICTIM = scope:spouse_2 - MURDERER = root - REASON = death_bloody_wedding - } - } - create_character_memory = { - type = grand_wedding_solo_kill - participants = { - spouse_1 = scope:spouse_1 - spouse_2 = scope:spouse_2 - } - } - } - } - - after = { - if = { - limit = { is_ai = yes } - scope:my_agent = { silent_disappearance_effect = yes } - } - hidden_effect = { - scope:activity = { progress_activity_phase_after = { days = 1 } } - } - } -} - -# ON START WNIGHT - MASSACRE - BLOODY WEDDING - WEDDING NIGHT KILL - -ep2_wedding.3060 = { - type = activity_event - title = ep2_wedding.3060.t - desc = ep2_wedding.3060.desc - theme = wedding_night_activity - left_portrait = { - character = root - animation = flirtation_left - } - right_portrait = { - character = scope:spouse_2 - animation = flirtation - } - - cooldown = { years = 3 } - - immediate = { - play_sound_effect = "event:/DLC/EP2/SFX/Events/Grand_Activities/Feasts/ep2_event_grand_murder_feast" - scope:activity.special_guest:spouse_1 = { save_scope_as = spouse_1 } - scope:activity.var:spouse_2_var = { save_scope_as = spouse_2 } - } - - #Go for it - option = { - name = ep2_wedding.3060.a - duel = { - skill = prowess - target = scope:spouse_2 - 65 = { #you kill them - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = ep2_wedding.3060.a.success - send_interface_toast = { - left_icon = scope:spouse_2 - title = ep2_wedding.3060.a.success - unknown_murder_effect = { - VICTIM = scope:spouse_2 - MURDERER = root - REASON = death_mysterious - } - } - create_character_memory = { - type = grand_wedding_solo_kill - participants = { - spouse_1 = scope:spouse_1 - spouse_2 = scope:spouse_2 - } - } - give_nickname = nick_the_just_widowed - } - 35 = { #they survive - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = ep2_wedding.3060.a.failure - send_interface_toast = { - left_icon = scope:spouse_2 - title = ep2_wedding.3060.a.failure - scope:spouse_2 = { - add_opinion = { - target = root - modifier = suspicion_opinion - opinion = -50 - } - } - } - set_variable = bloody_murder_fail - } - } - stress_impact = { - calm = medium_stress_impact_gain - craven = medium_stress_impact_gain - compassionate = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = craven - has_trait = compassionate - has_trait = calm - } - } - } - } - - #Offer some drink (poisoned) - option = { - name = ep2_wedding.3060.b - trigger = { - OR = { - has_trait = lifestyle_herbalist - has_trait = witch - has_trait = lifestyle_physician - has_trait = whole_of_body - has_trait = lifestyle_gardener - has_trait = schemer - } - } - duel = { - skill = intrigue - target = scope:spouse_2 - 80 = { #you kill them - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = ep2_wedding.3060.b.success - send_interface_toast = { - left_icon = scope:spouse_2 - title = ep2_wedding.3060.b.success - unknown_murder_effect = { - VICTIM = scope:spouse_2 - MURDERER = root - REASON = death_mysterious - } - } - create_character_memory = { - type = grand_wedding_solo_kill - participants = { - spouse_1 = scope:spouse_1 - spouse_2 = scope:spouse_2 - } - } - give_nickname = nick_the_just_widowed - } - 20 = { #they survive - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = ep2_wedding.3060.b.failure - send_interface_toast = { - left_icon = scope:spouse_2 - title = ep2_wedding.3060.b.failure - scope:spouse_2 = { - add_opinion = { - target = root - modifier = suspicion_opinion - opinion = -50 - } - } - } - set_variable = bloody_murder_fail - } - } - stress_impact = { - impatient = medium_stress_impact_gain - wrathful = medium_stress_impact_gain - compassionate = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = impatient - has_trait = wrathful - has_trait = compassionate - } - } - } - } - - #Cut their throat - option = { - name = ep2_wedding.3060.c - flavor = ep2_wedding.3060.c.flavor - trigger = { - OR = { - has_trait = lifestyle_hunter - has_trait = torturer - has_trait = lifestyle_blademaster - has_trait = kinslayer - has_trait = aggressive_attacker - has_trait = murderer - has_trait = wrathful - has_trait = deceitful - has_trait = sadistic - has_trait = callous - } - } - duel = { - skills = { prowess intrigue } - target = scope:spouse_2 - 80 = { #you kill them - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = ep2_wedding.3060.c.success - send_interface_toast = { - left_icon = scope:spouse_2 - title = ep2_wedding.3060.c.success - unknown_murder_effect = { - VICTIM = scope:spouse_2 - MURDERER = root - REASON = death_mysterious - } - } - create_character_memory = { - type = grand_wedding_solo_kill - participants = { - spouse_1 = scope:spouse_1 - spouse_2 = scope:spouse_2 - } - } - give_nickname = nick_the_just_widowed - } - 20 = { #they survive - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = ep2_wedding.3060.c.failure - send_interface_toast = { - left_icon = scope:spouse_2 - title = ep2_wedding.3060.c.failure - scope:spouse_2 = { - add_opinion = { - target = root - modifier = suspicion_opinion - opinion = -50 - } - } - } - set_variable = bloody_murder_fail - } - } - stress_impact = { - compassionate = medium_stress_impact_gain - craven = medium_stress_impact_gain - calm = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = compassionate - has_trait = craven - has_trait = calm - } - } - } - } - - #I actually like this person - option = { - name = ep2_wedding.3060.d - if = { - limit = { - scope:spouse_2 = { has_any_fertility_relationship_with_root_trigger = no } - } - set_relation_wedding_good_fertility = scope:spouse_2 - } - progress_towards_lover_effect = { - CHARACTER = scope:spouse_2 - REASON = lover_romantic_wedding_night - OPINION = 20 - } - had_sex_with_effect = { - CHARACTER = scope:spouse_2 - PREGNANCY_CHANCE = pregnancy_chance - } - set_variable = { - name = bloody_wedding_backed_down_var - years = 1 - } - stress_impact = { - callous = medium_stress_impact_gain - sadistic = medium_stress_impact_gain - wrathful = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = callous - has_trait = sadistic - has_trait = wrathful - } - } - } - } - - after = { - hidden_effect = { - scope:activity = { progress_activity_phase_after = { days = 1 } } - } - remove_character_flag = is_naked - scope:spouse_2 = { - remove_character_flag = is_naked - } - } -} - -# ON START WNIGHT - THE CLEANING UP - BLOODY WEDDING - HOST -ep2_wedding.0301 = { - type = activity_event - title = ep2_wedding.0301.t - desc = { - first_valid = { - triggered_desc = { #Your mercenaries killed everyone - trigger = { - var:bloody_wedding_murder ?= flag:family - } - desc = ep2_wedding.0301.desc.family - } - triggered_desc = { #Agent killed the spouse - trigger = { - var:bloody_wedding_murder ?= flag:solo - } - desc = ep2_wedding.0301.desc.agent - } - triggered_desc = { #Spouse died during the wedding night - trigger = { - var:bloody_wedding_murder ?= flag:spouse - } - desc = ep2_wedding.0301.desc.wedding_night - } - } - first_valid = { - triggered_desc = { #You're the spouse - wedding night kill - trigger = { - scope:spouse_1 = root - var:bloody_wedding_murder ?= flag:spouse - } - desc = ep2_wedding.0301.spouse_wnight - } - triggered_desc = { #You're the spouse - trigger = { - scope:spouse_1 = root - } - desc = ep2_wedding.0301.spouse - } - desc = ep2_wedding.0301.non_spouse #you're not the spouse - } - } - theme = bloody_wedding_banquet - left_portrait = { - character = root - triggered_animation = { - trigger = { - this = scope:spouse_1 - } - animation = grief - } - animation = schadenfreude - } - center_portrait = { - trigger = { exists = scope:shocked_guest } - character = scope:shocked_guest - animation = shock - } - right_portrait = { - trigger = { - root != scope:spouse_1 - } - character = scope:spouse_1 - animation = grief - } - lower_right_portrait = scope:spouse_2 - cooldown = { years = 3 } - - trigger = { - exists = scope:activity - } - - immediate = { - scope:activity.special_guest:spouse_1 = { save_scope_as = spouse_1 } - scope:activity.var:spouse_2_var = { save_scope_as = spouse_2 } - if = { - limit = { - scope:activity = { - any_attending_character = { - is_alive = yes - is_adult = yes - this != scope:activity.special_guest:spouse_1 - this != scope:spouse_2 - this != scope:host - } - } - } - scope:activity = { - random_attending_character = { - limit = { - is_alive = yes - is_adult = yes - this != scope:activity.special_guest:spouse_1 - this != scope:host - } - weight = { - base = 1 - modifier = { - add = -5 - is_close_family_or_spouse_of_root_trigger = yes - } - modifier = { - add = 2 - is_close_or_extended_family_of = scope:spouse_2 - } - } - save_scope_as = shocked_guest - } - } - } - } - - option = { #What a tragedy! - name = ep2_wedding.0301.a - scope:spouse_1 = { - remove_character_modifier = wedding_fertility_delay_modifier - } - } - - after = { - if = { - limit = { - this = scope:host - } - scope:host = { - save_scope_as = root_scope - trigger_event = ep2_wedding.0955 - } - } - scope:activity = { - every_attending_character = { - limit = { - this != scope:host - this != scope:spouse_1 - } - trigger_event = ep2_wedding.0956 - } - } - } -} - -# ON START - THE CLEANING UP - BLOODY WEDDING - SURVIVORS / this is the event where the guests realize it's a bloody wedding -ep2_wedding.0302 = { - type = activity_event - title = ep2_wedding.0302.t - desc = { - first_valid = { - triggered_desc = { #Host killed everyone - trigger = { - scope:host = { var:bloody_wedding_murder ?= flag:family } - } - desc = ep2_wedding.0302.desc.family - } - triggered_desc = { #Agent killed the spouse - trigger = { - scope:host = { var:bloody_wedding_murder ?= flag:solo } - } - desc = ep2_wedding.0302.desc.agent - } - triggered_desc = { #Spouse died during the wedding night - trigger = { - scope:host = { var:bloody_wedding_murder ?= flag:spouse } - } - desc = ep2_wedding.0302.desc.wedding_night - } - } - first_valid = { - triggered_desc = { #Spouse! - trigger = { - this = scope:spouse_1 - } - desc = ep2_wedding.0302.spouse - } - triggered_desc = { #Good relationship - trigger = { - has_any_good_relationship_with_character_trigger = { CHARACTER = scope:spouse_2 } - } - desc = ep2_wedding.0302.good - } - triggered_desc = { #Bad relationship - trigger = { - has_any_bad_relationship_with_character_trigger = { CHARACTER = scope:spouse_2 } - } - desc = ep2_wedding.0302.bad - } - triggered_desc = { #You admire the hustle - trigger = { - OR = { - has_trait = sadistic - has_trait = callous - has_trait = torturer - has_trait = vengeful - } - } - desc = ep2_wedding.0302.sadistic - } - desc = ep2_wedding.0302.indifferent - } - } - theme = bloody_wedding_banquet - left_portrait = { - character = root - animation = fear - } - right_portrait = { - character = scope:spouse_1 - animation = grief - } - lower_center_portrait = scope:spouse_2 - cooldown = { years = 3 } - override_sound = { reference = "event:/SFX/Events/Themes/sfx_event_theme_type_intrigue" } - - trigger = { - exists = scope:activity - } - - immediate = { - play_music_cue = mx_cue_murder - scope:activity.special_guest:spouse_1 = { save_scope_as = spouse_1 } - scope:activity.var:spouse_2_var = { save_scope_as = spouse_2 } - if = { - limit = { - scope:host = { var:bloody_wedding_murder ?= flag:family } - } - show_as_tooltip = { - scope:activity = { - every_attending_character = { - limit = { - OR = { - is_close_or_extended_family_of = scope:spouse_2 - this = scope:spouse_2 - } - } - custom = every_attending_relative_of_spouse_2 - death = { - death_reason = death_bloody_wedding - } - } - } - } - } - else_if = { - limit = { - scope:host = { - OR = { - var:bloody_wedding_murder ?= flag:solo - var:bloody_wedding_murder ?= flag:spouse - } - } - } - show_as_tooltip = { - scope:spouse_2 = { - death = { - death_reason = death_bloody_wedding - } - } - } - } - } - - option = { - name = ep2_wedding.0302.a - } -} - -# CONCLUSION - BLOODY WEDDING - HOST -ep2_wedding.0955 = { - type = activity_event - title = ep2_wedding.0955.t - desc = { - desc = ep2_wedding.0955.desc.intro - first_valid = { - triggered_desc = { #failed - you're spouses - trigger = { - has_variable = bloody_murder_fail - } - desc = ep2_wedding.0955.desc.failed - } - desc = ep2_wedding.0955.desc.murder - } - first_valid = { - triggered_desc = { #Good relationship - trigger = { - has_any_good_relationship_with_character_trigger = { CHARACTER = scope:spouse_2 } - NOT = { has_variable = bloody_murder_fail } - } - desc = ep2_wedding.0955.good - } - triggered_desc = { #Bad relationship - trigger = { - has_any_bad_relationship_with_character_trigger = { CHARACTER = scope:spouse_2 } - NOT = { has_variable = bloody_murder_fail } - } - desc = ep2_wedding.0955.bad - } - triggered_desc = { #Rejoice - trigger = { - OR = { - has_trait = sadistic - has_trait = callous - has_trait = torturer - has_trait = vengeful - } - NOT = { has_variable = bloody_murder_fail } - } - desc = ep2_wedding.0955.sadistic - } - triggered_desc = { #Repent, kinda - trigger = { - OR = { - has_trait = compassionate - has_trait = forgiving - has_trait = just - has_trait = trusting - } - NOT = { has_variable = bloody_murder_fail } - } - desc = ep2_wedding.0955.compassionate - } - triggered_desc = { #Meh - trigger = { NOT = { has_variable = bloody_murder_fail } } - desc = ep2_wedding.0955.indifferent - } - } - } - theme = bloody_wedding_banquet - left_portrait = { - character = root - triggered_animation = { - trigger = { has_variable = bloody_murder_fail } - animation = anger - } - animation = schadenfreude - } - right_portrait ={ - trigger = { scope:spouse_2 = { is_alive = yes } } - character = scope:spouse_2 - animation = schadenfreude - } - cooldown = { years = 3 } - - immediate = { - scope:activity.special_guest:spouse_1 = { save_scope_as = spouse_1 } - scope:activity.var:spouse_2_var = { save_scope_as = spouse_2 } - } - - option = { - name = { - trigger = { has_variable = bloody_murder_fail } - text = ep2_wedding.0955.a.failure - } - name = { - trigger = { NOT = { has_variable = bloody_murder_fail } } - text = ep2_wedding.0955.a - } - show_as_tooltip = { - disburse_murder_wedding_host_rewards = yes - } - #Stress rewards - stress_impact = { - paranoid = massive_stress_impact_loss - callous = massive_stress_impact_loss - sadistic = massive_stress_impact_loss - compassionate = massive_stress_impact_gain - just = massive_stress_impact_gain - calm = major_stress_impact_gain - } - - hidden_effect = { - if = { #if you haven't failed - limit = { - NOT = { has_variable = bloody_murder_fail } - } - trigger_event = { #cleans up the variables with enough delay for the guest events - id = ep2_wedding.0958 - days = 7 - } - if = { #if they have a parent they always send the letter unless they're too nice - limit = { - scope:activity.var:spouse_2_var = { - any_parent = { - is_available_ai_adult = yes - } - } - } - scope:activity.var:spouse_2_var = { - random_parent = { - limit = { - is_available_ai_adult = yes - } - save_scope_as = avenging_family - } - } - random = { - chance = 100 - modifier = { - add = -25 - OR = { - has_trait = compassionate - has_trait = forgiving - has_trait = calm - } - } - modifier = { - add = -25 - has_any_good_relationship_with_root_trigger = yes - } - modifier = { - add = 25 - has_any_bad_relationship_with_root_trigger = yes - } - trigger_event = { - id = ep2_wedding.0957 - days = 14 - } - } - } - else_if = { #if they have a close family member it's a random chance - limit = { - scope:activity.var:spouse_2_var = { - any_close_family_member = { - is_available_ai_adult = yes - NOT = { is_parent_of = scope:activity.var:spouse_2_var } - } - } - } - scope:activity.var:spouse_2_var = { - random_close_family_member = { - limit = { - is_available_ai_adult = yes - NOT = { is_parent_of = scope:activity.var:spouse_2_var } - } - save_scope_as = avenging_family - } - } - random = { - chance = 50 - modifier = { - add = 25 - OR = { - has_trait = vengeful - has_trait = wrathful - has_trait = callous - } - } - modifier = { - add = 25 - has_any_bad_relationship_with_root_trigger = yes - } - modifier = { - add = -25 - OR = { - has_trait = compassionate - has_trait = forgiving - has_trait = calm - } - } - modifier = { - add = -25 - has_any_good_relationship_with_root_trigger = yes - } - trigger_event = { - id = ep2_wedding.0957 - days = 14 - } - } - } - else_if = { #if they have an extended family member it's a a bit errr - limit = { - scope:activity.var:spouse_2_var = { - any_close_or_extended_family_member = { - is_available_ai_adult = yes - NOT = { is_close_family_of = scope:activity.var:spouse_2_var } - } - } - } - scope:activity.var:spouse_2_var = { - random_close_or_extended_family_member = { - limit = { - is_available_ai_adult = yes - NOT = { is_close_family_of = scope:activity.var:spouse_2_var } - } - save_scope_as = avenging_family - } - } - random = { - chance = 20 - modifier = { - add = 25 - OR = { - has_trait = vengeful - has_trait = wrathful - has_trait = callous - } - } - modifier = { - add = 25 - has_any_bad_relationship_with_root_trigger = yes - } - modifier = { - add = -25 - OR = { - has_trait = compassionate - has_trait = forgiving - has_trait = calm - } - } - modifier = { - add = -25 - has_any_good_relationship_with_root_trigger = yes - } - trigger_event = { - id = ep2_wedding.0957 - days = 14 - } - } - } - } - } - } -} - -ep2_wedding.0958 = { #variable clean up - done in an event so they persist for the guests - hidden = yes - immediate = { - remove_variable ?= bloody_wedding_murder - remove_variable ?= bloody_wedding_backed_down_var - remove_variable ?= bloody_murder_fail - } -} - -# CONCLUSION - BLOODY WEDDING - SURVIVOR -ep2_wedding.0956 = { - type = activity_event - title = ep2_wedding.0956.t - desc = ep2_wedding.0956.desc - theme = bloody_wedding_banquet - left_portrait = { - character = root - triggered_animation = { - trigger = { - has_any_bad_relationship_with_character_trigger = { CHARACTER = scope:spouse_2 } - } - animation = schadenfreude - } - animation = sadness - } - lower_right_portrait = scope:host - cooldown = { years = 3 } - - immediate = { - scope:activity.special_guest:spouse_1 = { save_scope_as = spouse_1 } - scope:activity.var:spouse_2_var = { save_scope_as = spouse_2 } - } - - option = { - name = { - trigger = { - has_any_good_relationship_with_character_trigger = { CHARACTER = scope:spouse_2 } - } - text = ep2_wedding.0956.a.good - } - name = { - trigger = { - NOT = { has_any_good_relationship_with_character_trigger = { CHARACTER = scope:spouse_2 } } - } - text = ep2_wedding.0956.a - } - if = { - limit = { - OR = { - has_trait = torturer - has_trait = sadistic - has_trait = vengeful - has_trait = callous - } - } - show_as_tooltip = { #handed out to the host in their event - add_opinion = { - modifier = respect_opinion - target = scope:host - opinion = 20 - } - } - } - else = { - show_as_tooltip = { - add_opinion = { - modifier = suspicion_opinion - target = scope:host - opinion = -25 - } - } - } - add_prestige = medium_prestige_gain - create_character_memory = { - type = grand_wedding_massacre_guest - participants = { - spouse_1 = scope:spouse_1 - spouse_2 = scope:spouse_2 - } - } - stress_impact = { - torturer = major_stress_impact_loss - sadistic = major_stress_impact_loss - callous = major_stress_impact_loss - vengeful = major_stress_impact_loss - paranoid = medium_stress_impact_gain - } - } -} - -### PLAYER ONLY EVENTS ### - -# MASSACRE - SOMEONE IS TRYING TO KILL YOU -ep2_wedding.0204 = { - type = activity_event - title = ep2_wedding.0204.t - desc = { - desc = ep2_wedding.0204.desc.intro - first_valid = { - triggered_desc = { - trigger = { - #you only get this event if the host chose family kill - this != scope:spouse_2 - } - desc = ep2_wedding.0204.desc.family.non_spouse - } - #we assume you're the spouse otherwise - triggered_desc = { - trigger = { - scope:host = { var:bloody_wedding_murder ?= flag:family } - } - desc = ep2_wedding.0204.desc.family - } - triggered_desc = { - trigger = { - scope:host = { var:bloody_wedding_murder ?= flag:solo } - } - desc = ep2_wedding.0204.desc.solo - } - } - } - theme = bloody_wedding_banquet - left_portrait = { - character = scope:mercenary_1 - animation = aggressive_axe - } - center_portrait = { - character = root - animation = fear - } - right_portrait = { - character = scope:mercenary_2 - animation = aggressive_sword - } - lower_center_portrait = { - trigger = { - root != scope:spouse_2 - NOT = { scope:host = { var:bloody_wedding_murder ?= flag:solo } } - } - character = scope:spouse_2 - } - lower_right_portrait = { - trigger = { - exists = scope:entourage_1 - root != scope:entourage_1 - NOT = { scope:host = { var:bloody_wedding_murder ?= flag:solo } } - } - character = scope:entourage_1 - } - lower_left_portrait = { - trigger = { - exists = scope:entourage_2 - root != scope:entourage_2 - NOT = { scope:host = { var:bloody_wedding_murder ?= flag:solo } } - } - character = scope:entourage_2 - } - cooldown = { years = 3 } - - immediate = { - play_music_cue = mx_cue_murder - scope:activity.special_guest:spouse_1 = { save_scope_as = spouse_1 } - scope:activity.var:spouse_2_var = { save_scope_as = spouse_2 } - save_scope_as = murder_victim - hidden_effect = { - create_character = { - template = mercenary - dynasty = none - location = root.location - culture = root.location.culture - faith = root.location.faith - gender_female_chance = root_soldier_female_chance - save_scope_as = mercenary_1 - } - create_character = { - template = mercenary - dynasty = none - location = root.location - culture = root.location.culture - faith = root.location.faith - gender_female_chance = root_soldier_female_chance - save_scope_as = mercenary_2 - } - } - } - - option = { #Skill duel to get out - name = ep2_wedding.0204.a - duel = { - skill = prowess - value = medium_skill_rating - # Die, unfortunately - 60 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep2_wedding.0204.a.tt.failure - #no need for your own toast if you die - scope:host = { - send_interface_toast = { - title = ep2_wedding.0204.a.tt.success.host #these are flipped in loc - right_icon = scope:murder_victim - scope:murder_victim = { - death = { - death_reason = death_bloody_wedding - } - } - } - } - } - # Save yourself - 40 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep2_wedding.0204.a.tt.success - send_interface_toast = { - title = ep2_wedding.0204.a.tt.success - left_icon = scope:murder_victim - } - scope:host = { - send_interface_toast = { - title = ep2_wedding.0204.a.tt.failure.host - right_icon = scope:murder_victim - if = { - limit = { root = scope:spouse_2 } - set_variable = bloody_murder_fail - } - } - } - if = { - limit = { root = scope:spouse_2 } - create_character_memory = { - type = grand_wedding_massacre_spouse_survivor - participants = { - host = scope:host - spouse_1 = scope:spouse_1 - spouse_2 = scope:spouse_2 - } - } - } - else = { - create_character_memory = { - type = grand_wedding_massacre_survivor - participants = { - host = scope:host - spouse_1 = scope:spouse_1 - spouse_2 = scope:spouse_2 - } - } - } - } - } - if = { - limit = { - scope:spouse_2 ?= { is_ai = yes } - } - custom_tooltip = { - text = ep2_wedding.0204.a.spouse_2_murder.tt - unknown_murder_effect = { - VICTIM = scope:spouse_2 - MURDERER = scope:host - REASON = death_bloody_wedding - } - } - } - if = { - limit = { - scope:activity = { - any_attending_character = { - ep2_wedding_0202_valid_family_member_trigger = yes - is_ai = yes - this != root - } - } - } - scope:activity = { - every_attending_character = { - limit = { - ep2_wedding_0202_valid_family_member_trigger = yes - is_ai = yes - this != root - } - custom = every_attending_relative_of_spouse_2 - death = { - death_reason = death_bloody_wedding - } - } - } - } - } -} - -# Bloody Wedding follow up event - -ep2_wedding.0957 = { - type = letter_event - opening = { - desc = ep2_wedding.0957.opening - } - desc = { - first_valid = { - triggered_desc = { - trigger = { scope:avenging_family = { is_parent_of = scope:spouse_2 } } - desc = ep2_wedding.0957.desc.parent - } - desc = ep2_wedding.0957.desc - } - } - sender = scope:avenging_family - - option = { - name = ep2_wedding.0957.a - if = { - limit = { - #DLC check - has_bp1_dlc_trigger = yes - scope:avenging_family.house.house_head = { - valid_for_feud_events_with_target_trigger = { TARGET = root } - } - } - scope:avenging_family = { - house_feud_start_effect = { - # Feuding House Head - ACTOR = scope:avenging_family - # Target House Head - TARGET = root - # Feud Reason - REASON = bloody_wedding - # House Member attacker if relevant, otherwise same as ACTOR - ATTACKER = scope:avenging_family - # House Member victim if relevant, otherwise same as TARGET - VICTIM = scope:spouse_2 - } - } - } - scope:spouse_2 = { - every_close_family_member = { - custom = ep2_wedding.0957.a.tt - limit = { - is_close_family_or_spouse_of_root_trigger = no - this != scope:avenging_family - } - add_opinion = { - target = root - modifier = bloody_wedding_family_opinion - } - } - } - add_prestige = minor_prestige_loss - } -} diff --git a/events/dlc/ep2/wedding_events/ep2_wedding_events.txt b/events/dlc/ep2/wedding_events/ep2_wedding_events.txt deleted file mode 100644 index 25f435746..000000000 --- a/events/dlc/ep2/wedding_events/ep2_wedding_events.txt +++ /dev/null @@ -1,23480 +0,0 @@ -namespace = ep2_wedding - -############################ -## Wedding Events - Maintenance -## 0001-0999 -## by Claudia Baldassi -############################ -## Wedding Events -## -## by Claudia Baldassi, Veronica Pazos, Luke Bean -# -## Ceremony Events -# ep2_wedding.1000 - Host: The other party arrives early and criticizes your chosen options -# ep2_wedding.1010 - Host: You have an occasion to kickstart your Diplomacy/Seduce targeting efforts -# ep2_wedding.1080 - Matchmaking Intent: Lay the ground for the matchmaking -# ep2_wedding.1100 - Northern wedding: the bride goes to a bathhouse with the married women of her family: removal of clothes and kransen (golden circlet) -# ep2_wedding.1020 - Spouse: The spouses fall in love at first sight -# ep2_wedding.1030 - A good or bad omen happens: how do you react? -# ep2_wedding.1120 - Children of the spouses from a previous partner make a fuss -# ep2_wedding.1130 - A bad secret about one of the spouses comes up -# ep2_wedding.1140 - Host: A spouse has an embarrassing misstep, how do you recover? -# ep2_wedding.1150 - Seduction Intent: target scouting -# ep2_wedding.1160 - Some pesants are at the gate of the festivity - what do you do? -# ep2_wedding.1170 - A spouse has arrived with a whole parade. Interact with it -# ep2_wedding.1180 - Your spouse doesn't really like you... -# ep2_wedding.1190 - Religious guest complains about lavishness, luxury, wastes, and unchaste mingling -# ep2_wedding.1200 - Proud parent watches everything go well and brags with intent target/friend/rival/neighbor -# ep2_wedding.1210 - Political talk with a fellow ruler -# ep2_wedding.1220 - In-laws are bullies (or other close relatives) -# ep2_wedding.4000 - Non-spouse: Matchmaking Intent - What a nice wedding, maybe you should follow? -# -## Banquet Events -# ep2_wedding.1040 - You make a new friend -# ep2_wedding.1050 - Someone catches fire from the torches -# ep2_wedding.1070 - Showing off exotic animals can go very well or very wrong -# ep2_wedding.1090 - Matchmaking Intent: push a couple together -# ep2_wedding.1310 - A Friend Is Monopolizing Your Attention -# ep2_wedding.1320 - A rival seeks forgiveness -# ep2_wedding.2000-2001 - Diplomatic Intent: You find information about your target by talking to a friend of theirs -# ep2_wedding.2010-2011 - Host: Paint an animal white and pretend it's a legendary guest -# -## Wedding Night Events -# ep2_wedding.1060 - Spouse: Inspired by Matilda of Tuscany's second wedding: a younger/meeker husband is too intimidated -# ep2_wedding.1065 - Spouse: Inverted event: it's you who have problems - spouse's reaction -# ep2_wedding.1110 - Non-spouses: someone gets extremely drunk/doesn't want to leave -# ep2_wedding.1111 - Non-spouses: you get extremely drunk/don't want to leave -# ep2_wedding.1300 - Spouse: a spouse has insecurities -# ep2_wedding.1330 - Spouse: We were lovers before the wedding -# ep2_wedding.3000 - Spouse: Both spouses are shy/nervous -# ep2_wedding.3010 - Spouse: Spouse with a secret has a breakdown and confesses -# ep2_wedding.3020 - Spouse: You find out that your spouse fancies the other gender -# ep2_wedding.3030 - Spouse: Spouse gives you a memento to symbolize your love -# ep2_wedding.3040 - Spouse: The bed catches fire while you're at it -# ep2_wedding.3050 - Non-spouses: Murder Intent - try to kill your target with a chandelier -# ep2_wedding.3060 - Spouse: Murder Intent - try to kill your spouse while you're at it - -# BETROTHAL INVALIDATED - -# The Grand Wedding wasn't organized in the set amount of time - -ep2_wedding.0001 = { - type = character_event - title = ep2_wedding.0001.t - desc = { - desc = ep2_wedding.0001.desc - first_valid = { - triggered_desc = { - trigger = { - NOR = { - root = scope:spouse_1 - root = scope:spouse_2 - } - } - desc = ep2_wedding.0001.desc_betrothed - } - desc = ep2_wedding.0001.desc_self - } - } - theme = marriage - left_portrait = { - character = root - animation = disapproval - } - lower_right_portrait = scope:spouse_1 - lower_center_portrait = scope:spouse_2 - - trigger = { - var:promised_grand_wedding_marriage_countdown ?= { - is_alive = yes - is_available_allow_travelling = yes - age >= 19 - save_temporary_scope_as = spouse_1 - betrothed = { - is_alive = yes - is_available_allow_travelling = yes - age >= 19 - can_marry_character_trigger = { CHARACTER = scope:spouse_1 } - } - } - NOT = { - involved_activity ?= { - has_activity_type = activity_wedding - activity_host = root - } - } - } - - # This event shouldn't trigger unless the spouses have been adult and marriable for at least 3 years in any case, but to prevent edge cases, we check that they are adult, and if they are not or have not been for at least 3 years, we try again one year later - on_trigger_fail = { - if = { - limit = { - # you are not in this GW - NOT = { - involved_activity ?= { - has_activity_type = activity_wedding - activity_host = root - } - } - } - var:promised_grand_wedding_marriage_countdown ?= { - save_scope_as = spouse_1 - betrothed ?= { save_scope_as = spouse_2 } - } - if = { - limit = { - exists = scope:spouse_1 - exists = scope:spouse_2 - } - if = { - limit = { - # no longer valid marriage, e.g. devoted - scope:spouse_1 ?= { - NOT = { - can_marry_character_trigger = { CHARACTER = scope:spouse_2 } - } - } - } - # TODO informing event - clean_grand_wedding_betrothal_variables = yes - } - else_if = { - limit = { - scope:spouse_1 ?= { - OR = { - age < 19 - scope:spouse_2.age < 19 - # grace period for illness - AND = { - is_available_allow_travelling = no - age < 25 - } - scope:spouse_2 = { - is_available_allow_travelling = no - age < 25 - } - } - } - } - trigger_event = { - id = ep2_wedding.0001 - days = 365 - } - set_variable = { - name = promised_grand_wedding_marriage_countdown - value = scope:spouse_1 - years = grand_wedding_timeout - } - } - # both adult, but can't attend for a reallly long time - else_if = { - limit = { - scope:spouse_1 ?= { - age >= 25 - scope:spouse_2.age >= 25 - OR = { - is_available_allow_travelling = no - scope:spouse_2 = { - is_available_allow_travelling = no - } - } - } - } - # TODO: add an event - clean_grand_wedding_betrothal_variables = yes - } - else_if = { - limit = { - has_variable = promised_grand_wedding_marriage_countdown - } - clean_grand_wedding_betrothal_variables = yes - } - } - } - } - - immediate = { - var:promised_grand_wedding_marriage_countdown = { - save_scope_as = spouse_1 - } - scope:spouse_1.betrothed = { - save_scope_as = spouse_2 - } - } - - option = { - name = ep2_wedding.0001.a - break_grand_wedding_betrothal_effect = yes - } -} - -# A betrothed died before organizing the activity - Host - -ep2_wedding.0002 = { - type = character_event - title = ep2_wedding.0002.t - desc = ep2_wedding.0002.desc - theme = marriage - left_portrait = { - character = root - animation = grief - } - lower_right_portrait = scope:dead_spouse - lower_center_portrait = scope:alive_spouse - - immediate = { - - } - - option = { - name = ep2_wedding.0002.a - clean_grand_wedding_betrothal_variables = yes - } -} - -# Your betrothed died before organizing the activity - Other Betrothed (also if the betrothed was the host) - -ep2_wedding.0003 = { - type = character_event - title = ep2_wedding.0002.t - desc = ep2_wedding.0003.desc - theme = marriage - left_portrait = { - character = root - animation = grief - } - lower_right_portrait = scope:dead_spouse - - option = { - name = ep2_wedding.0003.a - remove_variable = promised_grand_wedding_by - if = { - limit = { - has_variable = promised_grand_wedding_marriage_countdown - } - remove_variable = promised_grand_wedding_marriage_countdown - } - } -} - -# ON START - CEREMONY - -ep2_wedding.0100 = { - type = activity_event - title = ep2_wedding.0100.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - root = scope:host - NOR = { - root = scope:spouse_1 - root = scope:spouse_2 - } - } - desc = { - desc = ep2_wedding.0100.desc_host - desc = ep2_wedding.0100.desc_host_outro - } - } - triggered_desc = { - trigger = { - root = scope:host - OR = { - root = scope:spouse_1 - root = scope:spouse_2 - } - } - desc = ep2_wedding.0100.desc_host_spouse - } - triggered_desc = { - trigger = { - OR = { - root = scope:activity.special_guest:spouse_1 - root = scope:activity.special_guest:spouse_2 - } - } - desc = ep2_wedding.0100.desc_spouse - } - desc = ep2_wedding.0100.desc_guest - } - triggered_desc = { - trigger = { - OR = { - root = scope:spouse_1 - root = scope:spouse_2 - } - is_pregnant = yes - } - desc = ep2_wedding.0100.desc_root_pregnant - } - triggered_desc = { - trigger = { - OR = { - AND = { - scope:spouse_1 = { is_pregnant = yes } - root != scope:spouse_1 - } - AND = { - scope:spouse_2 = { is_pregnant = yes } - root != scope:spouse_2 - } - } - } - desc = ep2_wedding.0100.desc_spouse_pregnant - } - } - theme = wedding_ceremony_activity - left_portrait = { - trigger = { - NOR = { - root = scope:spouse_1 - root = scope:spouse_2 - } - } - character = root - animation = happiness - } - center_portrait = { - character = scope:spouse_1_portrait - camera = camera_event_left_wedding - triggered_animation = { - trigger = { - NOT = { has_any_bad_relationship_with_character_trigger = { CHARACTER = scope:spouse_2 } } - } - animation = wedding_bride_left - } - animation = disapproval - } - right_portrait = { - character = scope:spouse_2_portrait - camera = camera_event_right_wedding - triggered_animation = { - trigger = { - NOT = { has_any_bad_relationship_with_character_trigger = { CHARACTER = scope:spouse_1 } } - } - animation = wedding_groom_right - } - animation = dismissal - } - - immediate = { - scope:host = { save_scope_as = host } - scope:activity.special_guest:spouse_1 = { save_scope_as = spouse_1 } - scope:activity.special_guest:spouse_2 = { save_scope_as = spouse_2 } - if = { - limit = { - root = scope:spouse_1 - } - scope:spouse_2 = { save_scope_as = my_spouse } - } - else_if = { - limit = { - root = scope:spouse_2 - } - scope:spouse_1 = { save_scope_as = my_spouse } - } - if = { - limit = { - scope:activity.special_guest:spouse_1 = { - sex_opposite_of = scope:activity.special_guest:spouse_2 - is_male = yes - } - } - scope:activity.special_guest:spouse_1 = { - save_scope_as = spouse_2_portrait - } - scope:activity.special_guest:spouse_2 = { - save_scope_as = spouse_1_portrait - } - } - else = { - scope:activity.special_guest:spouse_1 = { - save_scope_as = spouse_1_portrait - } - scope:activity.special_guest:spouse_2 = { - save_scope_as = spouse_2_portrait - } - } - } - - option = { - name = ep2_wedding.0100.a - } -} - -# ON END - CEREMONY - -# For the host (not spouse) and guests -ep2_wedding.0150 = { - type = activity_event - title = ep2_wedding.0150.t - desc = ep2_wedding.0150.desc - theme = wedding_ceremony_activity - left_portrait = { - character = scope:spouse_1_portrait - animation = wedding_bride_left - camera = camera_event_left_wedding - } - center_portrait = { - character = scope:officiant - animation = wedding_priest - } - right_portrait = { - character = scope:spouse_2_portrait - animation = wedding_groom_right - camera = camera_event_right_wedding - } - - trigger = { - exists = scope:activity.special_guest:spouse_1 - exists = scope:activity.special_guest:spouse_2 - NOR = { - scope:activity.special_guest:spouse_1 = this - scope:activity.special_guest:spouse_2 = this - } - } - - immediate = { - if = { - limit = { - location.culture = { has_graphical_india_culture_group_trigger = yes } - } - play_sound_effect = "event:/DLC/EP2/SFX/Stingers/Grand_Activities/ep2_mx_sting_wedding_india" - } - else_if = { - limit = { - OR = { - location.culture = { has_graphical_mena_culture_group_trigger = yes } - location.culture = { has_graphical_steppe_culture_group_trigger = yes } - location.culture = { has_graphical_african_culture_group_trigger = yes } - } - } - play_sound_effect = "event:/DLC/EP2/SFX/Stingers/Grand_Activities/ep2_mx_sting_wedding_mena" - } - else = { - play_sound_effect = "event:/DLC/EP2/SFX/Stingers/Grand_Activities/ep2_mx_sting_wedding_west" - } - scope:activity.special_guest:spouse_1 = { - save_scope_as = spouse_1 - } - scope:activity.special_guest:spouse_2 = { - save_scope_as = spouse_2 - } - check_officiant_effect = yes - scope:activity.var:officiant ?= { save_scope_as = officiant } - scope:spouse_1 = { - show_as_tooltip = { - marry = scope:spouse_2 - } - } - if = { - limit = { - scope:activity.special_guest:spouse_1 = { - sex_opposite_of = scope:activity.special_guest:spouse_2 - is_male = yes - } - } - scope:activity.special_guest:spouse_1 = { - save_scope_as = spouse_2_portrait - } - scope:activity.special_guest:spouse_2 = { - save_scope_as = spouse_1_portrait - } - } - else = { - scope:activity.special_guest:spouse_1 = { - save_scope_as = spouse_1_portrait - } - scope:activity.special_guest:spouse_2 = { - save_scope_as = spouse_2_portrait - } - } - base_legitimacy_intent_reward = yes - } - - option = { - name = ep2_wedding.0150.a - } -} - -# For the spouses -ep2_wedding.0151 = { - type = activity_event - title = ep2_wedding.0150.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - is_bloody_wedding = yes - } - desc = ep2_wedding.0151.desc.murder - } - random_valid = { - triggered_desc = { - trigger = { - OR = { - has_trait = education_diplomacy_3 - has_trait = education_diplomacy_4 - has_trait = education_diplomacy_5 - has_trait = education_stewardship_3 - has_trait = education_stewardship_4 - has_trait = education_stewardship_5 - has_trait = diplomat - has_trait = administrator - has_trait = ambitious - } - } - desc = ep2_wedding.0151.desc_diplo - } - triggered_desc = { - trigger = { - OR = { - has_trait = education_learning_3 - has_trait = education_learning_4 - has_trait = education_learning_5 - has_trait = scholar - has_trait = theologian - has_trait = zealous - has_character_modifier = bp1_superstition_modifier - } - } - desc = ep2_wedding.0151.desc_religious - } - triggered_desc = { - trigger = { - OR = { - has_trait = lifestyle_reveler - has_trait = gluttonous - has_trait = gregarious - has_trait = drunkard - has_trait = hashishiyah - } - } - desc = ep2_wedding.0151.desc_party - } - triggered_desc = { - trigger = { - OR = { - has_trait = seducer - has_trait = lustful - has_trait = rakish - has_trait = deviant - has_trait = adulterer - has_trait = fornicator - } - } - desc = ep2_wedding.0151.desc_seducer - } - triggered_desc = { - trigger = { - OR = { - has_trait = chaste - has_trait = humble - has_trait = shy - has_trait = reclusive - } - } - desc = ep2_wedding.0151.desc_shy - } - triggered_desc = { - trigger = { - OR = { - has_trait = wrathful - has_trait = arrogant - has_trait = callous - has_trait = irritable - has_trait = impatient - } - } - desc = ep2_wedding.0151.desc_arrogant - } - triggered_desc = { - trigger = { - OR = { - has_trait = paranoid - has_trait = craven - } - } - desc = ep2_wedding.0151.desc_paranoid - } - triggered_desc = { - trigger = { - OR = { - has_trait = maimed - has_trait = one_eyed - has_trait = one_legged - has_trait = disfigured - has_trait = scarred - has_trait = blind - has_trait = beauty_bad - has_trait = physique_bad - has_trait = clubfooted - has_trait = hunchbacked - has_trait = weak - has_trait = scaly - has_trait = wheezing - has_trait = bleeder - } - } - desc = ep2_wedding.0151.desc_appearance - } - desc = ep2_wedding.0151.desc - } - } - } - theme = wedding_ceremony_activity - left_portrait = { - character = scope:spouse_1_portrait - animation = wedding_bride_left - camera = camera_event_left_wedding - } - center_portrait = { - character = scope:officiant - animation = wedding_priest - } - right_portrait = { - character = scope:spouse_2_portrait - animation = wedding_groom_right - camera = camera_event_right_wedding - } - - trigger = { - exists = scope:activity.special_guest:spouse_1 - exists = scope:activity.special_guest:spouse_2 - root = scope:activity.special_guest:spouse_1 - } - - immediate = { - if = { - limit = { - location.culture = { has_graphical_india_culture_group_trigger = yes } - } - play_sound_effect = "event:/DLC/EP2/SFX/Stingers/Grand_Activities/ep2_mx_sting_wedding_india" - } - else_if = { - limit = { - OR = { - location.culture = { has_graphical_mena_culture_group_trigger = yes } - location.culture = { has_graphical_steppe_culture_group_trigger = yes } - location.culture = { has_graphical_african_culture_group_trigger = yes } - } - } - play_sound_effect = "event:/DLC/EP2/SFX/Stingers/Grand_Activities/ep2_mx_sting_wedding_mena" - } - else = { - play_sound_effect = "event:/DLC/EP2/SFX/Stingers/Grand_Activities/ep2_mx_sting_wedding_west" - } - scope:activity.special_guest:spouse_1 = { - save_scope_as = spouse_1 - } - scope:activity.special_guest:spouse_2 = { - save_scope_as = spouse_2 - } - if = { - limit = { - scope:activity.special_guest:spouse_1 = { - sex_opposite_of = scope:activity.special_guest:spouse_2 - is_male = yes - } - } - scope:activity.special_guest:spouse_1 = { - save_scope_as = spouse_2_portrait - } - scope:activity.special_guest:spouse_2 = { - save_scope_as = spouse_1_portrait - } - } - else = { - scope:activity.special_guest:spouse_1 = { - save_scope_as = spouse_1_portrait - } - scope:activity.special_guest:spouse_2 = { - save_scope_as = spouse_2_portrait - } - } - } - - option = { - name = ep2_wedding.0151.a - scope:spouse_1 = { - marry = scope:spouse_2 - } - if = { - limit = { scope:officiant ?= scope:spouse_1.faith.religious_head } - scope:spouse_1 = { - add_piety = major_piety_gain - } - } - else_if = { - limit = { scope:officiant.involved_activity ?= scope:activity } - scope:spouse_1 = { - add_piety = medium_piety_gain - } - } - else = { - scope:spouse_1 = { - add_piety = minor_piety_gain - } - } - if = { - limit = { scope:officiant ?= scope:spouse_2.faith.religious_head } - scope:spouse_2 = { - add_piety = major_piety_gain - } - } - else_if = { - limit = { scope:officiant.involved_activity ?= scope:activity } - scope:spouse_2 = { - add_piety = medium_piety_gain - } - } - else = { - scope:spouse_2 = { - add_piety = minor_piety_gain - } - } - if = { - limit = { - root = scope:host - } - scope:activity.activity_location.county = { - add_county_modifier = { - modifier = ruler_married_here_county_modifier - years = 10 - } - } - } - scope:spouse_1.dynasty ?= { add_dynasty_prestige = medium_dynasty_prestige_gain } - if = { - limit = { - NOT = { scope:spouse_2.dynasty ?= scope:spouse_1.dynasty } - } - scope:spouse_2.dynasty ?= { add_dynasty_prestige = medium_dynasty_prestige_gain } - } - if = { - limit = { - this = scope:spouse_1 - } - create_character_memory = { - type = grand_wedding_got_married - participants = { - spouse = scope:spouse_2 - } - } - } - else = { - create_character_memory = { - type = grand_wedding_got_married - participants = { - spouse = scope:spouse_1 - } - } - } - scope:host = { - clean_grand_wedding_betrothal_variables = yes - } - # The marriage should not be consummated before the Wedding Night! - hidden_effect = { - scope:spouse_1 = { - add_character_modifier = { modifier = wedding_fertility_delay_modifier } - } - scope:spouse_2 = { - add_character_modifier = { modifier = wedding_fertility_delay_modifier } - } - } - # Progress to next phase - hidden_effect = { - scope:activity = { progress_activity_phase_after = { days = 1 } } - } - } - - option = { - name = ep2_wedding.0151.b - trigger = { - is_ai = no - } - custom_tooltip = ep2_wedding.0151.b.tt - scope:activity = { - set_variable = wedding_invalidated_said_no - } - add_character_flag = grand_wedding_said_no - ai_chance = { - base = 0 - } - } -} - -scripted_effect ep2_wedding_cleanup_jitter_modifier_effect = { - if = { - limit = { has_character_modifier = wedding_confident_groom } - remove_character_modifier = wedding_confident_groom - } - if = { - limit = { has_character_modifier = wedding_confident_bride } - remove_character_modifier = wedding_confident_bride - } - if = { - limit = { has_character_modifier = wedding_jitters } - remove_character_modifier = wedding_jitters - } -} - -# I DON'T: the consequences -ep2_wedding.0152 = { - type = character_event - title = ep2_wedding.0152.t - desc = ep2_wedding.0152.desc - theme = wedding_ceremony_activity - - left_portrait = { - character = root - animation = wedding_objection_start - } - right_portrait = { - character = scope:spouse_2 - animation = shock - } - lower_right_portrait = scope:scorned_matchmaker - - immediate = { - scope:spouse_2.matchmaker = { - if = { - limit = { - this != scope:spouse_2 - } - save_scope_as = scorned_matchmaker - } - } - scope:previous_host = { - # the betrothal is broken: hand out the consequences - break_grand_wedding_betrothal_effect = yes - - # The wedding is invalidated: get a refund - custom_tooltip = { - text = ep2_wedding.9000.tt - add_gold = var:gwedding_gold_recoup_value - } - } - create_character_memory = { - type = grand_wedding_refused_to_marry - participants = { - spouse = scope:spouse_2 - } - } - ep2_wedding_cleanup_jitter_modifier_effect = yes - scope:spouse_2 = { - ep2_wedding_cleanup_jitter_modifier_effect = yes - } - } - - option = { - name = ep2_wedding.0152.a - } - - after = { - remove_character_flag = grand_wedding_said_no - scope:previous_host = { remove_variable = gwedding_gold_recoup_value } - } -} - - -# ON START - BANQUET - -ep2_wedding.0200 = { - type = activity_event - title = ep2_wedding.0200.t - desc = { - first_valid = { - triggered_desc = { - trigger = { #spouse and bloody wedding - this = scope:host - is_bloody_wedding = yes - root = scope:spouse_1 - } - desc = ep2_wedding.0200.desc.murder_spouse - } - triggered_desc = { #bloody wedding - trigger = { - this = scope:host - is_bloody_wedding = yes - root != scope:spouse_1 - } - desc = ep2_wedding.0200.desc.murder - } - triggered_desc = { #spouses - trigger = { - OR = { - root = scope:spouse_1 - root = scope:spouse_2 - } - has_any_bad_relationship_with_character_trigger = { CHARACTER = scope:spouse_2 } - } - desc = ep2_wedding.0200.desc_spouse_dislike - } - triggered_desc = { - trigger = { - OR = { - root = scope:spouse_1 - root = scope:spouse_2 - } - has_any_good_relationship_with_character_trigger = { CHARACTER = scope:spouse_2 } - } - desc = ep2_wedding.0200.desc_spouse_like - } - triggered_desc = { - trigger = { - OR = { - root = scope:spouse_1 - root = scope:spouse_2 - } - OR = { - has_trait = lifestyle_reveler - has_trait = gluttonous - has_trait = gregarious - has_trait = drunkard - has_trait = hashishiyah - } - } - desc = ep2_wedding.0200.desc_spouse_party - } - triggered_desc = { - trigger = { - OR = { - root = scope:spouse_1 - root = scope:spouse_2 - } - OR = { - has_trait = chaste - has_trait = humble - has_trait = shy - has_trait = reclusive - } - } - desc = ep2_wedding.0200.desc_spouse_shy - } - triggered_desc = { - trigger = { - OR = { - root = scope:spouse_1 - root = scope:spouse_2 - } - OR = { - has_trait = wrathful - has_trait = arrogant - has_trait = callous - has_trait = irritable - has_trait = impatient - } - } - desc = ep2_wedding.0200.desc_spouse_arrogant - } - triggered_desc = { - trigger = { - OR = { - root = scope:spouse_1 - root = scope:spouse_2 - } - } - desc = ep2_wedding.0200.desc_spouse_fallback - } - triggered_desc = { #host - trigger = { - root = scope:host - } - desc = ep2_wedding.0200.desc_host - } - desc = ep2_wedding.0200.desc #guest - } - } - theme = wedding_banquet_activity - left_portrait = { - trigger = { - NOR = { - root = scope:spouse_1 - root = scope:spouse_2 - } - } - character = root - animation = toast_goblet - } - center_portrait = { - character = scope:spouse_1 - camera = camera_event_left_wedding - triggered_animation = { - trigger = { - scope:spouse_1 = { - has_any_bad_relationship_with_character_trigger = { CHARACTER = scope:spouse_2 } - } - } - animation = disapproval - } - animation = wedding_bride_left - } - right_portrait = { - character = scope:spouse_2 - camera = camera_event_right_wedding - triggered_animation = { - trigger = { - scope:spouse_2 = { - has_any_bad_relationship_with_character_trigger = { CHARACTER = scope:spouse_1 } - } - } - animation = disapproval - } - animation = wedding_groom_right - } - - trigger = { - exists = scope:activity - } - - immediate = { - scope:activity.special_guest:spouse_1 = { save_scope_as = spouse_1 } - scope:activity.var:spouse_2_var = { save_scope_as = spouse_2 } - if = { - limit = { - root = scope:spouse_1 - } - scope:spouse_2 = { - save_scope_as = my_spouse - } - } - else_if = { - limit = { - root = scope:spouse_2 - } - scope:spouse_1 = { - save_scope_as = my_spouse - } - } - } - - option = { - name = { - trigger = { - is_bloody_wedding = yes - } - text = ep2_wedding.0200.a.murder - } - name = { - trigger = { - is_bloody_wedding = no - } - text = ep2_wedding.0200.a - } - if = { - limit = { - OR = { - root = scope:host - root = scope:spouse_1 - root = scope:spouse_2 - } - } - add_prestige = minor_prestige_gain - } - } -} - -# ON START - WEDDING NIGHT - -ep2_wedding.0300 = { - type = activity_event - title = ep2_wedding.0300.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - is_bloody_wedding = yes - root = scope:spouse_1 - } - desc = ep2_wedding.0300.desc.murder_spouse - } - triggered_desc = { - trigger = { - OR = { - root = scope:activity.special_guest:spouse_1 - root = scope:activity.special_guest:spouse_2 - } - } - desc = ep2_wedding.0300.desc_spouse - } - triggered_desc = { - trigger = { - root = scope:host - } - desc = ep2_wedding.0300.desc - } - desc = ep2_wedding.0300.desc_guest - } - } - theme = wedding_night_activity - left_portrait = { - trigger = { - NOR = { - root = scope:spouse_1 - root = scope:spouse_2 - } - } - character = root - animation = happiness - } - center_portrait = { - character = scope:spouse_1 - triggered_animation = { - trigger = { - scope:spouse_1 = { - has_any_bad_relationship_with_character_trigger = { CHARACTER = scope:spouse_2 } - } - } - animation = disapproval - } - animation = reception_groom_left - } - right_portrait = { - character = scope:spouse_2 - triggered_animation = { - trigger = { - scope:spouse_2 = { - has_any_bad_relationship_with_character_trigger = { CHARACTER = scope:spouse_1 } - } - } - animation = dismissal - } - animation = reception_bride_right - } - - immediate = { - scope:activity.special_guest:spouse_1 ?= { - save_scope_as = spouse_1 - } - scope:activity.special_guest:spouse_2 ?= { - save_scope_as = spouse_2 - } - if = { - limit = { - root = scope:activity.special_guest:spouse_1 - } - scope:activity.special_guest:spouse_2 = { save_scope_as = other_spouse } - } - else_if = { - limit = { - root = scope:activity.special_guest:spouse_2 - } - scope:activity.special_guest:spouse_1 = { save_scope_as = other_spouse } - } - hidden_effect = { - scope:spouse_1 ?= { - if = { - limit = { - has_character_modifier = wedding_fertility_delay_modifier - } - remove_character_modifier = wedding_fertility_delay_modifier - } - } - scope:spouse_2 ?= { - if = { - limit = { - has_character_modifier = wedding_fertility_delay_modifier - } - remove_character_modifier = wedding_fertility_delay_modifier - } - } - } - } - - option = { - name = ep2_wedding.0300.a - } -} - -# INVALIDATED - -# For the host (not spouse) and the guests - one of the spouses died - -ep2_wedding.0900 = { - type = character_event - title = ep2_wedding.0900.t - desc = ep2_wedding.0900.desc - theme = wedding_ceremony_activity - left_portrait = { - character = root - animation = sadness - } - right_portrait = { - character = scope:sad_spouse - animation = grief - } - - immediate = { - if = { - limit = { - scope:spouse_1 ?= { is_alive = yes } - } - scope:spouse_1 = { save_scope_as = sad_spouse } - scope:spouse_2 = { save_scope_as = dead_spouse } - } - else = { - scope:spouse_2 = { save_scope_as = sad_spouse } - scope:spouse_1 = { save_scope_as = dead_spouse } - } - if = { - limit = { - scope:sad_spouse = { has_character_modifier = wedding_fertility_delay_modifier } - } - scope:sad_spouse = { remove_character_modifier = wedding_fertility_delay_modifier } - } - if = { - limit = { - root = scope:previous_host - } - # The wedding is invalidated: get a refund - custom_tooltip = { - text = ep2_wedding.9000.tt - add_gold = var:gwedding_gold_recoup_value - } - } - } - - option = { - name = ep2_wedding.0900.a - } - - after = { - if = { - limit = { - has_variable = gwedding_gold_recoup_value - } - remove_variable = gwedding_gold_recoup_value - } - } -} - -# For the spouses - the other spouse died - -ep2_wedding.0910 = { - type = character_event - title = ep2_wedding.0900.t - desc = ep2_wedding.0910.desc - theme = wedding_ceremony_activity - left_portrait = { - character = root - animation = grief - } - - immediate = { - if = { - limit = { - root = scope:previous_host - } - # The wedding is invalidated: get a refund - custom_tooltip = { - text = ep2_wedding.9000.tt - add_gold = var:gwedding_gold_recoup_value - } - } - create_character_memory = { - type = grand_wedding_death_at_wedding - participants = { - dead_spouse = scope:dead_spouse - } - } - error_log = "Invalidating [activity.GetName] of [activity.GetOwner.GetLogName] because a spouse is dead" - } - - option = { - name = ep2_wedding.0910.a - } - - after = { - if = { - limit = { - has_variable = gwedding_gold_recoup_value - } - remove_variable = gwedding_gold_recoup_value - } - remove_variable = promised_grand_wedding_by - if = { - limit = { - has_character_modifier = wedding_fertility_delay_modifier - } - remove_character_modifier = wedding_fertility_delay_modifier - } - } -} - -# If the host who is a spouse dies, notify the heir -ep2_wedding.0915 = { - type = character_event - title = ep2_wedding.0900.t - desc = ep2_wedding.0915.desc - theme = family - left_portrait = { - character = root - animation = sadness - } - lower_center_portrait = scope:previous_host - - immediate = { - # The wedding is invalidated: get a refund - custom_tooltip = { - text = ep2_wedding.9015.tt - add_gold = scope:previous_host.var:gwedding_gold_recoup_value - } - } - - option = { - name = ep2_wedding.0915.a - } - - after = { - if = { - limit = { - has_variable = gwedding_gold_recoup_value - } - remove_variable = gwedding_gold_recoup_value - } - } -} - -# A spouse has been imprisoned: for the prisoner -ep2_wedding.0920 = { - type = character_event - title = ep2_wedding.0900.t - desc = ep2_wedding.0920.desc - theme = prison - left_portrait = { - character = root - triggered_animation = { - trigger = { is_in_prison_type = house_arrest } - animation = prisonhouse - } - triggered_animation = { - trigger = { is_in_prison_type = dungeon } - animation = prisondungeon - } - } - - immediate = { - if = { - limit = { - root = scope:previous_host - } - # The wedding is invalidated: get a refund - custom_tooltip = { - text = ep2_wedding.9000.tt - add_gold = var:gwedding_gold_recoup_value - } - } - create_character_memory = { - type = grand_wedding_missed_wedding_in_prison - participants = { - spouse = scope:free_spouse - } - } - } - - option = { - name = ep2_wedding.0920.a - } - - after = { - if = { - limit = { - has_variable = gwedding_gold_recoup_value - } - remove_variable = gwedding_gold_recoup_value - } - if = { - limit = { - has_character_modifier = wedding_fertility_delay_modifier - } - remove_character_modifier = wedding_fertility_delay_modifier - } - } -} - -# A spouse has been imprisoned: for everyone else -ep2_wedding.0921 = { - type = character_event - title = ep2_wedding.0900.t - desc = ep2_wedding.0921.desc - theme = wedding_ceremony_activity - left_portrait = { - character = root - animation = sadness - } - lower_center_portrait = scope:prisoner_spouse - - immediate = { - if = { - limit = { - root = scope:previous_host - } - # The wedding is invalidated: get a refund - custom_tooltip = { - text = ep2_wedding.9000.tt - add_gold = var:gwedding_gold_recoup_value - } - } - if = { - limit = { - root = scope:free_spouse - } - create_character_memory = { - type = grand_wedding_canceled_in_prison - participants = { - spouse = scope:prisoner_spouse - } - } - } - } - - option = { - name = ep2_wedding.0921.a - } - - after = { - if = { - limit = { - has_variable = gwedding_gold_recoup_value - } - remove_variable = gwedding_gold_recoup_value - } - if = { - limit = { - has_character_modifier = wedding_fertility_delay_modifier - } - remove_character_modifier = wedding_fertility_delay_modifier - } - } -} - -# CONCLUSION - HOST - -ep2_wedding.0950 = { - type = activity_event - title = ep2_wedding.0950.t - desc = ep2_wedding.0950.desc - theme = wedding_ceremony_activity - left_portrait = { - trigger = { - NOR = { - root = scope:spouse_1 - root = scope:spouse_2 - } - } - character = root - animation = happiness - } - center_portrait = { - character = scope:spouse_1 - animation = wedding_bride_left - camera = camera_event_left_wedding - } - right_portrait = { - character = scope:spouse_2 - animation = wedding_groom_right - camera = camera_event_right_wedding - } - - immediate = { - play_sound_effect = "event:/DLC/EP2/SFX/Stingers/Grand_Activities/ep2_mx_sting_wedding_end" - play_music_cue = weddingend_cue - show_as_tooltip = { - scope:spouse_1 = { marry = scope:spouse_2 } - tooltip_disburse_wedding_host_activity_rewards = yes - } - save_scope_as = root_scope - # if the host is also a spouse, we disburse the special host-spouse rewards to the host, and the regular spouse rewards to the other spouse - if = { - limit = { - OR = { - root = scope:spouse_1 - root = scope:spouse_2 - } - } - show_as_tooltip = { disburse_wedding_spouse_host_activity_rewards = yes } - } - else = { #the spouses already had a memory created during the ceremony - create_character_memory = { - type = grand_wedding_completed_host - participants = { - spouse_1 = scope:spouse_1 - spouse_2 = scope:spouse_2 - } - } - } - } - - option = { - name = ep2_wedding.0950.a - } -} - -# CONCLUSION - SPOUSES - -ep2_wedding.0960 = { - type = activity_event - title = ep2_wedding.0950.t - desc = ep2_wedding.0960.desc - theme = wedding_ceremony_activity - left_portrait = { - character = scope:spouse_1 - animation = wedding_bride_left - camera = camera_event_left_wedding - } - right_portrait = { - character = scope:spouse_2 - animation = wedding_groom_right - camera = camera_event_right_wedding - } - - immediate = { - play_sound_effect = "event:/DLC/EP2/SFX/Stingers/Grand_Activities/ep2_mx_sting_wedding_end" - play_music_cue = weddingend_cue - save_scope_as = root_scope - show_as_tooltip = { - scope:spouse_1 = { marry = scope:spouse_2 } - disburse_wedding_spouse_activity_rewards = yes - } - if = { - limit = { - root = scope:spouse_1 - } - scope:spouse_2 = { save_scope_as = other_spouse } - } - else_if = { - limit = { - root = scope:spouse_2 - } - scope:spouse_1 = { save_scope_as = other_spouse } - } - } - - option = { - name = ep2_wedding.0950.a - } -} - -# CONCLUSION - GUESTS - -ep2_wedding.0970 = { - type = activity_event - title = ep2_wedding.0950.t - desc = ep2_wedding.0970.desc - theme = wedding_ceremony_activity - left_portrait = { - character = scope:spouse_1 - animation = wedding_bride_left - camera = camera_event_left_wedding - } - right_portrait = { - character = scope:spouse_2 - animation = wedding_groom_right - camera = camera_event_right_wedding - } - - immediate = { - play_sound_effect = "event:/DLC/EP2/SFX/Stingers/Grand_Activities/ep2_mx_sting_wedding_end" - play_music_cue = weddingend_cue - save_scope_as = root_scope - show_as_tooltip = { - scope:spouse_1 = { marry = scope:spouse_2 } - tooltip_disburse_wedding_guest_activity_rewards = yes - } - create_character_memory = { - type = grand_wedding_completed_guest - participants = { - spouse_1 = scope:spouse_1 - spouse_2 = scope:spouse_2 - } - } - } - - option = { - name = ep2_wedding.0970.a - } -} - -# INVALIDATION - SPOUSE DISAPPEARS -ep2_wedding.0997 = { - type = character_event - title = ep2_wedding.0900.t - desc = { - desc = ep2_wedding.0997.desc_intro - first_valid = { - triggered_desc = { - trigger = { - OR = { - root = scope:spouse_1 - root = scope:spouse_2 - } - } - desc = ep2_wedding.0997.desc_spouse - } - desc = ep2_wedding.0997.desc_generic - } - } - - theme = realm - - left_portrait = { - character = root - animation = sadness - } - - option = { - name = ep2_wedding.0998.a - } -} - -# FALLBACK INVALIDATION -ep2_wedding.0998 = { - type = character_event - title = ep2_wedding.0900.t - desc = ep2_wedding.0998.desc - theme = realm - - left_portrait = { - character = root - animation = sadness - } - - immediate = { - # we should never get this far. If it happens, just get a free pass out of the Grand Wedding Promise since something has gone wrong - if = { - limit = { - exists = scope:spouse_1 - exists = scope:spouse_2 - } - show_as_tooltip = { - scope:spouse_1 = { - break_betrothal = scope:spouse_2 - } - } - } - } - - option = { - name = ep2_wedding.0998.a - } -} - -# INVALIDATION - HOST TIER TOO LOW -ep2_wedding.0999 = { - type = character_event - title = ep2_wedding.0999.t - desc = ep2_wedding.0999.desc - theme = realm - - left_portrait = { - character = scope:host - animation = grief - } - - immediate = { - } - - option = { - name = ep2_wedding.0999.a - } -} - -# CEREMONY EVENTS - -################################################## -# Artistic Differences -# by Claudia Baldassi -# ep2_wedding.1000 -################################################## - -# The other party arrives early and criticizes your chosen options. - -scripted_trigger ep2_wedding_1000_valid_relative_trigger = { - is_alive = yes - is_ai = yes - is_participant_in_activity = scope:activity - age >= 10 - location = root.location - NOT = { has_character_flag = busy_in_wgathering_event } -} - -ep2_wedding.1000 = { - type = activity_event - title = ep2_wedding.1000.t - desc = { - desc = ep2_wedding.1000.desc - random_valid = { - triggered_desc = { - trigger = { - scope:activity = { - has_activity_option = { - category = wedding_option_decoration - option = wedding_decoration_bad - } - } - } - desc = ep2_wedding.1000.desc_servants - } - triggered_desc = { - trigger = { - scope:activity = { - has_activity_option = { - category = wedding_option_decoration - option = wedding_decoration_good - } - } - } - desc = ep2_wedding.1000.desc_dec - } - triggered_desc = { - trigger = { - scope:activity = { - has_activity_option = { - category = wedding_option_decoration - option = wedding_decoration_bad - } - } - } - desc = ep2_wedding.1000.desc_dec_low - } - triggered_desc = { - trigger = { - scope:activity = { - has_activity_option = { - category = wedding_option_entertainment - option = wedding_entertainment_good - } - } - } - desc = ep2_wedding.1000.desc_entertainment - } - desc = ep2_wedding.1000.desc_fallback - } - } - theme = wedding_ceremony_activity - left_portrait = { - character = root - animation = eyeroll - } - right_portrait = { - character = scope:1000_relative - animation = disapproval - } - - cooldown = { years = 5 } - - weight_multiplier = { - base = 1 - modifier = { - scope:activity.special_guest:spouse_2 = { - any_close_family_member = { - is_alive = yes - is_ai = yes - is_participant_in_activity = scope:activity - has_trait = fickle - } - } - add = 1 - } - modifier = { - scope:activity.special_guest:spouse_2 = { - any_close_family_member = { - is_alive = yes - is_ai = yes - is_participant_in_activity = scope:activity - has_trait = arrogant - } - } - add = 3 - } - modifier = { - has_activity_intent = reduce_stress_intent - add = 2 - } - modifier = { - scope:activity.special_guest:spouse_2 = { - any_close_family_member = { - is_alive = yes - is_ai = yes - is_participant_in_activity = scope:activity - root.intent_target ?= this - } - } - add = 3 - } - modifier = { - scope:activity.special_guest:spouse_2 ?= { - house_has_feud_relation_with_trigger = { TARGET = scope:activity.special_guest:spouse_1 } - } - add = 5 - } - } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - - scope:host = root - location = scope:activity.activity_location - scope:activity.special_guest:spouse_1 = root - - scope:activity.special_guest:spouse_2 = { - any_close_family_member = { - ep2_wedding_1000_valid_relative_trigger = yes - } - } - } - - immediate = { - add_character_flag = busy_in_wgathering_event - - scope:activity.special_guest:spouse_1 = { - save_scope_as = spouse_1 - } - scope:activity.special_guest:spouse_2 = { - save_scope_as = spouse_2 - } - - scope:spouse_2 = { - random_close_family_member = { - limit = { - ep2_wedding_1000_valid_relative_trigger = yes - root.intent_target ?= this - } - alternative_limit = { - ep2_wedding_1000_valid_relative_trigger = yes - } - save_scope_as = 1000_relative - add_character_flag = busy_in_wgathering_event - } - } - } - - # Option A: mediate - option = { - name = ep2_wedding.1000.a - duel = { - skill = diplomacy - target = scope:1000_relative - - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = ep2_wedding.1000.a.success - send_interface_toast = { - title = ep2_wedding.1000.a.success.tt - left_icon = root - right_icon = scope:1000_relative - scope:activity = { - add_activity_log_entry = { - key = wedding_artistic_mediate_log - tags = { good } - score = 20 - character = root - target = scope:1000_relative - - # Effect - root = { - reverse_add_opinion = { - target = scope:1000_relative - modifier = impressed_opinion - opinion = 20 - } - add_prestige = minor_prestige_gain - stress_impact = { - base = minor_stress_impact_loss - impatient = minor_stress_impact_gain - arrogant = minor_stress_impact_gain - } - } - } - } - } - } - - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = ep2_wedding.1000.a.failure - send_interface_toast = { - title = ep2_wedding.1000.a.failure.tt - left_icon = root - right_icon = scope:1000_relative - scope:activity = { - add_activity_log_entry = { - key = wedding_artistic_mediate_fail_log - tags = { bad } - score = 20 - character = root - target = scope:1000_relative - } - root = { - stress_impact = { - base = minor_stress_impact_gain - impatient = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - } - } - } - } - } - } - - ai_chance = { - base = 100 - modifier = { - add = -50 - has_trait = impatient - } - modifier = { - add = -50 - has_trait = arrogant - } - } - } - - # Option B: insult - option = { - name = ep2_wedding.1000.b - scope:activity = { - add_activity_log_entry = { - key = wedding_artistic_insult_log - tags = { bad } - score = 20 - character = root - target = scope:1000_relative - - # Effect - root = { - reverse_add_opinion = { - target = scope:1000_relative - modifier = insult_opinion - opinion = -20 - } - add_dread = minor_dread_gain - } - } - } - - stress_impact = { - patient = medium_stress_impact_gain - humble = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - modifier = { - add = -50 - has_trait = patient - } - modifier = { - add = -50 - has_trait = humble - } - } - } - - #Option C: I don't care - option = { - name = ep2_wedding.1000.c - trigger = { - has_activity_intent = reduce_stress_intent - } - reason = activity_intent - stress_impact = { - base = minor_stress_impact_loss - } - ai_chance = { - base = 80 - modifier = { - has_trait = lazy - add = 100 - } - } - } - - after = { - remove_character_flag = busy_in_wgathering_event - scope:1000_relative = { remove_character_flag = busy_in_wgathering_event } - } -} - -################################################## -# A Magnificent Welcome -# by Claudia Baldassi -# ep2_wedding.1010 -################################################## - -# You have an occasion to kickstart your Diplomacy/Seduce targeting efforts - -ep2_wedding.1010 = { - type = activity_event - title = ep2_wedding.1010.t - desc = { - desc = ep2_wedding.1010.desc - first_valid = { - triggered_desc = { - trigger = { - has_activity_intent = diplomatic_intent - } - desc = ep2_wedding.1010.diplo - } - triggered_desc = { - trigger = { - has_activity_intent = woo_attendee_intent - } - desc = ep2_wedding.1010.seduce - } - triggered_desc = { - trigger = { - exists = scope:1010_match - } - desc = ep2_wedding.1010.match - } - } - } - theme = wedding_ceremony_activity - left_portrait = { - character = root - animation = happiness - } - center_portrait = { - trigger = { - exists = scope:1010_match - } - character = scope:1010_match - animation = boredom - } - right_portrait = { - character = scope:1010_target - animation = dismissal - } - - cooldown = { years = 5 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - - OR = { - has_activity_intent = diplomatic_intent - has_activity_intent = woo_attendee_intent - } - - scope:host = root - intent_target.location = root.location - - intent_target = { - is_ai = yes - NOT = { has_character_flag = busy_in_wgathering_event } - } - } - - immediate = { - intent_target = { - save_scope_as = 1010_target - add_character_flag = busy_in_wgathering_event - } - if = { - limit = { - any_child = { - is_adult = no - is_betrothed = no - is_participant_in_activity = scope:activity - is_ai = yes - NOT = { has_character_flag = busy_in_wgathering_event } - } - } - random_child = { - limit = { - is_adult = no - is_betrothed = no - is_participant_in_activity = scope:activity - is_ai = yes - NOT = { has_character_flag = busy_in_wgathering_event } - } - save_scope_as = 1010_match - add_character_flag = busy_in_wgathering_event - } - } - add_character_flag = busy_in_wgathering_event - } - - #Option A: gardens - option = { - name = ep2_wedding.1010.a - random_list = { - # target is impressed - 60 = { - modifier = { - scope:activity.activity_location.county = { - development_level >= medium_development_level - } - add = 15 - } - modifier = { - has_trait = lifestyle_gardener - add = 25 - } - modifier = { - has_trait = lifestyle_herbalist - add = 25 - } - modifier = { - any_court_position_holder = { - type = court_gardener_court_position - } - add = 40 - } - modifier = { - scope:activity.activity_location = { - has_building_or_higher = orchards_01 - } - add = 20 - } - modifier = { - scope:activity.activity_location = { - has_building_or_higher = royal_garden_01 - } - add = 50 - } - desc = ep2_wedding.1010.a.success - send_interface_toast = { - title = ep2_wedding.1010.a.success.tt - left_icon = scope:1010_target - scope:activity = { - add_activity_log_entry = { - key = wedding_welcome_garden_log - tags = { good } - score = 20 - character = root - target = scope:1010_target - - # Effect - root = { - reverse_add_opinion = { - target = scope:1010_target - modifier = impressed_opinion - opinion = 20 - } - if = { - limit = { - has_activity_intent = woo_attendee_intent - can_set_relation_lover_trigger = { CHARACTER = scope:1010_target } - } - progress_towards_lover_effect = { - REASON = lover_atmospheric_location - CHARACTER = scope:1010_target - OPINION = default_lover_opinion - } - } - } - } - } - stress_impact = { - base = minor_stress_impact_loss - lustful = medium_stress_impact_loss - arrogant = medium_stress_impact_loss - ambitious = medium_stress_impact_loss - } - } - } - #target is not impressed - 40 = { - modifier = { - diplomacy < 10 - add = 10 - } - modifier = { - stewardship < 10 - add = 10 - } - modifier = { - scope:activity.activity_location.county = { - development_level <= bad_development_level - } - add = 30 - } - desc = ep2_wedding.1010.a.failure - send_interface_toast = { - title = ep2_wedding.1010.a.failure.tt - left_icon = scope:1010_target - scope:activity = { - add_activity_log_entry = { - key = wedding_welcome_garden_fail_log - tags = { bad } - score = 20 - character = root - target = scope:1010_target - - # Effect - root = { - reverse_add_opinion = { - target = scope:1010_target - modifier = bored_opinion - opinion = -20 - } - stress_impact = { - base = minor_stress_impact_gain - lustful = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - ambitious = medium_stress_impact_gain - } - } - } - } - } - } - } - ai_chance = { - base = 100 - modifier = { - scope:activity.activity_location.county = { - development_level >= medium_development_level - } - add = 15 - } - modifier = { - has_trait = lifestyle_gardener - add = 25 - } - modifier = { - has_trait = lifestyle_herbalist - add = 25 - } - modifier = { - any_court_position_holder = { - type = court_gardener_court_position - } - add = 40 - } - modifier = { - scope:activity.activity_location = { - has_building_or_higher = orchards_01 - } - add = 20 - } - modifier = { - scope:activity.activity_location = { - has_building_or_higher = royal_garden_01 - } - add = 50 - } - } - } - - #Option B: venue - option = { - name = ep2_wedding.1010.b - random_list = { - # target is impressed - 60 = { - modifier = { - scope:activity = { - has_activity_option = { - category = wedding_option_decoration - option = wedding_decoration_good - } - } - add = 10 - } - modifier = { - scope:activity = { - has_activity_option = { - category = wedding_option_food - option = wedding_food_good - } - } - add = 10 - } - modifier = { - scope:activity = { - has_activity_option = { - category = wedding_option_entertainment - option = wedding_entertainment_good - } - } - add = 10 - } - desc = ep2_wedding.1010.b.success - send_interface_toast = { - title = ep2_wedding.1010.a.success.tt - left_icon = scope:1010_target - scope:activity = { - add_activity_log_entry = { - key = wedding_welcome_ceremony_log - tags = { good } - score = 20 - character = root - target = scope:1010_target - - # Effect - root = { - reverse_add_opinion = { - target = scope:1010_target - modifier = impressed_opinion - opinion = 20 - } - if = { - limit = { - has_activity_intent = woo_attendee_intent - can_set_relation_lover_trigger = { CHARACTER = scope:1010_target } - } - progress_towards_lover_effect = { - REASON = lover_atmospheric_location - CHARACTER = scope:1010_target - OPINION = default_lover_opinion - } - } - } - } - } - stress_impact = { - base = minor_stress_impact_loss - lustful = medium_stress_impact_loss - arrogant = medium_stress_impact_loss - ambitious = medium_stress_impact_loss - } - } - } - #target is not impressed - 40 = { - modifier = { - scope:activity = { - has_activity_option = { - category = wedding_option_decoration - option = wedding_decoration_bad - } - } - add = 10 - } - modifier = { - scope:activity = { - has_activity_option = { - category = wedding_option_food - option = wedding_food_bad - } - } - add = 10 - } - modifier = { - scope:activity = { - has_activity_option = { - category = wedding_option_entertainment - option = wedding_entertainment_bad - } - } - add = 10 - } - desc = ep2_wedding.1010.b.failure - send_interface_toast = { - title = ep2_wedding.1010.a.failure.tt - left_icon = scope:1010_target - scope:activity = { - add_activity_log_entry = { - key = wedding_welcome_ceremony_fail_log - tags = { bad } - score = 20 - character = root - target = scope:1010_target - - # Effect - root = { - reverse_add_opinion = { - target = scope:1010_target - modifier = bored_opinion - opinion = -20 - } - stress_impact = { - base = minor_stress_impact_gain - lustful = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - ambitious = medium_stress_impact_gain - } - } - } - } - } - } - } - ai_chance = { - base = 100 - modifier = { - scope:activity = { - has_activity_option = { - category = wedding_option_decoration - option = wedding_decoration_good - } - } - add = 10 - } - modifier = { - scope:activity = { - has_activity_option = { - category = wedding_option_food - option = wedding_food_good - } - } - add = 10 - } - modifier = { - scope:activity = { - has_activity_option = { - category = wedding_option_entertainment - option = wedding_entertainment_good - } - } - add = 10 - } - } - } - - #Option C: nevermind - option = { - name = ep2_wedding.1010.c - reverse_add_opinion = { - target = scope:1010_target - modifier = feeling_welcome_opinion - opinion = 5 - } - stress_impact = { - base = minor_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - has_trait = lazy - add = 50 - } - } - } - after = { - remove_character_flag = busy_in_wgathering_event - scope:1010_target = { remove_character_flag = busy_in_wgathering_event } - if = { - limit = { - exists = scope:1010_match - } - scope:1010_match = { remove_character_flag = busy_in_wgathering_event } - } - } -} - -################################################## -# A Proper Match -# by Claudia Baldassi -# ep2_wedding.1080 -################################################## - -# Lay the ground for the matchmaking - -ep2_wedding.1080 = { - type = activity_event - title = ep2_wedding.1080.t - desc = { - desc = ep2_wedding.1080.desc - triggered_desc = { - trigger = { - exists = scope:matchmaking_2 - } - desc = ep2_wedding.1080.desc_2 - } - } - theme = wedding_ceremony_activity - left_portrait = { - character = root - animation = personality_rational - } - right_portrait = { - character = scope:1080_target - animation = happiness - } - lower_left_portrait = scope:matchmaking_1 - lower_center_portrait = scope:matchmaking_2 - - cooldown = { years = 5 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - - has_activity_intent = matchmaking_intent - - intent_target.location = root.location - location = scope:activity.activity_location - - intent_target = { - has_activity_state = passive - is_ai = yes - NOT = { has_character_flag = busy_in_wgathering_event } - } - - scope:activity = { - any_attending_character = { - is_ai = yes - location = root.location - has_activity_state = passive - can_marry_character_trigger = { CHARACTER = root.intent_target } - NOR = { - exists = betrothed - has_character_flag = busy_in_wgathering_event - is_close_or_extended_family_of = root.intent_target - } - trigger_if = { - limit = { - is_female = yes - } - age < marriage_female_fertility_cutoff_age_value - } - } - } - } - - weight_multiplier = { - base = 1 - } - - immediate = { - intent_target = { save_scope_as = 1080_target } - scope:1080_target = { add_character_flag = busy_in_wgathering_event } - add_character_flag = busy_in_wgathering_event - scope:activity = { - random_attending_character = { - limit = { - is_ai = yes - location = root.location - has_activity_state = passive - can_marry_character_trigger = { CHARACTER = root.intent_target } - NOR = { - exists = betrothed - has_character_flag = busy_in_wgathering_event - is_close_or_extended_family_of = root.intent_target - } - trigger_if = { - limit = { - is_female = yes - } - age < marriage_female_fertility_cutoff_age_value - } - } - save_scope_as = matchmaking_1 - add_character_flag = busy_in_wgathering_event - } - } - if = { - limit = { - scope:activity = { - any_attending_character = { - is_ai = yes - location = root.location - has_activity_state = passive - can_marry_character_trigger = { CHARACTER = root.intent_target } - NOR = { - exists = betrothed - has_character_flag = busy_in_wgathering_event - is_close_or_extended_family_of = root.intent_target - this = scope:matchmaking_1 - } - trigger_if = { - limit = { - is_female = yes - } - age < marriage_female_fertility_cutoff_age_value - } - } - } - } - scope:activity = { - random_attending_character = { - limit = { - is_ai = yes - location = root.location - has_activity_state = passive - can_marry_character_trigger = { CHARACTER = root.intent_target } - NOR = { - exists = betrothed - has_character_flag = busy_in_wgathering_event - is_close_or_extended_family_of = root.intent_target - this = scope:matchmaking_1 - } - trigger_if = { - limit = { - is_female = yes - } - age < marriage_female_fertility_cutoff_age_value - } - } - save_scope_as = matchmaking_2 - add_character_flag = busy_in_wgathering_event - } - } - } - } - - #Option A: Introduce to matchmaking_1 - option = { - name = ep2_wedding.1080.a - scope:1080_target = { - duel = { - skill = diplomacy - target = scope:matchmaking_1 - 60 = { # success - the matchmaking continues - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = ep2_wedding.1080.a.success - root = { - send_interface_toast = { - title = ep2_wedding.1080.a.success.tt - left_icon = scope:1080_target - right_icon = scope:matchmaking_1 - scope:activity = { - add_activity_log_entry = { - key = wedding_propermatch_court_log - tags = { good } - score = 20 - character = scope:1080_target - target = scope:matchmaking_1 - - # Effect - scope:matchmaking_1 = { - add_opinion = { - target = scope:1080_target - modifier = impressed_opinion - opinion = 20 - } - } - } - } - } - } - scope:1080_target = { - set_variable = { - name = wedding_good_match - value = scope:matchmaking_1 - } - } - } - 40 = { # failure - you'll have to start again with someone else - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = ep2_wedding.1080.a.failure - root = { - send_interface_toast = { - title = ep2_wedding.1080.a.failure.tt - left_icon = scope:1080_target - right_icon = scope:matchmaking_1 - scope:activity = { - add_activity_log_entry = { - key = wedding_propermatch_court_fail_log - tags = { bad } - score = 20 - character = scope:1080_target - target = scope:matchmaking_1 - } - } - } - } - scope:1080_target = { - set_variable = { - name = wedding_no_match - value = scope:matchmaking_1 - } - } - } - } - } - ai_chance = { - base = 200 - } - } - - #Option B: Introduce to matchmaking_2 - option = { - trigger = { - exists = scope:matchmaking_2 - } - name = ep2_wedding.1080.b - scope:1080_target = { - duel = { - skill = diplomacy - target = scope:matchmaking_2 - 50 = { # success - the matchmaking continues - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = ep2_wedding.1080.b.success - root = { - send_interface_toast = { - title = ep2_wedding.1080.a.success.tt - left_icon = scope:1080_target - right_icon = scope:matchmaking_2 - scope:activity = { - add_activity_log_entry = { - key = wedding_propermatch_court_log - tags = { good } - score = 20 - character = scope:1080_target - target = scope:matchmaking_2 - - # Effect - scope:matchmaking_2 = { - add_opinion = { - target = scope:1080_target - modifier = impressed_opinion - opinion = 20 - } - } - } - } - } - } - scope:1080_target = { - set_variable = { - name = wedding_good_match - value = scope:matchmaking_2 - } - } - } - 50 = { # failure - you'll have to start again with someone else - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = ep2_wedding.1080.b.failure - root = { - send_interface_toast = { - title = ep2_wedding.1080.a.failure.tt - left_icon = scope:1080_target - right_icon = scope:matchmaking_2 - scope:activity = { - add_activity_log_entry = { - key = wedding_propermatch_court_fail_log - tags = { bad } - score = 20 - character = scope:1080_target - target = scope:matchmaking_2 - } - } - } - } - scope:1080_target = { - set_variable = { - name = wedding_no_match - value = scope:matchmaking_2 - } - } - } - } - } - ai_chance = { - base = 200 - } - } - - #Option C: let's keep looking - option = { - name = ep2_wedding.1080.c - flavor = ep2_wedding.1080.c.tt - ai_chance = { - base = 100 - modifier = { - has_trait = fickle - add = 25 - } - } - } - after = { - remove_character_flag = busy_in_wgathering_event - scope:1080_target = { remove_character_flag = busy_in_wgathering_event } - scope:matchmaking_1 = { remove_character_flag = busy_in_wgathering_event } - if = { - limit = { exists = scope:matchmaking_2 } - scope:matchmaking_2 = { remove_character_flag = busy_in_wgathering_event } - } - } -} - -################################################## -# A Ritual Wash -# by Claudia Baldassi -# ep2_wedding.1100 -################################################## - -# Northern wedding: the bride goes to a bathhouse with the married women of her family: removal of clothes and kransen (golden circlet) - -ep2_wedding.1100 = { - type = activity_event - title = ep2_wedding.1100.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - OR = { - root = scope:activity.special_guest:spouse_1 - root = scope:activity.special_guest:spouse_2 - } - } - desc = ep2_wedding.1100.desc_bride - } - desc = ep2_wedding.1100.desc_relative - } - triggered_desc = { - trigger = { - exists = scope:guest_3 - } - desc = ep2_wedding.1100.desc_extra_guest - } - } - theme = wedding_ceremony_activity - left_portrait = { - character = scope:bride - animation = personality_content - } - center_portrait = { - character = scope:guest_2 - animation = admiration - } - right_portrait = { - character = scope:guest_1 - animation = wedding_happy_cry - } - lower_center_portrait = scope:guest_3 - - cooldown = { years = 5 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - - scope:activity = { - NOT = { has_variable = has_had_event_1100 } - } - - culture = { has_cultural_pillar = heritage_north_germanic } - is_female = yes - is_ai = no - OR = { - AND = { - this = scope:activity.special_guest:spouse_1 - any_spouse = { - even_if_dead = yes - NOT = { exists = this } - } - any_former_spouse = { - even_if_dead = yes - NOT = { exists = this } - } - } - AND = { - this = scope:activity.special_guest:spouse_2 - any_spouse = { - even_if_dead = yes - NOT = { exists = this } - } - any_former_spouse = { - even_if_dead = yes - NOT = { exists = this } - } - } - AND = { - is_close_or_extended_family_of = scope:activity.special_guest:spouse_1 - scope:activity.special_guest:spouse_1 = { is_female = yes } - is_married = yes - } - AND = { - is_close_or_extended_family_of = scope:activity.special_guest:spouse_2 - scope:activity.special_guest:spouse_2 = { is_female = yes } - is_married = yes - } - } - trigger_if = { - limit = { - scope:activity.special_guest:spouse_1 = { - is_female = yes - } - } - scope:activity = { - any_attending_character = { - culture = { has_cultural_pillar = heritage_north_germanic } - is_female = yes - is_close_or_extended_family_of = scope:activity.special_guest:spouse_1 - is_married = yes - save_temporary_scope_as = guest_1 - } - } - scope:activity = { - any_attending_character = { - culture = { has_cultural_pillar = heritage_north_germanic } - is_female = yes - is_close_or_extended_family_of = scope:activity.special_guest:spouse_1 - is_married = yes - this != scope:guest_1 - } - } - } - trigger_else = { - scope:activity = { - any_attending_character = { - culture = { has_cultural_pillar = heritage_north_germanic } - is_female = yes - is_close_or_extended_family_of = scope:activity.special_guest:spouse_2 - is_married = yes - is_ai = yes - save_temporary_scope_as = guest_1 - } - } - scope:activity = { - any_attending_character = { - culture = { has_cultural_pillar = heritage_north_germanic } - is_female = yes - is_close_or_extended_family_of = scope:activity.special_guest:spouse_2 - is_married = yes - is_ai = yes - this != scope:guest_1 - } - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - has_activity_intent = reduce_stress_intent - add = 2 - } - modifier = { - is_ai = no - factor = 2 - } - } - - immediate = { - scope:activity = { - set_variable = has_had_event_1100 - } - if = { - limit = { - OR = { - root = scope:activity.special_guest:spouse_1 - root = scope:activity.special_guest:spouse_2 - } - } - save_scope_as = bride - } - else_if = { - limit = { - scope:activity.special_guest:spouse_1 = { is_female = yes } - } - scope:activity.special_guest:spouse_1 = { save_scope_as = bride } - root = { save_scope_as = guest_1 } - } - else = { - scope:activity.special_guest:spouse_2 = { save_scope_as = bride } - root = { save_scope_as = guest_1 } - } - scope:bride = { - add_character_flag = busy_in_wgathering_event - } - scope:activity = { - random_attending_character = { - limit = { - culture = { has_cultural_pillar = heritage_north_germanic } - is_female = yes - is_close_or_extended_family_of = scope:bride - is_married = yes - is_ai = yes - NOR = { - has_character_flag = busy_in_wgathering_event - this = scope:guest_1 - } - } - if = { - limit = { - exists = scope:guest_1 - } - save_scope_as = guest_2 - } - else = { - save_scope_as = guest_1 - } - } - random_attending_character = { - limit = { - culture = { has_cultural_pillar = heritage_north_germanic } - is_female = yes - is_close_or_extended_family_of = scope:bride - is_married = yes - is_ai = yes - NOR = { - has_character_flag = busy_in_wgathering_event - this = scope:guest_1 - this = scope:guest_2 - } - } - if = { - limit = { - exists = scope:guest_2 - } - save_scope_as = guest_3 - } - else = { - save_scope_as = guest_2 - } - } - } - scope:guest_1 = { add_character_flag = busy_in_wgathering_event } - scope:guest_2 = { add_character_flag = busy_in_wgathering_event } - if = { - limit = { - exists = scope:guest_3 - } - scope:guest_3 = { add_character_flag = busy_in_wgathering_event } - } - } - - #Option A: follow tradition - option = { - name = ep2_wedding.1100.a - scope:activity = { - add_activity_log_entry = { - key = wedding_cleansing_log - tags = { good } - score = 50 - character = scope:bride - - # Effect - scope:bride = { - add_character_modifier = { - modifier = wedding_purified_modifier - years = 5 - } - } - } - } - scope:guest_1 = { - add_character_modifier = { - modifier = wedding_purified_modifier - years = 5 - } - } - scope:guest_2 = { - add_character_modifier = { - modifier = wedding_purified_modifier - years = 5 - } - } - if = { - limit = { exists = scope:guest_3 } - scope:guest_3 = { - add_character_modifier = { - modifier = wedding_purified_modifier - years = 5 - } - } - } - if = { - limit = { - scope:bride = { - any_vassal = { vassal_stance = courtly } - } - } - scope:bride = { - every_vassal = { - vassal_stance = courtly - add_opinion = { - target = scope:bride - modifier = wedding_traditional_ritual_opinion - } - } - } - } - else_if = { - limit = { - scope:bride.betrothed = { - any_vassal = { vassal_stance = courtly } - } - } - scope:bride.betrothed = { - every_vassal = { - vassal_stance = courtly - add_opinion = { - target = scope:bride - modifier = wedding_traditional_ritual_opinion - } - } - } - } - ai_chance = { - base = 100 - } - } - - #Option B: try something new - option = { - name = ep2_wedding.1100.b - trigger = { - this = scope:bride - } - random_list = { - 25 = {} #nothing happens - 25 = { - show_chance = no - trigger = { - can_set_relation_friend_trigger = { CHARACTER = scope:guest_1 } - } - set_relation_friend = { - target = scope:guest_1 - reason = friend_wedding_ritual - } - } - 25 = { - show_chance = no - trigger = { - can_set_relation_friend_trigger = { CHARACTER = scope:guest_2 } - } - set_relation_friend = { - target = scope:guest_2 - reason = friend_wedding_ritual - } - } - 25 = { - show_chance = no - trigger = { - exists = scope:guest_3 - can_set_relation_friend_trigger = { CHARACTER = scope:guest_3 } - } - set_relation_friend = { - target = scope:guest_3 - reason = friend_wedding_ritual - } - } - } - scope:activity = { - add_activity_log_entry = { - key = wedding_cleansing_new_log - tags = { good } - score = 50 - character = scope:bride - - # Effect - } - } - stress_impact = { - shy = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - } - } - - #Option D: just enjoy the bath - option = { - name = ep2_wedding.1100.d - trigger = { - has_activity_intent = reduce_stress_intent - this = scope:bride - } - reason = activity_intent - stress_impact = { - base = minor_stress_impact_loss - } - ai_chance = { - base = 150 - modifier = { - has_trait = lazy - add = 100 - } - } - } - - #Option C: this is dumb - option = { - name = ep2_wedding.1100.c - if = { - limit = { - this = scope:bride - any_vassal = { vassal_stance = courtly } - } - every_vassal = { - vassal_stance = courtly - add_opinion = { - target = root - modifier = wedding_no_ritual_opinion - } - } - } - else_if = { - limit = { - this = scope:bride - betrothed = { - any_vassal = { - vassal_stance = courtly - } - } - } - betrothed = { - every_vassal = { - vassal_stance = courtly - add_opinion = { - target = scope:bride - modifier = wedding_no_ritual_opinion - } - } - } - } - else_if = { - limit = { - this != scope:bride - } - scope:bride = { - add_opinion = { - target = root - modifier = annoyed_opinion - opinion = -20 - } - if = { - limit = { - NOT = { has_relation_rival = root } - } - progress_towards_rival_effect = { - REASON = rival_despised_ritual - CHARACTER = root - OPINION = 0 - } - } - } - } - add_character_modifier = { - modifier = wedding_thinking_outside_box_modifier - years = 10 - } - stress_impact = { - zealous = medium_stress_impact_gain - cynical = medium_stress_impact_loss - } - if = { - limit = { root = scope:bride } - scope:activity = { - add_activity_log_entry = { - key = wedding_cleansing_dismiss_log - tags = { good } - score = 50 - character = scope:bride - } - } - } - else = { - scope:activity = { - add_activity_log_entry = { - key = wedding_cleansing_log - tags = { good } - score = 50 - character = scope:bride - } - } - } - ai_chance = { - base = 75 - modifier = { - has_trait = cynical - add = 25 - } - modifier = { - has_trait = zealous - add = -25 - } - } - } - - after = { - scope:bride = { remove_character_flag = busy_in_wgathering_event } - scope:guest_1 = { remove_character_flag = busy_in_wgathering_event } - scope:guest_2 = { remove_character_flag = busy_in_wgathering_event } - if = { - limit = { - exists = scope:guest_3 - } - scope:guest_3 = { remove_character_flag = busy_in_wgathering_event } - } - } -} - -# CEREMONY EVENTS - -################################################## -# Could it Be You? -# by Claudia Baldassi -# ep2_wedding.1020 -################################################## - -# The spouses fall in love at first sight - -ep2_wedding.1020 = { - type = activity_event - title = ep2_wedding.1020.t - desc = ep2_wedding.1020.desc - theme = wedding_ceremony_activity - left_portrait = { - character = root - animation = ecstasy - } - right_portrait = { - character = scope:spouse_2 - animation = admiration - } - - cooldown = { years = 30 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - - scope:activity = { - NOR = { - has_variable = has_had_event_1020 - has_variable = has_had_event_1180 - } - } - - scope:activity.special_guest:spouse_1 = { - num_of_relation_soulmate = 0 - NOT = { has_character_flag = busy_in_ceremony_event } - } - scope:activity.special_guest:spouse_2 = { - num_of_relation_soulmate = 0 - NOT = { has_character_flag = busy_in_ceremony_event } - } - - root = { - OR = { - this = scope:activity.special_guest:spouse_1 - this = scope:activity.special_guest:spouse_2 - } - } - - scope:activity.special_guest:spouse_1 = { is_attracted_to_gender_of = scope:activity.special_guest:spouse_2 } - scope:activity.special_guest:spouse_2 = { is_attracted_to_gender_of = scope:activity.special_guest:spouse_1 } - scope:activity.special_guest:spouse_1 = { - can_set_relation_soulmate_trigger = { - CHARACTER = scope:activity.special_guest:spouse_2 - } - } - - # They should not know each other, as much as we can verify - scope:activity.special_guest:spouse_1 = { - NOR = { - has_relation_lover = scope:activity.special_guest:spouse_2 - has_relation_friend = scope:activity.special_guest:spouse_2 - has_relation_potential_lover = scope:activity.special_guest:spouse_2 - has_relation_crush = scope:activity.special_guest:spouse_2 - has_relation_potential_friend = scope:activity.special_guest:spouse_2 - } - } - NOT = { - scope:activity.special_guest:spouse_1 = { has_any_bad_relationship_with_character_trigger = { CHARACTER = scope:activity.special_guest:spouse_2 } } - } - - trigger_if = { - limit = { - root = { is_ai = yes } - } - scope:activity.special_guest:spouse_1 = { is_ai = yes } - scope:activity.special_guest:spouse_2 = { is_ai = yes } - } - trigger_else = { - OR = { - scope:activity.special_guest:spouse_1 = { is_ai = yes } - scope:activity.special_guest:spouse_2 = { is_ai = yes } - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - has_activity_intent = woo_attendee_intent - intent_target ?= root.betrothed - add = 1 - } - } - - immediate = { - scope:activity = { - set_variable = has_had_event_1020 - } - if = { - limit = { - root = scope:activity.special_guest:spouse_1 - } - scope:activity.special_guest:spouse_2 = { - save_scope_as = spouse_2 - } - } - else = { - scope:activity.special_guest:spouse_1 = { - save_scope_as = spouse_2 - } - } - add_character_flag = busy_in_ceremony_event - scope:spouse_2 = { add_character_flag = busy_in_ceremony_event } - } - - option = { - name = ep2_wedding.1020.a - scope:activity = { - add_activity_log_entry = { - key = wedding_first_sight_log - tags = { good } - score = 50 - character = root - target = scope:spouse_2 - - # Effect - root = { - set_relation_soulmate = { reason = soulmate_wedding_first_sight target = scope:spouse_2 } - reverse_add_opinion = { - target = scope:spouse_2 - modifier = love_opinion - opinion = 30 - } - if = { - limit = { - has_activity_intent = woo_attendee_intent - intent_target = scope:spouse_2 - } - complete_activity_intent = yes - } - # Achievements - player_succeeded_at_a_thousand_and_one_nights_achievement_effect = yes - } - } - } - } - after = { - remove_character_flag = busy_in_ceremony_event - scope:spouse_2 = { remove_character_flag = busy_in_ceremony_event } - } -} - -################################################## -# A Good/Bad Omen -# by Claudia Baldassi -# ep2_wedding.1030 -################################################## - -# A good or bad omen happens: how do you react? - -ep2_wedding.1030 = { - type = activity_event - title = ep2_wedding.1030.t - desc = { - desc = ep2_wedding.1030.desc - random_valid = { - triggered_desc = { - trigger = { - has_character_flag = good_thing_flag - } - desc = ep2_wedding.1030.desc_good1 - } - triggered_desc = { - trigger = { - has_character_flag = good_thing_flag - } - desc = ep2_wedding.1030.desc_good2 - } - triggered_desc = { - trigger = { - has_character_flag = good_thing_flag - } - desc = ep2_wedding.1030.desc_good3 - } - triggered_desc = { - trigger = { - has_character_flag = bad_thing_flag - } - desc = ep2_wedding.1030.desc_bad1 - } - triggered_desc = { - trigger = { - has_character_flag = bad_thing_flag - } - desc = ep2_wedding.1030.desc_bad2 - } - triggered_desc = { - trigger = { - has_character_flag = bad_thing_flag - } - desc = ep2_wedding.1030.desc_bad3 - } - } - desc = ep2_wedding.1030.desc_outro - first_valid = { - triggered_desc = { - trigger = { - has_character_flag = bad_thing_flag - } - desc = ep2_wedding.1030.desc_bad - } - desc = ep2_wedding.1030.desc_good - } - } - theme = wedding_ceremony_activity - left_portrait = { - character = root - triggered_animation = { - trigger = { - has_character_flag = bad_thing_flag - } - animation = fear - } - animation = happiness - } - right_portrait = { - character = scope:1030_chatter - triggered_animation = { - trigger = { - has_character_flag = bad_thing_flag - } - animation = worry - } - animation = admiration - } - lower_center_portrait = { - character = scope:spouse_2 - } - - cooldown = { years = 5 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - - scope:activity = { - NOT = { - has_variable = has_had_event_1030 - } - } - - scope:activity.special_guest:spouse_2 = { is_ai = yes } - scope:activity = { - any_attending_character = { - is_ai = yes - NOR = { - this = scope:activity.special_guest:spouse_2 - this = root - has_character_flag = busy_in_ceremony_event - } - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - has_character_modifier = bp1_superstition_modifier - add = 3 - } - modifier = { - is_ai = yes - factor = 0.3 - } - modifier = { - has_activity_intent = reduce_stress_intent - add = 1 - } - } - - immediate = { - scope:activity = { - set_variable = has_had_event_1030 - } - hidden_effect = { - random_list = { - 50 = { - add_character_flag = good_thing_flag - } - 50 = { - add_character_flag = bad_thing_flag - } - } - } - scope:activity.special_guest:spouse_2 = { - save_scope_as = spouse_2 - add_character_flag = busy_in_ceremony_event - } - scope:activity.special_guest:spouse_1 = { - save_scope_as = spouse_1 - } - - scope:activity = { - random_attending_character = { - limit = { - NOR = { - scope:spouse_2 = this - root = this - } - is_ai = yes - } - save_scope_as = 1030_chatter - add_character_flag = busy_in_ceremony_event - } - } - - add_character_flag = busy_in_ceremony_event - - random = { - chance = legend_seed_chance_low - add_character_flag = wedding_legend_seed - } - } - - #Option A: good omen - excellent! - option = { - name = ep2_wedding.1030.a - trigger = { - has_character_flag = good_thing_flag - } - scope:activity = { - add_activity_log_entry = { - key = wedding_omen_good_log - tags = { good } - score = 50 - character = root - target = scope:spouse_2 - } - } - if = { - limit = { - has_activity_intent = reduce_stress_intent - } - stress_impact = { - base = medium_stress_impact_loss - } - } - else = { - stress_impact = { - base = minor_stress_impact_loss - } - } - } - - #Option B: dismiss bad omen - option = { - name = ep2_wedding.1030.b - trigger = { - has_character_flag = bad_thing_flag - NOT = { has_character_modifier = bp1_superstition_modifier } - } - if = { - limit = { - ai_rationality >= 40 - } - scope:activity = { - add_activity_log_entry = { - key = wedding_omen_dismissed_log - tags = { bad } - score = 50 - character = root - target = scope:spouse_2 - } - } - if = { - limit = { - has_activity_intent = reduce_stress_intent - } - stress_impact = { - base = minor_stress_impact_loss - } - } - } - else = { - stress_impact = { - base = minor_stress_impact_gain - } - scope:activity = { - add_activity_log_entry = { - key = wedding_omen_bad_log - tags = { bad } - score = 50 - character = root - target = scope:spouse_2 - } - } - } - ai_chance = { - base = 100 - } - } - - #Option c: bad omen - panic - option = { - name = ep2_wedding.1030.c - trigger = { - has_character_flag = bad_thing_flag - has_character_modifier = bp1_superstition_modifier - } - stress_impact = { - base = medium_stress_impact_gain - } - scope:activity = { - add_activity_log_entry = { - key = wedding_omen_bad_log - tags = { bad } - score = 50 - character = root - target = scope:spouse_2 - } - } - ai_chance = { - base = 100 - } - } - - #Option D: good omen - you get a legend seed! - option = { - name = ep2_wedding.1030.d - trigger = { - has_character_flag = good_thing_flag - NOR = { - has_personal_legend_seed = heroic - has_personal_legend_seed = holy - has_personal_legend_seed = legitimizing - } - has_character_flag = wedding_legend_seed - OR = { - scope:spouse_2.dynasty = root.dynasty - scope:spouse_1.dynasty = root.dynasty - } - } - - scope:activity = { - add_activity_log_entry = { - key = wedding_omen_good_log - tags = { good } - score = 50 - character = root - target = scope:spouse_2 - } - } - - legend_seed_great_deed_dynasty_effect = yes - - ai_chance = { #AI can into legend seeds - base = 200 - } - } - - after = { - if = { - limit = { - has_character_flag = good_thing_flag - } - remove_character_flag = good_thing_flag - } - else = { - remove_character_flag = bad_thing_flag - } - remove_character_flag = busy_in_ceremony_event - scope:spouse_2 = { remove_character_flag = busy_in_ceremony_event } - scope:1030_chatter = { remove_character_flag = busy_in_ceremony_event } - } -} - -################################################## -# New Family -# by Claudia Baldassi -# ep2_wedding.1120 -################################################## - -# Spouse: your child from a previous partner makes a fuss - -scripted_trigger ep2_wedding_1120_valid_child_trigger = { - NOR = { - has_trait = child_of_concubine_female - has_trait = child_of_concubine_male - any_parent = { this = root.betrothed } - this = scope:activity.special_guest:spouse_1 - this = scope:activity.special_guest:spouse_2 - } - any_parent = { - even_if_dead = yes - this != root - # polygamy case - trigger_if = { - limit = { is_alive = yes } - NOT = { any_consort = { this = root.betrothed } } - } - save_temporary_scope_as = other_parent - } - age >= 6 - involved_activity ?= { this = scope:activity } - save_temporary_scope_as = trouble_child -} - -ep2_wedding.1120 = { - type = activity_event - title = ep2_wedding.1120.t - desc = { - desc = ep2_wedding.1120.desc - first_valid = { - triggered_desc = { - trigger = { - scope:trouble_child = { - is_adult = no - } - } - desc = ep2_wedding.1120.desc_child - } - desc = ep2_wedding.1120.desc_adult - } - triggered_desc = { - trigger = { - scope:other_parent = { - involved_activity ?= { this = scope:activity } - } - } - desc = ep2_wedding.1120.desc_parent - } - } - theme = wedding_ceremony_activity - left_portrait = { - character = root - animation = shock - } - center_portrait = { - character = scope:other_spouse - animation = worry - } - right_portrait = { - character = scope:trouble_child - animation = wedding_objection_start - } - lower_right_portrait = scope:other_parent - - cooldown = { years = 10 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - - scope:activity = { - NOT = { - has_variable = has_had_event_1120 - } - } - - OR = { - root = scope:activity.special_guest:spouse_1 - root = scope:activity.special_guest:spouse_2 - } - betrothed ?= { - is_ai = yes - } - any_child ?= { - ep2_wedding_1120_valid_child_trigger = yes - } - # if the child's real parent is a secret, make sure that the child knows about it before denouncing it, and they don't like you enough - trigger_if = { - limit = { - any_secret = { - type = secret_unmarried_illegitimate_child - secret_target = { this = scope:trouble_child } - } - } - any_secret = { - type = secret_unmarried_illegitimate_child - secret_target = { this = scope:trouble_child } - is_known_by = scope:trouble_child - } - scope:trouble_child = { - opinion = { target = root value < 0 } - } - } - trigger_if = { - limit = { - any_secret = { - type = secret_disputed_heritage - secret_target = { this = scope:trouble_child } - } - } - any_secret = { - type = secret_disputed_heritage - secret_target = { this = scope:trouble_child } - is_known_by = scope:trouble_child - } - scope:trouble_child = { - opinion = { target = root value < 0 } - } - } - } - - weight_multiplier = { - base = 1 - # More drama if the other parent is there too - modifier = { - any_child = { - ep2_wedding_1120_valid_child_trigger = yes - } - scope:other_parent = { - is_alive = yes - involved_activity ?= { this = scope:activity } - } - add = 4 - } - # more likely if the child is an actual child - modifier = { - any_child = { - ep2_wedding_1120_valid_child_trigger = yes - is_adult = no - } - add = 2 - } - modifier = { - has_activity_intent = reduce_stress_intent - add = -0.5 - } - } - - immediate = { - add_character_flag = busy_in_ceremony_event - scope:activity = { - set_variable = has_had_event_1120 - } - betrothed = { save_scope_as = other_spouse } - scope:other_spouse = { - add_character_flag = busy_in_ceremony_event - } - random_child = { - limit = { - ep2_wedding_1120_valid_child_trigger = yes - } - save_scope_as = trouble_child - } - scope:trouble_child = { - random_parent = { - even_if_dead = yes - limit = { - this != root - } - save_scope_as = other_parent - } - add_character_flag = busy_in_ceremony_event - } - if = { - limit = { - scope:other_parent = { - is_alive = yes - involved_activity ?= { this = scope:activity } - } - } - scope:other_parent = { add_character_flag = busy_in_ceremony_event } - } - if = { - limit = { - any_secret = { - type = secret_unmarried_illegitimate_child - secret_target = { this = scope:trouble_child } - } - } - random_secret = { - type = secret_unmarried_illegitimate_child - limit = { - secret_target = { this = scope:trouble_child } - } - expose_secret = scope:trouble_child - } - add_character_flag = wedding_secret_child_revealed - } - else_if = { - limit = { - any_secret = { - type = secret_disputed_heritage - secret_target = { this = scope:trouble_child } - } - } - random_secret = { - type = secret_disputed_heritage - limit = { - secret_target = { this = scope:trouble_child } - } - expose_secret = scope:trouble_child - } - add_character_flag = wedding_secret_child_revealed - } - if = { - limit = { - has_character_flag = wedding_secret_child_revealed - } - scope:activity = { - add_activity_log_entry = { - key = wedding_child_fuss_secret_log - show_in_conclusion = yes - character = scope:trouble_child - target = root - } - } - } - else = { - scope:activity = { - add_activity_log_entry = { - key = wedding_child_fuss_log - character = scope:trouble_child - target = root - } - } - } - } - - # Option A: be strict - option = { - name = ep2_wedding.1120.a - trigger = { - NOT = { - has_character_flag = wedding_secret_child_revealed - } - } - add_prestige = major_prestige_gain - scope:trouble_child = { - add_opinion = { - target = root - modifier = hate_opinion - opinion = -60 - } - } - scope:other_spouse = { - add_opinion = { - target = scope:trouble_child - modifier = angry_opinion - opinion = -30 - } - if = { - limit = { - OR = { - has_trait = compassionate - has_trait = humble - has_trait = content - ai_compassion >= medium_positive_ai_value - } - } - add_opinion = { - target = root - modifier = awkward_opinion - opinion = -20 - } - } - else = { - add_opinion = { - target = root - modifier = amused_opinion - opinion = 30 - } - root = { - add_character_modifier = { - modifier = ep2_wedding_shared_values_modifier - years = 5 - } - } - } - } - stress_impact = { - compassionate = medium_stress_impact_gain - patient = minor_stress_impact_gain - humble = minor_stress_impact_gain - calm = minor_stress_impact_gain - shy = minor_stress_impact_gain - arrogant = medium_stress_impact_loss - callous = medium_stress_impact_loss - impatient = minor_stress_impact_loss - wrathful = minor_stress_impact_loss - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = -1 - } - } - } - - # Option B: be accepting - option = { - name = ep2_wedding.1120.b - trigger = { - NOT = { - has_character_flag = wedding_secret_child_revealed - } - } - dynasty ?= { - add_dynasty_prestige = medium_dynasty_prestige_gain - } - scope:trouble_child = { - add_opinion = { - target = root - modifier = love_opinion - opinion = 60 - } - } - scope:other_spouse = { - add_opinion = { - target = scope:trouble_child - modifier = angry_opinion - opinion = -30 - } - if = { - limit = { - OR = { - ai_compassion <= low_positive_ai_value - has_trait = callous - has_trait = wrathful - has_trait = vengeful - } - } - add_opinion = { - target = root - modifier = awkward_opinion - opinion = -20 - } - } - else = { - add_opinion = { - target = root - modifier = respect_opinion - opinion = 30 - } - root = { - add_character_modifier = { - modifier = ep2_wedding_shared_values_modifier - years = 5 - } - } - } - } - stress_impact = { - compassionate = medium_stress_impact_loss - patient = minor_stress_impact_loss - humble = minor_stress_impact_loss - calm = minor_stress_impact_loss - shy = minor_stress_impact_loss - arrogant = medium_stress_impact_gain - callous = medium_stress_impact_gain - impatient = minor_stress_impact_gain - wrathful = minor_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - } - } - } - - # Option C: it was a secret!! - option = { - name = ep2_wedding.1120.c - trigger = { - has_character_flag = wedding_secret_child_revealed - } - if = { - limit = { - scope:trouble_child = { - is_adult = yes - } - } - set_variable = { - days = 100 - name = ep2_confrontational_child - value = scope:trouble_child - } - } - stress_impact = { - deceitful = major_stress_impact_gain - honest = major_stress_impact_loss - } - ai_chance = { - base = 100 - } - } - - after = { - remove_character_flag = busy_in_ceremony_event - scope:trouble_child = { remove_character_flag = busy_in_ceremony_event } - scope:other_spouse = { remove_character_flag = busy_in_ceremony_event } - scope:other_parent = { - if = { - limit = { has_character_flag = busy_in_ceremony_event } - remove_character_flag = busy_in_ceremony_event - } - } - if = { - limit = { - has_character_flag = wedding_secret_child_revealed - } - remove_character_flag = wedding_secret_child_revealed - } - } -} - -# Opposite event: it is your spouse who has a complaining child - -scripted_trigger ep2_wedding_1121_valid_child_trigger = { - NOT = { - any_parent = { this = root } - } - any_parent = { - even_if_dead = yes - this != root.betrothed - # polygamy case - trigger_if = { - limit = { is_alive = yes } - NOT = { any_consort = { this = root.betrothed } } - } - save_temporary_scope_as = other_parent - } - age >= 6 - involved_activity ?= scope:activity - save_temporary_scope_as = trouble_child -} - -ep2_wedding.1121 = { - type = activity_event - title = ep2_wedding.1120.t - desc = { - desc = ep2_wedding.1120.desc - first_valid = { - triggered_desc = { - trigger = { - scope:trouble_child = { - is_adult = no - } - } - desc = ep2_wedding.1121.desc_child - } - desc = ep2_wedding.1121.desc_adult - } - triggered_desc = { - trigger = { - scope:other_parent = { - involved_activity ?= { this = scope:activity } - } - } - desc = ep2_wedding.1120.desc_parent - } - } - theme = wedding_ceremony_activity - left_portrait = { - character = scope:other_spouse - animation = worry - } - center_portrait = { - character = root - animation = shock - } - right_portrait = { - character = scope:trouble_child - animation = wedding_objection_start - } - lower_right_portrait = scope:other_parent - - cooldown = { years = 10 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - - scope:activity = { - NOT = { - has_variable = has_had_event_1120 - } - } - - OR = { - root = scope:activity.special_guest:spouse_1 - root = scope:activity.special_guest:spouse_2 - } - root.betrothed ?= { - OR = { - this = scope:activity.special_guest:spouse_1 - this = scope:activity.special_guest:spouse_2 - } - is_ai = yes - save_temporary_scope_as = other_spouse - any_child = { - ep2_wedding_1121_valid_child_trigger = yes - } - } - # if the child's real parent is a secret, make sure that the child knows about it before denouncing it, and they don't like their parent enough - trigger_if = { - limit = { - scope:other_spouse = { - any_secret = { - type = secret_unmarried_illegitimate_child - secret_target = { this = scope:trouble_child } - } - } - } - scope:other_spouse = { - any_secret = { - type = secret_unmarried_illegitimate_child - secret_target = { this = scope:trouble_child } - is_known_by = scope:trouble_child - } - } - scope:trouble_child = { - opinion = { target = scope:other_spouse value < 0 } - } - } - trigger_if = { - limit = { - scope:other_spouse = { - any_secret = { - type = secret_disputed_heritage - secret_target = { this = scope:trouble_child } - } - } - } - scope:other_spouse = { - any_secret = { - type = secret_disputed_heritage - secret_target = { this = scope:trouble_child } - is_known_by = scope:trouble_child - } - } - scope:trouble_child = { - opinion = { target = scope:other_spouse value < 0 } - } - } - } - - weight_multiplier = { - base = 1 - # More drama if the other parent is there too - modifier = { - root.betrothed = { - any_child = { - ep2_wedding_1121_valid_child_trigger = yes - } - scope:other_parent = { - is_alive = yes - involved_activity ?= { this = scope:activity } - } - } - add = 4 - } - # more likely if the child is an actual child - modifier = { - root.betrothed = { - any_child = { - ep2_wedding_1121_valid_child_trigger = yes - is_adult = no - } - } - add = 2 - } - modifier = { - has_activity_intent = reduce_stress_intent - add = -0.5 - } - } - - immediate = { - add_character_flag = busy_in_ceremony_event - scope:activity = { - set_variable = has_had_event_1120 - } - root.betrothed = { save_scope_as = other_spouse } - scope:other_spouse = { - add_character_flag = busy_in_ceremony_event - } - scope:other_spouse = { - random_child = { - limit = { - ep2_wedding_1121_valid_child_trigger = yes - } - save_scope_as = trouble_child - } - } - scope:trouble_child = { - random_parent = { - even_if_dead = yes - limit = { - this != root.betrothed - } - save_scope_as = other_parent - } - add_character_flag = busy_in_ceremony_event - } - if = { - limit = { - scope:other_parent = { - involved_activity ?= { this = scope:activity } - } - } - scope:other_parent = { add_character_flag = busy_in_ceremony_event } - } - if = { - limit = { - scope:other_spouse = { - any_secret = { - type = secret_unmarried_illegitimate_child - secret_target = { this = scope:trouble_child } - } - } - } - scope:other_spouse = { - random_secret = { - type = secret_unmarried_illegitimate_child - limit = { - secret_target = { this = scope:trouble_child } - } - expose_secret = scope:trouble_child - } - add_character_flag = wedding_secret_child_revealed - } - } - else_if = { - limit = { - scope:other_spouse = { - any_secret = { - type = secret_unmarried_illegitimate_child - secret_target = { this = scope:trouble_child } - } - } - } - scope:other_spouse = { - random_secret = { - type = secret_disputed_heritage - limit = { - secret_target = { this = scope:trouble_child } - } - expose_secret = scope:trouble_child - } - add_character_flag = wedding_secret_child_revealed - } - } - scope:other_spouse = { - if = { - limit = { - has_character_flag = wedding_secret_child_revealed - } - add_opinion = { - target = scope:trouble_child - modifier = angry_opinion - opinion = -30 - } - } - } - if = { - limit = { - scope:other_spouse = { has_character_flag = wedding_secret_child_revealed } - } - scope:activity = { - add_activity_log_entry = { - key = wedding_child_fuss_secret_log - show_in_conclusion = yes - character = scope:trouble_child - target = scope:other_spouse - } - } - } - else = { - scope:activity = { - add_activity_log_entry = { - key = wedding_child_fuss_log - character = scope:trouble_child - target = scope:other_spouse - } - } - } - } - - # Option A: Shut up! - option = { - name = ep2_wedding.1121.a - add_dread = medium_dread_gain - scope:trouble_child = { - add_opinion = { - target = root - modifier = hate_opinion - opinion = -50 - } - } - scope:other_spouse = { - if = { - limit = { - save_temporary_opinion_value_as = { name = opinion_of_you target = root } - opinion = { target = scope:trouble_child value >= scope:opinion_of_you } - NOT = { - has_dread_level_towards = { - target = root - level >= 1 - } - } - } - add_opinion = { - target = root - modifier = berated_child_opinion - } - } - } - add_character_modifier = { - modifier = ep2_wedding_authoritarian_modifier - years = 10 - } - stress_impact = { - compassionate = major_stress_impact_gain - arrogant = major_stress_impact_gain - patient = medium_stress_impact_gain - humble = medium_stress_impact_gain - calm = medium_stress_impact_gain - shy = medium_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 0.5 - ai_vengefulness = 0.5 - } - } - } - - # Option B: I'll be a better parent! - option = { - name = ep2_wedding.1121.b - scope:trouble_child = { - add_opinion = { - target = root - modifier = give_a_chance_opinion - } - } - scope:other_spouse = { - add_opinion = { - target = root - modifier = give_a_chance_opinion - } - } - add_character_modifier = { - modifier = ep2_wedding_family_focus_modifier - years = 10 - } - stress_impact = { - callous = major_stress_impact_gain - arrogant = major_stress_impact_gain - wrathful = major_stress_impact_gain - impatient = medium_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = 0.5 - ai_vengefulness = -0.5 - } - } - } - - after = { - remove_character_flag = busy_in_ceremony_event - scope:trouble_child = { remove_character_flag = busy_in_ceremony_event } - scope:other_spouse = { - remove_character_flag = busy_in_ceremony_event - if = { - limit = { - has_character_flag = wedding_secret_child_revealed - } - remove_character_flag = wedding_secret_child_revealed - } - } - scope:other_parent = { - if = { - limit = { has_character_flag = busy_in_ceremony_event } - remove_character_flag = busy_in_ceremony_event - } - } - } -} - -# Follow-up to 1120. NB this is a Banquet Event. -# You talk with the child who revealed your secret. - -ep2_wedding.1122 = { - type = activity_event - title = ep2_wedding.1120.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - scope:trouble_child = { - has_character_flag = 1122_repentant - } - } - desc = ep2_wedding.1122.desc_repentant - } - desc = ep2_wedding.1122.desc_unrepentant - } - } - theme = wedding_banquet_activity - left_portrait = { - character = root - animation = personality_honorable - } - right_portrait = { - character = scope:trouble_child - triggered_animation = { - trigger = { - scope:trouble_child = { - has_character_flag = 1122_repentant - } - } - animation = shame - } - triggered_animation = { - trigger = { - NOT = { - scope:trouble_child = { - has_character_flag = 1122_repentant - } - } - } - animation = personality_callous - } - } - - cooldown = { years = 1 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - - has_variable = ep2_confrontational_child - scope:activity = { - NOT = { - has_variable = has_had_event_1122 - } - } - } - - immediate = { - var:ep2_confrontational_child = { - save_scope_as = trouble_child - } - scope:activity = { - set_variable = has_had_event_1122 - } - add_character_flag = busy_in_banquet_event - scope:trouble_child = { - add_character_flag = busy_in_banquet_event - } - scope:trouble_child = { - random_list = { - # child regrets it - 50 = { - modifier = { - has_trait = humble - add = 50 - } - modifier = { - has_trait = family_first - add = 100 - } - modifier = { - has_trait = compassionate - add = 100 - } - modifier = { - has_trait = patient - add = 20 - } - modifier = { - has_trait = craven - add = 20 - } - modifier = { - has_trait = shy - add = 20 - } - modifier = { - has_trait = trusting - add = 20 - } - modifier = { - has_trait = fickle - add = 50 - } - modifier = { - has_trait = forgiving - add = 20 - } - modifier = { - has_trait = contrite - add = 100 - } - add_character_flag = 1122_repentant - } - # child is unrepentant - 50 = { - modifier = { - has_trait = arrogant - add = 50 - } - modifier = { - has_trait = arbitrary - add = 50 - } - modifier = { - has_trait = paranoid - add = 100 - } - modifier = { - has_trait = wrathful - add = 20 - } - modifier = { - has_trait = impatient - add = 20 - } - modifier = { - has_trait = brave - add = 20 - } - modifier = { - has_trait = ambitious - add = 20 - } - modifier = { - has_trait = vengeful - add = 20 - } - modifier = { - has_trait = callous - add = 50 - } - modifier = { - has_trait = stubborn - add = 100 - } - } - } - } - } - - # Option A: You forgive - option = { - name = ep2_wedding.1122.a - trigger = { - scope:trouble_child = { - has_character_flag = 1122_repentant - } - } - scope:activity = { - add_activity_log_entry = { - key = 1122_child_pacified_log - tags = { good } - score = 10 - character = root - target = scope:trouble_child - # Effect - scope:trouble_child = { - add_opinion = { - target = root - modifier = forgiven_opinion - opinion = 20 - } - } - } - } - stress_impact = { - vengeful = massive_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - } - } - } - - # Option B: You don't forgive - option = { - name = ep2_wedding.1122.b - trigger = { - scope:trouble_child = { - has_character_flag = 1122_repentant - } - } - scope:activity = { - add_activity_log_entry = { - key = 1122_child_not_pacified_log - tags = { bad } - score = 10 - character = root - target = scope:trouble_child - # Effect - scope:trouble_child = { - add_opinion = { - target = root - modifier = unforgiven_opinion - opinion = -30 - } - } - root = { - if = { - limit = { - can_add_hook = { - target = scope:trouble_child - type = indebted_hook - } - } - add_hook = { - target = scope:trouble_child - type = indebted_hook - } - } - } - } - } - stress_impact = { - forgiving = massive_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = 1 - } - } - } - - # Option C: You accept the critique - option = { - name = ep2_wedding.1122.c - trigger = { - scope:trouble_child = { - NOT = { has_character_flag = 1122_repentant } - } - } - scope:activity = { - add_activity_log_entry = { - key = 1122_child_pacified_log - tags = { good } - score = 10 - character = root - target = scope:trouble_child - # Effect - scope:trouble_child = { - add_opinion = { - target = root - modifier = respect_opinion - opinion = 30 - } - } - } - } - stress_impact = { - vengeful = massive_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 0.5 - } - } - } - - # Option D: You remain angry - option = { - name = ep2_wedding.1122.d - trigger = { - scope:trouble_child = { - NOT = { has_character_flag = 1122_repentant } - } - } - scope:activity = { - add_activity_log_entry = { - key = 1122_child_not_pacified_log - tags = { bad } - score = 10 - character = root - target = scope:trouble_child - # Effect - root = { - if = { - limit = { - can_add_hook = { - target = scope:trouble_child - type = indebted_hook - } - } - add_hook = { - target = scope:trouble_child - type = indebted_hook - } - } - } - } - } - stress_impact = { - forgiving = massive_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = 0.5 - } - } - } - - after = { - remove_character_flag = busy_in_banquet_event - scope:trouble_child = { - remove_character_flag = busy_in_banquet_event - if = { - limit = { - has_character_flag = 1122_repentant - } - remove_character_flag = 1122_repentant - } - } - remove_variable = ep2_confrontational_child - } -} - -################################################## -# Secret Whispers -# by Claudia Baldassi -# ep2_wedding.1130 -################################################## - -# A bad secret comes up and compromises the union: someone who knows spills the beans -#The secret is yours. - -ep2_wedding.1130 = { - type = activity_event - title = ep2_wedding.1130.t - desc = { - desc = ep2_wedding.1130.desc - desc = ep2_wedding.1130.desc_continue - } - theme = wedding_ceremony_activity - left_portrait = { - character = root - animation = shock - } - right_portrait = { - character = scope:1130_knows - animation = wedding_objection_start - } - - cooldown = { years = 10 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - - scope:activity = { - NOT = { - has_variable = has_had_event_1130 - } - } - OR = { - root = scope:activity.special_guest:spouse_1 - root = scope:activity.special_guest:spouse_2 - } - has_any_secrets = yes - scope:activity = { - any_attending_character = { - any_known_secret = { - secret_owner = root - NOT = { secret_target ?= prev } - } - opinion = { target = root value <= 0 } - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - scope:activity = { - any_attending_character = { - any_known_secret = { - secret_owner = root - NOT = { secret_target ?= prev } - - } - has_trait = contrite - } - } - add = 4 - } - modifier = { - scope:activity = { - any_attending_character = { - any_known_secret = { - secret_owner = root - NOT = { secret_target ?= prev } - } - has_relation_rival = root - } - } - add = 5 - } - modifier = { - has_activity_intent = reduce_stress_intent - add = -0.5 - } - } - - immediate = { - add_character_flag = busy_in_ceremony_event - scope:activity = { - set_variable = has_had_event_1130 - } - betrothed = { - save_scope_as = other_spouse - add_character_flag = busy_in_ceremony_event - } - scope:activity = { - random_attending_character = { - limit = { - any_known_secret = { - secret_owner = root - NOT = { secret_target ?= prev } - } - } - save_scope_as = 1130_knows - add_character_flag = busy_in_ceremony_event - } - } - scope:1130_knows = { - random_known_secret = { - limit = { - secret_owner = root - NOT = { secret_target ?= scope:1130_knows } - } - save_scope_as = 1130_secret - } - } - } - - #Option A: let them expose the secret - option = { - name = ep2_wedding.1130.a - add_character_modifier = { - modifier = wedding_clean_slate_modifier - years = 10 - } - scope:activity = { - add_activity_log_entry = { - key = wedding_secret_revealed_log - show_in_conclusion = yes - character = scope:1130_knows - target = root - - #Effect - scope:1130_secret = { expose_secret = scope:1130_knows } - root = { - if = { - limit = { - can_set_relation_nemesis_trigger = { CHARACTER = scope:1130_knows } - } - set_relation_nemesis = { - target = scope:1130_knows - reason = nemesis_wedding_spread_voices_secret - } - } - } - } - } - scope:1130_knows = { - if = { - limit = { - has_activity_intent = banquet_mischief_intent - } - complete_activity_intent = yes - } - } - stress_impact = { - deceitful = major_stress_impact_gain - contrite = massive_stress_impact_loss - honest = major_stress_impact_loss - } - ai_chance = { - base = 75 - ai_value_modifier = { - ai_honor = 0.5 - } - modifier = { - has_trait = contrite - add = 200 - } - modifier = { - has_trait = honest - add = 100 - } - } - } - - #Option B: kick them out - option = { - name = ep2_wedding.1130.b - add_character_modifier = { - modifier = wedding_web_of_secrets_modifier - years = 10 - } - scope:activity = { - add_activity_log_entry = { - key = wedding_secret_not_revealed_log - show_in_conclusion = yes - character = scope:1130_knows - target = root - - #Effect - root = { - if = { - limit = { - can_set_relation_rival_trigger = { CHARACTER = scope:1130_knows } - } - set_relation_rival = { - target = scope:1130_knows - reason = rival_wedding_spread_voices - } - } - add_dread = major_dread_gain - } - scope:1130_knows = { - remove_from_activity = scope:activity - } - } - } - stress_impact = { - contrite = massive_stress_impact_gain - honest = major_stress_impact_gain - } - ai_chance = { - base = 125 - ai_value_modifier = { - ai_honor = -0.5 - } - modifier = { - has_trait = deceitful - add = 200 - } - } - } - - after = { - remove_character_flag = busy_in_ceremony_event - scope:other_spouse = { - remove_character_flag = busy_in_ceremony_event - } - scope:1130_knows = { - remove_character_flag = busy_in_ceremony_event - } - } -} - -# The secret is your partner's. - -ep2_wedding.1131 = { - type = activity_event - title = ep2_wedding.1130.t - desc = { - desc = ep2_wedding.1130.desc - desc = ep2_wedding.1131.desc - } - theme = wedding_ceremony_activity - left_portrait = { - character = root - animation = shock - } - center_portrait = { - character = scope:other_spouse - animation = shame - } - right_portrait = { - character = scope:1130_knows - animation = wedding_objection_start - } - - cooldown = { years = 10 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - - scope:activity = { - NOT = { - has_variable = has_had_event_1130 - } - } - OR = { - root = scope:activity.special_guest:spouse_1 - root = scope:activity.special_guest:spouse_2 - } - betrothed ?= { - has_any_secrets = yes - } - scope:activity = { - any_attending_character = { - any_known_secret = { - secret_owner = root.betrothed - NOT = { is_known_by = root } - NOT = { secret_target ?= prev } - } - opinion = { target = root.betrothed value <= 0 } - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - scope:activity = { - any_attending_character = { - any_known_secret = { - secret_owner = root.betrothed - NOT = { is_known_by = root } - NOT = { secret_target ?= prev } - } - has_trait = contrite - } - } - add = 4 - } - modifier = { - scope:activity = { - any_attending_character = { - any_known_secret = { - secret_owner = root.betrothed - NOT = { is_known_by = root } - NOT = { secret_target ?= prev } - } - has_relation_rival = root - } - } - add = 4 - } - modifier = { - scope:activity = { - any_attending_character = { - any_known_secret = { - secret_owner = root.betrothed - NOT = { is_known_by = root } - NOT = { secret_target ?= prev } - } - has_relation_rival = root.betrothed - } - } - add = 4 - } - modifier = { - has_activity_intent = reduce_stress_intent - add = -0.5 - } - } - - immediate = { - add_character_flag = busy_in_ceremony_event - scope:activity = { - set_variable = has_had_event_1130 - } - betrothed = { - save_scope_as = other_spouse - add_character_flag = busy_in_ceremony_event - } - scope:activity = { - random_attending_character = { - limit = { - any_known_secret = { - secret_owner = root.betrothed - NOT = { is_known_by = root } - NOT = { secret_target ?= prev } - } - } - save_scope_as = 1130_knows - add_character_flag = busy_in_ceremony_event - } - } - scope:1130_knows = { - random_known_secret = { - limit = { - secret_owner = scope:other_spouse - NOT = { is_known_by = root } - NOT = { secret_target ?= scope:1130_knows } - } - save_scope_as = 1130_secret - } - } - scope:activity = { - add_activity_log_entry = { - key = wedding_secret_revealed_log - show_in_conclusion = yes - character = scope:1130_knows - target = scope:other_spouse - - #Effect - scope:1130_secret = { expose_secret = scope:1130_knows } - } - } - scope:1130_knows = { - if = { - limit = { - has_activity_intent = banquet_mischief_intent - } - complete_activity_intent = yes - } - } - } - - #Option A: be understanding - option = { - name = ep2_wedding.1131.a - scope:other_spouse = { - add_opinion = { - target = root - modifier = wedding_understanding_spouse_opinion - } - } - if = { - limit = { - can_add_hook = { - target = scope:other_spouse - type = favor_hook - } - } - add_hook = { - target = scope:other_spouse - type = favor_hook - } - } - stress_impact = { - impatient = minor_stress_impact_gain - callous = medium_stress_impact_gain - wrathful = medium_stress_impact_gain - vengeful = major_stress_impact_gain - paranoid = major_stress_impact_gain - honest = medium_stress_impact_loss - forgiving = medium_stress_impact_loss - compassionate = medium_stress_impact_loss - trusting = major_stress_impact_loss - } - ai_chance = { - ai_value_modifier = { - ai_compassion = 1 - } - } - } - - #Option B: this is unacceptable! - option = { - name = ep2_wedding.1131.b - add_dread = major_dread_gain - add_character_modifier = { - modifier = wedding_trust_compromised_modifier - years = 10 - } - stress_impact = { - impatient = minor_stress_impact_loss - callous = medium_stress_impact_loss - wrathful = medium_stress_impact_loss - vengeful = major_stress_impact_loss - paranoid = major_stress_impact_loss - honest = medium_stress_impact_gain - forgiving = medium_stress_impact_gain - compassionate = medium_stress_impact_gain - trusting = major_stress_impact_gain - } - ai_chance = { - ai_value_modifier = { - ai_compassion = -1 - } - } - } - - after = { - remove_character_flag = busy_in_ceremony_event - scope:other_spouse = { - remove_character_flag = busy_in_ceremony_event - } - scope:1130_knows = { - remove_character_flag = busy_in_ceremony_event - } - } -} - -# You know a secret about a spouse. - -ep2_wedding.1132 = { - type = activity_event - title = ep2_wedding.1130.t - desc = ep2_wedding.1132.desc - theme = wedding_ceremony_activity - left_portrait = { - character = root - animation = wedding_objection_start - } - center_portrait = { - character = scope:other_spouse - animation = shock - } - right_portrait = { - character = scope:spouse_with_secret - animation = shame - } - - cooldown = { years = 10 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - - scope:activity = { - NOT = { - has_variable = has_had_event_1130 - } - } - NOR = { - root = scope:activity.special_guest:spouse_1 - root = scope:activity.special_guest:spouse_2 - } - any_known_secret = { - secret_owner = { - OR = { - this = scope:activity.special_guest:spouse_1 - this = scope:activity.special_guest:spouse_2 - } - } - NOT = { secret_target ?= root } - } - } - - weight_multiplier = { - base = 1 - modifier = { - has_trait = contrite - add = 4 - } - modifier = { - has_activity_intent = reduce_stress_intent - add = -0.5 - } - } - - immediate = { - add_character_flag = busy_in_ceremony_event - scope:activity = { - set_variable = has_had_event_1130 - } - random_known_secret = { - limit = { - secret_owner = { - OR = { - this = scope:activity.special_guest:spouse_1 - this = scope:activity.special_guest:spouse_2 - } - } - NOT = { secret_target ?= root } - } - save_scope_as = 1130_secret - } - scope:1130_secret = { - secret_owner = { - save_scope_as = spouse_with_secret - add_character_flag = busy_in_ceremony_event - } - } - scope:spouse_with_secret.betrothed = { - save_scope_as = other_spouse - add_character_flag = busy_in_ceremony_event - } - } - - #Option A: reveal it - option = { - name = ep2_wedding.1132.a - scope:activity = { - add_activity_log_entry = { - key = wedding_secret_revealed_log - show_in_conclusion = yes - character = root - target = scope:spouse_with_secret - - #Effect - scope:1130_secret = { expose_secret = root } - } - } - scope:other_spouse = { - add_opinion = { - target = root - modifier = opened_my_eyes_opinion - } - } - if = { - limit = { - can_add_hook = { - target = scope:other_spouse - type = favor_hook - } - } - add_hook = { - target = scope:other_spouse - type = favor_hook - } - } - if = { - limit = { - has_activity_intent = banquet_mischief_intent - } - complete_activity_intent = yes - } - stress_impact = { - honest = major_stress_impact_loss - contrite = massive_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - has_trait = honest - add = 100 - } - modifier = { - has_trait = contrite - add = 100 - } - } - } - - #Option B: keep it - option = { - name = ep2_wedding.1132.b - scope:spouse_with_secret = { - add_opinion = { - target = root - modifier = kept_my_secret_opinion - } - } - if = { - limit = { - can_add_hook = { - target = scope:spouse_with_secret - type = favor_hook - } - } - add_hook = { - target = scope:spouse_with_secret - type = favor_hook - } - } - stress_impact = { - deceitful = major_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - has_trait = deceitful - add = 100 - } - } - } - - after = { - remove_character_flag = busy_in_ceremony_event - scope:spouse_with_secret = { - remove_character_flag = busy_in_ceremony_event - } - scope:other_spouse = { - remove_character_flag = busy_in_ceremony_event - } - } -} - -################################################## -# A Misstep -# by Claudia Baldassi -# ep2_wedding.1140 -################################################## - -# A spouse has an embarrassing misstep: stuttering, missing cues, forgetting vows… How do you recover? - -ep2_wedding.1140 = { - type = activity_event - title = ep2_wedding.1140.t - desc = { - desc = ep2_wedding.1140.desc - random_valid = { - desc = ep2_wedding.1140.desc_1 - desc = ep2_wedding.1140.desc_2 - desc = ep2_wedding.1140.desc_3 - } - triggered_desc = { - trigger = { - OR = { - has_activity_intent = diplomatic_intent - has_activity_intent = woo_attendee_intent - } - intent_target = { - NOR = { - this = scope:activity.special_guest:spouse_1 - this = scope:activity.special_guest:spouse_2 - } - } - } - desc = ep2_wedding.1140.desc_target - } - triggered_desc = { - trigger = { - OR = { - has_activity_intent = diplomatic_intent - has_activity_intent = woo_attendee_intent - } - intent_target = { - OR = { - this = scope:activity.special_guest:spouse_1 - this = scope:activity.special_guest:spouse_2 - } - } - } - desc = ep2_wedding.1140.desc_target_spouse - } - } - theme = wedding_ceremony_activity - left_portrait = { - character = root - animation = wedding_objection_start - } - right_portrait = { - character = scope:fumbling_spouse - animation = shame - } - - lower_right_portrait = scope:intent_target - - cooldown = { years = 1 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - root = scope:host - NOR = { - root = scope:activity.special_guest:spouse_1 - root = scope:activity.special_guest:spouse_2 - } - scope:activity.special_guest:spouse_1 = { is_ai = yes } - scope:activity.special_guest:spouse_2 = { is_ai = yes } - trigger_if = { - limit = { - OR = { - has_activity_intent = diplomatic_intent - has_activity_intent = woo_attendee_intent - } - } - intent_target = { is_ai = yes } - } - } - - weight_multiplier = { - base = 1 - modifier = { - OR = { - has_activity_intent = diplomatic_intent - has_activity_intent = woo_attendee_intent - has_activity_intent = reduce_stress_intent - } - add = 2 - } - } - - immediate = { - add_character_flag = busy_in_ceremony_event - scope:activity.special_guest:spouse_1 = { save_scope_as = spouse_1 } - scope:activity.special_guest:spouse_2 = { save_scope_as = spouse_2 } - random_list = { - 50 = { - modifier = { - scope:spouse_1 = { - has_trait = shy - } - add = 10 - } - modifier = { - scope:spouse_1 = { - has_trait = gregarious - } - add = -10 - } - modifier = { - scope:spouse_1 = { - has_trait = calm - } - add = -10 - } - modifier = { - scope:spouse_1 = { - has_trait = impatient - } - add = 10 - } - modifier = { - scope:spouse_1 = { - has_trait = arrogant - } - add = 10 - } - scope:spouse_1 = { save_scope_as = fumbling_spouse } - } - 50 = { - modifier = { - scope:spouse_2 = { - has_trait = shy - } - add = 10 - } - modifier = { - scope:spouse_2 = { - has_trait = gregarious - } - add = -10 - } - modifier = { - scope:spouse_2 = { - has_trait = calm - } - add = -10 - } - modifier = { - scope:spouse_2 = { - has_trait = impatient - } - add = 10 - } - modifier = { - scope:spouse_2 = { - has_trait = arrogant - } - add = 10 - } - scope:spouse_2 = { save_scope_as = fumbling_spouse } - } - } - if = { - limit = { - OR = { - has_activity_intent = diplomatic_intent - has_activity_intent = woo_attendee_intent - } - } - intent_target = { save_scope_as = intent_target } - } - } - - # Option A: Try to salvage the situation - option = { - name = ep2_wedding.1140.a - duel = { - skill = diplomacy - value = average_skill_rating - # Success: you recover smoothly - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = ep2_wedding.1140.a.success - send_interface_toast = { - title = ep2_wedding.1140.a.success.tt - left_icon = root - scope:activity = { - add_activity_log_entry = { - key = recovered_from_misstep_log - tags = { good } - score = 50 - character = root - target = scope:spouse_1 - - root = { - if = { - limit = { - has_lifestyle = diplomacy_lifestyle - } - add_diplomacy_lifestyle_xp = major_lifestyle_experience - } - } - if = { - limit = { - root = { has_activity_intent = diplomatic_intent } - } - custom_tooltip = ep2_wedding.1140.a.success.tt2 - root.intent_target = { - add_opinion = { - target = root - modifier = impressed_opinion - opinion = 30 - } - } - } - else_if = { - limit = { - root = { has_activity_intent = woo_attendee_intent } - } - custom_tooltip = ep2_wedding.1140.a.success.tt2 - root = { - progress_towards_lover_effect = { - REASON = lover_impressed_by_smooth_save - CHARACTER = root.intent_target - OPINION = 15 - } - } - } - scope:fumbling_spouse = { - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 20 - } - } - } - } - stress_impact = { - base = minor_stress_impact_loss - arrogant = medium_stress_impact_loss - ambitious = medium_stress_impact_loss - brave = medium_stress_impact_loss - } - } - } - # Failure: you are publicly embarassed - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = ep2_wedding.1140.a.failure - send_interface_toast = { - title = ep2_wedding.1140.a.failure.tt - left_icon = root - right_icon = scope:fumbling_spouse - scope:activity = { - add_activity_log_entry = { - key = made_a_misstep_log - tags = { bad } - score = 50 - character = scope:fumbling_spouse - - scope:fumbling_spouse = { - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -15 - } - } - } - } - stress_impact = { - arrogant = medium_stress_impact_gain - shy = medium_stress_impact_gain - ambitious = medium_stress_impact_gain - paranoid = medium_stress_impact_gain - } - } - } - } - ai_chance = { - base = 100 - modifier = { - OR = { - has_activity_intent = diplomatic_intent - has_activity_intent = woo_attendee_intent - } - add = 50 - } - } - } - - # Option B: ignore it - option = { - name = ep2_wedding.1140.b - scope:fumbling_spouse = { - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -15 - } - } - stress_impact = { - compassionate = medium_stress_impact_gain - gregarious = medium_stress_impact_gain - shy = medium_stress_impact_loss - callous = medium_stress_impact_loss - sadistic = medium_stress_impact_loss - lazy = medium_stress_impact_loss - } - scope:activity = { - add_activity_log_entry = { - key = made_a_misstep_log - tags = { bad } - score = 50 - character = scope:fumbling_spouse - } - } - ai_chance = { - base = 100 - } - } - - # Option C: relax! - option = { - name = ep2_wedding.1140.c - trigger = { - has_activity_intent = reduce_stress_intent - } - reason = activity_intent - scope:fumbling_spouse = { - add_opinion = { - target = root - modifier = relieved_opinion - opinion = 20 - } - } - stress_impact = { - base = medium_stress_impact_loss - } - scope:activity = { - add_activity_log_entry = { - key = recovered_from_misstep_log - tags = { good } - score = 50 - character = root - target = scope:fumbling_spouse - } - } - ai_chance = { - base = 100 - modifier = { - has_activity_intent = reduce_stress_intent - add = 100 - } - } - } - - after = { - remove_character_flag = busy_in_ceremony_event - } -} - -################################################## -# Romantic Scouting -# by Claudia Baldassi -# ep2_wedding.1150 -################################################## - -# Seduction Intent: target scouting - -ep2_wedding.1150 = { - type = activity_event - title = ep2_wedding.1150.t - desc = { - desc = ep2_wedding.1150.desc - first_valid = { - triggered_desc = { - trigger = { - scope:intent_target = { - OR = { - has_trait = shy - has_trait = compassionate - } - } - } - desc = ep2_wedding.1150.desc_1 - } - triggered_desc = { - trigger = { - scope:intent_target = { - OR = { - has_trait = gluttonous - has_trait = drunkard - } - } - } - desc = ep2_wedding.1150.desc_2 - } - triggered_desc = { - trigger = { - scope:intent_target = { - OR = { - has_trait = callous - has_trait = cynical - } - } - } - desc = ep2_wedding.1150.desc_3 - } - triggered_desc = { - trigger = { - scope:intent_target = { - has_trait = zealous - } - } - desc = ep2_wedding.1150.desc_4 - } - desc = ep2_wedding.1150.desc_fallback - } - desc = ep2_wedding.1150.desc_conclusion - } - theme = wedding_ceremony_activity - left_portrait = { - character = root - animation = flirtation_left - } - right_portrait = { - character = scope:intent_target - animation = personality_content - } - - cooldown = { years = 1 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - has_activity_intent = woo_attendee_intent - NOR = { - this = scope:activity.special_guest:spouse_1 - this = scope:activity.special_guest:spouse_2 - } - NOR = { - intent_target = scope:activity.special_guest:spouse_1 - intent_target = scope:activity.special_guest:spouse_2 - } - intent_target = { is_ai = yes } - } - - weight_multiplier = { - base = 1 - } - - immediate = { - add_character_flag = busy_in_ceremony_event - intent_target = { - save_scope_as = intent_target - add_character_flag = busy_in_ceremony_event - } - } - - # Option A: approach with diplo - option = { - name = ep2_wedding.1150.a - duel = { - skill = diplomacy - target = scope:intent_target - # Success: you make a good impression - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = ep2_wedding.1150.a.success - send_interface_toast = { - title = ep2_wedding.1150.a.success.tt - left_icon = root - right_icon = scope:intent_target - progress_towards_lover_effect = { - REASON = lover_impressed_by_talk - CHARACTER = scope:intent_target - OPINION = 15 - } - if = { - limit = { - has_lifestyle = diplomacy_lifestyle - } - add_diplomacy_lifestyle_xp = major_lifestyle_experience - } - stress_impact = { - base = minor_stress_impact_loss - ambitious = medium_stress_impact_loss - arrogant = medium_stress_impact_loss - lustful = major_stress_impact_loss - } - } - scope:activity = { - add_activity_log_entry = { - key = seduction_good_impression_log - tags = { good } - score = 50 - character = root - target = scope:intent_target - } - } - } - # Failure: target is not impress - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = ep2_wedding.1150.a.failure - send_interface_toast = { - title = ep2_wedding.1150.a.failure.tt - left_icon = root - right_icon = scope:intent_target - scope:intent_target = { - add_opinion = { - target = root - modifier = annoyed_opinion - opinion = -15 - } - } - stress_impact = { - arrogant = medium_stress_impact_gain - shy = medium_stress_impact_gain - lustful = medium_stress_impact_gain - } - } - } - } - ai_chance = { - base = 100 - modifier = { - diplomacy >= average_skill_level - add = 50 - } - } - } - - # Option B: approach with intrigue - option = { - name = ep2_wedding.1150.b - duel = { - skill = intrigue - target = scope:intent_target - # Success: you make a good impression - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = ep2_wedding.1150.a.success - send_interface_toast = { - title = ep2_wedding.1150.a.success.tt - left_icon = root - right_icon = scope:intent_target - progress_towards_lover_effect = { - REASON = lover_impressed_by_talk - CHARACTER = scope:intent_target - OPINION = 15 - } - if = { - limit = { - has_lifestyle = intrigue_lifestyle - } - add_intrigue_lifestyle_xp = major_lifestyle_experience - } - stress_impact = { - base = minor_stress_impact_loss - ambitious = medium_stress_impact_loss - arrogant = medium_stress_impact_loss - lustful = major_stress_impact_loss - } - } - scope:activity = { - add_activity_log_entry = { - key = seduction_good_impression_log - tags = { good } - score = 50 - character = root - target = scope:intent_target - } - } - } - # Failure: target is not impress - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = ep2_wedding.1150.a.failure - send_interface_toast = { - title = ep2_wedding.1150.a.failure.tt - left_icon = root - right_icon = scope:intent_target - scope:intent_target = { - add_opinion = { - target = root - modifier = annoyed_opinion - opinion = -15 - } - } - stress_impact = { - arrogant = medium_stress_impact_gain - shy = medium_stress_impact_gain - lustful = medium_stress_impact_gain - } - } - } - } - ai_chance = { - base = 100 - modifier = { - intrigue >= average_skill_level - add = 50 - } - } - } - - # Option C: approach with learning - option = { - name = ep2_wedding.1150.c - duel = { - skill = learning - target = scope:intent_target - # Success: you make a good impression - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = ep2_wedding.1150.a.success - send_interface_toast = { - title = ep2_wedding.1150.a.success.tt - left_icon = root - right_icon = scope:intent_target - progress_towards_lover_effect = { - REASON = lover_impressed_by_talk - CHARACTER = scope:intent_target - OPINION = 15 - } - if = { - limit = { - has_lifestyle = learning_lifestyle - } - add_learning_lifestyle_xp = major_lifestyle_experience - } - stress_impact = { - base = minor_stress_impact_loss - ambitious = medium_stress_impact_loss - arrogant = medium_stress_impact_loss - lustful = major_stress_impact_loss - } - } - scope:activity = { - add_activity_log_entry = { - key = seduction_good_impression_log - tags = { good } - score = 50 - character = root - target = scope:intent_target - } - } - } - # Failure: target is not impress - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = ep2_wedding.1150.a.failure - send_interface_toast = { - title = ep2_wedding.1150.a.failure.tt - left_icon = root - right_icon = scope:intent_target - scope:intent_target = { - add_opinion = { - target = root - modifier = annoyed_opinion - opinion = -15 - } - } - stress_impact = { - arrogant = medium_stress_impact_gain - shy = medium_stress_impact_gain - lustful = medium_stress_impact_gain - } - } - } - } - ai_chance = { - base = 100 - modifier = { - learning >= average_skill_level - add = 50 - } - } - } - - after = { - remove_character_flag = busy_in_ceremony_event - scope:intent_target = { remove_character_flag = busy_in_ceremony_event } - } -} - -################################################## -# Gatecrashers -# by Claudia Baldassi -# ep2_wedding.1160 -################################################## - -# Some pesants are at the gate of the festivity - what do you do? - -ep2_wedding.1160 = { - type = activity_event - title = ep2_wedding.1160.t - desc = ep2_wedding.1160.desc - theme = wedding_ceremony_activity - left_portrait = { - character = root - animation = schadenfreude - } - - lower_right_portrait = scope:host - - cooldown = { years = 1 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - has_activity_intent = banquet_mischief_intent - NOR = { - this = scope:activity.special_guest:spouse_1 - this = scope:activity.special_guest:spouse_2 - } - scope:activity = { - NOT = { - has_variable = has_had_1160_event - } - } - } - - weight_multiplier = { - base = 1 - } - - immediate = { - add_character_flag = busy_in_ceremony_event - scope:activity = { - set_variable = has_had_1160_event - } - } - - # Option A: let the peasants in - option = { - name = ep2_wedding.1160.a - flavor = ep2_wedding.1160.a.tt - # for the follow-up event - root = { - save_scope_as = mischief_maker - } - scope:host = { trigger_event = ep2_wedding.1161 } - stress_impact = { - base = minor_stress_impact_loss - wrathful = medium_stress_impact_loss - impatient = medium_stress_impact_loss - arrogant = medium_stress_impact_loss - deceitful = major_stress_impact_loss - arbitrary = major_stress_impact_loss - callous = major_stress_impact_loss - fickle = major_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - has_trait = deceitful - add = 50 - } - modifier = { - has_trait = arbitrary - add = 50 - } - modifier = { - has_trait = callous - add = 50 - } - modifier = { - has_trait = fickle - add = 50 - } - } - } - - # Option B: smuggle food to the pesants - option = { - name = ep2_wedding.1160.b - flavor = ep2_wedding.1160.b.tt - stress_impact = { - base = minor_stress_impact_loss - gluttonous = medium_stress_impact_loss - diligent = medium_stress_impact_loss - generous = major_stress_impact_loss - humble = major_stress_impact_loss - gregarious = major_stress_impact_loss - compassionate = massive_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - has_trait = generous - add = 50 - } - modifier = { - has_trait = humble - add = 50 - } - modifier = { - has_trait = gregarious - add = 50 - } - modifier = { - has_trait = compassionate - add = 50 - } - } - } - - # Option C: this is below me - option = { - name = ep2_wedding.1160.c - stress_impact = { - greedy = minor_stress_impact_loss - temperate = minor_stress_impact_loss - lazy = minor_stress_impact_loss - honest = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - has_trait = lazy - add = 50 - } - modifier = { - has_trait = honest - add = 50 - } - } - } - - after = { - remove_character_flag = busy_in_ceremony_event - } -} - -# Follow-up for the host - -ep2_wedding.1161 = { - type = activity_event - title = ep2_wedding.1160.t - desc = ep2_wedding.1161.desc - theme = wedding_ceremony_activity - left_portrait = { - character = root - animation = anger - } - - cooldown = { years = 1 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - } - - weight_multiplier = { - base = 1 - } - - immediate = { - add_character_flag = busy_in_ceremony_event - } - - # Option A: kick them out! - option = { - name = ep2_wedding.1161.a - duel = { - skill = martial - value = average_skill_rating - 50 = { - # Success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = ep2_wedding.1161.success - send_interface_toast = { - title = ep2_wedding.1161.success.tt - left_icon = root - scope:activity = { - add_activity_log_entry = { - key = wedding_peasant_invasion_managed_log - tags = { good } - score = 20 - character = root - - root = { - add_character_modifier = { - modifier = wedding_enforced_security_modifier - years = 10 - } - } - } - } - - stress_impact = { - base = minor_stress_impact_loss - wrathful = medium_stress_impact_loss - arrogant = medium_stress_impact_loss - callous = major_stress_impact_loss - paranoid = massive_stress_impact_loss - } - } - scope:mischief_maker = { - send_interface_toast = { - title = ep2_wedding.1161.success.tt2 - left_icon = root - } - } - } - 50 = { - # Failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = ep2_wedding.1161.failure - send_interface_toast = { - title = ep2_wedding.1161.failure.tt - left_icon = root - scope:activity = { - add_activity_log_entry = { - key = wedding_peasant_invasion_not_managed_log - tags = { bad } - score = 20 - character = root - - root = { - add_character_modifier = { - modifier = wedding_peasants_overrun_modifier - years = 10 - } - } - } - } - stress_impact = { - wrathful = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - callous = medium_stress_impact_gain - paranoid = major_stress_impact_gain - } - } - scope:mischief_maker = { - send_interface_toast = { - title = ep2_wedding.1161.failure.tt2 - left_icon = root - } - } - } - } - ai_chance = { - base = 100 - } - } - - # Option B: let them stay - option = { - name = ep2_wedding.1161.b - scope:activity = { - add_activity_log_entry = { - key = wedding_peasant_invasion_stay_log - tags = { bad } - score = 20 - character = root - - root.location.county = { - add_county_modifier = { - modifier = wedding_peasants_connections_county_modifier - years = 10 - } - } - } - } - if = { - limit = { - has_activity_intent = reduce_stress_intent - } - stress_impact = { - base = medium_stress_impact_loss - } - } - else = { - stress_impact = { - generous = medium_stress_impact_loss - humble = medium_stress_impact_loss - gregarious = medium_stress_impact_loss - compassionate = medium_stress_impact_loss - paranoid = medium_stress_impact_gain - greedy = medium_stress_impact_gain - } - } - scope:mischief_maker = { - send_interface_toast = { - title = ep2_wedding.1161.b.tt - left_icon = root - } - } - ai_chance = { - base = 100 - modifier = { - has_trait = compassionate - add = 50 - } - modifier = { - has_trait = gregarious - add = 50 - } - modifier = { - has_trait = humble - add = 50 - } - modifier = { - has_trait = generous - add = 50 - } - } - } - - after = { - remove_character_flag = busy_in_ceremony_event - } -} - -################################################## -# The Parade -# by Claudia Baldassi -# ep2_wedding.1170 -################################################## - -# A spouse has arrived with a whole parade. Interact with it - -ep2_wedding.1170 = { - type = activity_event - title = ep2_wedding.1170.t - desc = { - desc = ep2_wedding.1170.desc - triggered_desc = { - trigger = { - has_activity_intent = reduce_stress_intent - } - desc = ep2_wedding.1170.desc_relax - } - triggered_desc = { - trigger = { - has_activity_intent = banquet_mischief_intent - } - desc = ep2_wedding.1170.desc_mischief - } - triggered_desc = { - trigger = { - has_activity_intent = murder_attendee_intent - } - desc = ep2_wedding.1170.desc_murder - } - } - theme = wedding_ceremony_activity - left_portrait = { - character = root - animation = ecstasy - } - lower_center_portrait = scope:rich_spouse - lower_right_portrait = scope:murderee - - cooldown = { years = 1 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - scope:activity = { - has_activity_option = { - category = wedding_option_decoration - option = wedding_decoration_good - } - } - NOR = { - this = scope:activity.special_guest:spouse_1 - this = scope:activity.special_guest:spouse_2 - } - OR = { - scope:activity.special_guest:spouse_1 = { - NOT = { is_close_or_extended_family_of = root } - is_lowborn = no - is_ai = yes - location = scope:activity.activity_location - } - scope:activity.special_guest:spouse_2 = { - NOT = { is_close_or_extended_family_of = root } - is_lowborn = no - is_ai = yes - location = scope:activity.activity_location - } - } - NOT = { - scope:activity = { - has_variable = has_had_event_1170 - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - OR = { - has_activity_intent = reduce_stress_intent - has_activity_intent = banquet_mischief_intent - } - add = 2 - } - modifier = { - has_activity_intent = murder_attendee_intent - add = 1 - } - } - - immediate = { - add_character_flag = busy_in_ceremony_event - scope:activity = { - set_variable = has_had_event_1170 - } - random_list = { - 50 = { - trigger = { - scope:activity.special_guest:spouse_1 = { - NOT = { is_close_or_extended_family_of = root } - is_lowborn = no - is_ai = yes - } - } - scope:activity.special_guest:spouse_1 = { save_scope_as = rich_spouse } - } - 50 = { - trigger = { - scope:activity.special_guest:spouse_2 = { - NOT = { is_close_or_extended_family_of = root } - is_lowborn = no - is_ai = yes - } - } - scope:activity.special_guest:spouse_2 = { save_scope_as = rich_spouse } - } - } - if = { - limit = { - has_activity_intent = murder_attendee_intent - } - intent_target = { - save_scope_as = murderee - add_character_flag = busy_in_ceremony_event - } - } - scope:activity = { - add_activity_log_entry = { - key = wedding_parade_arrival_log - tags = { good } - score = 20 - character = scope:rich_spouse - } - } - } - - # Option A: Pocket some horseshoes - option = { - name = ep2_wedding.1170.a - flavor = ep2_wedding.1170.a.tt - add_gold = minor_gold_value - stress_impact = { - greedy = medium_stress_impact_loss - generous = medium_stress_impact_gain - compassionate = medium_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 1 - } - } - } - - # Option B: What a show - option = { - name = ep2_wedding.1170.b - trigger = { - NOT = { - has_activity_intent = reduce_stress_intent - } - } - flavor = ep2_wedding.1170.b.tt - stress_impact = { - base = minor_stress_impact_loss - generous = medium_stress_impact_loss - compassionate = medium_stress_impact_loss - greedy = medium_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -1 - } - } - } - - # Option C: Enjoy the show - option = { - name = ep2_wedding.1170.c - trigger = { - has_activity_intent = reduce_stress_intent - } - reason = activity_intent - stress_impact = { - base = medium_stress_impact_loss - humble = major_stress_impact_loss - compassionate = major_stress_impact_loss - gregarious = major_stress_impact_loss - trusting = major_stress_impact_loss - generous = major_stress_impact_loss - } - ai_chance = { - base = 200 - } - } - - # Option D: mayhem - option = { - name = ep2_wedding.1170.d - trigger = { - has_activity_intent = banquet_mischief_intent - } - reason = activity_intent - add_character_modifier = { - modifier = wedding_parade_mayhem_modifier - years = 5 - } - stress_impact = { - base = medium_stress_impact_loss - } - ai_chance = { - base = 200 - } - } - - # Option E: try to kill - option = { - name = ep2_wedding.1170.e - trigger = { - has_activity_intent = murder_attendee_intent - } - flavor = ep2_wedding.1170.e.tt - reason = activity_intent - duel = { - skills = { intrigue prowess } - target = scope:murderee - 40 = { - # Success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = ep2_wedding.1170.success - send_interface_toast = { - title = ep2_wedding.1170.success.tt - left_icon = root - right_icon = scope:murderee - scope:activity = { - add_activity_log_entry = { - key = wedding_parade_death_log - tags = { good } - score = 20 - character = scope:rich_spouse - target = scope:murderee - } - } - scope:murderee = { - death = { - killer = root - death_reason = death_plotting - } - } - complete_activity_intent = yes - stress_impact = { - base = minor_stress_impact_loss - vengeful = medium_stress_impact_loss - paranoid = medium_stress_impact_loss - deceitful = medium_stress_impact_loss - } - } - } - 60 = { - # Failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = ep2_wedding.1170.failure - send_interface_toast = { - title = ep2_wedding.1170.failure.tt - left_icon = root - right_icon = scope:murderee - stress_impact = { - base = minor_stress_impact_gain - vengeful = medium_stress_impact_gain - paranoid = medium_stress_impact_gain - deceitful = medium_stress_impact_gain - } - } - } - } - - ai_chance = { - base = 200 - } - } - - after = { - remove_character_flag = busy_in_ceremony_event - if = { - limit = { - intent_target ?= { has_character_flag = busy_in_ceremony_event } - } - intent_target = { remove_character_flag = busy_in_ceremony_event } - } - } -} - -################################################## -# A Bad Match -# by Claudia Baldassi -# ep2_wedding.1180 -################################################## - -# Your spouse doesn't really like you... - -ep2_wedding.1180 = { - type = activity_event - title = ep2_wedding.1180.t - desc = ep2_wedding.1180.desc - theme = wedding_ceremony_activity - left_portrait = { - character = root - animation = anger - } - right_portrait = { - character = scope:other_spouse - animation = disgust - } - - cooldown = { years = 1 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - OR = { - root = scope:activity.special_guest:spouse_1 - root = scope:activity.special_guest:spouse_2 - } - OR = { - root.betrothed ?= { - trait_compatibility = { - target = root - value <= low_negative_trait_compatibility - } - } - root.betrothed ?= { - save_temporary_opinion_value_as = { - name = target_opinion - target = root - } - scope:target_opinion < 0 - } - } - root.betrothed ?= { - has_any_good_relationship_with_root_trigger = no - is_ai = yes - } - } - - - weight_multiplier = { - base = 1 - modifier = { - betrothed = { has_any_bad_relationship_with_root_trigger = yes } - add = 1 - } - modifier = { - betrothed = { has_trait = fickle } - add = 1 - } - } - - immediate = { - add_character_flag = busy_in_ceremony_event - betrothed = { - save_scope_as = other_spouse - add_character_flag = busy_in_ceremony_event - } - scope:activity = { set_variable = has_had_event_1180 } - } - - # Option A: it doesn't matter - option = { - name = ep2_wedding.1180.a - add_character_modifier = { - modifier = wedding_political_mentality_modifier - years = 10 - } - scope:other_spouse = { - add_opinion = { - target = root - modifier = hurt_opinion - opinion = -20 - } - } - stress_impact = { - humble = minor_stress_impact_gain - compassionate = minor_stress_impact_gain - callous = minor_stress_impact_loss - arrogant = minor_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - has_trait = arrogant - add = 50 - } - modifier = { - has_trait = callous - add = 50 - } - } - } - - # Option B: I'll make you like me! - option = { - name = ep2_wedding.1180.b - if = { - limit = { - has_activity_intent = woo_attendee_intent - intent_target = scope:other_spouse - } - progress_towards_lover_effect = { - CHARACTER = scope:other_spouse - REASON = lover_wedding_trying_hard - OPINION = default_lover_opinion - } - } - else_if = { - limit = { - can_start_scheme = { - type = seduce - target_character = scope:other_spouse - } - } - start_scheme = { - type = seduce - target_character = scope:other_spouse - } - } - else_if = { - limit = { - any_scheme = { - type = seduce - scheme_target_character = scope:other_spouse - } - } - random_scheme = { - type = seduce - limit = { - scheme_target_character = scope:other_spouse - } - add_scheme_progress = scheme_progress_gain - } - } - else = { - scope:other_spouse = { - add_opinion = { - target = root - modifier = making_an_effort_opinion - } - } - } - if = { - limit = { - scope:other_spouse = { has_any_fertility_relationship_with_root_trigger = no } - } - set_relation_wedding_good_fertility = scope:other_spouse - } - stress_impact = { - arrogant = minor_stress_impact_gain - fickle = minor_stress_impact_gain - lustful = minor_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - has_trait = lustful - add = 50 - } - } - } - - # Option C: don't care! - option = { - name = ep2_wedding.1180.c - trigger = { - has_activity_intent = reduce_stress_intent - } - reason = activity_intent - scope:other_spouse = { - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -10 - } - } - stress_impact = { - base = major_stress_impact_loss - } - ai_chance = { - base = 150 - } - } - - after = { - remove_character_flag = busy_in_ceremony_event - scope:other_spouse = { remove_character_flag = busy_in_ceremony_event } - } -} - -################################################## -# Religious Complaints -# by Claudia Baldassi -# ep2_wedding.1190 -################################################## - -# Religious guest complains about lavishness, luxury, wastes, and unchaste mingling - -ep2_wedding.1190 = { - type = activity_event - title = ep2_wedding.1190.t - desc = ep2_wedding.1190.desc - theme = wedding_ceremony_activity - left_portrait = { - character = root - animation = dismissal - } - right_portrait = { - character = scope:grumbler - animation = personality_zealous - } - - cooldown = { years = 1 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - OR = { - root = scope:host - root = scope:activity.special_guest:spouse_1 - root = scope:activity.special_guest:spouse_2 - } - scope:activity = { - any_attending_character = { - NOR = { - this = root - this = scope:host - } - OR = { - this = root.faith.religious_head - has_trait = devoted - has_trait = theologian - has_trait = zealous - } - faith = { - NOR = { - trait_is_virtue = lustful - trait_is_virtue = gluttonous - } - } - } - NOT = { - has_variable = has_had_1190 - } - } - } - - weight_multiplier = { - base = 1 - } - - immediate = { - add_character_flag = busy_in_ceremony_event - scope:activity = { - set_variable = has_had_1190 - random_attending_character = { - limit = { - NOR = { - this = root - this = scope:host - } - this = root.faith.religious_head - faith = { - NOR = { - trait_is_virtue = lustful - trait_is_virtue = gluttonous - } - } - } - alternative_limit = { - NOR = { - this = root - this = scope:host - } - has_trait = devoted - faith = { - NOR = { - trait_is_virtue = lustful - trait_is_virtue = gluttonous - } - } - } - alternative_limit = { - NOR = { - this = root - this = scope:host - } - has_trait = theologian - faith = { - NOR = { - trait_is_virtue = lustful - trait_is_virtue = gluttonous - } - } - } - alternative_limit = { - NOR = { - this = root - this = scope:host - } - has_trait = zealous - faith = { - NOR = { - trait_is_virtue = lustful - trait_is_virtue = gluttonous - } - } - } - save_scope_as = grumbler - add_character_flag = busy_in_ceremony_event - } - add_activity_log_entry = { - key = wedding_religious_complaints_log - tags = { bad } - score = 20 - character = scope:grumbler - } - } - } - - # Option A: repent - option = { - name = ep2_wedding.1190.a - scope:grumbler = { - add_opinion = { - target = root - modifier = pious_opinion - opinion = 20 - } - } - if = { - limit = { - scope:activity = { - any_attending_character = { - has_trait = zealous - } - } - } - scope:activity = { - every_attending_character = { - limit = { - has_trait = zealous - this != scope:grumbler - this != root - } - custom = every_zealous_attending_character - add_opinion = { - target = root - modifier = pious_opinion - opinion = 5 - } - } - } - } - if = { - limit = { - has_lifestyle = learning_lifestyle - } - add_learning_lifestyle_xp = medium_lifestyle_experience - } - stress_impact = { - zealous = medium_stress_impact_loss - humble = minor_stress_impact_loss - temperate = minor_stress_impact_loss - chaste = minor_stress_impact_loss - cynical = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - gluttonous = medium_stress_impact_gain - lustful = medium_stress_impact_gain - drunkard = medium_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_zeal = 1.5 - } - } - } - - # Option B: kick them out - option = { - name = ep2_wedding.1190.b - trigger = { - root = scope:host - } - scope:grumbler = { - remove_from_activity = scope:activity - } - progress_towards_rival_effect = { - CHARACTER = scope:grumbler - REASON = rival_kicked_out_priest - OPINION = default_rival_opinion - } - stress_impact = { - zealous = major_stress_impact_gain - cynical = medium_stress_impact_loss - arrogant = medium_stress_impact_loss - gluttonous = medium_stress_impact_loss - lustful = medium_stress_impact_loss - drunkard = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - has_trait = gluttonous - add = 25 - } - modifier = { - has_trait = lustful - add = 50 - } - modifier = { - has_trait = cynical - add = 50 - } - modifier = { - has_trait = drunkard - add = 50 - } - } - } - - # Option C: ignore - option = { - name = ep2_wedding.1190.c - scope:grumbler = { - add_opinion = { - target = root - modifier = ignored_opinion - opinion = -5 - } - } - stress_impact = { - zealous = medium_stress_impact_gain - cynical = minor_stress_impact_loss - arrogant = minor_stress_impact_loss - gluttonous = minor_stress_impact_loss - lustful = minor_stress_impact_loss - drunkard = minor_stress_impact_loss - } - ai_chance = { - base = 100 - } - } - - # Option D: yes, and I will enjoy it too! - option = { - name = ep2_wedding.1190.d - trigger = { - OR = { - has_activity_intent = reduce_stress_intent - has_activity_intent = woo_attendee_intent - has_activity_intent = banquet_mischief_intent - } - } - reason = activity_intent - scope:grumbler = { - add_opinion = { - target = root - modifier = annoyed_opinion - opinion = -20 - } - } - if = { - limit = { - has_activity_intent = woo_attendee_intent - intent_target = { - NOR = { - this = scope:grumbler - has_trait = zealous - } - } - } - root = { - progress_towards_lover_effect = { - CHARACTER = root.intent_target - REASON = lover_daring_move - OPINION = default_lover_opinion - } - } - } - stress_impact = { - base = medium_stress_impact_loss - } - ai_chance = { - base = 200 - } - } - - after = { - remove_character_flag = busy_in_ceremony_event - scope:grumbler = { remove_character_flag = busy_in_ceremony_event } - } -} - -################################################## -# A Parent's Heart -# by Claudia Baldassi -# ep2_wedding.1200 -################################################## - -# Proud parent watches everything go well and brags with intent target/friend/rival/neighbor - -ep2_wedding.1200 = { - type = activity_event - title = ep2_wedding.1200.t - desc = { - desc = ep2_wedding.1200.desc - first_valid = { - triggered_desc = { - trigger = { - OR = { - has_activity_intent = woo_attendee_intent - has_activity_intent = diplomatic_intent - has_activity_intent = matchmaking_intent - scope:listener = { has_relation_rival = root } - scope:listener = { has_relation_potential_rival = root} - } - } - desc = ep2_wedding.1200.desc_interest - } - desc = ep2_wedding.1200.desc_generic - } - } - theme = wedding_ceremony_activity - left_portrait = { - character = root - animation = wedding_happy_cry - } - center_portrait = { - character = scope:my_child - animation = wrestling_victory - } - right_portrait = { - character = scope:listener - animation = boredom - } - lower_left_portrait = scope:my_child - lower_center_portrait = scope:intent_target - - cooldown = { years = 1 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - - OR = { - scope:activity.special_guest:spouse_1 = { is_child_of = root } - scope:activity.special_guest:spouse_2 = { is_child_of = root } - } - # Incest alert - NOR = { - root = scope:activity.special_guest:spouse_1 - root = scope:activity.special_guest:spouse_2 - } - scope:activity = { - any_attending_character = { - NOR = { - this = root - this = scope:activity.special_guest:spouse_1 - this = scope:activity.special_guest:spouse_2 - } - } - } - trigger_if = { - limit = { - has_activity_intent = matchmaking_intent - } - OR = { - root.intent_target = { has_variable = wedding_good_match } - scope:activity = { - any_attending_character = { - is_ai = yes - location = root.location - can_marry_character_trigger = { CHARACTER = root.intent_target } - NOR = { - exists = betrothed - has_character_flag = busy_in_wgathering_event - is_close_or_extended_family_of = root.intent_target - root.intent_target.var:wedding_no_match ?= this - } - trigger_if = { - limit = { - is_female = yes - } - age < marriage_female_fertility_cutoff_age_value - } - } - } - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - has_activity_intent = woo_attendee_intent - add = 1 - } - modifier = { - has_activity_intent = diplomatic_intent - add = 1 - } - modifier = { - has_activity_intent = matchmaking_intent - add = 1 - } - modifier = { - root = scope:host - add = 2 - } - } - - immediate = { - add_character_flag = busy_in_ceremony_event - if = { - limit = { - scope:activity.special_guest:spouse_1 = { is_child_of = root } - } - scope:activity.special_guest:spouse_1 = { save_scope_as = my_child } - } - else = { - scope:activity.special_guest:spouse_2 = { save_scope_as = my_child } - } - if = { - limit = { - OR = { - has_activity_intent = woo_attendee_intent - has_activity_intent = diplomatic_intent - } - } - intent_target = { save_scope_as = listener } - } - else_if = { - limit = { - has_activity_intent = matchmaking_intent - intent_target = { has_variable = wedding_good_match } - } - intent_target.var:wedding_good_match = { save_scope_as = listener } - } - else_if = { - limit = { - has_activity_intent = matchmaking_intent - } - scope:activity = { - random_attending_character = { - limit = { - is_ai = yes - location = root.location - can_marry_character_trigger = { CHARACTER = root.intent_target } - NOR = { - exists = betrothed - has_character_flag = busy_in_wgathering_event - is_close_or_extended_family_of = root.intent_target - root.intent_target.var:wedding_no_match ?= this - } - trigger_if = { - limit = { - is_female = yes - } - age < marriage_female_fertility_cutoff_age_value - } - } - save_scope_as = listener - } - } - } - else_if = { - limit = { - scope:activity = { - any_attending_character = { - OR = { - has_relation_friend = root - has_relation_rival = root - has_relation_lover = root - has_relation_potential_friend = root - has_relation_potential_rival = root - has_relation_potential_lover = root - } - NOR = { - this = scope:my_child - this = scope:my_child.betrothed - } - } - } - } - scope:activity = { - random_attending_character = { - limit = { - OR = { - has_relation_friend = root - has_relation_rival = root - has_relation_lover = root - has_relation_potential_friend = root - has_relation_potential_rival = root - has_relation_potential_lover = root - } - NOR = { - this = scope:my_child - this = scope:my_child.betrothed - } - } - save_scope_as = listener - } - } - } - else = { - scope:activity = { - random_attending_character = { - limit = { - NOR = { - this = root - this = scope:my_child - this = scope:my_child.betrothed - } - } - save_scope_as = listener - } - } - } - scope:listener = { add_character_flag = busy_in_ceremony_event } - if = { - limit = { - has_activity_intent = matchmaking_intent - } - intent_target = { save_scope_as = intent_target } - } - } - - # Option A: So proud - option = { - name = ep2_wedding.1200.a - add_prestige = minor_prestige_gain - dynasty ?= { add_dynasty_prestige = minor_dynasty_prestige_gain } - stress_impact = { - base = minor_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - has_any_good_relationship_with_character_trigger = { CHARACTER = scope:listener } - add = 50 - } - } - } - - # Option B: Aren't you jealous - option = { - name = ep2_wedding.1200.b - if = { - limit = { - can_set_relation_rival_trigger = { CHARACTER = scope:listener } - } - progress_towards_rival_effect = { - CHARACTER = scope:listener - REASON = rival_rubbed_it_in - OPINION = default_rival_opinion - } - } - else_if = { - limit = { - has_relation_rival = scope:listener - num_of_relation_nemesis = 0 - } - set_relation_nemesis = { - target = scope:listener - reason = rival_rubbed_it_in - } - } - else = { - reverse_add_opinion = { - target = scope:listener - modifier = annoyed_opinion - opinion = -15 - } - } - scope:activity = { - add_activity_log_entry = { - key = wedding_gloating_log - tags = { bad } - score = 20 - character = root - target = scope:listener - } - } - stress_impact = { - vengeful = medium_stress_impact_loss - callous = medium_stress_impact_loss - sadistic = medium_stress_impact_loss - deceitful = medium_stress_impact_loss - paranoid = minor_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - has_any_bad_relationship_with_character_trigger = { CHARACTER = scope:listener } - add = 50 - } - modifier = { - has_trait = vengeful - add = 25 - } - modifier = { - has_trait = callous - add = 25 - } - } - } - - # Option C: Woo - what about *us* - option = { - name = ep2_wedding.1200.c - trigger = { - has_activity_intent = woo_attendee_intent - } - reason = activity_intent - duel = { - skill = intrigue - target = scope:listener - 50 = { - # Success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - modifier = { - scope:listener = { has_trait = lustful } - add = 15 - } - desc = ep2_wedding.1200.success - send_interface_toast = { - title = ep2_wedding.1200.success.tt - left_icon = root - right_icon = scope:listener - progress_towards_lover_effect = { - CHARACTER = scope:listener - REASON = lover_love_is_in_the_air - OPINION = default_lover_opinion - } - stress_impact = { - base = minor_stress_impact_loss - lustful = medium_stress_impact_loss - arrogant = medium_stress_impact_loss - } - } - } - 50 = { - # Failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - modifier = { - scope:listener = { has_trait = chaste } - add = 15 - } - desc = ep2_wedding.1200.failure - send_interface_toast = { - title = ep2_wedding.1200.failure.tt - left_icon = root - right_icon = scope:listener - scope:listener = { - add_opinion = { - target = root - modifier = awkward_opinion - opinion = -10 - } - } - stress_impact = { - base = minor_stress_impact_gain - lustful = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - } - } - } - } - - ai_chance = { - base = 200 - } - } - - # Option D: Diplo: impressive show of power - option = { - name = ep2_wedding.1200.d - flavor = ep2_wedding.1200.d.tt - trigger = { - has_activity_intent = diplomatic_intent - } - reason = activity_intent - duel = { - skill = diplomacy - target = scope:listener - 40 = { - # Success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - modifier = { - root = scope:host - add = 10 - } - modifier = { - scope:listener = { has_trait = trusting } - add = 10 - } - desc = ep2_wedding.1200.success - send_interface_toast = { - title = ep2_wedding.1200.success.tt - left_icon = root - right_icon = scope:listener - complete_activity_intent = yes - scope:activity = { - add_activity_log_entry = { - key = wedding_alliance_log - tags = { good } - score = 20 - character = root - target = scope:listener - - root = { - create_alliance = { - target = scope:listener - allied_through_owner = root - allied_through_target = scope:listener - } - } - scope:listener = { - add_opinion = { - target = root - modifier = event_negotiated_alliance_opinion - } - } - } - } - stress_impact = { - base = minor_stress_impact_loss - ambitious = medium_stress_impact_loss - } - } - } - 60 = { - # Failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - modifier = { - scope:listener = { has_trait = paranoid } - add = 20 - } - desc = ep2_wedding.1200.failure - send_interface_toast = { - title = ep2_wedding.1200.failure.tt - left_icon = root - right_icon = scope:listener - stress_impact = { - base = minor_stress_impact_gain - ambitious = medium_stress_impact_gain - } - } - } - } - ai_chance = { - base = 200 - } - } - - # Option E: Matchmaking: if only I could do the same for X - option = { - name = ep2_wedding.1200.e - trigger = { - has_activity_intent = matchmaking_intent - } - reason = activity_intent - duel = { - skills = { diplomacy intrigue } - target = scope:listener - 50 = { - # Success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = ep2_wedding.1200.e.success - send_interface_toast = { - title = ep2_wedding.1200.e.success - left_icon = root - right_icon = scope:listener - custom_tooltip = ep2_wedding.1200.e.success.tt - if = { - limit = { - intent_target = { - NOT = { - has_variable = wedding_good_match - } - } - } - intent_target = { - set_variable = { - name = wedding_good_match - value = scope:listener - } - } - } - else = { - intent_target = { - create_betrothal = scope:listener - } - } - scope:listener = { - add_opinion = { - target = root - modifier = flattered_opinion - opinion = 15 - } - } - scope:listener = { - add_opinion = { - target = scope:intent_target - modifier = flattered_opinion - opinion = 15 - } - } - stress_impact = { - base = minor_stress_impact_loss - family_first = medium_stress_impact_loss - arrogant = medium_stress_impact_loss - gregarious = medium_stress_impact_loss - } - } - } - 50 = { - # Failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = ep2_wedding.1200.e.failure - send_interface_toast = { - title = ep2_wedding.1200.e.failure - left_icon = root - right_icon = scope:listener - intent_target = { - set_variable = { - name = wedding_no_match - value = scope:listener - } - } - scope:listener = { - add_opinion = { - target = root - modifier = insult_opinion - opinion = -10 - } - } - stress_impact = { - base = minor_stress_impact_gain - family_first = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - gregarious = medium_stress_impact_gain - } - } - } - } - ai_chance = { - base = 200 - } - } - - after = { - remove_character_flag = busy_in_ceremony_event - scope:listener = { remove_character_flag = busy_in_ceremony_event } - } -} - -################################################## -# Political Talk -# by Claudia Baldassi -# ep2_wedding.1210 -################################################## - -# Political talk with a fellow ruler - -ep2_wedding.1210 = { - type = activity_event - title = ep2_wedding.1210.t - desc = { - desc = ep2_wedding.1210.desc - random_valid = { - triggered_desc = { - trigger = { - scope:talk_to.gold < 0 - } - desc = ep2_wedding.1210.desc_gold - } - triggered_desc = { - trigger = { - scope:talk_to = { - OR = { - has_trait = shy - has_trait = craven - } - } - } - desc = ep2_wedding.1210.desc_fear - } - triggered_desc = { - trigger = { - scope:talk_to = { - any_sub_realm_county = { - any_county_province = { - has_province_modifier = recently_looted_modifier - } - } - } - } - desc = ep2_wedding.1210.desc_raids - } - triggered_desc = { - trigger = { - scope:talk_to = { - OR = { - any_relation = { - type = rival - } - has_trait = paranoid - } - } - } - desc = ep2_wedding.1210.desc_rivals - } - triggered_desc = { - trigger = { - scope:talk_to = { - age > 65 - } - } - desc = ep2_wedding.1210.desc_age - } - desc = ep2_wedding.1210.desc_bad_harvest - desc = ep2_wedding.1210.desc_rain - desc = ep2_wedding.1210.desc_enemies - } - } - theme = wedding_ceremony_activity - left_portrait = { - character = root - animation = personality_rational - } - right_portrait = { - character = scope:talk_to - animation = thinking - } - - cooldown = { years = 1 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - is_landed = yes - has_activity_intent = diplomatic_intent - intent_target = { - is_landed = yes - NOT = { is_vassal_of = root } - is_ai = yes - NOR = { - this = scope:activity.special_guest:spouse_1 - this = scope:activity.special_guest:spouse_2 - } - } - NOR = { - root = scope:activity.special_guest:spouse_1 - root = scope:activity.special_guest:spouse_2 - } - } - - weight_multiplier = { - base = 1 - } - - immediate = { - add_character_flag = busy_in_ceremony_event - intent_target = { - save_scope_as = talk_to - add_character_flag = busy_in_ceremony_event - } - } - - # Option A: gain hook - option = { - name = ep2_wedding.1210.a - trigger = { - can_add_hook = { - target = scope:talk_to - type = threat_hook - } - } - duel = { - skill = intrigue - target = scope:talk_to - 50 = { - # Success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - modifier = { - has_trait = schemer - add = 10 - } - modifier = { - has_trait = torturer - add = 20 - } - modifier = { - scope:talk_to = { has_trait = lazy } - add = 20 - } - modifier = { - scope:talk_to = { has_trait = craven } - add = 20 - } - desc = ep2_wedding.1210.a.success - send_interface_toast = { - title = ep2_wedding.1210.a.success - left_icon = root - right_icon = scope:talk_to - scope:activity = { - add_activity_log_entry = { - key = wedding_intimidation_log - tags = { good } - score = 20 - character = root - target = scope:talk_to - - root = { - add_hook = { - target = scope:talk_to - type = threat_hook - } - } - } - } - stress_impact = { - base = minor_stress_impact_loss - deceitful = medium_stress_impact_loss - sadistic = medium_stress_impact_loss - ambitious = medium_stress_impact_loss - } - } - } - 50 = { - # Failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - modifier = { - scope:talk_to = { has_trait = torturer } - add = 20 - } - modifier = { - scope:talk_to = { has_trait = brave } - add = 20 - } - desc = ep2_wedding.1210.a.failure - send_interface_toast = { - title = ep2_wedding.1210.a.failure - left_icon = root - right_icon = scope:talk_to - reverse_add_opinion = { - target = scope:talk_to - modifier = threatened_opinion - opinion = -20 - } - stress_impact = { - base = minor_stress_impact_gain - deceitful = medium_stress_impact_gain - sadistic = medium_stress_impact_gain - ambitious = medium_stress_impact_gain - } - } - } - } - ai_chance = { - base = 100 - } - } - - # Option B: gain alliance - option = { - name = ep2_wedding.1210.b - duel = { - skill = diplomacy - target = scope:talk_to - 40 = { - # Success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - modifier = { - has_trait = diplomat - add = 20 - } - modifier = { - has_trait = august - add = 10 - } - modifier = { - scope:talk_to = { has_trait = lazy } - add = 20 - } - modifier = { - scope:talk_to = { has_trait = trusting } - add = 20 - } - desc = ep2_wedding.1210.b.success - send_interface_toast = { - title = ep2_wedding.1210.b.success - left_icon = root - right_icon = scope:talk_to - complete_activity_intent = yes - scope:activity = { - add_activity_log_entry = { - key = wedding_alliance_log - tags = { good } - score = 20 - character = root - target = scope:talk_to - - root = { - create_alliance = { - target = scope:talk_to - allied_through_owner = root - allied_through_target = scope:talk_to - } - } - scope:talk_to = { - add_opinion = { - target = root - modifier = event_negotiated_alliance_opinion - } - } - } - } - stress_impact = { - base = minor_stress_impact_loss - ambitious = medium_stress_impact_loss - gregarious = medium_stress_impact_loss - } - } - } - 60 = { - # Failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - modifier = { - scope:talk_to = { has_trait = diplomat } - add = 20 - } - modifier = { - scope:talk_to = { has_trait = august } - add = 10 - } - modifier = { - scope:talk_to = { has_trait = paranoid } - add = 20 - } - modifier = { - scope:talk_to = { has_trait = shy } - add = 20 - } - desc = ep2_wedding.1210.b.failure - send_interface_toast = { - title = ep2_wedding.1210.b.failure - left_icon = root - right_icon = scope:talk_to - scope:talk_to = { - add_opinion = { - target = root - modifier = suspicion_opinion - opinion = -10 - } - } - stress_impact = { - base = minor_stress_impact_gain - ambitious = medium_stress_impact_gain - gregarious = medium_stress_impact_gain - } - } - } - } - ai_chance = { - base = 100 - } - } - - # Option C: subjugate - option = { - name = ep2_wedding.1210.c - trigger = { - scope:talk_to = { activity_wedding_diplomatic_intent_impressible_target = yes } - } - duel = { - skills = { diplomacy intrigue } - target = scope:talk_to - 30 = { - # Success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - modifier = { - has_trait = diplomat - add = 20 - } - modifier = { - has_trait = august - add = 10 - } - modifier = { - scope:talk_to = { has_trait = trusting } - add = 20 - } - modifier = { - scope:talk_to = { has_trait = craven } - add = 20 - } - modifier = { - scope:talk_to = { has_trait = shy } - add = 20 - } - desc = ep2_wedding.1210.c.success - send_interface_toast = { - title = ep2_wedding.1210.c.success - left_icon = root - right_icon = scope:talk_to - complete_activity_intent = yes - scope:activity = { - add_activity_log_entry = { - key = wedding_fealty_log - tags = { good } - score = 20 - character = root - target = scope:talk_to - - root = { - create_title_and_vassal_change = { - type = swear_fealty - save_scope_as = title_change - add_claim_on_loss = no - } - scope:talk_to = { - change_liege = { - liege = root - change = scope:title_change - } - } - resolve_title_and_vassal_change = scope:title_change - } - } - } - stress_impact = { - base = minor_stress_impact_loss - ambitious = major_stress_impact_loss - } - } - } - 70 = { - # Failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - modifier = { - scope:talk_to = { has_trait = diplomat } - add = 20 - } - modifier = { - scope:talk_to = { has_trait = august } - add = 10 - } - modifier = { - scope:talk_to = { has_trait = paranoid } - add = 20 - } - desc = ep2_wedding.1210.c.failure - send_interface_toast = { - title = ep2_wedding.1210.c.failure - left_icon = root - right_icon = scope:talk_to - scope:talk_to = { - add_opinion = { - target = root - modifier = suspicion_opinion - opinion = -20 - } - } - stress_impact = { - base = minor_stress_impact_gain - ambitious = medium_stress_impact_gain - } - } - } - } - ai_chance = { - base = 100 - } - } - - after = { - remove_character_flag = busy_in_ceremony_event - scope:talk_to = { remove_character_flag = busy_in_ceremony_event } - } -} - -################################################## -# Poisonous Relations -# by Claudia Baldassi -# ep2_wedding.1220 -################################################## - -# In-laws are bullies (or other close relatives) - -scripted_trigger wedding_1220_valid_relative_trigger = { - is_ai = yes - is_adult = yes - is_close_family_of = $RELATIVE_SPOUSE$ - NOT = { is_close_family_of = $NON_RELATIVE_SPOUSE$ } - NOR = { - this = $RELATIVE_SPOUSE$ - this = $NON_RELATIVE_SPOUSE$ - } - OR = { - # They enjoy making people feel inadequate - has_trait = deceitful - has_trait = vengeful - has_trait = callous - has_trait = torturer - has_trait = greedy - has_trait = sadistic - # Their family is marrying down - highest_held_title_tier > $NON_RELATIVE_SPOUSE$.highest_held_title_tier - $RELATIVE_SPOUSE$.highest_held_title_tier > $NON_RELATIVE_SPOUSE$.highest_held_title_tier - # They are feuding - house_has_feud_relation_with_trigger = { TARGET = $NON_RELATIVE_SPOUSE$ } - # They already didn't like you - has_any_bad_relationship_with_character_trigger = { CHARACTER = $NON_RELATIVE_SPOUSE$ } - opinion = { - target = $NON_RELATIVE_SPOUSE$ - value <= -25 - } - # They think you are a criminal - has_imprisonment_reason = $NON_RELATIVE_SPOUSE$ - # Or a miscreant - faith = { - NOR = { - this = $NON_RELATIVE_SPOUSE$.faith - faith_hostility_level = { - target = $NON_RELATIVE_SPOUSE$.faith - value = 0 # Accepted - } - } - } - } -} - -ep2_wedding.1220 = { - type = activity_event - title = ep2_wedding.1220.t - desc = { - desc = ep2_wedding.1220.desc - first_valid = { - triggered_desc = { - trigger = { - OR = { - scope:relative.highest_held_title_tier > root.highest_held_title_tier - scope:other_spouse.highest_held_title_tier > root.highest_held_title_tier - } - } - desc = ep2_wedding.1220.desc_marry_down - } - triggered_desc = { - trigger = { - scope:relative ?= { - house_has_feud_relation_with_trigger = { TARGET = root } - } - } - desc = ep2_wedding.1220.desc_feud - } - triggered_desc = { - trigger = { - scope:relative = { - OR = { - has_any_bad_relationship_with_character_trigger = { CHARACTER = root } - opinion = { - target = root - value <= -25 - } - has_imprisonment_reason = root - } - } - } - desc = ep2_wedding.1220.desc_despicable - } - triggered_desc = { - trigger = { - scope:relative.faith = { - NOR = { - this = root.faith - faith_hostility_level = { - target = root.faith - value = 0 - } - } - } - } - desc = ep2_wedding.1220.desc_miscreant - } - desc = ep2_wedding.1220.desc_fallback - } - triggered_desc = { - trigger = { - has_activity_intent = diplomatic_intent - scope:relative != scope:diplo_target - } - desc = ep2_wedding.1220.desc_target - } - } - theme = wedding_ceremony_activity - left_portrait = { - character = root - animation = shame - } - center_portrait = { - trigger = { - scope:diplo_target ?= { this != scope:relative } - } - character = scope:diplo_target - animation = thinking - } - right_portrait = { - character = scope:relative - animation = anger - } - - lower_right_portrait = scope:other_spouse - - cooldown = { years = 1 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - OR = { - root = scope:activity.special_guest:spouse_1 - root = scope:activity.special_guest:spouse_2 - } - trigger_if = { - limit = { - root = scope:activity.special_guest:spouse_1 - } - scope:activity = { - any_attending_character = { - wedding_1220_valid_relative_trigger = { - RELATIVE_SPOUSE = scope:activity.special_guest:spouse_2 - NON_RELATIVE_SPOUSE = scope:activity.special_guest:spouse_1 - } - } - } - } - trigger_else = { - scope:activity = { - any_attending_character = { - wedding_1220_valid_relative_trigger = { - RELATIVE_SPOUSE = scope:activity.special_guest:spouse_1 - NON_RELATIVE_SPOUSE = scope:activity.special_guest:spouse_2 - } - } - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - has_activity_intent = diplomatic_intent - add = 2 - } - modifier = { - has_activity_intent = banquet_mischief_intent - add = 1 - } - } - - immediate = { - add_character_flag = busy_in_ceremony_event - if = { - limit = { - root = scope:activity.special_guest:spouse_1 - } - scope:activity.special_guest:spouse_2 = { save_scope_as = other_spouse } - } - else = { - scope:activity.special_guest:spouse_1 = { save_scope_as = other_spouse } - } - scope:activity = { - random_attending_character = { - limit = { - wedding_1220_valid_relative_trigger = { - RELATIVE_SPOUSE = scope:other_spouse - NON_RELATIVE_SPOUSE = root - } - } - save_scope_as = relative - add_character_flag = busy_in_ceremony_event - } - } - if = { - limit = { - has_activity_intent = diplomatic_intent - } - intent_target = { save_scope_as = diplo_target } - } - } - - # Option A: ignore - option = { - name = ep2_wedding.1220.a - add_prestige = minor_prestige_loss - scope:relative = { - add_opinion = { - target = root - modifier = weak_opinion - opinion = 15 - } - } - stress_impact = { - lazy = minor_stress_impact_loss - calm = medium_stress_impact_loss - patient = medium_stress_impact_loss - humble = medium_stress_impact_loss - content = medium_stress_impact_loss - forgiving = major_stress_impact_loss - wrathful = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - brave = medium_stress_impact_gain - trusting = medium_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = -1 - } - } - } - - # Option B: react aggressively - option = { - name = ep2_wedding.1220.b - add_prestige = medium_prestige_gain - scope:relative = { - add_opinion = { - target = root - modifier = threatened_opinion - opinion = -15 - } - } - if = { - limit = { - can_set_relation_rival_trigger = { CHARACTER = scope:relative } - } - progress_towards_rival_effect = { - REASON = rival_wedding_challenged_prejudices - CHARACTER = scope:relative - OPINION = 0 - } - } - stress_impact = { - lazy = minor_stress_impact_gain - calm = medium_stress_impact_gain - patient = medium_stress_impact_gain - humble = medium_stress_impact_gain - craven = medium_stress_impact_gain - shy = medium_stress_impact_gain - paranoid = minor_stress_impact_loss - wrathful = medium_stress_impact_loss - brave = medium_stress_impact_loss - ambitious = medium_stress_impact_loss - stubborn = medium_stress_impact_loss - vengeful = major_stress_impact_loss - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = 1 - } - } - } - - # Option C: diplomatic intent: if you handle them well, you can also impress your target (especially if they are the target) - option = { - name = ep2_wedding.1220.c - trigger = { - has_activity_intent = diplomatic_intent - } - flavor = ep2_wedding.1220.c.tt - reason = activity_intent - duel = { - skill = diplomacy - target = scope:relative - 50 = { - # Success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = ep2_wedding.1220.c.success - send_interface_toast = { - title = ep2_wedding.1220.c.success.tt - left_icon = root - right_icon = scope:relative - scope:activity = { - add_activity_log_entry = { - key = wedding_proved_wrong_log - tags = { good } - score = 50 - character = root - target = scope:relative - - root = { - add_prestige = medium_prestige_gain - if = { - limit = { - can_set_relation_friend_trigger = { CHARACTER = scope:relative } - } - progress_towards_friend_effect = { - REASON = friend_wedding_not_so_bad - CHARACTER = scope:relative - OPINION = default_friend_opinion - } - } - } - scope:diplo_target ?= { - add_opinion = { - target = root - modifier = impressed_opinion - opinion = 20 - } - if = { - limit = { - this = scope:relative - root = { - can_add_hook = { - target = scope:relative - type = favor_hook - } - } - } - root = { - add_hook = { - target = scope:relative - type = favor_hook - } - } - } - } - } - } - stress_impact = { - base = minor_stress_impact_loss - calm = medium_stress_impact_loss - patient = medium_stress_impact_loss - forgiving = major_stress_impact_loss - } - } - } - 50 = { - # Failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = ep2_wedding.1220.c.failure - send_interface_toast = { - title = ep2_wedding.1220.c.failure.tt - left_icon = root - right_icon = scope:relative - add_prestige = minor_prestige_loss - if = { - limit = { - can_set_relation_rival_trigger = { CHARACTER = scope:relative } - } - progress_towards_rival_effect = { - REASON = rival_wedding_confirmed_prejudices - CHARACTER = scope:relative - OPINION = default_rival_opinion - } - } - stress_impact = { - base = minor_stress_impact_gain - paranoid = minor_stress_impact_gain - wrathful = medium_stress_impact_gain - ambitious = medium_stress_impact_gain - } - } - } - } - ai_chance = { - base = 200 - } - } - - # Option D: mischief intent: mess with them - option = { - name = ep2_wedding.1220.d - trigger = { - has_activity_intent = banquet_mischief_intent - } - reason = activity_intent - if = { - limit = { - has_lifestyle = intrigue_lifestyle - } - add_intrigue_lifestyle_xp = medium_lifestyle_xp - } - add_dread = minor_dread_gain - stress_impact = { - base = medium_stress_impact_loss - arrogant = major_stress_impact_loss - stubborn = major_stress_impact_loss - vengeful = major_stress_impact_loss - } - ai_chance = { - base = 200 - } - } - - after = { - remove_character_flag = busy_in_ceremony_event - scope:relative = { remove_character_flag = busy_in_ceremony_event } - } -} - - - -# BANQUET EVENTS - -################################################## -# A Kindred Spirit -# by Claudia Baldassi -# ep2_wedding.1040 -################################################## - -# You make a new friend - -ep2_wedding.1040 = { - type = activity_event - title = ep2_wedding.1040.t - desc = ep2_wedding.1040.desc - theme = wedding_banquet_activity - center_portrait = { - character = root - animation = laugh - } - right_portrait = { - character = scope:new_friend - animation = personality_content - } - - cooldown = { years = 1 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - scope:activity = { - any_attending_character = { - OR = { - has_relation_potential_friend = root - AND = { - has_any_good_relationship_with_root_trigger = no - has_any_bad_relationship_with_root_trigger = no - } - } - is_ai = yes - is_adult = yes - NOT = { has_character_flag = busy_in_banquet_event } - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - is_ai = yes - factor = 0.1 - } - } - - immediate = { - add_character_flag = busy_in_banquet_event - scope:activity = { - random_attending_character = { - limit = { - OR = { - has_relation_potential_friend = root - AND = { - has_any_good_relationship_with_root_trigger = no - has_any_bad_relationship_with_root_trigger = no - } - } - is_ai = yes - is_adult = yes - NOT = { has_character_flag = busy_in_banquet_event } - } - save_scope_as = new_friend - } - } - scope:new_friend = { add_character_flag = busy_in_banquet_event } - } - - #Option A: - option = { - name = ep2_wedding.1040.a - scope:activity = { - add_activity_log_entry = { - key = wedding_kindred_log - tags = { good } - score = 50 - character = root - target = scope:new_friend - - # Effect - root = { - set_relation_friend = { reason = friend_wedding_enjoyable_chat target = scope:new_friend } - reverse_add_opinion = { - target = scope:new_friend - modifier = friendliness_opinion - opinion = 20 - } - } - } - } - stress_impact = { - shy = minor_stress_impact_gain - reclusive = minor_stress_impact_gain - paranoid = minor_stress_impact_gain - trusting = medium_stress_impact_loss - gregarious = major_stress_impact_loss - } - - ai_chance = { - base = 100 - modifier = { - has_trait = shy - add = -50 - } - modifier = { - has_trait = reclusive - add = -75 - } - modifier = { - has_trait = paranoid - add = -75 - } - } - } - - #Option B: - option = { - name = ep2_wedding.1040.b - reverse_add_opinion = { - target = scope:new_friend - modifier = unfriendly_opinion - opinion = -15 - } - stress_impact = { - gregarious = medium_stress_impact_gain - reclusive = major_stress_impact_loss - paranoid = major_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - has_trait = gregarious - add = -75 - } - } - } - after = { - remove_character_flag = busy_in_banquet_event - scope:new_friend = { remove_character_flag = busy_in_banquet_event } - } -} - -################################################## -# A Fiery Dance -# by Claudia Baldassi -# ep2_wedding.1050 -################################################## - -# Someone catches fire from the torches - -scripted_trigger ep2_wedding_extra_victim_valid_trigger = { - is_ai = yes - is_adult = yes - NOR = { - this = root - this = scope:1050_victim - } - NOT = { has_character_flag = busy_in_banquet_event } -} - -ep2_wedding.1050 = { - type = activity_event - title = ep2_wedding.1050.t - desc = ep2_wedding.1050.desc - theme = wedding_banquet_activity - left_portrait = { - character = root - animation = fear - } - center_portrait = { - trigger = { - exists = scope:extra_victim_1 - } - character = scope:extra_victim_1 - animation = shock - } - right_portrait = { - character = scope:victim - animation = pain - } - lower_center_portrait = scope:other_victim - lower_right_portrait = scope:extra_victim_2 - - cooldown = { years = 15 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - - scope:activity = { - NOT = { - has_variable = has_had_event_1050 - } - } - - scope:activity = { - has_activity_option = { - category = wedding_option_entertainment - option = wedding_entertainment_good - } - } - scope:activity = { - any_attending_character = { - is_adult = yes - this != root - is_ai = yes - NOT = { has_character_flag = busy_in_banquet_event } - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - is_ai = yes - factor = 0.1 - } - } - - immediate = { - scope:activity = { - set_variable = has_had_event_1050 - } - scope:activity = { - random_attending_character = { - limit = { - is_adult = yes - this != root - is_ai = yes - NOT = { has_character_flag = busy_in_banquet_event } - } - save_scope_as = 1050_victim - increase_wounds_effect = { REASON = burned } - add_character_flag = busy_in_banquet_event - } - } - add_character_flag = busy_in_banquet_event - if = { - limit = { - scope:activity = { - any_attending_character = { - ep2_wedding_extra_victim_valid_trigger = yes - save_temporary_scope_as = extra_victim_1 - } - } - scope:activity = { - any_attending_character = { - ep2_wedding_extra_victim_valid_trigger = yes - this != scope:extra_victim_1 - } - } - } - scope:activity = { - random_attending_character = { - limit = { - ep2_wedding_extra_victim_valid_trigger = yes - } - save_scope_as = extra_victim_1 - add_character_flag = busy_in_banquet_event - } - random_attending_character = { - limit = { - ep2_wedding_extra_victim_valid_trigger = yes - this != scope:extra_victim_1 - } - save_scope_as = extra_victim_2 - add_character_flag = busy_in_banquet_event - } - } - } - if = { - limit = { - scope:activity = { - any_attending_character = { - ep2_wedding_extra_victim_valid_trigger = yes - NOR = { - this = scope:extra_victim_1 - this = scope:extra_victim_2 - } - } - } - } - scope:activity = { - random_attending_character = { - limit = { - ep2_wedding_extra_victim_valid_trigger = yes - NOR = { - this = scope:extra_victim_1 - this = scope:extra_victim_2 - } - } - save_scope_as = other_victim - add_character_flag = busy_in_banquet_event - } - } - } - } - - #Option A: try to save them - option = { - name = ep2_wedding.1050.a - duel = { - skill = prowess - value = decent_skill_rating - 40 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = ep2_wedding.1050.a.success - send_interface_toast = { - title = ep2_wedding.1050.a.success.tt - left_icon = scope:1050_victim - scope:activity = { - add_activity_log_entry = { - key = wedding_dance_rescue_log - tags = { good } - score = 25 - character = root - target = scope:1050_victim - - # Effect - root = { - reverse_add_opinion = { - target = scope:1050_victim - modifier = grateful_opinion - opinion = 30 - } - if = { - limit = { - can_add_hook = { - type = indebted_hook - target = scope:1050_victim - } - } - add_hook = { - type = indebted_hook - target = scope:1050_victim - } - } - if = { - limit = { - has_activity_intent = woo_attendee_intent - intent_target = scope:1050_victim - } - progress_towards_lover_effect = { - REASON = lover_wedding_saved_from_flames - CHARACTER = scope:1050_victim - OPINION = default_lover_opinion - } - } - else_if = { - limit = { - has_activity_intent = diplomatic_intent - intent_target = scope:1050_victim - } - create_alliance = { - target = scope:1050_victim - allied_through_owner = root - allied_through_target = scope:1050_victim - } - scope:1050_victim = { - add_opinion = { - target = root - modifier = event_negotiated_alliance_opinion - } - } - } - } - } - } - } - } - 60 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = ep2_wedding.1050.a.failure - send_interface_toast = { - title = ep2_wedding.1050.a.failure.tt - left_icon = scope:1050_victim - scope:activity = { - add_activity_log_entry = { - key = wedding_dance_rescue_fail_log - tags = { bad } - score = 25 - character = root - target = scope:1050_victim - - # Effect - root = { - increase_wounds_effect = { REASON = burned } - scope:1050_victim = { - increase_wounds_effect = { REASON = burned } - } - } - } - } - } - } - } - stress_impact = { - craven = massive_stress_impact_gain - } - ai_chance = { - base = 50 - modifier = { - has_trait = brave - add = 100 - } - modifier = { - has_trait = craven - add = -100 - } - } - } - - #Option B: call for help - option = { - name = ep2_wedding.1050.b - random_list = { - 50 = { - #Saved! - desc = ep2_wedding.1050.b.1 - modifier = { - scope:activity = { - has_activity_option = { - category = wedding_option_decoration - option = wedding_decoration_bad - } - } - add = -25 - } - modifier = { - scope:activity = { - has_activity_option = { - category = wedding_option_decoration - option = wedding_decoration_good - } - } - add = 25 - } - send_interface_toast = { - title = ep2_wedding.1050.b.1.tt - left_icon = scope:1050_victim - scope:activity = { - add_activity_log_entry = { - key = wedding_dance_saved_log - tags = { good } - score = 25 - character = scope:1050_victim - } - - root = { - reverse_add_opinion = { - target = scope:1050_victim - modifier = grateful_opinion - opinion = 15 - } - if = { - limit = { - can_add_hook = { - type = indebted_hook - target = scope:1050_victim - } - } - add_hook = { - type = indebted_hook - target = scope:1050_victim - } - } - } - } - } - } - 50 = { - #Keeps burning! - desc = ep2_wedding.1050.b.2 - send_interface_toast = { - title = ep2_wedding.1050.b.2.tt - left_icon = scope:1050_victim - scope:activity = { - add_activity_log_entry = { - key = wedding_dance_saved_fail_log - tags = { bad } - score = 25 - character = scope:1050_victim - - # Effect - scope:1050_victim = { - increase_wounds_effect = { REASON = burned } - } - } - } - } - } - } - ai_chance = { - base = 50 - } - } - - #Option C: FIRE! - option = { - name = ep2_wedding.1050.c - trigger = { - exists = scope:extra_victim_1 - exists = scope:extra_victim_2 - } - scope:activity = { - add_activity_log_entry = { - key = wedding_dance_disaster_log - tags = { bad } - score = 25 - character = scope:1050_victim - - # Effect - scope:extra_victim_1 = { - increase_wounds_effect = { REASON = burned } - } - scope:extra_victim_2 = { - increase_wounds_effect = { REASON = burned } - } - - root = { add_dread = medium_dread_gain } - } - } - stress_impact = { - compassionate = major_stress_impact_gain - callous = medium_stress_impact_loss - vengeful = major_stress_impact_loss - sadistic = massive_stress_impact_loss - torturer = massive_stress_impact_loss - } - ai_chance = { - base = 30 - modifier = { - has_trait = sadistic - add = 70 - } - modifier = { - has_trait = callous - add = 20 - } - modifier = { - has_trait = compassionate - add = -70 - } - } - } - - #Option D: panic - option = { - name = ep2_wedding.1050.d - trigger = { exists = scope:other_victim } - random = { - chance = 30 - send_interface_toast = { - title = ep2_wedding.1050.d.tt.2 - left_icon = scope:other_victim - scope:activity = { - add_activity_log_entry = { - key = wedding_dance_knocked_log - tags = { bad } - score = 25 - character = root - target = scope:other_victim - - # Effect - root = { custom_tooltip = ep2_wedding.1050.d.tt } - scope:other_victim = { - increase_wounds_effect = { REASON = burned } - } - } - } - } - - } - stress_impact = { - brave = massive_stress_impact_gain - } - ai_chance = { - base = 50 - modifier = { - has_trait = craven - add = 100 - } - modifier = { - has_trait = brave - add = -100 - } - } - } - after = { - remove_character_flag = busy_in_banquet_event - scope:1050_victim = { remove_character_flag = busy_in_banquet_event } - if = { - limit = { exists = scope:other_victim } - scope:other_victim = { remove_character_flag = busy_in_banquet_event } - } - if = { - limit = { exists = scope:extra_victim_1 } - scope:extra_victim_1 = { remove_character_flag = busy_in_banquet_event } - } - if = { - limit = { exists = scope:extra_victim_2 } - scope:extra_victim_2 = { remove_character_flag = busy_in_banquet_event } - } - } -} - -################################################## -# An Exotic Show -# by Claudia Baldassi -# ep2_wedding.1070 -################################################## - -# Showing off exotic animals can go very well or very wrong - -ep2_wedding.1070 = { - type = activity_event - title = ep2_wedding.1070.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - OR = { - root = scope:host - root = scope:activity.special_guest:spouse_1 - root = scope:activity.special_guest:spouse_2 - } - } - desc = ep2_wedding.1070.desc_host - } - desc = ep2_wedding.1070.desc_guest - } - desc = ep2_wedding.1070.desc_mid - first_valid = { - triggered_desc = { #Everyone is impressed - trigger = { - has_character_flag = 1070_exotic_fiends_good - } - desc = ep2_wedding.1070.desc_good - } - desc = ep2_wedding.1070.desc_bad #The animals are out of control! - } - triggered_desc = { - trigger = { - exists = scope:1070_target - has_character_flag = 1070_exotic_fiends_bad - } - desc = ep2_wedding.1070.desc_bad_target - } - } - theme = wedding_banquet_activity - left_portrait = { - character = root - triggered_animation = { - trigger = { - has_character_flag = 1070_exotic_fiends_bad - } - animation = shock - } - triggered_animation = { - trigger = { - has_character_flag = 1070_exotic_fiends_good - } - animation = personality_bold - } - } - right_portrait = { - trigger = { - exists = scope:1070_target - has_character_flag = 1070_exotic_fiends_bad - } - character = scope:1070_target - animation = fear - } - - lower_right_portrait = scope:m_hunt - - cooldown = { years = 5 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - - scope:activity = { - has_activity_option = { - category = wedding_option_entertainment - option = wedding_entertainment_good - } - } - scope:activity = { - NOT = { has_variable = has_had_event_1070 } - } - scope:host = { - has_character_modifier = hunt_captive_beast_modifier - } - } - - weight_multiplier = { - base = 1 - modifier = { - scope:host = { has_trait = arrogant } - add = 1 - } - modifier = { - scope:host = { has_trait = humble } - add = -1 - } - modifier = { - is_ai = no - factor = 2 - } - } - - immediate = { - add_character_flag = busy_in_banquet_event - scope:activity = { set_variable = has_had_event_1070 } - scope:host = { - if = { - limit = { - employs_court_position = master_of_hunt_court_position - any_court_position_holder = { - type = master_of_hunt_court_position - is_ai = yes - is_adult = yes - involved_activity = root.involved_activity - NOT = { has_character_flag = busy_in_banquet_event } - } - } - random_court_position_holder = { - type = master_of_hunt_court_position - limit = { - is_ai = yes - is_adult = yes - involved_activity = root.involved_activity - NOT = { has_character_flag = busy_in_banquet_event } - } - save_scope_as = m_hunt - add_character_flag = busy_in_banquet_event - } - } - } - if = { - limit = { - OR = { - has_activity_intent = murder_attendee_intent - has_activity_intent = woo_attendee_intent - has_activity_intent = diplomatic_intent - } - } - intent_target = { save_scope_as = 1070_target } - } - random_list = { - 50 = { # all goes well - modifier = { - scope:host = { - employs_court_position = master_of_hunt_court_position - } - add = 15 - } - modifier = { - exists = scope:m_hunt - add = 15 - } - modifier = { - scope:host = { - has_trait = lifestyle_hunter - } - add = 25 - } - modifier = { - scope:host = { - has_trait = diligent - } - add = 20 - } - modifier = { - scope:activity = { - has_activity_option = { - category = wedding_option_decoration - option = wedding_decoration_good - } - } - add = 20 - } - modifier = { - scope:activity = { - has_activity_option = { - category = wedding_option_decoration - option = wedding_decoration_normal - } - } - add = 5 - } - add_character_flag = 1070_exotic_fiends_good - } - 50 = { # a beast escapes! - modifier = { - scope:activity = { - has_activity_option = { - category = wedding_option_decoration - option = wedding_decoration_bad - } - } - add = 30 - } - modifier = { - scope:host = { - has_trait = arrogant - } - add = 20 - } - modifier = { - scope:host = { - has_trait = lazy - } - add = 15 - } - add_character_flag = 1070_exotic_fiends_bad - if = { - limit = { - this = scope:host - } - stress_impact = { - arrogant = major_stress_impact_gain - ambitious = major_stress_impact_gain - diligent = medium_stress_impact_gain - paranoid = medium_stress_impact_gain - } - } - } - } - } - - #Option A: a worthy show - option = { - name = ep2_wedding.1070.a - trigger = { has_character_flag = 1070_exotic_fiends_good } - scope:activity = { - every_attending_character = { - custom = custom.every_attending_character - limit = { - this != scope:host - } - add_opinion = { - target = scope:host - modifier = wedding_good_entertainment_opinion - } - } - } - scope:activity = { - add_activity_log_entry = { - key = wedding_beasts_entertain_log - tags = { good } - score = 20 - character = scope:host - - # Effect - scope:host = { add_prestige = medium_prestige_gain } - } - } - stress_impact = { - base = minor_stress_impact_loss - } - ai_chance = { - base = 100 - } - } - - #Option E: I can do better - option = { - name = ep2_wedding.1070.e - flavor = ep2_wedding.1070.e.tt - trigger = { - has_character_flag = 1070_exotic_fiends_good - } - scope:activity = { - every_attending_character = { - custom = custom.every_attending_character - limit = { - this != scope:host - } - add_opinion = { - target = scope:host - modifier = wedding_good_entertainment_opinion - } - } - } - duel = { - skill = prowess - value = high_skill_rating - # Success: you make the beasts do your bid! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = ep2_wedding.1070.e.success - send_interface_toast = { - title = ep2_wedding.1070.e.tt.success - left_icon = root - scope:activity = { - add_activity_log_entry = { - key = wedding_beasts_charm_success_log - tags = { good } - score = 20 - character = root - - # Effect - root = { - add_character_modifier = { - modifier = ep2_beastmaster_modifier - years = 20 - } - add_prestige = medium_prestige_gain - } - } - every_attending_character = { - custom = custom.every_attending_character - limit = { - this != root - } - add_opinion = { - target = root - modifier = impressed_opinion - opinion = 25 - } - } - } - root = { - stress_impact = { - base = minor_stress_impact_loss - brave = medium_stress_impact_loss - gregarious = medium_stress_impact_loss - arrogant = major_stress_impact_loss - ambitious = major_stress_impact_loss - } - } - } - } - # Failure: the beasts disagree with you - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = ep2_wedding.1070.e.failure - send_interface_toast = { - title = ep2_wedding.1070.e.tt.failure - left_icon = root - scope:activity = { - add_activity_log_entry = { - key = wedding_beasts_charm_failure_log - tags = { bad } - score = 20 - character = root - - # Effect - root = { - random_list = { - 20 = { - custom_tooltip = ep2_wedding.1070.e.tt.failure_1 - scope:activity = { - every_attending_character = { - custom = custom.every_attending_character - limit = { - this != root - } - add_opinion = { - target = root - modifier = laughingstock_opinion - } - } - } - } - 50 = { - increase_wounds_effect = { REASON = wild_animal } - } - 30 = { - trigger = { - NOT = { has_trait = maimed } - } - apply_maimed_trait_and_modifier_effect = yes - } - 30 = { - trigger = { - NOT = { has_trait = one_eyed } - } - add_trait = one_eyed - } - 30 = { - trigger = { - NOT = { has_trait = one_legged } - } - add_trait = one_legged - } - } - } - } - } - } - stress_impact = { - arrogant = medium_stress_impact_gain - ambitious = medium_stress_impact_gain - stubborn = medium_stress_impact_gain - lazy = major_stress_impact_gain - content = major_stress_impact_gain - } - } - } - ai_chance = { - base = 100 - modifier = { - has_trait = arrogant - add = 75 - } - modifier = { - has_trait = ambitious - add = 50 - } - modifier = { - has_trait = stubborn - add = 50 - } - modifier = { - has_trait = lazy - add = -75 - } - modifier = { - has_trait = content - add = -50 - } - } - } - - #Option B: jump in to save the day! - option = { - name = ep2_wedding.1070.b - trigger = { - has_character_flag = 1070_exotic_fiends_bad - NOT = { exists = scope:1070_target } - } - duel = { - skill = prowess - value = high_skill_rating - # Success: you calm down the beasts - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = ep2_wedding.1070.b.success - send_interface_toast = { - title = ep2_wedding.1070.b.tt.success - left_icon = root - scope:activity = { - add_activity_log_entry = { - key = wedding_beasts_calmed_success_log - tags = { good } - score = 20 - character = root - - # Effect - root = { - add_character_modifier = { - modifier = ep2_beastmaster_modifier - years = 20 - } - } - } - every_attending_character = { - custom = custom.every_attending_character - limit = { - this != root - } - add_opinion = { - target = root - modifier = impressed_opinion - opinion = 25 - } - } - } - root = { - stress_impact = { - base = minor_stress_impact_loss - ambitious = medium_stress_impact_loss - lifestyle_hunter = medium_stress_impact_loss - brave = major_stress_impact_loss - gregarious = major_stress_impact_loss - arrogant = major_stress_impact_loss - } - } - } - } - # Failure: the beasts disagree with you - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = ep2_wedding.1070.b.failure - send_interface_toast = { - title = ep2_wedding.1070.e.tt.failure - left_icon = root - scope:activity = { - add_activity_log_entry = { - key = wedding_beasts_calmed_failure_log - tags = { good } - score = 20 - character = root - - # Effect - root = { - random_list = { - 50 = { - increase_wounds_effect = { REASON = wild_animal } - } - 30 = { - trigger = { - NOT = { has_trait = maimed } - } - apply_maimed_trait_and_modifier_effect = yes - } - 30 = { - trigger = { - NOT = { has_trait = one_eyed } - } - add_trait = one_eyed - } - 30 = { - trigger = { - NOT = { has_trait = one_legged } - } - add_trait = one_legged - } - } - } - } - every_attending_character = { - custom = custom.every_attending_character - limit = { - this != scope:host - } - add_opinion = { - target = scope:host - modifier = wedding_scary_entertainment_opinion - } - } - } - stress_impact = { - arrogant = medium_stress_impact_gain - ambitious = medium_stress_impact_gain - lifestyle_hunter = medium_stress_impact_gain - lazy = medium_stress_impact_gain - craven = major_stress_impact_gain - } - } - } - } - ai_chance = { - base = 100 - modifier = { - has_trait = arrogant - add = 50 - } - modifier = { - has_trait = brave - add = 75 - } - modifier = { - has_trait = compassionate - add = 25 - } - modifier = { - has_trait = lifestyle_hunter - add = 25 - } - modifier = { - hunt_lifestyle_track_greater_equal_trigger = { TRACK = hunter GREATER_EQUAL = 50 } - add = 25 - } - modifier = { - hunt_lifestyle_track_greater_equal_trigger = { TRACK = hunter GREATER_EQUAL = 100 } - add = 25 - } - modifier = { - has_trait = lazy - add = -75 - } - modifier = { - has_trait = craven - add = -100 - } - } - } - - #Option G: jump in to save the intent target! - option = { - name = ep2_wedding.1070.g - trigger = { - has_character_flag = 1070_exotic_fiends_bad - exists = scope:1070_target - NOT = { has_activity_intent = murder_attendee_intent } - } - duel = { - skill = prowess - value = high_skill_rating - # Success: you calm down the beasts - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = ep2_wedding.1070.g.success - send_interface_toast = { - title = ep2_wedding.1070.g.tt.success - left_icon = scope:1070_target - set_relation_friend = { reason = friend_wedding_saved_from_beasts target = scope:1070_target } - if = { - limit = { has_activity_intent = woo_attendee_intent } - progress_towards_lover_effect = { - REASON = friend_wedding_saved_from_beasts - CHARACTER = scope:1070_target - OPINION = default_lover_opinion - } - } - else_if = { - limit = { - has_activity_intent = diplomatic_intent - intent_target = scope:1070_target - } - add_hook = { - type = indebted_hook - target = scope:1070_target - } - create_alliance = { - target = scope:1070_target - allied_through_owner = root - allied_through_target = scope:1070_target - } - scope:1070_target = { - add_opinion = { - target = root - modifier = event_negotiated_alliance_opinion - } - } - complete_activity_intent = yes - } - scope:activity = { - add_activity_log_entry = { - key = wedding_beasts_rescue_success_log - tags = { good } - score = 20 - character = root - target = scope:1070_target - - # Effect - root = { - add_character_modifier = { - modifier = ep2_beastmaster_modifier - years = 20 - } - } - scope:1070_target = { - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 40 - } - } - } - every_attending_character = { - custom = custom.every_attending_character - limit = { - NOR = { - this = root - this = scope:1070_target - } - } - add_opinion = { - target = root - modifier = impressed_opinion - opinion = 25 - } - } - } - root = { - stress_impact = { - base = minor_stress_impact_loss - ambitious = medium_stress_impact_loss - lifestyle_hunter = medium_stress_impact_loss - brave = major_stress_impact_loss - gregarious = major_stress_impact_loss - arrogant = major_stress_impact_loss - } - } - } - } - # Failure: the beasts disagree with you - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = ep2_wedding.1070.g.failure - send_interface_toast = { - title = ep2_wedding.1070.g.tt.failure - left_icon = root - right_icon = scope:1070_target - scope:activity = { - add_activity_log_entry = { - key = wedding_beasts_rescue_failure_log - tags = { bad } - score = 20 - character = root - target = scope:1070_target - - # Effect - root = { - random_list = { - 50 = { - increase_wounds_effect = { REASON = wild_animal } - } - 30 = { - trigger = { - NOT = { has_trait = maimed } - } - apply_maimed_trait_and_modifier_effect = yes - } - 30 = { - trigger = { - NOT = { has_trait = one_eyed } - } - add_trait = one_eyed - } - 30 = { - trigger = { - NOT = { has_trait = one_legged } - } - add_trait = one_legged - - } - } - } - scope:1070_target = { increase_wounds_effect = { REASON = wild_animal } } - } - every_attending_character = { - custom = custom.every_attending_character - limit = { - this != scope:host - } - add_opinion = { - target = scope:host - modifier = wedding_scary_entertainment_opinion - } - } - } - stress_impact = { - arrogant = medium_stress_impact_gain - ambitious = medium_stress_impact_gain - lifestyle_hunter = medium_stress_impact_gain - lazy = medium_stress_impact_gain - craven = major_stress_impact_gain - } - } - } - } - ai_chance = { - base = 100 - modifier = { - has_trait = arrogant - add = 50 - } - modifier = { - has_trait = brave - add = 75 - } - modifier = { - has_trait = compassionate - add = 25 - } - modifier = { - has_trait = lifestyle_hunter - add = 25 - } - modifier = { - hunt_lifestyle_track_greater_equal_trigger = { TRACK = hunter GREATER_EQUAL = 50 } - add = 25 - } - modifier = { - hunt_lifestyle_track_greater_equal_trigger = { TRACK = hunter GREATER_EQUAL = 100 } - add = 25 - } - modifier = { - has_trait = lazy - add = -75 - } - modifier = { - has_trait = craven - add = -100 - } - } - } - - #Option H: let the beasts kill your target - option = { - name = ep2_wedding.1070.h - trigger = { - has_character_flag = 1070_exotic_fiends_bad - exists = scope:1070_target - has_activity_intent = murder_attendee_intent - } - reason = activity_intent - scope:1070_target = { - duel = { - skill = prowess - value = high_skill_rating - # Success: they survive - 40 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = ep2_wedding.1070.h.survive - root = { - send_interface_toast = { - title = ep2_wedding.1070.h.tt.survive - left_icon = scope:1070_target - stress_impact = { - ambitious = minor_stress_impact_gain - callous = minor_stress_impact_gain - deceitful = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - vengeful = medium_stress_impact_gain - sadistic = major_stress_impact_gain - } - } - } - scope:activity = { - add_activity_log_entry = { - key = wedding_beasts_murder_survive_log - tags = { intent murder } - score = 50 - character = scope:1070_target - } - } - } - # Failure: the beasts kill them - 60 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = ep2_wedding.1070.h.kill - root = { - complete_activity_intent = yes - send_interface_toast = { - title = ep2_wedding.1070.h.tt.kill - left_icon = scope:1070_target - scope:activity = { - add_activity_log_entry = { - key = wedding_beasts_murder_kill_log - tags = { intent murder } - score = 50 - character = scope:1070_target - - # Effect - scope:1070_target = { - death = { death_reason = death_wild_animal } - } - } - every_attending_character = { - custom = custom.every_attending_character - limit = { - this != scope:host - } - add_opinion = { - target = scope:host - modifier = wedding_scary_entertainment_opinion - } - } - } - stress_impact = { - compassionate = major_stress_impact_gain - ambitious = minor_stress_impact_loss - callous = minor_stress_impact_loss - deceitful = medium_stress_impact_loss - arrogant = medium_stress_impact_loss - vengeful = medium_stress_impact_loss - sadistic = major_stress_impact_loss - } - } - } - } - } - } - ai_chance = { - base = 100 - modifier = { - has_trait = compassionate - add = -75 - } - modifier = { - has_trait = lazy - add = 25 - } - modifier = { - has_trait = craven - add = 100 - } - modifier = { - has_trait = deceitful - add = 100 - } - } - } - - #Option C: call master of hunt - option = { - name = ep2_wedding.1070.c - trigger = { - has_character_flag = 1070_exotic_fiends_bad - exists = scope:m_hunt - this = scope:host - } - duel = { - skill = prowess - value = average_skill_rating - 50 = { - #Master of hunt knows what they are doing - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = ep2_wedding.1070.c.success - send_interface_toast = { - title = ep2_wedding.1070.c.tt.success - left_icon = scope:m_hunt - scope:activity = { - add_activity_log_entry = { - key = wedding_beasts_calmed_success_log - tags = { good } - score = 20 - character = scope:m_hunt - - # Effect - scope:m_hunt = { - add_character_modifier = { - modifier = ep2_beastmaster_modifier - years = 20 - } - } - } - every_attending_character = { - custom = custom.every_attending_character - limit = { - this != scope:host - } - add_opinion = { - target = scope:host - modifier = wedding_good_entertainment_opinion - } - } - } - stress_impact = { - base = minor_stress_impact_loss - } - } - } - 50 = { - #Why are you paying this guy again?? - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = ep2_wedding.1070.c.failure - send_interface_toast = { - title = ep2_wedding.1070.c.tt.failure - left_icon = scope:m_hunt - scope:host = { - remove_character_modifier = hunt_captive_beast_modifier - } - scope:activity = { - add_activity_log_entry = { - key = wedding_beasts_master_failure_log - tags = { bad } - score = 20 - character = scope:m_hunt - - # Effect - scope:m_hunt = { increase_wounds_effect = { REASON = wild_animal } } - } - every_attending_character = { - custom = custom.every_attending_character - limit = { - this != scope:host - } - add_opinion = { - target = scope:host - modifier = wedding_scary_entertainment_opinion - } - } - } - stress_impact = { - greedy = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - } - } - } - } - ai_chance = { - base = 100 - } - } - - #Option F: GUARDS!! - option = { - name = ep2_wedding.1070.f - trigger = { - has_character_flag = 1070_exotic_fiends_bad - this = scope:host - NOT = { exists = scope:m_hunt } - } - scope:host = { - remove_character_modifier = hunt_captive_beast_modifier - } - scope:activity = { - add_activity_log_entry = { - key = wedding_beasts_guards_log - tags = { bad } - score = 10 - character = scope:host - } - every_attending_character = { - custom = custom.every_attending_character - limit = { - this != scope:host - } - add_opinion = { - target = scope:host - modifier = wedding_scary_entertainment_opinion - } - } - } - ai_chance = { - base = 100 - } - } - - #Option D: run and hide! - option = { - name = ep2_wedding.1070.d - flavor = ep2_wedding.1070.d.tt - trigger = { - has_character_flag = 1070_exotic_fiends_bad - this != scope:host - } - scope:activity = { - add_activity_log_entry = { - key = wedding_beasts_fled_log - tags = { bad } - score = 10 - character = scope:host - } - every_attending_character = { - custom = custom.every_attending_character - limit = { - this != scope:host - } - add_opinion = { - target = scope:host - modifier = wedding_scary_entertainment_opinion - } - } - every_attending_character = { - custom = custom.every_attending_character - limit = { - this != root - } - add_opinion = { - target = root - modifier = coward_opinion - } - } - } - stress_impact = { - compassionate = medium_stress_impact_gain - brave = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - has_trait = callous - add = 50 - } - modifier = { - has_trait = shy - add = 75 - } - modifier = { - has_trait = reclusive - add = 150 - } - } - } - - after = { - remove_character_flag = busy_in_banquet_event - if = { - limit = { - exists = scope:m_hunt - } - scope:m_hunt = { remove_character_flag = busy_in_banquet_event } - } - } -} - -################################################## -# A Match Made In... ? -# by Claudia Baldassi -# ep2_wedding.1090 -################################################## - -# Matchmaking Intent: push a couple together - -scripted_trigger ep2_wedding_1090_good_match_trigger = { - is_ai = yes - location = root.location - can_marry_character_trigger = { CHARACTER = root.intent_target } - NOR = { - exists = betrothed - AND = { - exists = root.intent_target.var:wedding_no_match - this = root.intent_target.var:wedding_no_match - } - has_character_flag = busy_in_banquet_event - is_close_or_extended_family_of = root.intent_target - } - trigger_if = { - limit = { - is_female = yes - } - age < marriage_female_fertility_cutoff_age_value - } -} - -ep2_wedding.1090 = { - type = activity_event - title = ep2_wedding.1090.t - desc = { - desc = ep2_wedding.1090.desc - first_valid = { - triggered_desc = { - trigger = { - intent_target = { has_variable = wedding_good_match } - } - desc = ep2_wedding.1090.desc_already_matched - } - desc = ep2_wedding.1090.desc_new_match - } - } - theme = wedding_banquet_activity - left_portrait = { - character = root - animation = schadenfreude - } - center_portrait = { - character = scope:1090_target - animation = flirtation_left - } - right_portrait = { - character = scope:1090_match - animation = flirtation - } - - cooldown = { years = 5 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - has_activity_intent = matchmaking_intent - - intent_target.location ?= root.location - location = scope:activity.activity_location - - intent_target = { NOT = { has_character_flag = busy_in_banquet_event } } - - OR = { - intent_target = { has_variable = wedding_good_match } - scope:activity = { - any_attending_character = { - ep2_wedding_1090_good_match_trigger = yes - } - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - intent_target = { has_variable = wedding_good_match } - add = 4 - } - } - - immediate = { - add_character_flag = busy_in_banquet_event - intent_target = { - save_scope_as = 1090_target - add_character_flag = busy_in_banquet_event - } - if = { - limit = { - scope:1090_target = { has_variable = wedding_good_match } - } - scope:1090_target.var:wedding_good_match = { - save_scope_as = 1090_match - } - } - else = { - scope:activity = { - random_attending_character = { - limit = { - ep2_wedding_1090_good_match_trigger = yes - } - save_scope_as = 1090_match - } - } - } - scope:1090_match = { add_character_flag = busy_in_banquet_event } - } - - #Option A: push them together - option = { - name = ep2_wedding.1090.a - scope:1090_target = { - duel = { - skill = diplomacy - target = scope:1090_match - 50 = { # success - get a betrothal - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = ep2_wedding.1090.a.success - root = { - send_interface_toast = { - title = ep2_wedding.1080.a.success.tt - left_icon = scope:1090_target - right_icon = scope:1090_match - scope:activity = { - add_activity_log_entry = { - key = wedding_matchmade_success_log - tags = { betrothal } - score = 50 - character = scope:1090_target - target = scope:1090_match - - # Effect - scope:1090_target = { create_betrothal = scope:1090_match } - scope:1090_match = { - add_opinion = { - target = scope:1090_target - modifier = impressed_opinion - opinion = 20 - } - if = { - limit = { - scope:1090_match = { can_set_relation_lover_trigger = { CHARACTER = scope:1090_target } } - } - random = { - chance = 10 - scope:1090_match = { - set_relation_lover = { reason = lover_wedding_matchmaking target = scope:1090_target } - } - } - } - } - root = { add_prestige = minor_prestige_gain } - } - } - } - if = { - limit = { has_activity_intent = matchmaking_intent } - complete_activity_intent = yes - } - } - } - 50 = { # failure - you'll have to start again with someone else - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = ep2_wedding.1090.a.failure - send_interface_toast = { - title = ep2_wedding.1080.a.failure.tt - left_icon = scope:1090_target - right_icon = scope:1090_match - scope:activity = { - add_activity_log_entry = { - key = wedding_matchmade_failure_log - tags = { betrothal } - score = 50 - character = scope:1090_target - target = scope:1090_match - } - } - stress_impact = { - base = minor_stress_impact_gain - } - } - scope:1090_target = { - set_variable = { - name = wedding_no_match - value = scope:1090_match - } - } - } - } - } - ai_chance = { - base = 200 - } - } - - #Option B: no deal - option = { - name = ep2_wedding.1090.b - scope:1090_target = { - set_variable = { - name = wedding_no_match - value = scope:1090_match - } - } - scope:1090_target = { - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -15 - } - } - ai_chance = { - base = 100 - modifier = { - has_trait = fickle - add = 25 - } - } - } - - after = { - remove_character_flag = busy_in_banquet_event - scope:1090_match = { remove_character_flag = busy_in_banquet_event } - scope:1090_target = { remove_character_flag = busy_in_banquet_event } - } -} - -# WEDDING NIGHT EVENTS - -################################################## -# That Cursed Table -# by Claudia Baldassi -# ep2_wedding.1060 -################################################## - -# Inspired by Matilda of Tuscany's second wedding: a younger/meeker husband is too intimidated - -ep2_wedding.1060 = { - type = activity_event - title = ep2_wedding.1060.t - desc = ep2_wedding.1060.desc - theme = wedding_night_activity - left_portrait = { - character = root - animation = disgust - } - right_portrait = { - character = scope:spouse_2 - animation = shame - } - - cooldown = { years = 5 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - - scope:activity.special_guest:spouse_2 = { - is_ai = yes - is_male = yes - NOT = { has_character_flag = busy_in_wnight_event } - } - scope:activity.special_guest:spouse_1 = root - scope:activity.special_guest:spouse_1 = { - NOT = { has_relation_lover = scope:activity.special_guest:spouse_2 } - } - - OR = { - # is weaker - scope:activity.special_guest:spouse_1 = { - tier_difference = { - target = scope:activity.special_guest:spouse_2 - value >= 2 - } - } - # is younger - scope:activity.special_guest:spouse_2.age <= scope:activity.special_guest:spouse_1.age_minus_10 - # has "difficulties" - scope:activity.special_guest:spouse_2 = { - OR = { - fertility <= low_fertility - has_trait = infertile - NOT = { is_attracted_to_gender_of = scope:activity.special_guest:spouse_1 } - } - } - } - } - - weight_multiplier = { - base = 1 - - modifier = { - scope:activity.special_guest:spouse_1 = { - tier_difference = { - target = scope:activity.special_guest:spouse_2 - value > 2 - } - } - add = 2 - } - modifier = { - scope:activity.special_guest:spouse_2.age <= scope:activity.special_guest:spouse_1.age_minus_25 - add = 3 - } - modifier = { - scope:activity.special_guest:spouse_2 = { - NOT = { is_attracted_to_gender_of = scope:activity.special_guest:spouse_1 } - } - add = 3 - } - } - - immediate = { - scope:activity.special_guest:spouse_1 = { - save_scope_as = spouse_1 - add_character_flag = busy_in_wnight_event - } - scope:activity.special_guest:spouse_2 = { - save_scope_as = spouse_2 - add_character_flag = busy_in_wnight_event - } - } - - #Option A: *Fine* - triggers follow up - option = { - name = ep2_wedding.1060.a - flavor = ep2_wedding.1060.a.tt - trigger_event = { - id = ep2_wedding.1061 - days = 3 - } - stress_impact = { - base = minor_stress_impact_gain - compassionate = medium_stress_impact_gain - patient = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - has_trait = impatient - add = 75 - } - modifier = { - has_trait = lustful - add = 75 - } - modifier = { - has_trait = arrogant - add = 75 - } - } - } - - #Option B: be accepting - option = { - name = ep2_wedding.1060.b - scope:spouse_2 = { - add_opinion = { - target = root - modifier = wedding_understanding_spouse_opinion - } - } - if = { - limit = { - is_ai = yes - } - add_opinion = { - target = scope:spouse_2 - modifier = wedding_understanding_spouse_opinion - } - } - if = { - limit = { - scope:spouse_2 = { has_any_fertility_relationship_with_root_trigger = no } - } - set_relation_wedding_bad_fertility = scope:spouse_2 - } - if = { - limit = { - can_set_relation_soulmate_trigger = { CHARACTER = scope:spouse_2 } - } - random = { - chance = 5 - set_relation_soulmate = { reason = soulmate_wedding_accepting_partner target = scope:spouse_2 } - # Achievements - player_succeeded_at_a_thousand_and_one_nights_achievement_effect = yes - } - } - scope:spouse_1 = { remove_character_flag = busy_in_wnight_event } - scope:spouse_2 = { remove_character_flag = busy_in_wnight_event } - stress_impact = { - impatient = medium_stress_impact_gain - lustful = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - compassionate = medium_stress_impact_loss - patient = medium_stress_impact_loss - humble = medium_stress_impact_loss - chaste = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - has_trait = compassionate - add = 75 - } - modifier = { - has_trait = patient - add = 75 - } - modifier = { - has_trait = chaste - add = 75 - } - } - } -} - -# Follow up event: you have emptied the room except for a bare table - spouse reaction - -ep2_wedding.1061 = { - type = activity_event - title = ep2_wedding.1060.t - desc = { - desc = ep2_wedding.1061.desc - first_valid = { - triggered_desc = { - trigger = { - scope:spouse_2 = { has_character_flag = 1061_success } - } - desc = ep2_wedding.1061.desc_1 #It goes well - } - desc = ep2_wedding.1061.desc_2 #Still nothing - } - } - theme = wedding_night_activity - left_portrait = { - character = root - animation = anger - } - right_portrait = { - character = scope:spouse_2 - animation = shame - } - - trigger = { - exists = scope:activity - } - - immediate = { - random_list = { - 30 = { - # he gets over it - modifier = { - scope:spouse_2 = { - NOT = { has_trait = impotent } - } - add = 10 - } - modifier = { - scope:spouse_2 = { - NOT = { fertility <= low_fertility } - } - add = 10 - } - modifier = { - scope:spouse_2 = { - has_trait = arrogant - } - add = 10 - } - modifier = { - scope:spouse_2 = { - has_trait = lustful - } - add = 20 - } - modifier = { - scope:spouse_2 = { - has_trait = brave - } - add = 10 - } - modifier = { - scope:spouse_2 = { - has_trait = gregarious - } - add = 10 - } - modifier = { - scope:spouse_2 = { - NOT = { is_attracted_to_gender_of = scope:spouse_1 } - } - factor = 0 - } - scope:spouse_2 = { add_character_flag = 1061_success } - } - 70 = { - #he really doesn't get over it - modifier = { - scope:spouse_2 = { - has_trait = impotent - } - add = 30 - } - modifier = { - scope:spouse_2 = { - fertility <= low_fertility - } - add = 20 - } - modifier = { - scope:spouse_2 = { - has_trait = shy - } - add = 20 - } - modifier = { - scope:spouse_2 = { - has_trait = chaste - } - add = 20 - } - scope:spouse_2 = { add_character_flag = 1061_not_success } - } - } - add_character_flag = is_naked - } - - #Option A: All good then! - option = { - name = ep2_wedding.1061.a - trigger = { - scope:spouse_2 = { has_character_flag = 1061_success } - } - scope:spouse_2 = { - add_opinion = { - target = root - modifier = wedding_challenging_spouse_opinion - } - } - if = { - limit = { - is_ai = yes - } - add_opinion = { - target = scope:spouse_2 - modifier = wedding_challenging_spouse_opinion - } - } - scope:spouse_2 = { - add_character_modifier = { - modifier = wedding_nagging_spouse_modifier - years = 10 - } - } - if = { - limit = { - scope:spouse_2 = { has_any_fertility_relationship_with_root_trigger = no } - } - set_relation_wedding_good_fertility = scope:spouse_2 - } - stress_impact = { - base = minor_stress_impact_loss - lustful = medium_stress_impact_loss - } - } - - #Option B: kick them out and denounce them! - option = { - name = ep2_wedding.1061.b - trigger = { - scope:spouse_2 = { has_character_flag = 1061_not_success } - } - scope:spouse_2 = { - add_opinion = { - target = root - modifier = wedding_cruel_spouse_opinion - } - add_character_modifier = { - modifier = wedding_accused_impotency_modifier - years = 10 - } - } - if = { - limit = { - scope:spouse_2 = { has_any_fertility_relationship_with_root_trigger = no } - } - set_relation_wedding_very_bad_fertility = scope:spouse_1 - } - if = { - limit = { - is_ai = yes - } - add_opinion = { - target = scope:spouse_2 - modifier = wedding_useless_spouse_opinion - } - } - stress_impact = { - calm = minor_stress_impact_gain - patient = medium_stress_impact_gain - chaste = medium_stress_impact_gain - compassionate = major_stress_impact_gain - vengeful = minor_stress_impact_loss - callous = minor_stress_impact_loss - wrathful = minor_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - has_trait = arrogant - add = 30 - } - modifier = { - has_trait = callous - add = 50 - } - modifier = { - has_trait = sadistic - add = 30 - } - modifier = { - has_trait = lustful - add = 50 - } - modifier = { - has_trait = wrathful - add = 50 - } - modifier = { - has_trait = impatient - add = 50 - } - } - } - - #Option C: be patient - option = { - name = ep2_wedding.1061.c - trigger = { - scope:spouse_2 = { has_character_flag = 1061_not_success } - } - scope:spouse_2 = { - add_opinion = { - target = root - modifier = wedding_understanding_spouse_opinion - } - } - if = { - limit = { - is_ai = yes - } - add_opinion = { - target = scope:spouse_2 - modifier = wedding_understanding_spouse_opinion - } - } - if = { - limit = { - scope:spouse_2 = { has_any_fertility_relationship_with_root_trigger = no } - } - set_relation_wedding_bad_fertility = scope:spouse_2 - } - stress_impact = { - arrogant = minor_stress_impact_gain - sadistic = minor_stress_impact_gain - callous = minor_stress_impact_gain - lustful = medium_stress_impact_gain - wrathful = medium_stress_impact_gain - impatient = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - has_trait = calm - add = 30 - } - modifier = { - has_trait = patient - add = 50 - } - modifier = { - has_trait = compassionate - add = 75 - } - } - - } - - after = { - if = { - limit = { - scope:spouse_2 = { has_character_flag = 1061_success } - } - scope:spouse_2 = { remove_character_flag = 1061_success } - } - else_if = { - limit = { - scope:spouse_2 = { has_character_flag = 1061_not_success } - } - scope:spouse_2 = { remove_character_flag = 1061_not_success } - } - scope:spouse_1 = { remove_character_flag = busy_in_wnight_event } - scope:spouse_2 = { remove_character_flag = busy_in_wnight_event } - remove_character_flag = is_naked - } -} - -# Inverted event: it's you who have problems - spouse's reaction - -ep2_wedding.1065 = { - type = activity_event - title = ep2_wedding.1060.t - desc = ep2_wedding.1065.desc - theme = wedding_night_activity - left_portrait = { - character = root - animation = shame - } - right_portrait = { - character = scope:spouse_2 - animation = disgust - } - - cooldown = { years = 5 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - - scope:activity.special_guest:spouse_1 = { is_male = yes } - scope:activity.special_guest:spouse_1 = root - scope:activity.special_guest:spouse_1 = { - NOT = { has_relation_lover = scope:activity.special_guest:spouse_2 } - } - scope:activity.special_guest:spouse_2 = { - is_ai = yes - NOT = { has_character_flag = busy_in_wnight_event } - } - - OR = { - # is weaker - scope:activity.special_guest:spouse_2 = { - tier_difference = { - target = root - value >= 2 - } - } - # is younger - age <= scope:activity.special_guest:spouse_2.age_minus_10 - # has difficulties - fertility <= low_fertility - has_trait = infertile - NOT = { is_attracted_to_gender_of = scope:activity.special_guest:spouse_2 } - } - } - - weight_multiplier = { - base = 1 - - modifier = { - scope:activity.special_guest:spouse_2 = { - tier_difference = { - target = root - value > 2 - } - } - add = 2 - } - modifier = { - age <= scope:activity.special_guest:spouse_2.age_minus_25 - add = 3 - } - modifier = { - NOT = { is_attracted_to_gender_of = scope:activity.special_guest:spouse_2 } - add = 3 - } - } - - immediate = { - scope:activity.special_guest:spouse_1 = { save_scope_as = spouse_1 } - scope:activity.special_guest:spouse_2 = { save_scope_as = spouse_2 } - scope:spouse_1 = { add_character_flag = busy_in_wnight_event } - scope:spouse_2 = { add_character_flag = busy_in_wnight_event } - } - - #Option A: It's a curse! - option = { - name = ep2_wedding.1065.a - flavor = ep2_wedding.1065.a.tt - trigger_event = { - id = ep2_wedding.1066 - days = 3 - } - stress_impact = { - honest = medium_stress_impact_gain - lustful = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - deceitful = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - has_trait = deceitful - add = 50 - } - modifier = { - has_trait = arrogant - add = 50 - } - modifier = { - has_trait = lustful - add = 50 - } - modifier = { - has_character_modifier = bp1_superstition_modifier - add = 50 - } - } - } - - #Option B: Sorry... - option = { - name = ep2_wedding.1065.b - random_list = { - 50 = { #they are understanding - modifier = { - scope:spouse_2 = { - has_trait = compassionate - } - add = 20 - } - modifier = { - scope:spouse_2 = { - has_trait = calm - } - add = 10 - } - modifier = { - scope:spouse_2 = { - has_trait = patient - } - add = 20 - } - send_interface_toast = { - title = ep2_wedding.1065.b1 - scope:spouse_2 = { - add_opinion = { - target = root - modifier = wedding_understanding_spouse_opinion - } - } - if = { - limit = { - is_ai = yes - } - add_opinion = { - target = scope:spouse_2 - modifier = wedding_understanding_spouse_opinion - } - } - if = { - limit = { - scope:spouse_2 = { has_any_fertility_relationship_with_root_trigger = no } - } - set_relation_wedding_bad_fertility = scope:spouse_2 - } - } - } - 50 = { #they are not - modifier = { - scope:spouse_2 = { - has_trait = callous - } - add = 20 - } - modifier = { - scope:spouse_2 = { - has_trait = lustful - } - add = 30 - } - modifier = { - scope:spouse_2 = { - has_trait = impatient - } - add = 20 - } - modifier = { - scope:spouse_2 = { - has_trait = wrathful - } - add = 10 - } - send_interface_toast = { - title = ep2_wedding.1065.b2 - scope:spouse_2 = { - add_opinion = { - target = root - modifier = wedding_useless_spouse_opinion - } - } - if = { - limit = { - is_ai = yes - } - add_opinion = { - target = scope:spouse_2 - modifier = wedding_cruel_spouse_opinion - } - } - add_character_modifier = { - modifier = wedding_accused_impotency_modifier - years = 10 - } - if = { - limit = { - scope:spouse_2 = { has_any_fertility_relationship_with_root_trigger = no } - } - set_relation_wedding_very_bad_fertility = scope:spouse_2 - } - } - } - } - scope:spouse_1 = { remove_character_flag = busy_in_wnight_event } - scope:spouse_2 = { remove_character_flag = busy_in_wnight_event } - stress_impact = { - deceitful = medium_stress_impact_gain - honest = medium_stress_impact_loss - humble = minor_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - has_trait = humble - add = 50 - } - modifier = { - has_trait = honest - add = 50 - } - } - } -} - -# Follow up event: your spouse has emptied the room except for a bare table - -ep2_wedding.1066 = { - type = activity_event - title = ep2_wedding.1060.t - desc = { - desc = ep2_wedding.1066.desc - first_valid = { - triggered_desc = { - trigger = { - has_character_flag = 1066_success - } - desc = ep2_wedding.1066.desc_1 #It goes well - } - desc = ep2_wedding.1066.desc_2 #Still nothing - } - } - theme = wedding_night_activity - left_portrait = { - character = root - animation = shame - } - right_portrait = { - character = scope:spouse_2 - animation = anger - } - - trigger = { - exists = scope:activity - } - - immediate = { - random_list = { - 30 = { - # you get over it - modifier = { - NOT = { has_trait = impotent } - add = 10 - } - modifier = { - NOT = { fertility <= low_fertility } - add = 10 - } - modifier = { - has_trait = arrogant - add = 10 - } - modifier = { - has_trait = lustful - add = 20 - } - modifier = { - has_trait = brave - add = 10 - } - modifier = { - has_trait = gregarious - add = 10 - } - modifier = { - NOT = { is_attracted_to_gender_of = scope:spouse_2 } - factor = 0 - } - add_character_flag = 1066_success - } - 70 = { - #you really don't get over it - modifier = { - has_trait = impotent - add = 30 - } - modifier = { - fertility <= low_fertility - add = 20 - } - modifier = { - has_trait = shy - add = 20 - } - modifier = { - has_trait = chaste - add = 20 - } - add_character_flag = 1066_not_success - } - } - scope:spouse_2 = { - add_character_flag = is_naked - } - } - - #Option A: I feel better - option = { - name = ep2_wedding.1066.a - trigger = { - has_character_flag = 1066_success - } - scope:spouse_2 = { - add_opinion = { - target = root - modifier = wedding_challenging_spouse_opinion - } - } - if = { - limit = { - scope:spouse_2 = { has_any_fertility_relationship_with_root_trigger = no } - } - set_relation_wedding_good_fertility = scope:spouse_2 - } - if = { - limit = { - is_ai = yes - } - add_opinion = { - target = scope:spouse_2 - modifier = wedding_challenging_spouse_opinion - } - } - add_character_modifier = { - modifier = wedding_nagging_spouse_modifier - years = 10 - } - stress_impact = { - base = minor_stress_impact_loss - lustful = medium_stress_impact_loss - } - } - - #Option B: ...Still nothing - option = { - name = ep2_wedding.1066.b - trigger = { - has_character_flag = 1066_not_success - } - random_list = { - 50 = { #hey don't take it well - modifier = { - scope:spouse_2 = { has_trait = arrogant } - add = 10 - } - modifier = { - scope:spouse_2 = { has_trait = callous } - add = 20 - } - modifier = { - scope:spouse_2 = { has_trait = sadistic } - add = 25 - } - modifier = { - scope:spouse_2 = { has_trait = lustful } - add = 25 - } - modifier = { - scope:spouse_2 = { has_trait = wrathful } - add = 25 - } - modifier = { - scope:spouse_2 = { has_trait = impatient } - add = 25 - } - send_interface_toast = { - title = ep2_wedding.1066.b_1 - left_icon = scope:spouse_2 - scope:spouse_2 = { - add_opinion = { - target = root - modifier = wedding_useless_spouse_opinion - } - } - if = { - limit = { - is_ai = yes - } - add_opinion = { - target = scope:spouse_2 - modifier = wedding_cruel_spouse_opinion - } - } - add_character_modifier = { - modifier = wedding_accused_impotency_modifier - years = 10 - } - if = { - limit = { - scope:spouse_2 = { has_any_fertility_relationship_with_root_trigger = no } - } - set_relation_wedding_very_bad_fertility = scope:spouse_2 - } - stress_impact = { - base = minor_stress_impact_gain - } - } - } - 50 = { #they take it well - modifier = { - scope:spouse_2 = { has_trait = calm } - add = 10 - } - modifier = { - scope:spouse_2 = { has_trait = patient } - add = 25 - } - modifier = { - scope:spouse_2 = { has_trait = compassionate } - add = 40 - } - send_interface_toast = { - title = ep2_wedding.1066.b_2 - left_icon = scope:spouse_2 - scope:spouse_2 = { - add_opinion = { - target = root - modifier = wedding_understanding_spouse_opinion - } - } - if = { - limit = { - is_ai = yes - } - add_opinion = { - target = scope:spouse_2 - modifier = wedding_understanding_spouse_opinion - } - } - if = { - limit = { - scope:spouse_2 = { has_any_fertility_relationship_with_root_trigger = no } - } - set_relation_wedding_bad_fertility = scope:spouse_2 - } - stress_impact = { - base = minor_stress_impact_loss - } - } - } - } - } - after = { - if = { - limit = { - has_character_flag = 1066_success - } - remove_character_flag = 1066_success - } - else_if = { - limit = { - has_character_flag = 1066_not_success - } - remove_character_flag = 1066_not_success - } - scope:spouse_1 = { remove_character_flag = busy_in_wnight_event } - scope:spouse_2 = { - remove_character_flag = busy_in_wnight_event - remove_character_flag = is_naked - } - } -} - -################################################## -# One More Goblet -# by Claudia Baldassi -# ep2_wedding.1110 -################################################## - -# Non-spouses: someone gets extremely drunk/doesn't want to leave - -scripted_trigger ep2_wedding_1110_valid_drunk_trigger = { - is_adult = yes - is_ai = yes - NOR = { - this = scope:activity.special_guest:spouse_1 - this = scope:activity.special_guest:spouse_2 - this = scope:host - has_character_flag = busy_in_wnight_event - } - drinks_alcohol_trigger = yes -} - -ep2_wedding.1110 = { - type = activity_event - title = ep2_wedding.1110.t - desc = { - desc = ep2_wedding.1110.desc_intro - desc = ep2_wedding.1110.desc - triggered_desc = { - trigger = { - root = scope:host - } - desc = ep2_wedding.1110.desc_host - } - } - theme = wedding_banquet_activity - left_portrait = { - character = root - animation = disgust - } - right_portrait = { - character = scope:1110_drunk - animation = wedding_drunk - } - - cooldown = { years = 10 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - - NOR = { - scope:activity.special_guest:spouse_1 ?= root - scope:activity.special_guest:spouse_2 ?= root - } - scope:host ?= { #There must be alcohol at the party! - drinks_alcohol_trigger = yes - } - scope:activity ?= { - any_attending_character = { - ep2_wedding_1110_valid_drunk_trigger = yes - } - NOT = { has_variable = has_had_1110_event } - } - } - - weight_multiplier = { - base = 1 - modifier = { - scope:activity = { - any_attending_character = { - ep2_wedding_1110_valid_drunk_trigger = yes - has_trait = drunkard - } - } - add = 10 - } - modifier = { - scope:activity = { - any_attending_character = { - ep2_wedding_1110_valid_drunk_trigger = yes - OR = { - has_activity_intent = reduce_stress_intent - has_activity_intent = banquet_mischief_intent - } - } - } - add = 3 - } - modifier = { - scope:activity = { - any_attending_character = { - ep2_wedding_1110_valid_drunk_trigger = yes - has_trait = gregarious - } - } - add = 2 - } - modifier = { - is_ai = yes - factor = 0.1 - } - } - - immediate = { - scope:activity = { - random_attending_character = { - limit = { - ep2_wedding_1110_valid_drunk_trigger = yes - has_trait = drunkard - } - alternative_limit = { - ep2_wedding_1110_valid_drunk_trigger = yes - has_trait = gregarious - } - alternative_limit = { - ep2_wedding_1110_valid_drunk_trigger = yes - OR = { - has_activity_intent = reduce_stress_intent - has_activity_intent = banquet_mischief_intent - } - } - alternative_limit = { - ep2_wedding_1110_valid_drunk_trigger = yes - } - save_scope_as = 1110_drunk - add_character_flag = busy_in_wnight_event - } - set_variable = has_had_1110_event - } - add_character_flag = busy_in_wnight_event - } - - #Option B: Kick them out (host only) - option = { - name = ep2_wedding.1110.b - trigger = { root = scope:host } - flavor = ep2_wedding.1110.b.tt - scope:activity = { - add_activity_log_entry = { - key = wedding_goblet_eject_log - tags = { bad } - score = 25 - character = root - target = scope:1110_drunk - - # Effect - root = { - progress_towards_rival_effect = { - REASON = rival_kicked_out - CHARACTER = scope:1110_drunk - OPINION = -30 - } - add_prestige = minor_prestige_gain - add_character_modifier = { - modifier = wedding_severe_host_modifier - years = 20 - } - scope:1110_drunk = { remove_from_activity = scope:activity } - } - } - } - stress_impact = { - compassionate = minor_stress_impact_gain - gregarious = minor_stress_impact_gain - patient = medium_stress_impact_gain - drunkard = major_stress_impact_gain - just = minor_stress_impact_loss - impatient = minor_stress_impact_loss - callous = minor_stress_impact_loss - temperate = medium_stress_impact_loss - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 0.5 - } - modifier = { - has_trait = compassionate - add = -25 - } - modifier = { - has_trait = patient - add = -50 - } - modifier = { - has_trait = gregarious - add = -50 - } - modifier = { - has_trait = temperate - add = 100 - } - } - } - - #Option C: If you can't fight them, join them! - option = { - name = ep2_wedding.1110.c - trigger = { drinks_alcohol_trigger = yes } - scope:activity = { - add_activity_log_entry = { - key = wedding_goblet_fool_log - tags = { bad } - score = 25 - character = root - target = scope:1110_drunk - - # Effect - root = { - progress_towards_friend_effect = { - REASON = friend_drinking_buddies - CHARACTER = scope:1110_drunk - OPINION = 10 - } - if = { - limit = { - NOT = { - has_trait = drunkard - } - } - random = { - chance = 5 - add_trait = drunkard - } - } - add_character_modifier = { - modifier = wedding_social_drinker_modifier - years = 20 - } - } - } - } - stress_impact = { - base = minor_stress_impact_loss - gregarious = medium_stress_impact_loss - drunkard = major_stress_impact_loss - temperate = major_stress_impact_gain - } - - ai_chance = { - base = 50 - modifier = { - has_trait = drunkard - add = 200 - } - modifier = { - has_trait = gregarious - add = 75 - } - modifier = { - has_trait = temperate - add = -75 - } - } - } - - #Option A: Judge them hard - option = { - name = ep2_wedding.1110.a - scope:activity = { - add_activity_log_entry = { - key = wedding_goblet_refusal_log - tags = { bad } - score = 25 - character = scope:1110_drunk - - # Effect - root = { - reverse_add_opinion = { - target = scope:1110_drunk - modifier = annoyed_opinion - opinion = -15 - } - } - } - } - ai_chance = { - base = 100 - modifier = { - has_trait = temperate - add = 50 - } - ai_value_modifier = { - ai_energy = -0.5 - } - } - } - - after = { - remove_character_flag = busy_in_wnight_event - scope:1110_drunk = { remove_character_flag = busy_in_wnight_event } - } -} - -################################################## -# One More Goblet -# by Claudia Baldassi -# ep2_wedding.1111 -################################################## - -# Non-spouses: you get extremely drunk/don't want to leave - -scripted_trigger ep2_wedding_1111_valid_drunk_trigger = { - is_adult = yes - NOR = { - this = scope:activity.special_guest:spouse_1 - this = scope:activity.special_guest:spouse_2 - has_character_flag = busy_in_wnight_event - } - drinks_alcohol_trigger = yes -} - -ep2_wedding.1111 = { - type = activity_event - title = ep2_wedding.1110.t - desc = { - desc = ep2_wedding.1110.desc_intro - desc = ep2_wedding.1111.desc - triggered_desc = { - trigger = { - root = scope:host - } - desc = ep2_wedding.1111.desc_host - } - desc = ep2_wedding.1111.desc_conclusion - } - theme = wedding_banquet_activity - left_portrait = { - character = root - animation = wedding_drunk - } - right_portrait = { - character = scope:1111_other - animation = disgust - } - - cooldown = { years = 10 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - - ep2_wedding_1111_valid_drunk_trigger = yes - - scope:host = { #There must be alcohol at the party! - drinks_alcohol_trigger = yes - } - scope:activity = { - NOT = { has_variable = has_had_1110_event } - } - NOR = { - root = scope:activity.special_guest:spouse_1 - root = scope:activity.special_guest:spouse_2 - } - trigger_if = { - limit = { - this = scope:host - } - scope:activity = { - any_attending_character = { - NOR = { - this = scope:activity.special_guest:spouse_1 - this = scope:activity.special_guest:spouse_2 - } - is_adult = yes - is_ai = yes - NOT = { has_character_flag = busy_in_wnight_event } - } - } - } - } - - weight_multiplier = { - base = 0.5 - modifier = { - has_trait = drunkard - add = 10 - } - modifier = { - has_trait = gregarious - add = 2 - } - modifier = { - is_ai = yes - factor = 0.1 - } - modifier = { - OR = { - has_activity_intent = reduce_stress_intent - has_activity_intent = banquet_mischief_intent - } - add = 5 - } - } - - immediate = { - add_character_flag = busy_in_wnight_event - scope:activity = { - set_variable = has_had_1110_event - } - if = { - limit = { - NOR = { - this = scope:host - scope:host = { - OR = { - this = scope:activity.special_guest:spouse_1 - this = scope:activity.special_guest:spouse_2 - } - } - } - } - scope:host = { - add_character_flag = busy_in_wnight_event - save_scope_as = 1111_other - } - } - else = { - scope:activity = { - random_attending_character = { - limit = { - NOR = { - this = scope:activity.special_guest:spouse_1 - this = scope:activity.special_guest:spouse_2 - } - is_adult = yes - is_ai = yes - NOT = { has_character_flag = busy_in_wnight_event } - } - save_scope_as = 1111_other - add_character_flag = busy_in_wnight_event - } - } - } - } - - #Option B: not sorry - option = { - name = ep2_wedding.1111.b - add_character_modifier = { - modifier = wedding_social_drinker_modifier - years = 20 - } - random_list = { - 30 = { #join me! - trigger = { - scope:1111_other = { drinks_alcohol_trigger = yes } - } - modifier = { - scope:1111_other = { has_trait = drunkard } - add = 200 - } - modifier = { - scope:1111_other = { has_trait = gregarious } - add = 70 - } - modifier = { - scope:1111_other = { has_trait = wrathful } - add = -50 - } - desc = ep2_wedding.1111.b.1 - send_interface_toast = { - title = ep2_wedding.1111.b.1.tt - left_icon = scope:1111_other - scope:activity = { - add_activity_log_entry = { - key = wedding_goblet_fool_log - tags = { bad } - score = 25 - character = root - target = scope:1111_other - - # Effect - root = { - progress_towards_friend_effect = { - REASON = friend_drinking_buddies - CHARACTER = scope:1111_other - OPINION = 10 - } - } - } - } - } - } - 70 = { #you get kicked out! - trigger = { - scope:1111_other = scope:host - } - modifier = { - scope:1111_other = { has_trait = patient } - add = -30 - } - modifier = { - scope:1111_other = { has_trait = compassionate } - add = -25 - } - modifier = { - scope:1111_other = { has_trait = forgiving } - add = -30 - } - modifier = { - scope:1111_other = { has_trait = wrathful } - add = 50 - } - desc = ep2_wedding.1111.b.2 - send_interface_toast = { - title = ep2_wedding.1111.b.2.tt - left_icon = scope:1111_other - scope:activity = { - add_activity_log_entry = { - key = wedding_goblet_eject_log - tags = { bad } - score = 10 - - character = scope:1111_other - target = root - - #Effect - root = { remove_from_activity = scope:activity } - scope:1111_other ={ - progress_towards_rival_effect = { - REASON = rival_kicked_out - CHARACTER = root - OPINION = -30 - } - } - } - } - } - } - 50 = { #you get judged - harshly - trigger = { - scope:1111_other != scope:host - } - desc = ep2_wedding.1111.b.3 - send_interface_toast = { - title = ep2_wedding.1111.b.3.tt - left_icon = scope:1111_other - reverse_add_opinion = { - target = scope:1111_other - modifier = annoyed_opinion - opinion = -20 - } - } - scope:activity = { - add_activity_log_entry = { - key = wedding_goblet_reprimand_log - tags = { bad } - score = 10 - - character = root - } - } - } - } - if = { - limit = { - OR = { - has_activity_intent = reduce_stress_intent - has_activity_intent = banquet_mischief_intent - } - } - stress_impact = { - base = minor_stress_impact_loss - } - } - else = { - stress_impact = { - humble = medium_stress_impact_gain - temperate = major_stress_impact_gain - } - } - ai_chance = { - base = 100 - modifier = { - has_trait = arrogant - add = 75 - } - modifier = { - has_trait = drunkard - add = 75 - } - modifier = { - has_trait = humble - add = -50 - } - modifier = { - has_trait = temperate - add = -75 - } - modifier = { - OR = { - has_activity_intent = reduce_stress_intent - has_activity_intent = banquet_mischief_intent - } - opinion = { - target = scope:host - value < neutral_opinion - } - add = 100 - } - } - } - - #Option A: sorry - option = { - name = ep2_wedding.1111.a - scope:activity = { - add_activity_log_entry = { - key = wedding_goblet_reprimand_log - tags = { bad } - score = 25 - character = root - - # Effect - root = { - reverse_add_opinion = { - target = scope:1111_other - modifier = respect_opinion - opinion = 15 - } - stress_impact = { - arrogant = medium_stress_impact_gain - drunkard = medium_stress_impact_gain - } - } - } - } - ai_chance = { - base = 200 - modifier = { - opinion = { - target = scope:host - value > low_positive_opinion - } - add = 100 - } - modifier = { - has_trait = arrogant - add = -75 - } - modifier = { - has_trait = drunkard - add = -75 - } - } - } - - after = { - remove_character_flag = busy_in_wnight_event - scope:1111_other = { remove_character_flag = busy_in_wnight_event } - } -} - - -################################################## -# Why Would You Marry Someone Like Me? -# by Luke Bean -# ep2_wedding.1300 -################################################## - -scripted_trigger ep2_wedding_1300_appearance_insecurity_trigger = { - OR = { - AND = { - is_female = yes - has_trait = giant - } - has_trait = one_eyed - has_trait = scarred - has_trait = one_legged - has_trait = disfigured - has_trait = scaly - has_trait = albino - has_trait = dwarf - has_trait = hunchbacked - has_trait = maimed - has_trait = spindly - has_trait = beauty_bad_1 - has_trait = beauty_bad_2 - has_trait = beauty_bad_3 - } -} - -scripted_trigger ep2_wedding_1300_voice_insecurity_trigger = { - OR = { - has_trait = lisping - has_trait = stuttering - has_trait = wheezing - } -} - -ep2_wedding.1300 = { - type = activity_event - title = ep2_wedding.1300.t - desc = { - desc = ep2_wedding.1300.desc_intro - first_valid = { - triggered_desc = { - trigger = { scope:insecurity = flag:appearance } - desc = ep2_wedding.1300.desc_appearance - } - triggered_desc = { - trigger = { scope:insecurity = flag:dark_past } - desc = ep2_wedding.1300.desc_dark_past - } - triggered_desc = { - trigger = { scope:insecurity = flag:voice } - desc = ep2_wedding.1300.desc_voice - } - triggered_desc = { - trigger = { scope:insecurity = flag:lowborn } - desc = ep2_wedding.1300.desc_lowborn - } - } - desc = ep2_wedding.1300.desc_outro - } - theme = wedding_night_activity - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:spouse_2 - animation = worry - } - - cooldown = { years = 10 } - - trigger = { - has_ep2_dlc_trigger = yes - root = scope:activity.special_guest:spouse_1 - scope:activity.special_guest:spouse_2 = { - is_alive = yes - NOR = { - has_trait = arrogant - any_relation = { type = lover this = root } - any_relation = { type = best_friend this = root } - } - OR = { - ep2_wedding_1300_appearance_insecurity_trigger = yes - has_any_shunned_or_criminal_trait_in_faith_trigger = { - CHARACTER = scope:activity.special_guest:spouse_2 - FAITH = scope:activity.special_guest:spouse_2.faith - } - ep2_wedding_1300_voice_insecurity_trigger = yes - is_lowborn = yes - } - } - } - - weight_multiplier = { - base = 2 - modifier = { - has_activity_intent = woo_attendee_intent - intent_target = scope:activity.special_guest:spouse_2 - add = 3 - } - } - - immediate = { - root = { save_scope_as = spouse_1 } - scope:activity.special_guest:spouse_2 = { save_scope_as = spouse_2 } - add_character_flag = busy_in_wnight_event - scope:spouse_2 = { - add_character_flag = busy_in_wnight_event - add_character_flag = is_naked - } - if = { - limit = { - scope:spouse_2 = { - ep2_wedding_1300_appearance_insecurity_trigger = yes - } - } - save_scope_value_as = { - name = insecurity - value = flag:appearance - } - } - else_if = { - limit = { - has_any_shunned_or_criminal_trait_in_faith_trigger = { - CHARACTER = scope:spouse_2 - FAITH = scope:spouse_2.faith - } - } - save_scope_value_as = { - name = insecurity - value = flag:dark_past - } - } - else_if = { - limit = { - scope:spouse_2 = { - ep2_wedding_1300_voice_insecurity_trigger = yes - } - } - save_scope_value_as = { - name = insecurity - value = flag:voice - } - } - else_if = { - limit = { - scope:spouse_2 = { - is_lowborn = yes - } - } - save_scope_value_as = { - name = insecurity - value = flag:lowborn - } - } - if = { - limit = { - scope:spouse_2 = { - OR = { - has_trait = intellect_good_1 - has_trait = intellect_good_2 - has_trait = intellect_good_3 - has_trait = ambitious - has_trait = shrewd - intrigue >= high_skill_rating - diplomacy >= high_skill_rating - stewardship >= high_skill_rating - martial >= high_skill_rating - learning >= high_skill_rating - } - } - } - save_scope_value_as = { - name = mind_of_a_ruler - value = yes - } - } - add_character_flag = is_naked - } - - # I chose you for your virtue - option = { - name = ep2_wedding.1300.virtue - custom_tooltip = ep2_wedding.1300.virtue.tt #This option is available because SPOUSE is a virtuous PERSON - custom_tooltip = ep2_wedding.1300.followup.tt - trigger = { - scope:spouse_2 = { num_virtuous_traits >= 1 } - NOR = { - scope:spouse_2 = { num_sinful_traits >= 1 } - has_any_shunned_or_criminal_trait_in_faith_trigger = { - CHARACTER = scope:spouse_2 - FAITH = scope:spouse_2.faith - } - } - } - - show_as_tooltip = { - random_list = { - 10 = { - desc = ep2_wedding.1300.followup.a - show_chance = no - scope:spouse_1 = { - progress_towards_lover_effect = { - CHARACTER = scope:spouse_2 - REASON = lover_shared_insecurity - OPINION = default_lover_opinion - } - } - } - 10 = { - desc = ep2_wedding.1300.followup.b - show_chance = no - } - 10 = { - desc = ep2_wedding.1300.followup.c - show_chance = no - scope:spouse_1 = { - progress_towards_rival_effect = { - REASON = rival_shared_insecurity - CHARACTER = scope:spouse_2 - OPINION = -20 - } - } - } - } - } - stress_impact = { - sadistic = minor_stress_impact_gain - wrathful = minor_stress_impact_gain - cynical = minor_stress_impact_gain - just = minor_stress_impact_loss - chaste = minor_stress_impact_loss - zealous = medium_stress_impact_loss - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = 0.5 - ai_zeal = 0.5 - } - modifier = { - has_trait = impatient - add = -30 - } - modifier = { - has_trait = wrathful - add = -30 - } - modifier = { - has_trait = sadistic - add = -30 - } - modifier = { - has_trait = cynical - add = -80 - } - } - save_scope_value_as = { - name = reassurance - value = flag:virtue - } - scope:spouse_2 = { - trigger_event = { - id = ep2_wedding.1301 - } - } - } - - # I need someone like you to rule by my side - option = { - name = ep2_wedding.1300.rule_together - custom_tooltip = ep2_wedding.1300.rule_together.tt #This option is available because SPOUSE has the mind of a ruler - custom_tooltip = ep2_wedding.1300.followup.tt - - trigger = { - exists = scope:mind_of_a_ruler - } - show_as_tooltip = { - random_list = { - 10 = { - desc = ep2_wedding.1300.followup.a - show_chance = no - scope:spouse_1 = { - progress_towards_lover_effect = { - CHARACTER = scope:spouse_2 - REASON = lover_shared_insecurity - OPINION = default_lover_opinion - } - } - } - 10 = { - desc = ep2_wedding.1300.followup.b - show_chance = no - } - 10 = { - desc = ep2_wedding.1300.followup.c - show_chance = no - scope:spouse_1 = { - progress_towards_rival_effect = { - REASON = rival_shared_insecurity - CHARACTER = scope:spouse_2 - OPINION = -20 - } - } - } - } - } - stress_impact = { - lazy = minor_stress_impact_gain - content = minor_stress_impact_gain - fickle = medium_stress_impact_gain - just = medium_stress_impact_loss - diligent = medium_stress_impact_loss - ambitious = medium_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 0.5 - } - modifier = { - has_trait = content - add = -30 - } - modifier = { - has_trait = lazy - add = -80 - } - modifier = { - has_trait = arrogant - add = -80 - } - } - save_scope_value_as = { - name = reassurance - value = flag:rule_together - } - scope:spouse_2 = { - trigger_event = { - id = ep2_wedding.1301 - } - } - } - -# This marriage is practical for both of us - option = { - name = ep2_wedding.1300.practical - custom_tooltip = ep2_wedding.1300.followup.tt - trigger = { - NOR = { #This is purely so that you don't get a seven-option event if you marry a beautiful fertile genius with a lisp - has_trait = beauty_good_1 - has_trait = beauty_good_2 - has_trait = beauty_good_3 - } - } - show_as_tooltip = { - random_list = { - 10 = { - desc = ep2_wedding.1300.followup.a - show_chance = no - scope:spouse_1 = { - progress_towards_lover_effect = { - CHARACTER = scope:spouse_2 - REASON = lover_shared_insecurity - OPINION = default_lover_opinion - } - } - } - 10 = { - desc = ep2_wedding.1300.followup.b - show_chance = no - } - 10 = { - desc = ep2_wedding.1300.followup.c - show_chance = no - scope:spouse_1 = { - progress_towards_rival_effect = { - REASON = rival_shared_insecurity - CHARACTER = scope:spouse_2 - OPINION = -20 - } - } - } - } - } - stress_impact = { - arbitrary = minor_stress_impact_gain - zealous = minor_stress_impact_gain - diligent = minor_stress_impact_loss - callous = medium_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 0.5 - } - modifier = { - has_trait = arbitrary - add = -30 - } - modifier = { - has_trait = zealous - add = -30 - } - } - save_scope_value_as = { - name = reassurance - value = flag:practical - } - scope:spouse_2 = { - trigger_event = { - id = ep2_wedding.1301 - } - } - } - - # Stop whining, I'm making you a TITLE - option = { - name = ep2_wedding.1300.stop_whining - custom_tooltip = ep2_wedding.1300.followup.tt - - trigger = { - OR = { - has_trait = sadistic - has_trait = callous - has_trait = wrathful - has_trait = impatient - has_trait = arrogant - } - } - show_as_tooltip = { - random_list = { - 10 = { - desc = ep2_wedding.1300.followup.b - show_chance = no - } - 10 = { - desc = ep2_wedding.1300.followup.c - show_chance = no - scope:spouse_1 = { - progress_towards_rival_effect = { - REASON = rival_shared_insecurity - CHARACTER = scope:spouse_2 - OPINION = -20 - } - } - } - } - } - stress_impact = { - compassionate = medium_stress_impact_gain - calm = minor_stress_impact_gain - sadistic = minor_stress_impact_loss - callous = minor_stress_impact_loss - wrathful = minor_stress_impact_loss - impatient = minor_stress_impact_loss - arrogant = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = -1 - } - modifier = { - has_trait = compassionate - add = -80 - } - modifier = { - has_trait = calm - add = -50 - } - } - save_scope_value_as = { - name = reassurance - value = flag:stop_whining - } - scope:spouse_2 = { - trigger_event = { - id = ep2_wedding.1301 - } - } - } - - # I understand how you feel - option = { - name = ep2_wedding.1300.understanding - custom_tooltip = ep2_wedding.1300.followup.tt - - trigger = { - OR = { - has_trait = reclusive - has_trait = shy - has_trait = depressed_1 - has_trait = depressed_genetic - ep2_wedding_1300_appearance_insecurity_trigger = yes - ep2_wedding_1300_voice_insecurity_trigger = yes - } - } - show_as_tooltip = { - random_list = { - 10 = { - desc = ep2_wedding.1300.followup.a - show_chance = no - scope:spouse_1 = { - progress_towards_lover_effect = { - CHARACTER = scope:spouse_2 - REASON = lover_shared_insecurity - OPINION = default_lover_opinion - } - } - } - 10 = { - desc = ep2_wedding.1300.followup.b - show_chance = no - } - 10 = { - desc = ep2_wedding.1300.followup.c - show_chance = no - scope:spouse_1 = { - progress_towards_rival_effect = { - REASON = rival_shared_insecurity - CHARACTER = scope:spouse_2 - OPINION = -20 - } - } - } - } - } - stress_impact = { - compassionate = medium_stress_impact_loss - calm = minor_stress_impact_loss - sadistic = minor_stress_impact_gain - callous = minor_stress_impact_gain - wrathful = minor_stress_impact_gain - impatient = minor_stress_impact_gain - arrogant = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = -1 - } - modifier = { - has_trait = compassionate - add = -80 - } - modifier = { - has_trait = calm - add = -50 - } - } - save_scope_value_as = { - name = reassurance - value = flag:understanding - } - scope:spouse_2 = { - trigger_event = { - id = ep2_wedding.1301 - } - } - } - - # You're the most beautiful PERSON in the world - option = { - name = ep2_wedding.1300.beauty - custom_tooltip = ep2_wedding.1300.beauty.tt #This option is available because SPOUSE is renowned for THEIR looks - custom_tooltip = ep2_wedding.1300.followup.tt - - trigger = { - scope:spouse_2 = { - OR = { - has_trait = beauty_good_1 - has_trait = beauty_good_2 - has_trait = beauty_good_3 - } - } - } - show_as_tooltip = { - random_list = { - 10 = { - desc = ep2_wedding.1300.followup.a - show_chance = no - scope:spouse_1 = { - progress_towards_lover_effect = { - CHARACTER = scope:spouse_2 - REASON = lover_shared_insecurity - OPINION = default_lover_opinion - } - } - } - 10 = { - desc = ep2_wedding.1300.followup.b - show_chance = no - } - 10 = { - desc = ep2_wedding.1300.followup.c - show_chance = no - scope:spouse_1 = { - progress_towards_rival_effect = { - REASON = rival_shared_insecurity - CHARACTER = scope:spouse_2 - OPINION = -20 - } - } - } - } - } - stress_impact = { - chaste = minor_stress_impact_gain - lustful = minor_stress_impact_loss - honest = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 0.25 - } - modifier = { - has_trait = chaste - add = -50 - } - } - save_scope_value_as = { - name = reassurance - value = flag:beauty - } - scope:spouse_2 = { - trigger_event = { - id = ep2_wedding.1301 - } - } - } - - # You will give me many strong heirs - option = { - name = ep2_wedding.1300.fertility - custom_tooltip = ep2_wedding.1300.fertility.tt #This option is available because SPOUSE has the right qualities to be a prolific PARENT - custom_tooltip = ep2_wedding.1300.followup.tt - - trigger = { - scope:spouse_2 = { - OR = { - has_trait = physique_good_1 - has_trait = physique_good_2 - has_trait = physique_good_3 - has_trait = fecund - has_trait = lustful - } - } - } - show_as_tooltip = { - random_list = { - 10 = { - desc = ep2_wedding.1300.followup.b - show_chance = no - } - 10 = { - desc = ep2_wedding.1300.followup.c - show_chance = no - scope:spouse_1 = { - progress_towards_rival_effect = { - REASON = rival_shared_insecurity - CHARACTER = scope:spouse_2 - OPINION = -20 - } - } - } - } - } - stress_impact = { - chaste = minor_stress_impact_gain - compassionate = minor_stress_impact_gain - lustful = medium_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = -0.5 - ai_rationality = 0.5 - } - modifier = { - has_trait = chaste - add = -50 - } - modifier = { - has_trait = compassionate - add = -50 - } - } - save_scope_value_as = { - name = reassurance - value = flag:fertility - } - scope:spouse_2 = { - trigger_event = { - id = ep2_wedding.1301 - } - } - } - after = { - remove_character_flag = is_naked - scope:spouse_2 = { - remove_character_flag = is_naked - } - } -} - -ep2_wedding.1301 = { #Spouse response - type = activity_event - title = ep2_wedding.1301.t - desc = { - desc = ep2_wedding.1301.desc_intro - first_valid = { - triggered_desc = { - trigger = { scope:insecurity = flag:appearance } - desc = ep2_wedding.1301.desc_appearance - } - triggered_desc = { - trigger = { scope:insecurity = flag:dark_past } - desc = ep2_wedding.1301.desc_dark_past - } - triggered_desc = { - trigger = { scope:insecurity = flag:voice } - desc = ep2_wedding.1301.desc_voice - } - triggered_desc = { - trigger = { scope:insecurity = flag:lowborn } - desc = ep2_wedding.1301.desc_lowborn - } - } - desc = ep2_wedding.1301.desc_midtro - first_valid = { - triggered_desc = { - trigger = { scope:reassurance = flag:virtue } - desc = ep2_wedding.1301.desc_virtue - } - triggered_desc = { - trigger = { scope:reassurance = flag:rule_together } - desc = ep2_wedding.1301.desc_rule_together - } - triggered_desc = { - trigger = { scope:reassurance = flag:practical } - desc = ep2_wedding.1301.desc_practical - } - triggered_desc = { - trigger = { scope:reassurance = flag:stop_whining } - desc = ep2_wedding.1301.desc_stop_whining - } - triggered_desc = { - trigger = { scope:reassurance = flag:understanding } - desc = ep2_wedding.1301.desc_understanding - } - triggered_desc = { - trigger = { scope:reassurance = flag:beauty } - desc = ep2_wedding.1301.desc_beauty - } - triggered_desc = { - trigger = { scope:reassurance = flag:fertility } - desc = ep2_wedding.1301.desc_fertility - } - } - desc = ep2_wedding.1301.desc_outro - } - theme = wedding_night_activity - left_portrait = { - character = scope:spouse_1 - animation = thinking - } - right_portrait = { - character = root - animation = worry - } - - immediate = { - add_character_flag = is_naked - scope:spouse_1 = { - add_character_flag = is_naked - } - } - - option = { #I want to be worthy of your love... - name = ep2_wedding.1301.love - trigger = { - is_attracted_to_gender_of = scope:spouse_1 - NOR = { - scope:reassurance = flag:fertility - scope:reassurance = flag:stop_whining - scope:reassurance = flag:practical - } - } - scope:spouse_1 = { - send_interface_toast = { - title = ep2_wedding.1301.outcome.love - left_icon = scope:spouse_2 - scope:activity = { - add_activity_log_entry = { - key = wedding_whyme_love_log - tags = { good } - score = 25 - character = scope:spouse_1 - target = scope:spouse_2 - - # Effect - scope:spouse_1 = { - if = { - limit = { - has_activity_intent = woo_attendee_intent - intent_target = scope:spouse_2 - can_set_relation_lover_trigger = { CHARACTER = scope:spouse_2 } - } - set_relation_lover = { - reason = lover_shared_insecurity - target = scope:spouse_2 - } - complete_activity_intent = yes - } - else = { - progress_towards_lover_effect = { - CHARACTER = scope:spouse_2 - REASON = lover_shared_insecurity - OPINION = default_lover_opinion - } - } - } - scope:spouse_2 = { - add_character_modifier = { - modifier = wedding_soothed_insecurity_modifier - years = 15 - } - } - } - } - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = -0.25 - } - modifier = { - scope:reassurance = flag:understanding - add = 30 - } - modifier = { - scope:reassurance = flag:beauty - add = 15 - } - modifier = { - scope:spouse_1 = { has_trait = compassionate } - add = 20 - } - modifier = { - scope:spouse_1 = { attraction >= low_positive_attraction } - add = 20 - } - modifier = { - scope:spouse_1 = { attraction >= medium_positive_attraction } - add = 30 - } - modifier = { - scope:spouse_1 = { attraction >= high_positive_attraction } - add = 50 - } - modifier = { - scope:spouse_1 = { attraction <= low_negative_attraction } - add = -20 - } - modifier = { - scope:spouse_1 = { attraction <= medium_negative_attraction } - add = -30 - } - modifier = { - scope:spouse_1 = { attraction <= high_negative_attraction } - add = -50 - } - } - } - - option = { #I want to trust you... - name = ep2_wedding.1301.trust - trigger = { - NOR = { - scope:reassurance = flag:fertility - scope:reassurance = flag:stop_whining - } - } - scope:spouse_1 = { - send_interface_toast = { - title = ep2_wedding.1301.outcome.trust - left_icon = scope:spouse_2 - scope:activity = { - add_activity_log_entry = { - key = wedding_whyme_trust_log - tags = { good } - score = 25 - character = scope:spouse_1 - target = scope:spouse_2 - - # Effect - scope:spouse_1 = { - if = { - limit = { - has_activity_intent = woo_attendee_intent - intent_target = scope:spouse_2 - can_set_relation_lover_trigger = { CHARACTER = scope:spouse_2 } - } - set_relation_lover = { - reason = lover_shared_insecurity - target = scope:spouse_2 - } - complete_activity_intent = yes - } - else = { - progress_towards_lover_effect = { - CHARACTER = scope:spouse_2 - REASON = lover_shared_insecurity - OPINION = default_lover_opinion - } - } - } - scope:spouse_2 = { - add_character_modifier = { - modifier = wedding_soothed_insecurity_modifier - years = 15 - } - } - } - } - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = 0.25 - } - modifier = { - scope:reassurance = flag:rule_together - add = 30 - } - modifier = { - scope:reassurance = flag:virtue - add = 30 - } - modifier = { - scope:spouse_1 = { has_trait = honest } - add = 30 - } - modifier = { - scope:spouse_1 = { num_virtuous_traits >= 1 } - add = 20 - } - } - } - - option = { #I'm being silly - name = ep2_wedding.1301.silly - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 0.5 - } - modifier = { - scope:reassurance = flag:practical - add = 30 - } - modifier = { - scope:reassurance = flag:fertility - add = 30 - } - modifier = { - scope:reassurance = flag:rule_together - add = 10 - } - } - scope:spouse_1 = { - send_interface_toast = { - title = ep2_wedding.1301.outcome.silly - left_icon = scope:spouse_2 - scope:activity = { - add_activity_log_entry = { - key = wedding_whyme_silly_log - tags = { bad } - score = 25 - character = scope:spouse_1 - target = scope:spouse_2 - - # Effect - scope:spouse_2 = { - add_character_modifier = { - modifier = wedding_practical_marriage_modifier - years = 15 - } - } - } - } - } - } - } - - option = { #Misunderstood - name = ep2_wedding.1301.misunderstood - - ai_chance = { - base = 120 - ai_value_modifier = { - ai_energy = -0.25 - } - modifier = { - scope:reassurance = flag:practical - add = 5 - } - modifier = { - scope:reassurance = flag:fertility - add = 10 - } - modifier = { - scope:reassurance = flag:stop_whining - add = 20 - } - } - scope:spouse_1 = { - send_interface_toast = { - title = ep2_wedding.1301.outcome.misunderstood - left_icon = scope:spouse_2 - scope:activity = { - add_activity_log_entry = { - key = wedding_whyme_misunderstood_log - tags = { bad } - score = 25 - character = scope:spouse_1 - target = scope:spouse_2 - - # Effect - scope:spouse_1 = { - progress_towards_rival_effect = { - REASON = rival_shared_insecurity - CHARACTER = scope:spouse_2 - OPINION = -20 - } - } - scope:spouse_2 = { - add_character_modifier = { - modifier = wedding_insecure_marriage_modifier - years = 15 - } - } - } - } - } - } - } - - after = { - remove_character_flag = busy_in_wnight_event - remove_character_flag = is_naked - scope:spouse_1 = { - remove_character_flag = busy_in_wnight_event - remove_character_flag = is_naked - } - } -} - - - -################################################## -# A Friend Is Monopolizing Your Attention -# by Luke Bean -# ep2_wedding.1310 -################################################## - -scripted_trigger ep2_wedding_1310_wedding_friend_trigger = { - any_relation = { type = friend this = root } - is_adult = yes - is_ai = yes - NOR ={ - AND = { - this = scope:activity.special_guest:spouse_1 - root = scope:activity.special_guest:spouse_2 - } # If the spouses are friends, that's adorable but incompatible with this event - AND = { - this = scope:activity.special_guest:spouse_2 - root = scope:activity.special_guest:spouse_1 - } - } -} - -ep2_wedding.1310 = { - type = activity_event - title = ep2_wedding.1310.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - OR = { - this = scope:spouse_1 - this = scope:spouse_2 - } - } - desc = ep2_wedding.1310.desc_spouse - } - triggered_desc = { - trigger = { - this = scope:host - } - desc = ep2_wedding.1310.desc_host - } - desc = ep2_wedding.1310.desc_guest - } - } - - theme = wedding_banquet_activity - left_portrait = { - character = root - animation = laugh - } - center_portrait = { - character = scope:other_guest - animation = disapproval - } - right_portrait = { - character = scope:friend - animation = wedding_drunk - } - - lower_right_portrait = scope:other_spouse - - cooldown = { years = 10 } - - trigger = { - has_ep2_dlc_trigger = yes - scope:activity = { - any_attending_character = { - ep2_wedding_1310_wedding_friend_trigger = yes - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - has_trait = shy - add = 1 - } - modifier = { - has_trait = lifestyle_reveler - add = 1 - } - modifier = { - scope:activity = { exists = var:lovers_wedding } - add = -1 - } - modifier = { - has_activity_intent = reduce_stress_intent - add = 1 - } - modifier = { - is_ai = yes - factor = 0.1 - } - } - - immediate = { - scope:activity.special_guest:spouse_1 = { save_scope_as = spouse_1 } - scope:activity.special_guest:spouse_2 = { save_scope_as = spouse_2 } - scope:activity = { - random_attending_character = { - limit = { - ep2_wedding_1310_wedding_friend_trigger = yes - } - save_scope_as = friend - } - } - if = { - limit = { - #If you're one of the spouses - OR = { - this = scope:spouse_1 - this = scope:spouse_2 - } - } - if = { - limit = { this = scope:spouse_1 } - #The person judging you will probably be a close relative of your new spouse, but could also be the spouse themselves - scope:spouse_2 = { save_scope_as = other_spouse } - random_list = { - 100 = { - trigger = { - scope:activity = { - any_attending_character = { - NOT = { - any_relation = { type = friend this = root } - any_relation = { type = friend this = scope:friend } - this = root - this = scope:friend - } - is_adult = yes - is_ai = yes - is_close_family_of = scope:spouse_2 - } - } - } - scope:activity = { - random_attending_character = { - limit = { - NOT = { - any_relation = { type = friend this = root } - any_relation = { type = friend this = scope:friend } - this = root - this = scope:friend - } - is_adult = yes - is_ai = yes - is_close_family_of = scope:spouse_2 - } - save_scope_as = other_guest - } - } - } - 50 = { - scope:spouse_2 = { save_scope_as = other_guest } - } - } - } - else = { - scope:spouse_1 = { save_scope_as = other_spouse } - random_list = { - 100 = { - trigger = { - scope:activity = { - any_attending_character = { - NOT = { - any_relation = { type = friend this = root } - any_relation = { type = friend this = scope:friend } - this = root - this = scope:friend - } - is_adult = yes - is_ai = yes - is_close_family_of = scope:spouse_1 - } - } - } - scope:activity = { - random_attending_character = { - limit = { - NOT = { - any_relation = { type = friend this = root } - any_relation = { type = friend this = scope:friend } - this = root - this = scope:friend - } - is_adult = yes - is_ai = yes - is_close_family_of = scope:spouse_1 - } - save_scope_as = other_guest - } - } - } - 50 = { - scope:spouse_1 = { save_scope_as = other_guest } - } - } - } - } - else_if = { - limit = { this = scope:host } # If you are the host, the judgy guest can be either spouse or any of their close family - random_list = { - 100 = { - trigger = { - NOT = { - scope:spouse_1 = { - any_relation = { - type = friend - this = root - } - } - } - } - scope:spouse_1 = { save_scope_as = other_guest } - } - 100 = { - trigger = { NOT = { scope:spouse_2 = { any_relation = { type = friend this = root } } } } - scope:spouse_2 = { save_scope_as = other_guest } - } - 100 = { - trigger = { - scope:activity = { - any_attending_character = { - NOT = { - any_relation = { type = friend this = root } - any_relation = { type = friend this = scope:friend } - this = root - this = scope:friend - } - is_adult = yes - is_ai = yes - OR = { - is_close_family_of = scope:spouse_1 - is_close_family_of = scope:spouse_2 - } - } - } - } - scope:activity = { - random_attending_character = { - limit = { - NOT = { - any_relation = { type = friend this = root } - any_relation = { type = friend this = scope:friend } - this = root - this = scope:friend - } - is_adult = yes - is_ai = yes - OR = { - is_close_family_of = scope:spouse_1 - is_close_family_of = scope:spouse_2 - } - } - save_scope_as = other_guest - } - } - } - 1 = { - scope:activity = { random_attending_character = { save_scope_as = other_guest } } #In case you're friends with both spouses and their entire families, I guess. - } - } - } - else = { - random_list = { - 10 = { - trigger = { NOT = { scope:spouse_1 = { any_relation = { type = friend this = root } } } } #Same options as if you're the host, but much less likely to grab the spouses - scope:spouse_1 = { save_scope_as = other_guest } - } - 10 = { - trigger = { NOT = { scope:spouse_2 = { any_relation = { type = friend this = root } } } } - scope:spouse_2 = { save_scope_as = other_guest } - } - 100 = { - trigger = { - scope:activity = { - any_attending_character = { - NOT = { - any_relation = { type = friend this = root } - any_relation = { type = friend this = scope:friend } - this = root - this = scope:friend - } - is_adult = yes - is_ai = yes - OR = { - is_close_family_of = scope:spouse_1 - is_close_family_of = scope:spouse_2 - } - } - } - } - scope:activity = { - random_attending_character = { - limit = { - NOT = { - any_relation = { type = friend this = root } - any_relation = { type = friend this = scope:friend } - this = root - this = scope:friend - } - is_adult = yes - is_ai = yes - OR = { - is_close_family_of = scope:spouse_1 - is_close_family_of = scope:spouse_2 - } - } - save_scope_as = other_guest - } - } - } - 1 = { - scope:activity = { random_attending_character = { save_scope_as = other_guest } } - } - } - } - } - - # What a joy to have FRIEND here with me! - option = { - name = ep2_wedding.1310.a - scope:activity = { - add_activity_log_entry = { - key = wedding_banquet_bond_log - tags = { good } - score = 25 - character = root - target = scope:friend - - # Effect - root = { - if = { - limit = { - can_set_relation_best_friend_trigger = { CHARACTER = scope:friend } - } - set_relation_best_friend = { reason = best_friend_great_time_at_wedding copy_reason = friend target = scope:friend } - } - if = { - limit = { - OR = { - this = scope:spouse_1 - this = scope:spouse_2 - this = scope:host - } - } - reverse_add_opinion = { - target = scope:other_guest - modifier = insult_opinion - opinion = -30 - } - } - stress_impact = { - base = medium_stress_impact_loss - } - } - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = -0.1 - } - modifier = { - has_trait = lustful - add = -15 - } - modifier = { - has_trait = gregarious - add = -25 - } - } - } - - # OTHER GUEST, come join us! - option = { - name = ep2_wedding.1310.b - random_list = { - 50 = { #Third person befriends you both - desc = ep2_wedding.1310.b.newfriends - compatibility_modifier = { - who = scope:friend - compatibility_target = scope:other_guest - multiplier = 3 - max = 50 - min = -30 - } - send_interface_toast = { - title = ep2_wedding.1310.b.newfriends - left_icon = scope:other_guest - scope:activity = { - add_activity_log_entry = { - key = wedding_cannot_escape_friends_log - tags = { good } - score = 25 - character = root - target = scope:other_guest - - # Effect - root = { - if = { - limit = { - can_set_relation_friend_trigger = { CHARACTER = scope:other_guest } - } - set_relation_friend = { - reason = friend_great_time_at_wedding - target = scope:other_guest - province = root.location - } - } - stress_impact = { - gregarious = medium_stress_impact_loss - } - } - scope:friend = { - if = { - limit = { - can_set_relation_friend_trigger = { CHARACTER = scope:other_guest } - } - set_relation_friend = { - reason = friend_great_time_at_wedding - target = scope:other_guest - province = root.location - } - } - } - } - } - } - } - 50 = { #Everyone has a good time - desc = ep2_wedding.1310.b.goodtime - compatibility_modifier = { - who = scope:friend - compatibility_target = scope:other_guest - multiplier = 2 - max = 35 - min = -35 - } - send_interface_toast = { - title = ep2_wedding.1310.b.goodtime - left_icon = scope:other_guest - scope:activity = { - add_activity_log_entry = { - key = wedding_cannot_escape_goodtime_log - tags = { betrothal } - score = 25 - character = root - target = scope:other_guest - - # Effect - root = { - reverse_add_opinion = { - target = scope:other_guest - modifier = friendliness_opinion - opinion = 30 - } - reverse_add_opinion = { - target = scope:friend - modifier = friendliness_opinion - opinion = 30 - } - stress_impact = { - gregarious = minor_stress_impact_loss - } - } - } - } - } - } - 40 = { #Everyone has a bad time - desc = ep2_wedding.1310.b.badtime - compatibility_modifier = { - who = scope:friend - compatibility_target = scope:other_guest - multiplier = -3 - max = 60 - min = -9 - } - send_interface_toast = { - title = ep2_wedding.1310.b.badtime - left_icon = scope:other_guest - scope:activity = { - add_activity_log_entry = { - key = wedding_cannot_escape_badtime_log - tags = { betrothal } - score = 25 - character = root - target = scope:other_guest - - #Effect - if = { - limit = { - scope:friend = { can_set_relation_rival_trigger = { CHARACTER = scope:other_guest } } - } - scope:friend = { - set_relation_rival = { - target = scope:other_guest - reason = rival_bad_time_at_wedding - } - } - } - root = { - stress_impact = { - base = minor_stress_impact_gain - } - } - } - } - } - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = 0.5 - } - modifier = { - has_trait = gregarious - add = 20 - } - modifier = { - has_trait = shy - add = -75 - } - } - } - - # Let's sneak out so we can talk properly! - option = { - name = ep2_wedding.1310.c - scope:activity = { - add_activity_log_entry = { - key = wedding_cannot_escape_sneak_log - tags = { betrothal } - score = 25 - character = root - target = scope:friend - - # Effect - root = { - if = { - limit = { NOT = { has_trait = confider } } - add_trait = confider - } - else = { - add_stress = major_stress_impact_loss - } - } - scope:other_guest = { - if = { - limit = { - OR = { - this = scope:spouse_1 - this = scope:spouse_2 - } - } - progress_towards_rival_effect = { - REASON = rival_dishonored_wedding_banquet - CHARACTER = root - OPINION = 0 - } - } - else = { - add_opinion = { - target = root - modifier = insult_opinion - opinion = -30 - } - } - } - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = -0.5 - } - modifier = { - has_trait = shy - add = 20 - } - modifier = { - has_trait = gregarious - add = -50 - } - } - } - - option = { # You must excuse me, my friend. - name = ep2_wedding.1310.d - flavor = ep2_wedding.1310.d.tt - scope:activity = { - add_activity_log_entry = { - key = wedding_cannot_escape_excuse_log - tags = { betrothal } - score = 25 - character = root - target = scope:other_guest - - # Effect - scope:other_guest = { - progress_towards_friend_effect = { - REASON = friend_great_time_at_wedding - CHARACTER = root - OPINION = 0 - } - } - } - } - stress_impact = { - gregarious = minor_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = 0.5 - } - modifier = { - has_trait = gregarious - add = -20 - } - } - } -} - -###################################### -# A Rival Seeks Forgiveness -# by Luke Bean -# ep2_wedding.1320 -###################################### - -scripted_trigger ep2_wedding_1320_forgiving_rival_trigger = { - is_adult = yes - is_ai = yes - any_relation = { type = rival this = root } - NOR = { - has_character_flag = busy_in_wnight_event - has_trait = vengeful - has_trait = arrogant - any_relation = { type = nemesis this = root } - } - OR = { - has_trait = forgiving - has_trait = humble - has_trait = compassionate - AND = { - has_trait = zealous - this.faith = { trait_is_virtue = forgiving } - } - trait_compatibility = { - target = root - value >= medium_positive_trait_compatibility # We're not so different, you and I... - } - } - NOR = { - AND = { - root = scope:activity.special_guest:spouse_1 # Never triggers for rival spouses - this = scope:activity.special_guest:spouse_2 - } - AND = { - root = scope:activity.special_guest:spouse_2 - this = scope:activity.special_guest:spouse_1 - } - } -} - -ep2_wedding.1320 = { - type = activity_event - title = ep2_wedding.1320.t - desc = { - desc = ep2_wedding.1320.desc_intro - first_valid = { - triggered_desc = { - trigger = { - scope:role = flag:host - scope:rival_role = flag:spouse - } - desc = ep2_wedding.1320.desc_host_vs_spouse - } - triggered_desc = { - trigger = { - scope:role = flag:host - scope:rival_role = flag:guest - } - desc = ep2_wedding.1320.desc_host_vs_guest - } - triggered_desc = { - trigger = { - scope:role = flag:spouse - scope:rival_role = flag:guest - } - desc = ep2_wedding.1320.desc_spouse_vs_guest - } - triggered_desc = { - trigger = { - scope:role = flag:guest - scope:rival_role = flag:host - } - desc = ep2_wedding.1320.desc_guest_vs_host - } - triggered_desc = { - trigger = { - scope:role = flag:guest - scope:rival_role = flag:spouse - } - desc = ep2_wedding.1320.desc_guest_vs_spouse - } - triggered_desc = { - trigger = { - scope:role = flag:spouse - scope:rival_role = flag:host - } - desc = ep2_wedding.1320.desc_spouse_vs_host - } - desc = ep2_wedding.1320.desc_guest_vs_guest - } - desc = ep2_wedding.1320.desc_outro - } - theme = wedding_banquet_activity - left_portrait = { - character = root - animation = personality_cynical - } - right_portrait = { - character = scope:rival - animation = shame - } - - cooldown = { years = 10 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - scope:activity = { - any_attending_character = { - ep2_wedding_1320_forgiving_rival_trigger = yes - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - OR = { - root = scope:host - scope:host = { - ep2_wedding_1320_forgiving_rival_trigger = yes - } - } - add = 5 # Very, very likely to happen if one rival invited and the other accepted - } - modifier = { - OR = { - root = scope:activity.special_guest:spouse_1 - scope:activity.special_guest:spouse_2 = { ep2_wedding_1320_forgiving_rival_trigger = yes } - } - add = 3 # Much more likely to happen on the occasion of one of the rivals' weddings - } - modifier = { - has_trait = forgiving ### More likely to happen if the rival thinks root is the sort of person who might forgive them - add = 1 - } - modifier = { - scope:activity = { - any_attending_character = { - ep2_wedding_1320_forgiving_rival_trigger = yes - has_trait = forgiving - } - } - add = 1 - } - modifier = { - scope:activity = { - any_attending_character = { - ep2_wedding_1320_forgiving_rival_trigger = yes - has_trait = humble - } - } - add = 1 - } - modifier = { - scope:activity = { - any_attending_character = { - ep2_wedding_1320_forgiving_rival_trigger = yes - has_trait = compassionate - } - } - add = 1 - } - modifier = { - scope:activity = { - any_attending_character = { - ep2_wedding_1320_forgiving_rival_trigger = yes - has_trait = zealous - faith = { trait_is_virtue = forgiving } - } - } - add = 1 - } - } - - immediate = { - scope:activity = { - random_attending_character = { - limit = { - ep2_wedding_1320_forgiving_rival_trigger = yes - OR = { - has_trait = forgiving - has_trait = humble - has_trait = compassionate - AND = { - has_trait = zealous - faith = { trait_is_virtue = forgiving } - } - } - } - alternative_limit = { - ep2_wedding_1320_forgiving_rival_trigger = yes - } - save_scope_as = rival - } - } - if = { - limit = { - root = scope:host - } - save_scope_value_as = { - name = role - value = flag:host - } - } - else_if = { - limit = { - OR = { - root = scope:activity.special_guest:spouse_1 - root = scope:activity.special_guest:spouse_2 - } - } - save_scope_value_as = { - name = role - value = flag:spouse - } - } - else = { - save_scope_value_as = { - name = role - value = flag:guest - } - } - if = { - limit = { - scope:rival = scope:host - } - save_scope_value_as = { - name = rival_role - value = flag:host - } - } - else_if = { - limit = { - OR = { - scope:rival = scope:activity.special_guest:spouse_1 - scope:rival = scope:activity.special_guest:spouse_2 - } - } - save_scope_value_as = { - name = rival_role - value = flag:spouse - } - } - else = { - save_scope_value_as = { - name = rival_role - value = flag:guest - } - } - } - - # Embrace RIVAL and let bygones be bygones! - option = { - name = ep2_wedding.1320.a - scope:activity = { - add_activity_log_entry = { - key = wedding_embraced_rival_log - tags = { rival } - score = 25 - character = root - target = scope:rival - - #Effect - root = { - remove_relation_rival = scope:rival - random_list = { - 80 = { - send_interface_toast = { - title = ep2_wedding.1320.a.friendliness - left_icon = scope:rival - reverse_add_opinion = { - target = scope:rival - modifier = friendliness_opinion - opinion = 30 - } - } - } - 20 = { - compatibility_modifier = { - who = root - compatibility_target = scope:rival - multiplier = 3 - max = 50 - min = -30 - } - send_interface_toast = { - title = ep2_wedding.1320.a.friend - left_icon = scope:rival - set_relation_friend = { reason = friend_reconciled_at_wedding target = scope:rival } - } - } - } - } - } - } - stress_impact = { - vengeful = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - forgiving = massive_stress_impact_loss - compassionate = major_stress_impact_loss - gregarious = minor_stress_impact_loss - humble = minor_stress_impact_loss - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = -0.2 - ai_compassion = 0.5 - ai_sociability = 0.2 - } - modifier = { - has_trait = vengeful - add = -100 - } - modifier = { - has_trait = arrogant - add = -50 - } - modifier = { - has_trait = forgiving - add = 100 - } - } - } - - # Hurl a DISH in RIVAL's face. - option = { - name = ep2_wedding.1320.b - scope:activity = { - add_activity_log_entry = { - key = wedding_dished_rival_log - tags = { rival } - score = 25 - character = root - target = scope:rival - - # Effect - root = { - add_dread = minor_dread_gain - } - } - } - random_list = { - 100 = { - desc = ep2_wedding.1310.b.nowound - send_interface_toast = { - title = ep2_wedding.1310.b.nowound - left_icon = scope:rival - reverse_add_opinion = { - target = scope:rival - modifier = angry_opinion - opinion = -50 - } - } - } - 30 = { - desc = ep2_wedding.1310.b.wound - trigger = { - can_set_relation_nemesis_trigger = { CHARACTER = scope:rival } - } - send_interface_toast = { - title = ep2_wedding.1310.b.wound - left_icon = scope:rival - scope:rival = { increase_wounds_effect = { REASON = fight } } - set_relation_nemesis = { reason = nemesis_spurned_reconciliation_at_wedding target = scope:rival } - } - } - 30 = { - desc = ep2_wedding.1310.b.wound - trigger = { - NOT = { can_set_relation_nemesis_trigger = { CHARACTER = scope:rival } } - } - send_interface_toast = { - title = ep2_wedding.1310.b.wound - left_icon = scope:rival - scope:rival = { increase_wounds_effect = { REASON = fight } } - } - } - } - if = { - limit = { - has_activity_intent = banquet_mischief_intent - } - stress_impact = { - base = minor_stress_impact_loss - vengeful = major_stress_impact_loss - } - } - else = { - stress_impact = { - vengeful = medium_stress_impact_loss - arrogant = medium_stress_impact_loss - forgiving = massive_stress_impact_gain - compassionate = major_stress_impact_gain - gregarious = minor_stress_impact_gain - humble = minor_stress_impact_gain - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = -0.5 - ai_compassion = -0.5 - } - modifier = { - has_trait = wrathful - add = 30 - } - modifier = { - has_trait = impatient - add = 30 - } - } - } - - # What's forgiveness worth to you? - option = { - name = ep2_wedding.1320.c - - duel = { - target = scope:rival - skill = diplomacy - 25 = { - desc = ep2_wedding.1310.c.hook - trigger = { - can_add_hook = { - target = scope:rival - type = favor_hook - } - } - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - send_interface_toast = { - title = ep2_wedding.1310.c.hook - left_icon = scope:rival - scope:activity = { - add_activity_log_entry = { - key = wedding_hooked_rival_log - tags = { rival } - score = 25 - character = root - target = scope:rival - - # Effect - root = { - remove_relation_rival = scope:rival - add_hook = { - target = scope:rival - type = favor_hook - } - } - } - } - } - } - 30 = { - desc = ep2_wedding.1310.c.apology - compare_modifier = { - value = scope:duel_value - multiplier = 2 - } - send_interface_toast = { - title = ep2_wedding.1310.c.apology - left_icon = scope:rival - scope:activity = { - add_activity_log_entry = { - key = wedding_apology_rival_log - tags = { rival } - score = 25 - character = root - target = scope:rival - - # Effect - root = { - remove_relation_rival = scope:rival - add_prestige = medium_prestige_value - } - } - } - } - } - 35 = { - desc = ep2_wedding.1310.c.refusal - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - send_interface_toast = { - title = ep2_wedding.1310.c.refusal - left_icon = scope:rival - scope:activity = { - add_activity_log_entry = { - key = wedding_refusal_rival_log - tags = { rival } - score = 25 - character = root - target = scope:rival - - # Effect - root = { - reverse_add_opinion = { - target = scope:rival - modifier = angry_opinion - opinion = -50 - } - } - } - } - } - } - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 1 - } - modifier = { - has_trait = ambitious - add = 10 - } - } - } - - #Ignore RIVAL until they leave. - option = { - name = ep2_wedding.1320.d - add_prestige = minor_prestige_gain - scope:rival = { add_prestige = minor_prestige_loss } - reverse_add_opinion = { - target = scope:rival - modifier = angry_opinion - opinion = -20 - } - if = { - limit = { - has_activity_intent = reduce_stress_intent - } - stress_impact = { - base = minor_stress_impact_loss - } - } - ai_chance = { - base = 80 - modifier = { - has_activity_intent = reduce_stress_intent - add = 50 - } - ai_value_modifier = { - ai_energy = -0.5 - } - } - } -} - -############################################## -# We Were Lovers Before The Wedding -# by Luke Bean -# ep2_wedding.1330 -############################################## - -scripted_trigger ep2_wedding_1330_doubts_own_fidelity_trigger = { - OR = { - has_trait = lustful - has_trait = seducer - has_trait = rakish - any_relation = { - type = lover - this != scope:spouse - } - } -} - -ep2_wedding.1330 = { - type = activity_event - title = ep2_wedding.1330.t - desc = ep2_wedding.1330.desc - theme = wedding_night_activity - left_portrait = { - character = root - animation = happiness - } - right_portrait = { - character = scope:spouse - animation = flirtation - } - - cooldown = { years = 10 } - - trigger = { - has_ep2_dlc_trigger = yes - scope:activity = { exists = var:lovers_wedding } - OR = { - root = scope:activity.special_guest:spouse_1 - root = scope:activity.special_guest:spouse_2 - } - } - - weight_multiplier = { - base = 100 - } - - immediate = { - if = { - limit = { root = scope:activity.special_guest:spouse_1 } - scope:activity.special_guest:spouse_2 = { save_scope_as = spouse } - } - else_if = { - limit = { root = scope:activity.special_guest:spouse_2 } - scope:activity.special_guest:spouse_1 = { save_scope_as = spouse } - } - if = { - limit = { - any_relation = { type = soulmate this != scope:spouse } - } - random_relation = { - type = soulmate - limit = { this != scope:spouse } - save_scope_as = soulmate - } - } - } - - # I love this MAN beyond words - option = { - name = ep2_wedding.1330.a - trigger = { - can_set_relation_soulmate_trigger = { CHARACTER = scope:spouse } - } - - set_relation_soulmate = { - reason = soulmate_married_my_lover - copy_reason = lover - target = scope:spouse - } - # Achievements - player_succeeded_at_a_thousand_and_one_nights_achievement_effect = yes - - stress_impact = { - seducer = medium_stress_impact_gain - rakish = medium_stress_impact_gain - deceitful = minor_stress_impact_gain - chaste = medium_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = -0.25 - } - modifier = { - has_trait = callous - add = -20 - } - } - } - - # I will never need anyone else but HIM - option = { - name = ep2_wedding.1330.b - trigger = { - ep2_wedding_1330_doubts_own_fidelity_trigger = no - } - - add_character_modifier = { - modifier = wedding_wants_to_be_faithful_modifier - years = 20 - } - - stress_impact = { - fickle = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = 0.25 - } - modifier = { - has_trait = chaste - add = 20 - } - } - } - - # I will be faithful. I will change my ways! - option = { - name = ep2_wedding.1330.c - trigger = { - OR = { - has_trait = rakish - any_relation = { - type = lover - this != scope:spouse - } - } - } - - add_character_modifier = { - modifier = wedding_wants_to_be_faithful_modifier - years = 20 - } - if = { - limit = { has_trait = rakish } - random_list = { - 50 = { - send_interface_toast = { - title = ep2_wedding.1330.c.rakish.success - remove_trait = rakish - add_stress = major_stress_impact_gain - } - } - 50 = { - send_interface_toast = { - title = ep2_wedding.1330.c.rakish.failure - add_stress = minor_stress_impact_gain - } - } - } - } - every_relation ?= { - type = lover - limit = { this != scope:spouse } - save_temporary_scope_as = lover - if = { - limit = { scope:lover = { is_ai = no } } - scope:lover = { - send_interface_toast = { - title = ep2_wedding.1330.c.breakup - left_icon = root - root = { remove_relation_lover = scope:lover } - } - } - } - else = { root = { remove_relation_lover = scope:lover } } - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = -0.25 - ai_honor = 0.25 - } - modifier = { - has_trait = lustful # lustful will avoid this option UNLESS... - add = -30 - } - modifier = { - has_trait = lustful - has_trait = compassionate # ...they have a reason to feel bad about it. - add = 80 - } - modifier = { - has_trait = lustful - has_trait = just - add = 60 - } - modifier = { - has_trait = lustful - has_trait = honest - add = 60 - } - modifier = { - has_trait = lustful - has_trait = zealous - root.faith = { trait_is_virtue = chaste } - add = 80 - } - } - } - - # I wonder if HE's into... that one thing? - option = { - name = ep2_wedding.1330.d - trigger = { - is_deviant_trigger = yes - NOR = { - faith = { has_doctrine_parameter = deviancy_accepted } - scope:spouse = { is_deviant_trigger = yes } - } - } - - if = { - limit = { any_secret = { type = secret_deviant NOT = { is_known_by = scope:spouse } } } - every_secret = { type = secret_deviant reveal_to = scope:spouse } - } - - hidden_effect = { - if = { - limit = { scope:spouse = { NOT = { any_secret = { type = secret_deviant } } } } - random_list = { - 70 = { - send_interface_toast = { - title = ep2_wedding.1330.d.yuck - left_icon = scope:spouse - reverse_add_opinion = { - target = scope:spouse - modifier = disgusted_opinion - opinion = -15 - } - } - } - 30 = { - compatibility_modifier = { - who = root - compatibility_target = scope:spouse - multiplier = 3 - max = 50 - min = -30 - } - modifier = { - scope:spouse = { has_trait = lustful } - add = 50 - } - modifier = { - scope:spouse = { has_trait = chaste } - add = -50 - } - send_interface_toast = { - title = ep2_wedding.1330.d.yum - left_icon = scope:spouse - scope:spouse = { add_secret = { type = secret_deviant } } - reverse_add_opinion = { - target = scope:spouse - modifier = love_opinion - opinion = 15 - } - } - } - } - } - if = { - limit = { scope:spouse = { any_secret = { type = secret_deviant NOT = { is_known_by = root } } } } - send_interface_toast = { - title = ep2_wedding.1330.d.yeahmetoo - left_icon = scope:spouse - scope:spouse = { every_secret = { type = secret_deviant reveal_to = root } } - reverse_add_opinion = { - target = scope:spouse - modifier = love_opinion - opinion = 15 - } - } - } - } - - show_as_tooltip = { - random_list = { - 1 = { - desc = ep2_wedding.1330.d.yuck.tt - show_chance = no - reverse_add_opinion = { - target = scope:spouse - modifier = disgusted_opinion - opinion = -15 - } - } - 1 = { - desc = ep2_wedding.1330.d.yum.tt - show_chance = no - scope:spouse = { add_secret = { type = secret_deviant } } - reverse_add_opinion = { - target = scope:spouse - modifier = love_opinion - opinion = 15 - } - } - 1 = { - desc = ep2_wedding.1330.d.yeahmetoo.tt - show_chance = no - custom_tooltip = ep2_wedding.1330.d.confession.tt - } - } - } - - ai_chance = { - base = 120 - ai_value_modifier = { - ai_boldness = 0.25 - } - modifier = { - has_trait = lustful - add = 20 - } - } - } - - # How could I have done this to SOULMATE? - option = { - name = ep2_wedding.1330.e - trigger = { - exists = scope:soulmate - } - - remove_relation_lover = scope:spouse - reverse_add_opinion = { - target = scope:soulmate - modifier = love_opinion - opinion = 100 - } - - stress_impact = { - base = major_stress_impact_loss - stubborn = medium_stress_impact_gain - chaste = medium_stress_impact_gain - } - - ai_chance = { - base = 90 - ai_value_modifier = { - ai_honor = 0.25 - ai_boldness = -0.25 - ai_rationality = -0.5 - } - modifier = { - has_trait = fickle - add = 30 - } - modifier = { - has_trait = arbitrary - add = 10 - } - } - } - - # Am I really HIS only love? - option = { - name = ep2_wedding.1330.f - hidden_effect = { - random_list = { - 100 = { # Mind at ease - send_interface_toast = { - title = ep2_wedding.1330.f.mindatease - left_icon = scope:spouse - add_character_modifier = { - modifier = wedding_mind_at_ease_modifier - days = 3650 - } - } - } - 100 = { # Lingering doubts - modifier = { - scope:spouse = { has_trait = deceitful } - add = 30 - } - modifier = { - scope:spouse = { has_trait = lustful } - add = 20 - } - modifier = { - scope:spouse = { has_trait = honest } - add = -30 - } - modifier = { - scope:spouse = { has_trait = chaste } - add = -50 - } - modifier = { - has_trait = paranoid - add = 50 - } - modifier = { - has_trait = trusting - add = -60 - } - - send_interface_toast = { - title = ep2_wedding.1330.f.lingeringdoubts - left_icon = scope:spouse - add_character_modifier = { - modifier = wedding_lingering_doubts_modifier - days = 3650 - } - } - } - 100 = { # Confess all - trigger = { scope:spouse = { any_secret = { type = secret_lover NOT = { is_known_by = root } } } } - modifier = { - scope:spouse = { has_trait = honest } - add = 200 - } - modifier = { - scope:spouse = { has_trait = compassionate } - add = 20 - } - modifier = { - scope:spouse = { has_trait = just } - add = 40 - } - modifier = { - scope:spouse = { has_trait = deceitful } - add = -100 - } - modifier = { - scope:spouse = { has_trait = callous } - add = -20 - } - modifier = { - scope:spouse = { has_trait = sadistic } # "The LOOK on your face!" - add = 20 - } - send_interface_toast = { - title = ep2_wedding.1330.f.confession - left_icon = scope:spouse - scope:spouse = { every_secret = { type = secret_lover limit = { NOT = { is_known_by = root } } reveal_to = root } } - } - } - } - } - show_as_tooltip = { - random_list = { - 1 = { - desc = ep2_wedding.1330.f.lingeringdoubts.tt - show_chance = no - add_character_modifier = { - modifier = wedding_lingering_doubts_modifier - days = 3650 - } - } - 1 = { - desc = ep2_wedding.1330.f.mindatease.tt - show_chance = no - add_character_modifier = { - modifier = wedding_mind_at_ease_modifier - days = 3650 - } - } - 1 = { - desc = ep2_wedding.1330.f.confession.desc - show_chance = no - custom_tooltip = ep2_wedding.1330.f.confession.tt - } - } - } - stress_impact = { - trusting = minor_stress_impact_gain - } - - ai_chance = { - base = 90 - modifier = { - has_trait = paranoid - add = 50 - } - } - } - - # Finally, we have no need to hide our love! - option = { - name = ep2_wedding.1330.g - - stress_impact = { - base = medium_stress_impact_loss - honest = major_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = -0.5 - } - modifier = { - has_trait = honest - add = 50 - } - } - } -} - -################################################## -# Condolences On Your Wedding -# by Luke Bean -# ep2_wedding.1340 -################################################## - -scripted_trigger ep2_wedding_1340_marriage_cynic_trigger = { - is_ai = yes - OR = { - any_spouse = { # dislikes a spouse - OR = { - reverse_opinion = { - target = prev - value <= low_negative_opinion - } - has_relation_rival = prev - } - } - any_memory = { memory_type = spouse_committed_adultery } # has been cheated on - AND = { # has been divorced - any_former_spouse = { } - NOT = { - any_memory = { memory_type = spouse_died } - } - } - } -} - -scripted_trigger ep2_wedding_1340_unusual_hobbies_trigger = { - OR = { - AND = { - has_trait = lustful - any_relation = { - type = lover - this != scope:intended - } - } - has_trait = seducer - has_trait = torturer - has_trait = rakish - has_trait = cannibal - any_secret = { type = secret_cannibal } - has_trait = witch - any_secret = { type = secret_witch } - } -} - -scripted_effect ep2_wedding_1340_add_confidence = { - if = { - limit = { - this = { is_female = yes } - } - add_character_modifier = wedding_confident_bride - } - else = { add_character_modifier = wedding_confident_groom } -} - -ep2_wedding.1340 = { - type = activity_event - title = ep2_wedding.1340.t - desc = { - desc = ep2_wedding.1340.desc.intro - random_valid = { - triggered_desc = { - trigger = { - exists = scope:disliked_spouse - scope:cynic = { - NOR = { - has_trait = lustful - has_trait = seducer - has_trait = rakish - } - } - } - desc = ep2_wedding.1340.desc.dislikes_spouse - } - triggered_desc = { - trigger = { - exists = scope:disliked_spouse - scope:cynic = { - OR = { # dislikes a spouse and has a lust-related trait - has_trait = lustful - has_trait = seducer - has_trait = rakish - } - } - } - desc = ep2_wedding.1340.desc.dislikes_spouse_lustful - } - triggered_desc = { - trigger = { - scope:cynic = { - AND = { # has been divorced - any_former_spouse = { } - NOT = { - any_memory = { - memory_type = spouse_died - } - } - } - } - exists = scope:divorced_spouse - } - desc = ep2_wedding.1340.desc.divorced - } - triggered_desc = { - trigger = { # has been cheated on - NOT = { exists = scope:adulterous_spouse } # separate loc if they can name them - scope:cynic = { - any_memory = { - memory_type = spouse_committed_adultery - } - } - } - desc = ep2_wedding.1340.desc.cheated_on - } - triggered_desc = { - trigger = { - exists = scope:adulterous_spouse - } - desc = ep2_wedding.1340.desc.cheated_on_alt - } - } - desc = ep2_wedding.1340.desc.outro - } - theme = wedding_ceremony_activity - left_portrait = { - character = root - animation = worry - } - right_portrait = { - character = scope:cynic - animation = eyeroll - } - lower_center_portrait = scope:intended - - cooldown = { years = 15 } - - weight_multiplier = { - base = 1 - modifier = { # more likely to happen if close family member is cynical about marriage - root = { - any_close_family_member = { - is_alive = yes - is_ai = yes - is_participant_in_activity = scope:activity - ep2_wedding_1340_marriage_cynic_trigger = yes - } - } - add = 3 - } - modifier = { # also more likely to happen with a friend - root = { - any_relation = { - type = friend - is_alive = yes - is_ai = yes - is_participant_in_activity = scope:activity - ep2_wedding_1340_marriage_cynic_trigger = yes - } - } - add = 3 - } - modifier = { - has_activity_intent = reduce_stress_intent - add = 2 - } - } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - location = scope:activity.activity_location - OR = { - scope:activity.special_guest:spouse_1 = root - scope:activity.special_guest:spouse_2 = root - } - scope:activity = { - any_attending_character = { - ep2_wedding_1340_marriage_cynic_trigger = yes - } - } - } - - immediate = { - add_character_flag = busy_in_wgathering_event - root = { save_scope_as = nervous_spouse } - if = { - limit = { - root = scope:activity.special_guest:spouse_1 - } - scope:activity.special_guest:spouse_2 = { - save_scope_as = intended - } - } - else = { - scope:activity.special_guest:spouse_1 = { - save_scope_as = intended - } - } - scope:activity = { - random_attending_character = { - limit = { ep2_wedding_1340_marriage_cynic_trigger = yes } - weight = { - base = 1 - modifier = { # much more likely to be cynical friend or family - factor = 100 - has_relation_friend = root - } - modifier = { - factor = 100 - is_close_family_of = root - } - modifier = { # helps if their personality disposes them to be cynical about marriage - factor = 3 - OR = { - has_trait = cynical - has_trait = lustful - } - } - } - save_scope_as = cynic - add_character_flag = busy_in_wgathering_event - if = { # if cynic dislikes a current spouse, mention them by name - limit = { - any_spouse = { - OR = { - reverse_opinion = { - target = prev - value <= 0 - } - has_relation_rival = prev - } - } - } - random_spouse = { - limit = { - OR = { - reverse_opinion = { - target = prev - value <= 0 - } - has_relation_rival = prev - } - } - save_scope_as = disliked_spouse - } - } - if = { # if cynic has a memory of adultery about a living spouse, mention them - limit = { - any_memory = { - memory_type = spouse_committed_adultery - } - } - every_spouse = { - save_temporary_scope_as = temp_spouse - prev = { - every_memory = { - memory_type = spouse_committed_adultery - if = { - limit = { has_memory_participant = scope:temp_spouse } - scope:temp_spouse = { save_scope_as = adulterous_spouse } - } - } - } - } - every_former_spouse = { - save_temporary_scope_as = temp_spouse - prev = { - every_memory = { - memory_type = spouse_committed_adultery - if = { - limit = { has_memory_participant = scope:temp_spouse } - scope:temp_spouse = { save_scope_as = adulterous_spouse } - } - } - } - } - } - if = { - limit = { - AND = { - any_former_spouse = { } - NOT = { - any_memory = { - memory_type = spouse_died - } - } - } - } - random_former_spouse = { save_scope_as = divorced_spouse } - } - } - } - } - - option = { # SPOUSE is perfect for me. - name = ep2_wedding.1340.a - flavor = ep2_wedding.1340.a.tt - random_list = { - 40 = { - compatibility_modifier = { - who = root - compatibility_target = scope:intended - multiplier = 3 - max = 100 - min = -20 - } - modifier = { - scope:intended = { - attraction >= low_positive_attraction - } - factor = 1.2 - } - modifier = { - attraction <= low_negative_attraction - factor = 0.8 - } - send_interface_toast = { - title = ep2_wedding.1340.a.success - ep2_wedding_1340_add_confidence = yes - add_stress = medium_stress_impact_loss - } - } - 20 = { - send_interface_toast = { - title = ep2_wedding.1340.a.failure - add_character_modifier = wedding_jitters - add_stress = minor_stress_impact_gain - } - } - } - ai_chance = { - base = 100 - } - } - - option = { # Don't worry, I'll have my hobbies! - name = ep2_wedding.1340.b - flavor = ep2_wedding.1340.b.tt - trigger = { ep2_wedding_1340_unusual_hobbies_trigger = no } - random_list = { - 15 = { - modifier = { - has_trait = lifestyle_gardener - add = 70 - } - modifier = { - has_trait = lifestyle_reveler - add = 70 - } - modifier = { - has_trait = lifestyle_hunter - add = 70 - } - modifier = { - has_trait = lifestyle_poet - add = 70 - } - modifier = { - has_trait = lifestyle_blademaster - add = 40 - } - modifier = { - has_trait = lifestyle_herbalist - add = 40 - } - modifier = { - has_trait = lifestyle_mystic - add = 40 - } - modifier = { - has_trait = lifestyle_physician - add = 40 - } - modifier = { - has_trait = athletic - add = 40 - } - modifier = { - has_trait = journaller - add = 40 - } - send_interface_toast = { - title = ep2_wedding.1340.b.success - ep2_wedding_1340_add_confidence = yes - add_stress = medium_stress_impact_loss - } - } - 30 = { - send_interface_toast = { - title = ep2_wedding.1340.b.failure - add_character_modifier = wedding_jitters - add_stress = minor_stress_impact_gain - } - } - } - ai_chance = { - base = 100 - modifier = { - has_trait = lifestyle_gardener - add = 70 - } - modifier = { - has_trait = lifestyle_reveler - add = 70 - } - modifier = { - has_trait = lifestyle_hunter - add = 70 - } - modifier = { - has_trait = lifestyle_poet - add = 70 - } - modifier = { - has_trait = lifestyle_blademaster - add = 40 - } - modifier = { - has_trait = lifestyle_herbalist - add = 40 - } - modifier = { - has_trait = lifestyle_mystic - add = 40 - } - modifier = { - has_trait = lifestyle_physician - add = 40 - } - modifier = { - has_trait = athletic - add = 40 - } - modifier = { - has_trait = journaller - add = 40 - } - } - } - - option = { # Don't worry, I'll have my... hobbies. - name = ep2_wedding.1340.c - flavor = ep2_wedding.1340.c.tt - trigger = { ep2_wedding_1340_unusual_hobbies_trigger = yes } - random_list = { - 0 = { - modifier = { - has_trait = lustful - any_relation = { - type = lover - this != scope:intended - } - add = 20 - } - modifier = { - has_trait = seducer - add = 20 - } - modifier = { - has_trait = torturer - add = 20 - } - modifier = { - has_trait = rakish - add = 20 - } - modifier = { - OR = { - any_secret = { type = secret_cannibal } - has_trait = cannibal - } - add = 20 - } - modifier = { - is_witch_trigger = yes - add = 20 - } - send_interface_toast = { - title = ep2_wedding.1340.c.success - ep2_wedding_1340_add_confidence = yes - add_stress = medium_stress_impact_loss - } - } - 10 = { - send_interface_toast = { - title = ep2_wedding.1340.c.failure - add_character_modifier = wedding_jitters - add_stress = minor_stress_impact_gain - } - } - } - ai_chance = { - base = 150 - modifier = { - has_trait = seducer - add = 20 - } - modifier = { - has_trait = torturer - add = 20 - } - modifier = { - has_trait = rakish - add = 20 - } - modifier = { - OR = { - any_secret = { type = secret_cannibal } - has_trait = cannibal - } - add = 20 - } - modifier = { - is_witch_trigger = yes - add = 20 - } - } - } - - option = { # Please, I know all about marriage! - name = ep2_wedding.1340.d - flavor = { - first_valid = { - triggered_desc = { - trigger = { - number_of_current_and_former_spouses > 1 - } - desc = ep2_wedding.1340.d.tt.more - } - triggered_desc = { - trigger = { - number_of_current_and_former_spouses > 0 - } - desc = ep2_wedding.1340.d.tt.once - } - desc = ep2_wedding.1340.d.tt.never - } - } - random_list = { - 10 = { - modifier = { - number_of_current_and_former_spouses > 0 - add = 10 - } - modifier = { - number_of_current_and_former_spouses > 1 - add = 20 - } - modifier = { - number_of_current_and_former_spouses > 2 - add = 30 - } - send_interface_toast = { - title = ep2_wedding.1340.d.success - ep2_wedding_1340_add_confidence = yes - add_stress = medium_stress_impact_loss - } - } - 20 = { - send_interface_toast = { - title = ep2_wedding.1340.d.failure - add_character_modifier = wedding_jitters - add_stress = minor_stress_impact_gain - } - } - } - ai_chance = { - base = 100 - } - } - - option = { # Get out of my face, you bitter wretch. - name = ep2_wedding.1340.e - trigger = { has_trait = wrathful } - stress_impact = { - base = medium_stress_impact_loss - } - reverse_add_opinion = { - target = scope:cynic - modifier = insulted_opinion - opinion = -30 - } - ai_chance = { - base = 300 - } - } - - option = { # ...will it really be that bad? - name = ep2_wedding.1340.f - trigger = { - NOT = { has_trait = wrathful } - } - add_character_modifier = wedding_jitters - ai_chance = { - base = 50 - } - } - - after = { - remove_character_flag = busy_in_wgathering_event - scope:cynic = { remove_character_flag = busy_in_wgathering_event } - } -} - -################################################## -# Lost For Words -# by Luke Bean -# ep2_wedding.1350 -################################################## - -scripted_trigger ep2_wedding_1350_caring_relative_trigger = { - is_ai = yes - is_close_family_of = root - NOR = { - is_child_of = root - is_grandchild_of = root - has_trait = callous - has_trait = sadistic - this = root - } - opinion = { - target = root - value >= 40 - } -} - -ep2_wedding.1350 = { - type = activity_event - title = ep2_wedding.1350.t - desc = ep2_wedding.1350.desc.intro - theme = wedding_ceremony_activity - center_portrait = { - character = root - animation = personality_compassionate - } - right_portrait = { - character = scope:caring_relative - animation = admiration - } - - cooldown = { years = 15 } - - weight_multiplier = { - base = 1 - modifier = { # much more likely to happen if root has wedding jitters - root = { - has_character_modifier = wedding_jitters - } - add = 5 - } - modifier = { - has_activity_intent = reduce_stress_intent - add = 2 - } - } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - location = scope:activity.activity_location - OR = { - scope:activity.special_guest:spouse_1 = root - scope:activity.special_guest:spouse_2 = root - } - scope:activity = { - any_attending_character = { - ep2_wedding_1350_caring_relative_trigger = yes - } - } - } - - immediate = { - scope:activity = { - random_attending_character = { - limit = { ep2_wedding_1350_caring_relative_trigger = yes } - weight = { - base = 10 - modifier = { - add = 10 - is_parent_of = root - } - modifier = { - add = 5 - is_sibling_of = root - } - modifier = { - factor = 2 - has_trait = compassionate - } - } - save_scope_as = caring_relative - } - } - } - - option = { # Enjoy a quiet moment together. - name = ep2_wedding.1350.a - stress_impact = { - base = medium_stress_impact_loss - } - reverse_add_opinion = { - target = scope:caring_relative - modifier = love_opinion - opinion = 15 - } - if = { - limit = { has_character_modifier = wedding_jitters } - remove_character_modifier = wedding_jitters - ep2_wedding_1340_add_confidence = yes # replace wedding_jitters with confidence - } - ai_chance = { - base = 100 - modifier = { - has_character_modifier = wedding_jitters - add = 50 - } - } - } - - option = { # Tell RELATIVE how much it means to have them here. - name = ep2_wedding.1350.b - progress_towards_friend_effect = { - CHARACTER = scope:caring_relative - OPINION = 20 - REASON = friend_supportive_at_wedding - } - ai_chance = { - base = 100 - } - } -} - -############################ -## Wedding Banquet Events -## 2000-2999 -## by Veronica Pazos -############################ - -# Diplomatic Intent: You ask a friend of your target's for info about them - -scripted_trigger ep2_wedding_2000_valid_friend = { - feast_default_adult_participant_trigger = yes - drinks_alcohol_trigger = yes - OR = { #they know the person - is_close_family_or_spouse_of_root_trigger = yes - has_any_moderate_good_relationship_with_character_trigger = { CHARACTER = root.intent_target } - } - NOT = { is_spouse_of = root } - NOT = { is_close_family_of = root } -} - -scripted_trigger ep2_wedding_2000_is_valiant = { - OR = { - has_lifestyle = martial_lifestyle - prowess >= high_skill_rating - martial >= high_skill_rating - has_trait = brave - has_trait = reckless - has_trait = gallant - has_trait = wrathful - has_trait = overseer - has_trait = strategist - has_trait = lifestyle_hunter - has_trait = lifestyle_blademaster - } -} - -scripted_trigger ep2_wedding_2000_is_nerd = { - OR = { - has_lifestyle = learning_lifestyle - learning >= high_skill_rating - has_trait = theologian - has_trait = scholar - has_trait = diligent - has_trait = shrewd - } -} - -scripted_trigger ep2_wedding_2000_is_social = { - OR = { - has_lifestyle = diplomacy_lifestyle - diplomacy >= high_skill_rating - has_trait = lifestyle_reveler - has_trait = gregarious - has_trait = august - has_trait = diplomat - has_trait = drunkard - has_trait = trusting - has_trait = compassionate - } -} - -scripted_trigger ep2_wedding_2000_is_fishy = { - OR = { - has_lifestyle = intrigue_lifestyle - intrigue >= high_skill_rating - has_trait = callous - has_trait = cynical - has_trait = arbitrary - has_trait = deceitful - has_trait = schemer - has_trait = torturer - has_trait = greedy - has_trait = vengeful - has_trait = ambitious - has_trait = disloyal - } -} - -scripted_trigger ep2_wedding_2000_is_lustful = { - OR = { - has_trait = lustful - has_trait = seducer - has_trait = rakish - has_trait = fornicator - has_trait = adulterer - has_trait = sodomite - has_trait = deviant - } -} - -ep2_wedding.2000 = { - type = activity_event - title = ep2_wedding.2000.t - desc = { - desc = ep2_wedding.2000.desc.intro - random_valid = { - triggered_desc = { - trigger = { - OR = { - intent_target = { - ep2_wedding_2000_is_lustful = yes - } - AND = { - intent_target = { - ep2_wedding_2000_is_lustful = no - } - scope:target_friend = { - ep2_wedding_2000_is_fishy = yes - } - } - } - } - desc = ep2_wedding.2000.desc.lustful - } - triggered_desc = { - trigger = { - OR = { - intent_target = { - ep2_wedding_2000_is_nerd = yes - } - AND = { - intent_target = { - ep2_wedding_2000_is_nerd = no - } - scope:target_friend = { - ep2_wedding_2000_is_fishy = yes - } - } - } - } - desc = ep2_wedding.2000.desc.nerd - } - triggered_desc = { - trigger = { - OR = { - intent_target = { - ep2_wedding_2000_is_valiant = yes - } - AND = { - intent_target = { - ep2_wedding_2000_is_valiant = no - } - scope:target_friend = { - ep2_wedding_2000_is_fishy = yes - } - } - } - } - desc = ep2_wedding.2000.desc.valiant - } - triggered_desc = { - trigger = { - OR = { - intent_target = { - ep2_wedding_2000_is_social = yes - } - AND = { - intent_target = { - ep2_wedding_2000_is_social = no - } - scope:target_friend = { - ep2_wedding_2000_is_fishy = yes - } - } - } - } - desc = ep2_wedding.2000.desc.social - } - triggered_desc = { - trigger = { - OR = { - intent_target = { - ep2_wedding_2000_is_fishy = yes - } - AND = { - intent_target = { - ep2_wedding_2000_is_fishy = no - } - scope:target_friend = { - ep2_wedding_2000_is_fishy = yes - } - } - } - } - desc = ep2_wedding.2000.desc.fishy - } - } - } - theme = wedding_banquet_activity - left_portrait = { - character = root - triggered_animation = { - trigger = { - ep2_wedding_2000_is_fishy = yes - } - animation = scheme - } - animation = admiration - } - right_portrait = { - character = scope:target_friend - animation = drink_goblet - } - lower_center_portrait = scope:diplo_target - - cooldown = { years = 5 } - - trigger = { - has_ep2_dlc_trigger = yes - has_activity_intent = diplomatic_intent - intent_target = { #there's something we can say of them - is_alive = yes - OR = { - ep2_wedding_2000_is_valiant = yes - ep2_wedding_2000_is_nerd = yes - ep2_wedding_2000_is_social = yes - ep2_wedding_2000_is_fishy = yes - ep2_wedding_2000_is_lustful = yes - } - } - scope:activity = { #there's someone that knows the person - any_attending_character = { - ep2_wedding_2000_valid_friend = yes - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - factor = 2 - scope:activity = { #there's a guy that's best friends with target - any_attending_character = { - has_relation_best_friend = root.intent_target - } - } - } - modifier = { - factor = 1.5 - scope:activity = { #their soulmate is around - any_attending_character = { - has_relation_soulmate = root.intent_target - } - } - } - } - - immediate = { - scope:activity = { #there's someone that knows the person - random_attending_character = { - limit = { - ep2_wedding_2000_valid_friend = yes - } - save_scope_as = target_friend - } - } - intent_target = { save_scope_as = diplo_target } - } - - #Awesome, let's go! - option = { - name = ep2_wedding.2000.a - custom_tooltip = ep2_wedding.2000.a.tt - trigger_event = ep2_wedding.2001 - stress_impact = { - lazy = medium_stress_impact_gain - patient = medium_stress_impact_gain - shy = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = lazy - has_trait = patient - has_trait = shy - } - } - } - } - - #Are they... lying? - option = { - name = ep2_wedding.2000.b - duel = { - skill = intrigue - target = scope:target_friend - 50 = { #they were lying, you catch them - desc = ep2_wedding.2000.b.success - show_chance = no - modifier = { - add = 20 - scope:target_friend = { - ep2_wedding_2000_is_fishy = yes - } - } - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = 5 - } - send_interface_toast = { - title = ep2_wedding.2000.b.success - left_icon = root - custom_tooltip = ep2_wedding.2000.b.success.tt - set_variable = { - name = wbanquet_friend_insight_var - value = scope:diplo_target - } - add_intrigue_skill = 1 - if = { - limit = { has_lifestyle = intrigue_lifestyle } - add_intrigue_lifestyle_xp = minor_lifestyle_experience - } - } - } - 50 = { #they weren't lying - desc = ep2_wedding.2000.b.failure - show_chance = no - modifier = { - add = 50 - scope:target_friend = { - has_trait = honest - } - } - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = 5 - } - send_interface_toast = { - title = ep2_wedding.2000.b.failure - left_icon = scope:target_friend - scope:target_friend = { - add_opinion = { - target = root - modifier = insult_opinion - opinion = -5 - } - } - } - } - } - stress_impact = { - reclusive = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = reclusive - } - } - } -} - -ep2_wedding.2001 = { - type = activity_event - title = ep2_wedding.2001.t - desc = ep2_wedding.2001.desc - theme = wedding_banquet_activity - left_portrait = { - character = root - triggered_animation = { - trigger = { - ep2_wedding_2000_is_fishy = yes - } - animation = scheme - } - animation = admiration - } - right_portrait = { - character = scope:diplo_target - triggered_animation = { - trigger = { - drinks_alcohol_trigger = yes - } - animation = drink_goblet - } - animation = happiness - } - - lower_center_portrait = scope:target_friend - - #Lustful - option = { - name = ep2_wedding.2001.a - set_local_variable = ep2_wedding_lustful_var - ai_chance = { - base = 100 - modifier = { - factor = 2 - ep2_wedding_2000_is_lustful = yes - } - } - } - - #Nerd - option = { - name = { - trigger = { - NOT = { has_trait = dull } - capital_province = { - geographical_region = world_europe - } - } - text = ep2_wedding.2001.b - } - name = ep2_wedding.2001.b.dull - flavor = { - triggered_desc = { - trigger = { - NOT = { has_trait = dull } - } - desc = ep2_wedding.2001.b.flavor - } - } - set_local_variable = ep2_wedding_nerd_var - ai_chance = { - base = 100 - modifier = { - factor = 2 - ep2_wedding_2000_is_nerd = yes - } - } - } - - #Valiant - option = { - name = ep2_wedding.2001.c - set_local_variable = ep2_wedding_valiant_var - ai_chance = { - base = 100 - modifier = { - factor = 2 - ep2_wedding_2000_is_valiant = yes - } - } - } - - #Social - option = { - name = ep2_wedding.2001.d - set_local_variable = ep2_wedding_social_var - ai_chance = { - base = 100 - modifier = { - factor = 2 - ep2_wedding_2000_is_social = yes - } - } - } - - #Fishy - option = { - name = ep2_wedding.2001.e - set_local_variable = ep2_wedding_fishy_var - ai_chance = { - base = 100 - modifier = { - factor = 2 - ep2_wedding_2000_is_fishy = yes - } - } - } - - after = { - scope:diplo_target = { - hidden_effect = { - if = { - limit = { - OR = { - AND = { - ep2_wedding_2000_is_lustful = yes - has_local_variable = ep2_wedding_lustful_var - } - AND = { - ep2_wedding_2000_is_nerd = yes - has_local_variable = ep2_wedding_nerd_var - } - AND = { - ep2_wedding_2000_is_valiant = yes - has_local_variable = ep2_wedding_valiant_var - } - AND = { - ep2_wedding_2000_is_social = yes - has_local_variable = ep2_wedding_social_var - } - AND = { - ep2_wedding_2000_is_fishy = yes - has_local_variable = ep2_wedding_fishy_var - } - } - } - set_local_variable = ep2_wedding_2000_got_it_right - } - } - } - random_list = { - 5 = { - trigger = { - scope:diplo_target = { activity_wedding_diplomatic_intent_impressible_target = yes } - } - desc = ep2_wedding.2000.after.subjugate - show_chance = no - send_interface_toast = { - title = ep2_wedding.2000.after.subjugate - left_icon = scope:diplo_target - custom_tooltip = { - text = ep2_wedding.2000.after.subjugate.tt - complete_activity_intent = yes - create_title_and_vassal_change = { - type = swear_fealty - save_scope_as = title_change - add_claim_on_loss = no - } - scope:diplo_target = { - change_liege = { - liege = root - change = scope:title_change - } - } - resolve_title_and_vassal_change = scope:title_change - } - } - } - 10 = { - desc = ep2_wedding.2000.after.alliance - show_chance = no - send_interface_toast = { - title = ep2_wedding.2000.after.alliance - left_icon = scope:diplo_target - custom_tooltip = { - text = ep2_wedding.2000.after.alliance.tt - complete_activity_intent = yes - create_alliance = { - target = scope:diplo_target - allied_through_owner = root - allied_through_target = scope:diplo_target - } - scope:diplo_target = { - add_opinion = { - target = root - modifier = event_negotiated_alliance_opinion - } - } - } - } - } - 10 = { - desc = ep2_wedding.2000.after.friends - show_chance = no - send_interface_toast = { - title = ep2_wedding.2000.after.friends - left_icon = scope:diplo_target - progress_towards_friend_effect = { - CHARACTER = scope:diplo_target - OPINION = 15 - REASON = friend_wedding - } - } - } - 20 = { #only possible if you messed up - trigger = { - NOT = { has_local_variable = ep2_wedding_2000_got_it_right } - } - desc = ep2_wedding.2000.after.insult - show_chance = no - send_interface_toast = { - title = ep2_wedding.2000.after.insult.short - left_icon = scope:diplo_target - reverse_add_opinion = { - target = scope:diplo_target - modifier = insult_opinion - opinion = -10 - } - } - } - } - } -} - -############################ -## Wedding Night Events -## 3000-3999 -## by Veronica Pazos and Joe Parkin -############################ - -# Both spouses are shy/nervous and bond over something else - -scripted_trigger ep2_wedding.is_valid_shy = { - OR = { - AND = { - age <= 19 #they're young - NOT = { has_trait = lustful } - } - has_trait = shy - has_trait = craven - has_trait = depressed_1 - has_trait = depressed_genetic - has_trait = reclusive - has_trait = chaste - } -} - -ep2_wedding.3000 = { - type = activity_event - title = ep2_wedding.3000.t - desc = ep2_wedding.3000.desc - theme = wedding_night_activity - left_portrait = { - character = root - animation = stress - } - right_portrait = { - character = scope:my_spouse - animation = shame - } - - cooldown = { years = 10 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - OR = { #you are a spouse and shy - AND = { - root = scope:activity.special_guest:spouse_1 - ep2_wedding.is_valid_shy = yes - } - AND = { - root = scope:activity.special_guest:spouse_2 - ep2_wedding.is_valid_shy = yes - } - } - OR = { #and they are a spouse and shy; you also don't have a lover relationship already - scope:activity.special_guest:spouse_1 = { - this != root - NOT = { has_relation_lover = root } - ep2_wedding.is_valid_shy = yes - } - scope:activity.special_guest:spouse_2 = { - this != root - NOT = { has_relation_lover = root } - ep2_wedding.is_valid_shy = yes - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - factor = 2 - has_trait = shy - } - } - - immediate = { - if = { - limit = { - scope:activity.special_guest:spouse_1 = { this != root } - } - scope:activity.special_guest:spouse_1 = { - save_scope_as = my_spouse - } - } - else = { - scope:activity.special_guest:spouse_2 = { - save_scope_as = my_spouse - } - } - add_character_flag = { #doesn't make sense for you to have sexy times after this - flag = busy_in_wnight_event - days = 90 - } - } - - #Let's go for a walk - option = { - name = ep2_wedding.3000.a - custom_tooltip = ep2_wedding.3000.tt - random_list = { - 50 = { #they like it - desc = ep2_wedding.3000.a.success - show_chance = no - modifier = { - add = 50 - scope:my_spouse = { - OR = { - has_trait = lifestyle_herbalist - has_trait = lifestyle_gardener - } - } - } - modifier = { - add = 50 - scope:my_spouse = { - OR = { - has_trait = impatient - has_trait = diligent - } - } - } - send_interface_toast = { - title = ep2_wedding.3000.a.success - left_icon = scope:my_spouse - scope:activity = { - add_activity_log_entry = { - key = ep2_wedding_3000_log_a - tags = { good } - score = 20 - character = root - target = scope:my_spouse - - # Effect - root = { - if = { - limit = { - NOT = { has_relation_friend = scope:my_spouse } - } - set_relation_friend = { - target = scope:my_spouse - reason = lover_wnight_walk - } - } - else_if = { - limit = { - NOT = { has_relation_lover = scope:my_spouse } - } - progress_towards_lover_effect = { - CHARACTER = scope:my_spouse - REASON = lover_wnight_walk - OPINION = default_lover_opinion - } - } - else = { - scope:my_spouse = { - add_opinion = { - target = root - modifier = romance_opinion - opinion = 15 - } - } - } - add_opinion = { - target = scope:my_spouse - modifier = wnight_common_things_opinion - } - } - } - } - } - } - 50 = { #they dont - desc = ep2_wedding.3000.a.failure - show_chance = no - modifier = { - add = 50 - scope:my_spouse = { - OR = { - has_trait = lazy - has_trait = patient - } - } - } - send_interface_toast = { - title = ep2_wedding.3000.a.failure - left_icon = scope:my_spouse - scope:my_spouse = { - add_opinion = { - target = root - modifier = bored_opinion - opinion = -10 - } - } - add_opinion = { - target = scope:my_spouse - modifier = wnight_nothing_in_common_opinion - } - } - } - } - stress_impact = { - lazy = medium_stress_impact_gain - patient = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = lazy - has_trait = patient - } - } - } - } - - #Do you like... things? Talk about something else - option = { - name = ep2_wedding.3000.b - custom_tooltip = ep2_wedding.3000.tt - random_list = { - 50 = { #they like it - desc = ep2_wedding.3000.b.success - show_chance = no - modifier = { - add = 50 - scope:my_spouse = { - OR = { - has_trait = patient - has_trait = calm - } - } - } - modifier = { - add = 50 - scope:my_spouse = { - OR = { - has_trait = gregarious - has_trait = trusting - } - } - } - send_interface_toast = { - title = ep2_wedding.3000.b.success - left_icon = scope:my_spouse - scope:activity = { - add_activity_log_entry = { - key = ep2_wedding_3000_log_b - tags = { good } - score = 20 - character = root - target = scope:my_spouse - - # Effect - root = { - if = { - limit = { - NOT = { has_relation_friend = scope:my_spouse } - } - set_relation_friend = { - target = scope:my_spouse - reason = lover_wnight_talk - } - } - else_if = { - limit = { NOT = { has_relation_lover = scope:my_spouse } } - progress_towards_lover_effect = { - CHARACTER = scope:my_spouse - REASON = lover_wnight_talk - OPINION = default_lover_opinion - } - } - else = { - scope:my_spouse = { - add_opinion = { - target = root - modifier = romance_opinion - opinion = 5 - } - } - } - add_opinion = { - target = scope:my_spouse - modifier = wnight_common_things_opinion - } - } - } - } - } - } - 50 = { #they dont - desc = ep2_wedding.3000.b.failure - show_chance = no - modifier = { - add = 50 - scope:my_spouse = { - OR = { - has_trait = shy - has_trait = reclusive - } - } - } - modifier = { - add = 50 - scope:my_spouse = { - OR = { - has_trait = lisping - has_trait = stuttering - } - } - } - send_interface_toast = { - title = ep2_wedding.3000.b.failure - left_icon = scope:my_spouse - scope:my_spouse = { - add_opinion = { - target = root - modifier = bored_opinion - opinion = -10 - } - } - add_opinion = { - target = scope:my_spouse - modifier = wnight_nothing_in_common_opinion - } - } - } - } - stress_impact = { - reclusive = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = reclusive - } - } - } - - #Let's just sleep - option = { - name = ep2_wedding.3000.c - scope:my_spouse = { - add_opinion = { - target = root - modifier = friendliness_opinion - opinion = 5 - } - } - stress_impact = { - impatient = medium_stress_impact_gain - gregarious = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = impatient - has_trait = gregarious - } - } - } - } -} - -# Spouse with a secret has a breakdown and confesses their secret - -ep2_wedding.3010 = { - type = activity_event - title = ep2_wedding.3010.t - desc = { - desc = ep2_wedding.3010.desc.intro - first_valid = { #some vague flavour in case you choose the option to not hear about it (you still know the secret in the tooltip - triggered_desc = { - trigger = { - scope:my_spouse = { - any_secret = { - type = secret_murder - NOT = { is_known_by = root } - } - } - } - desc = ep2_wedding.3010.desc.murder - } - triggered_desc = { - trigger = { - scope:my_spouse = { - any_secret = { - type = secret_murder_attempt - NOT = { is_known_by = root } - } - } - } - desc = ep2_wedding.3010.desc.murder_attempt - } - triggered_desc = { - trigger = { - scope:my_spouse = { - any_secret = { - type = secret_cannibal - NOT = { is_known_by = root } - } - } - } - desc = ep2_wedding.3010.desc.cannibal - } - triggered_desc = { - trigger = { - scope:my_spouse = { - any_secret = { - type = secret_deviant - NOT = { is_known_by = root } - } - } - } - desc = ep2_wedding.3010.desc.deviant - } - triggered_desc = { - trigger = { - scope:my_spouse = { - any_secret = { - type = secret_witch - NOT = { is_known_by = root } - } - } - } - desc = ep2_wedding.3010.desc.witch - } - triggered_desc = { - trigger = { - scope:my_spouse = { - any_secret = { - type = secret_non_believer - NOT = { is_known_by = root } - } - } - } - desc = ep2_wedding.3010.desc.non_believer - } - desc = ep2_wedding.3010.desc.fallback - } - } - theme = wedding_night_activity - left_portrait = { - character = root - animation = shock - } - right_portrait = { - character = scope:my_spouse - animation = grief - } - - cooldown = { years = 10 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - OR = { #you are one of the spouses - root = scope:activity.special_guest:spouse_1 - root = scope:activity.special_guest:spouse_2 - } - OR = { #the other spouse has a secret - scope:activity.special_guest:spouse_1 = { - this != root - any_secret = { - NOT = { is_known_by = root } - } - } - scope:activity.special_guest:spouse_2 = { - this != root - any_secret = { - NOT = { is_known_by = root } - } - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - factor = 2 - has_trait = shy - } - } - - immediate = { - if = { - limit = { - scope:activity.special_guest:spouse_1 = { this != root } - } - scope:activity.special_guest:spouse_1 = { - save_scope_as = my_spouse - } - } - else = { - scope:activity.special_guest:spouse_2 = { - save_scope_as = my_spouse - } - } - scope:my_spouse = { - random_secret = { - limit = { NOT = { is_known_by = root } } - save_scope_as = secret_to_reveal - } - } - } - - #You can trust me - option = { - name = ep2_wedding.3010.a - scope:activity = { - add_activity_log_entry = { - key = wedding_confession_log - tags = { good } - score = 25 - character = root - target = scope:my_spouse - - # Effect - root = { - scope:secret_to_reveal = { reveal_to = root } - if = { - limit = { NOT = { has_relation_lover = scope:my_spouse } } - progress_towards_lover_effect = { - CHARACTER = scope:my_spouse - REASON = lover_wnight_secret_accepted - OPINION = default_lover_opinion - } - } - else = { - reverse_add_opinion = { - target = scope:my_spouse - modifier = grateful_opinion - opinion = 5 - } - } - scope:my_spouse = { - if = { - limit = { - NOT = { has_character_modifier = wnight_confider_modifier } - } - add_character_modifier = { - modifier = wnight_confider_modifier - years = 10 - } - } - } - if = { - limit = { - scope:my_spouse = { has_any_fertility_relationship_with_root_trigger = no } - } - set_relation_wedding_good_fertility = scope:my_spouse - } - else = { - reverse_add_opinion = { - target = scope:my_spouse - modifier = grateful_opinion - opinion = 15 - } - } - } - } - root = { - stress_impact = { #intended to be a very stressful moment - calm = medium_stress_impact_gain - content = medium_stress_impact_gain - diligent = medium_stress_impact_gain - temperate = medium_stress_impact_gain - paranoid = major_stress_impact_gain #they can hurt you - just = major_stress_impact_gain - } - } - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = calm - has_trait = content - has_trait = diligent - has_trait = temperate - has_trait = paranoid - has_trait = just - } - } - } - } - - #I don't wanna hear the rest - option = { - name = ep2_wedding.3010.b - add_character_modifier = { - modifier = wnight_clear_conscience_modifier - years = 10 - } - stress_impact = { - deceitful = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = deceitful - } - } - } - - #confess YOUR secret - option = { - name = ep2_wedding.3010.c - trigger = { - any_secret = { - NOT = { is_known_by = scope:my_spouse } - } - } - if = { - limit = { NOT = { has_relation_lover = scope:my_spouse } } - progress_towards_lover_effect = { - CHARACTER = scope:my_spouse - REASON = lover_wnight_secret_shared - OPINION = 20 - } - } - else = { - scope:my_spouse = { - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 20 - } - } - } - if = { - limit = { - scope:my_spouse = { - NOT = { has_character_modifier = wnight_confider_modifier } - } - } - scope:my_spouse = { - add_character_modifier = { - modifier = wnight_confider_modifier - years = 10 - } - } - } - stress_impact = { - deceitful = minor_stress_impact_gain - paranoid = minor_stress_impact_gain - } - scope:activity = { - add_activity_log_entry = { - key = wedding_confession_joint_log - tags = { good } - score = 25 - character = root - target = scope:my_spouse - - # Effect - root = { - scope:secret_to_reveal = { reveal_to = root } - random_secret = { - limit = { NOT = { is_known_by = scope:my_spouse } } - reveal_to = scope:my_spouse - } - if = { - limit = { NOT = { has_relation_soulmate = scope:my_spouse } } - progress_towards_lover_effect = { - CHARACTER = scope:my_spouse - REASON = lover_wnight_secret_shared - OPINION = 20 - } - } - else = { - reverse_add_opinion = { - target = scope:my_spouse - modifier = grateful_opinion - opinion = 20 - } - } - if = { - limit = { - scope:my_spouse = { - NOT = { has_character_modifier = wnight_confider_modifier } - } - } - scope:my_spouse = { - add_character_modifier = { - modifier = wnight_confider_modifier - years = 10 - } - } - } - if = { - limit = { - scope:my_spouse = { has_any_fertility_relationship_with_root_trigger = no } - } - set_relation_wedding_good_fertility = scope:my_spouse - } - else = { - reverse_add_opinion = { - target = scope:my_spouse - modifier = grateful_opinion - opinion = 20 - } - } - } - } - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = deceitful - has_trait = paranoid - } - } - } - } -} - -# You find out that your spouse fancies the other gender - -scripted_effect ep2_wedding.3020.reveal_secret_effect = { - if = { - limit = { - scope:my_spouse = { - any_secret = { - type = secret_homosexual - NOT = { is_known_by = root } - } - } - } - scope:my_spouse = { - random_secret = { - type = secret_homosexual - limit = { - NOT = { is_known_by = root } - } - reveal_to = root - } - } - } -} - -ep2_wedding.3020 = { - type = activity_event - title = ep2_wedding.3020.t - desc = ep2_wedding.3020.desc - theme = wedding_night_activity - left_portrait = { - character = root - triggered_animation = { - trigger = { NOT = { is_attracted_to_gender_of = scope:my_spouse } } - animation = disbelief - } - animation = stress - } - right_portrait = { - character = scope:my_spouse - animation = worry - } - - cooldown = { years = 10 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - OR = { #you are one of the spouses - root = scope:activity.special_guest:spouse_1 - root = scope:activity.special_guest:spouse_2 - } - OR = { #the other spouse doesn't fancy you - scope:activity.special_guest:spouse_1 = { - this != root - NOT = { is_attracted_to_gender_of = root } - } - scope:activity.special_guest:spouse_2 = { - this != root - NOT = { is_attracted_to_gender_of = root } - } - } - } - - weight_multiplier = { - base = 1 - } - - immediate = { - if = { - limit = { - scope:activity.special_guest:spouse_1 = { this != root } - } - scope:activity.special_guest:spouse_1 = { - save_scope_as = my_spouse - } - } - else = { - scope:activity.special_guest:spouse_2 = { - save_scope_as = my_spouse - } - } - add_character_flag = { #doesn't make sense for you to have sexy times after this revelation - flag = busy_in_wnight_event - days = 90 - } - } - - #Well... not my problem - option = { - name = ep2_wedding.3020.a - stress_impact = { - compassionate = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = lazy - has_trait = patient - } - } - } - } - - #I get it - comfort them - option = { - name = ep2_wedding.3020.b - ep2_wedding.3020.reveal_secret_effect = yes - if = { - limit = { - can_set_relation_friend_trigger = { CHARACTER = scope:my_spouse } - } - set_relation_friend = { - reason = friend_wnight_homosexual - target = scope:my_spouse - } - } - if = { - limit = { - scope:my_spouse = { - NOT = { has_character_modifier = wnight_confider_modifier } - } - } - scope:my_spouse = { - add_character_modifier = { - modifier = wnight_confider_modifier - years = 10 - } - } - } - if = { - limit = { - scope:my_spouse = { has_any_fertility_relationship_with_root_trigger = no } - } - set_relation_wedding_bad_fertility = scope:my_spouse - } - stress_impact = { - lustful = medium_stress_impact_gain - callous = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = lustful - has_trait = callous - } - } - } - } - - #You're also NOT attracted to them - option = { - name = ep2_wedding.3020.c - trigger = { - NOT = { is_attracted_to_gender_of = scope:my_spouse } - } - if = { - limit = { - can_set_relation_friend_trigger = { CHARACTER = scope:my_spouse } - } - set_relation_friend = { - reason = friend_wnight_homosexual_both - target = scope:my_spouse - } - } - if = { - limit = { - scope:my_spouse = { - NOT = { has_character_modifier = wnight_confider_modifier } - } - } - scope:my_spouse = { - add_character_modifier = { - modifier = wnight_confider_modifier - years = 10 - } - } - } - if = { - limit = { - scope:my_spouse = { has_any_fertility_relationship_with_root_trigger = no } - } - set_relation_wedding_bad_fertility = scope:my_spouse - } - ep2_wedding.3020.reveal_secret_effect = yes - ai_chance = { - base = 100 - modifier = { - factor = 2 - NOT = { is_attracted_to_gender_of = scope:my_spouse } - } - } - } -} - -# Spouse gives you a cute memento to remember this night - -ep2_wedding.3030 = { - type = activity_event - title = ep2_wedding.3030.t - desc = ep2_wedding.3030.desc - theme = wedding_night_activity - center_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_trait = seducer - has_trait = lustful - has_trait = rakish - } - } - animation = flirtation_left - } - animation = love - } - right_portrait = { - character = scope:my_spouse - animation = flirtation - } - artifact = { - target = scope:love_memento - position = lower_center_portrait - } - - cooldown = { years = 10 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - OR = { #you are one of the spouses - root = scope:activity.special_guest:spouse_1 - root = scope:activity.special_guest:spouse_2 - } - OR = { #the other spouse likes you in any way - scope:activity.special_guest:spouse_1 = { - this != root - OR = { - has_any_good_relationship_with_root_trigger = yes - opinion = { - target = root - value >= default_friend_opinion #15 - } - } - } - scope:activity.special_guest:spouse_2 = { - this != root - OR = { - has_any_good_relationship_with_root_trigger = yes - opinion = { - target = root - value >= default_friend_opinion #15 - } - } - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - factor = 1.5 - OR = { - scope:activity.special_guest:spouse_1 = { - this != root - has_relation_lover = root - } - scope:activity.special_guest:spouse_2 = { - this != root - has_relation_lover = root - } - } - } - modifier = { - factor = 2 - OR = { - scope:activity.special_guest:spouse_1 = { - this != root - has_relation_soulmate = root - } - scope:activity.special_guest:spouse_2 = { - this != root - has_relation_soulmate = root - } - } - } - } - - immediate = { - save_scope_as = itsa_me_scope #used in the artifact description - if = { - limit = { - scope:activity.special_guest:spouse_1 = { this != root } - } - scope:activity.special_guest:spouse_1 = { - save_scope_as = my_spouse - } - } - else = { - scope:activity.special_guest:spouse_2 = { - save_scope_as = my_spouse - } - } - hidden_effect_new_object = { - generate_romantic_trinket_effect = { OWNER = scope:my_spouse } - if = { - # Checks required for error suppression - limit = { exists = scope:romantic_trinket } - scope:romantic_trinket = { - save_scope_as = love_memento - set_artifact_description = love_memento_desc - } - } - } - create_character_memory = { - type = wedding_night_trinket - participants = { - spouse_1 = root - spouse_2 = scope:my_spouse - } - } - if = { - limit = { - any_character_artifact = { - artifact_slot_type = miscellaneous - this != scope:love_memento - artifact_can_be_gift_to_trigger = { RECIPIENT = scope:my_spouse } - } - } - random_character_artifact = { - limit = { - artifact_slot_type = miscellaneous - this != scope:love_memento - artifact_can_be_gift_to_trigger = { RECIPIENT = scope:my_spouse } - } - save_scope_as = my_love_memento - } - } - add_character_flag = is_naked - scope:my_spouse = { - add_character_flag = is_naked - } - } - - #I shall cherish this - option = { - name = ep2_wedding.3030.a - #get a bonus to court schemes targetting them - custom_tooltip = ep2_wedding.3030.a.tt - set_variable = { - name = wnight_court_memento_var - value = scope:my_spouse - } - custom_tooltip = ep2_wedding.3030.artifact_tt - scope:love_memento = { - add_artifact_history = { - type = given - actor = scope:my_spouse - recipient = root - } - } - if = { - limit = { - scope:my_spouse = { has_any_fertility_relationship_with_root_trigger = no } - } - set_relation_wedding_good_fertility = scope:my_spouse - } - else = { - scope:my_spouse = { - add_opinion = { - target = root - modifier = romance_opinion - opinion = 10 - } - } - } - if = { - limit = { - has_activity_intent = reduce_stress_intent - } - stress_impact = { - base = minor_stress_impact_loss - paranoid = minor_stress_impact_gain - } - } - else = { - stress_impact = { - paranoid = medium_stress_impact_gain - } - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = lustful - has_trait = paranoid - } - } - } - } - - #I shall cherish /you/ - option = { - name = ep2_wedding.3030.b - #get a bonus to seduce schemes targetting them - custom_tooltip = ep2_wedding.3030.b.tt - set_variable = { - name = wnight_seduce_memento_var - value = scope:my_spouse - } - custom_tooltip = ep2_wedding.3030.artifact_tt - scope:love_memento = { - add_artifact_history = { - type = given - actor = scope:my_spouse - recipient = root - } - } - if = { - limit = { - scope:my_spouse = { has_any_fertility_relationship_with_root_trigger = no } - } - set_relation_wedding_good_fertility = scope:my_spouse - } - else = { - scope:my_spouse = { - add_opinion = { - target = root - modifier = romance_opinion - opinion = 10 - } - } - } - stress_impact = { - compassionate = medium_stress_impact_gain - paranoid = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = compassionate - has_trait = paranoid - } - } - } - } - - #I have something for you too! - option = { - name = ep2_wedding.3030.c - trigger = { - exists = scope:my_love_memento - } - scope:love_memento = { set_owner = root } - scope:my_love_memento = { set_owner = scope:my_spouse } - if = { - limit = { - scope:my_spouse = { has_any_fertility_relationship_with_root_trigger = no } - } - set_relation_wedding_very_good_fertility = scope:my_spouse - } - else_if = { - limit = { - NOT = { has_relation_lover = scope:my_spouse } - } - progress_towards_lover_effect = { - CHARACTER = scope:my_spouse - REASON = lover_wnight_gifts - OPINION = default_lover_opinion - } - } - else = { - scope:my_spouse = { - add_opinion = { - target = root - modifier = romance_opinion - opinion = 15 - } - } - } - stress_impact = { - greedy = medium_stress_impact_gain - lustful = medium_stress_impact_gain - paranoid = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = greedy - has_trait = lustful - has_trait = paranoid - } - } - } - } - - #Reject it - option = { - name = ep2_wedding.3030.d - trigger = { - has_trait = paranoid - } - if = { - limit = { - scope:my_spouse = { has_any_fertility_relationship_with_root_trigger = no } - } - set_relation_wedding_bad_fertility = scope:my_spouse - } - else = { - scope:my_spouse = { - add_opinion = { - target = root - modifier = insult_opinion - opinion = -10 - } - } - } - stress_impact = { - base = major_stress_impact_loss - } - ai_chance = { - base = 100 - } - } - after = { - remove_character_flag = is_naked - scope:my_spouse = { - remove_character_flag = is_naked - } - } -} - -# Your spouse and you are having a nice time when the bed catches fire - -ep2_wedding.3040 = { - type = activity_event - title = ep2_wedding.3040.t - desc = ep2_wedding.3040.desc - theme = wedding_night_activity - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_trait = brave - has_trait = reckless - } - } - animation = anger - } - animation = fear - } - right_portrait = { - character = scope:my_spouse - animation = shock - } - - cooldown = { years = 10 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - OR = { #you are one of the spouses - root = scope:activity.special_guest:spouse_1 - root = scope:activity.special_guest:spouse_2 - } - scope:activity = { - has_activity_option = { - category = wedding_option_decoration - option = wedding_decoration_bad - } - } - #This is to check if you've been cheap in general - OR = { - scope:activity = { - has_activity_option = { - category = wedding_option_entertainment - option = wedding_entertainment_bad - } - } - scope:activity = { - has_activity_option = { - category = wedding_option_food - option = wedding_food_bad - } - } - } - trigger_if = { - limit = { - root = scope:activity.special_guest:spouse_1 - } - #the other spouse likes you at least a tiny bit so you were having fun before the fire - scope:activity.special_guest:spouse_2 = { - OR = { - has_any_good_relationship_with_root_trigger = yes - opinion = { - target = root - value >= 0 - } - } - is_attracted_to_gender_of = root - } - # And you like them too - root = { - is_attracted_to_gender_of = scope:activity.special_guest:spouse_2 - } - } - trigger_else = { - #the other spouse likes you at least a tiny bit so you were having fun before the fire - scope:activity.special_guest:spouse_1 = { - OR = { - has_any_good_relationship_with_root_trigger = yes - opinion = { - target = root - value >= 0 - } - } - is_attracted_to_gender_of = root - } - # And you like them too - root = { - is_attracted_to_gender_of = scope:activity.special_guest:spouse_1 - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - add = 1 - has_trait = reckless #you wouldn't pay attention to the candles - } - modifier = { - scope:activity.special_guest:spouse_1 = { - has_relation_lover = scope:activity.special_guest:spouse_2 - } - add = 1 - } - } - - immediate = { - if = { - limit = { - scope:activity.special_guest:spouse_1 = { this != root } - } - scope:activity.special_guest:spouse_1 = { - save_scope_as = my_spouse - } - } - else = { - scope:activity.special_guest:spouse_2 = { - save_scope_as = my_spouse - } - } - add_character_flag = is_naked - scope:my_spouse = { - add_character_flag = is_naked - } - } - - #Save them! - option = { - name = ep2_wedding.3040.a - duel = { - skill = prowess - value = average_skill_rating - 50 = { #you save them - desc = ep2_wedding.3040.a.success - compare_modifier = { - value = scope:duel_value - multiplier = 0.5 - } - send_interface_toast = { - title = ep2_wedding.3040.a.success - left_icon = root - right_icon = scope:my_spouse - } - } - 50 = { #you get injured - desc = ep2_wedding.3040.a.failure - send_interface_toast = { - title = ep2_wedding.3040.a.failure - left_icon = root - right_icon = scope:my_spouse - increase_wounds_no_death_effect = { REASON = fire } - } - } - } - if = { - limit = { - scope:my_spouse = { has_any_fertility_relationship_with_root_trigger = no } - } - set_relation_wedding_good_fertility = scope:my_spouse - } - else = { - scope:my_spouse = { - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 5 - } - } - } - stress_impact = { - callous = minor_stress_impact_gain - sadistic = minor_stress_impact_gain - craven = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = callous - has_trait = sadistic - has_trait = craven - } - } - } - } - - #Save yourself - option = { - name = ep2_wedding.3040.b - random_list = { - 50 = { #spouse saves themselves - desc = ep2_wedding.3040.b.success - show_chance = no - send_interface_toast = { - title = ep2_wedding.3040.b.success - left_icon = scope:my_spouse - } - } - 50 = { #spouse gets injured - desc = ep2_wedding.3040.b.failure - show_chance = no - send_interface_toast = { - title = ep2_wedding.3040.b.failure - left_icon = scope:my_spouse - scope:my_spouse = { - increase_wounds_no_death_effect = { REASON = fire } - } - } - } - } - if = { - limit = { - scope:my_spouse = { has_any_fertility_relationship_with_root_trigger = no } - } - set_relation_wedding_bad_fertility = scope:my_spouse - } - else = { - scope:my_spouse = { - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -10 - } - } - } - stress_impact = { - compassionate = minor_stress_impact_gain - just = minor_stress_impact_gain - brave = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = compassionate - has_trait = just - has_trait = brave - } - } - } - } - - #MY BODY IS MY WEAPON - option = { - name = ep2_wedding.3040.c - trigger = { has_lifestyle = martial_lifestyle } - duel = { - skill = prowess - value = average_skill_rating - 70 = { #you save them - desc = ep2_wedding.3040.c.success - compare_modifier = { - value = scope:duel_value - multiplier = 0.5 - } - send_interface_toast = { - title = ep2_wedding.3040.c.success - left_icon = root - add_prowess_skill = 1 - } - } - 30 = { #you get injured - desc = ep2_wedding.3040.a.failure - send_interface_toast = { - title = ep2_wedding.3040.a.failure - left_icon = root - increase_wounds_no_death_effect = { REASON = fire } - add_prestige = minor_prestige_loss - } - } - } - if = { - limit = { - has_trait = tourney_participant - has_trait_xp = { - trait = tourney_participant - track = foot - value < 100 - } - } - add_trait_xp = { - trait = tourney_participant - track = foot - value = tournament_hastiludes_xp_gain_medium_value - } - } - else = { - add_martial_lifestyle_xp = medium_lifestyle_xp - } - #no fertility gain because you're doing for yourself - stress_impact = { - callous = medium_stress_impact_gain - sadistic = medium_stress_impact_gain - craven = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 2 - OR = { - has_trait = brave - has_trait = reckless - } - } - modifier = { - factor = 1.5 - has_lifestyle = martial_lifestyle - } - modifier = { - factor = 0 - OR = { - has_trait = craven - has_trait = callous - has_trait = sadistic - } - } - } - } - - #Are you trying to kill your spouse? - option = { - name = ep2_wedding.3040.d - flavor = ep2_wedding.3040.d.flavor - trigger = { - has_activity_intent = murder_attendee_intent - scope:my_spouse = { is_ai = yes } - intent_target = scope:my_spouse - } - reason = activity_intent - random_list = { - 50 = { #spouse saves themselves - desc = ep2_wedding.3040.d.success - show_chance = no - send_interface_toast = { #but they know - title = ep2_wedding.3040.d.success - left_icon = scope:my_spouse - attempted_murder_opinion_effect = { - VICTIM = scope:my_spouse - MURDERER = root - } - add_secret = { - type = secret_murder_attempt - target = scope:my_spouse - } - } - } - 50 = { #spouse dies - desc = ep2_wedding.3040.d.failure - show_chance = no - send_interface_toast = { - title = ep2_wedding.3040.d.failure - left_icon = scope:my_spouse - custom_tooltip = ep2_wedding.wedding_intent.success.tt - unknown_murder_effect = { - VICTIM = scope:my_spouse - MURDERER = root - REASON = death_burned - } - set_variable = just_widowed_var - complete_activity_intent = yes - } - give_nickname = nick_the_just_widowed - } - } - } - after = { - remove_character_flag = is_naked - scope:my_spouse = { - remove_character_flag = is_naked - } - } -} - -# Non-spouse: Use the Wedding Night phase where almost no one is around to kill your target -# episode 1: CHANDELIER EXTRAVAGANZA - -ep2_wedding.3050 = { - type = activity_event - title = ep2_wedding.3050.t - desc = ep2_wedding.3050.desc - theme = wedding_banquet_activity - left_portrait = { - character = root - animation = scheme - } - right_portrait = { - character = scope:intent_victim - animation = drink_goblet - } - - cooldown = { years = 5 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - NOR = { #you are not one of the spouses - root = scope:activity.special_guest:spouse_1 - root = scope:activity.special_guest:spouse_2 - } - has_activity_intent = murder_attendee_intent #you're trying to kill someone - intent_target = { is_alive = yes } #they're not dead yet - intent_target = { #you're not trying to kill the spouses - NOR = { - this = scope:activity.special_guest:spouse_1 - this = scope:activity.special_guest:spouse_2 - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - factor = 2 - OR = { - has_trait = callous - has_trait = deceitful - has_trait = sadistic - } - } - modifier = { #more likely for them to stay behind - factor = 1.5 - intent_target ?= { - OR = { - has_trait = drunkard - has_trait = gregarious - has_trait = lifestyle_reveler - } - } - } - } - - immediate = { - intent_target = { save_scope_as = intent_victim } - } - - #Kill them immediately - option = { - name = ep2_wedding.3050.a - duel = { - skill = prowess - value = average_skill_rating - 70 = { #you kill them - desc = ep2_wedding.3050.a.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - send_interface_toast = { - title = ep2_wedding.3050.a.success - left_icon = scope:intent_victim - custom_tooltip = ep2_wedding.wedding_intent.success.tt - unknown_murder_effect = { - VICTIM = scope:intent_victim - MURDERER = root - REASON = death_accident - } - } - complete_activity_intent = yes - } - 30 = { #they catch you - desc = ep2_wedding.3050.a.failure - send_interface_toast = { - title = ep2_wedding.3050.a.failure - left_icon = root - right_icon = scope:intent_victim - attempted_murder_opinion_effect = { - VICTIM = scope:intent_victim - MURDERER = root - } - add_secret = { - type = secret_murder_attempt - target = scope:intent_victim - } - random_secret = { - type = secret_murder_attempt - limit = { - secret_target = scope:intent_victim - } - expose_secret = scope:intent_victim - } - } - } - } - stress_impact = { - craven = medium_stress_impact_gain - patient = medium_stress_impact_gain - compassionate = medium_stress_impact_gain - deceitful = medium_stress_impact_gain - calm = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = craven - has_trait = patient - has_trait = compassionate - has_trait = deceitful - has_trait = calm - } - } - } - } - - #Use the chandelier - option = { - name = ep2_wedding.3050.b - duel = { - skill = intrigue - value = average_skill_rating - 40 = { #you kill them - desc = ep2_wedding.3050.b.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - send_interface_toast = { - title = ep2_wedding.3050.b.success - left_icon = scope:intent_victim - custom_tooltip = ep2_wedding.wedding_intent.success.tt - unknown_murder_effect = { - VICTIM = scope:intent_victim - MURDERER = root - REASON = death_accident - } - } - complete_activity_intent = yes - } - 60 = { #they suspect - desc = ep2_wedding.3050.b.failure - send_interface_toast = { - title = ep2_wedding.3050.b.failure - left_icon = root - right_icon = scope:intent_victim - scope:intent_victim = { - add_opinion = { - target = root - modifier = suspicion_opinion - opinion = -5 - } - } - add_secret = { - type = secret_murder_attempt - target = scope:intent_victim - } - } - } - } - stress_impact = { - wrathful = medium_stress_impact_gain - vengeful = medium_stress_impact_gain - craven = medium_stress_impact_gain - compassionate = medium_stress_impact_gain - impatient = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = wrathful - has_trait = vengeful - has_trait = craven - has_trait = compassionate - has_trait = impatient - } - } - } - } - - #Not now, not now... - option = { - name = ep2_wedding.3050.c - custom_tooltip = ep2_wedding.3050.c.tt - set_variable = { - name = wnight_chandelier_murder_var - value = scope:intent_victim - } - stress_impact = { - wrathful = medium_stress_impact_gain - impatient = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = wrathful - has_trait = impatient - } - } - } - } -} - -# Either you or spouse doesn't want to take part in bedding ceremony - -scripted_trigger ep2_wedding_3200_is_shy_trigger = { - OR = { - has_trait = shy - has_trait = reclusive - has_trait = craven - has_trait = paranoid - } - NOT = { has_trait = gregarious } -} - -scripted_trigger ep2_wedding_bedding_ceremony_witness_trigger = { - is_adult = yes - NOR = { - this = root - this = scope:my_spouse - scope:bedding_witness_1 ?= this - scope:bedding_witness_2 ?= this - } - OR = { - scope:host.cp:councillor_court_chaplain ?= this - is_close_family_of = root - is_close_family_of = scope:my_spouse - has_relation_friend = root - has_relation_friend = scope:my_spouse - any_court_position_employer = { this = root } - any_court_position_employer = { this = scope:my_spouse } - } -} - -scripted_effect ep2_wedding_bedding_ceremony_witness_effect = { - hidden_effect = { - while = { - count = 3 - scope:activity = { - if = { - limit = { - any_attending_character = { ep2_wedding_bedding_ceremony_witness_trigger = yes } - } - random_attending_character = { - limit = { ep2_wedding_bedding_ceremony_witness_trigger = yes } - weight = { - base = 1 - modifier = { - scope:host.cp:councillor_court_chaplain ?= this - add = 1000 - } - modifier = { - has_trait = lifestyle_reveler - add = 25 - } - modifier = { - has_trait = gregarious - add = 25 - } - is_of_minor_interest_to_weight_up_modifier = { CHARACTER = root } - is_of_minor_interest_to_weight_up_modifier = { CHARACTER = scope:my_spouse } - is_of_major_interest_to_weight_up_modifier = { CHARACTER = root } - is_of_major_interest_to_weight_up_modifier = { CHARACTER = scope:my_spouse } - } - if = { - limit = { exists = scope:bedding_witness_2 } - save_scope_as = bedding_witness_3 - } - else_if = { - limit = { exists = scope:bedding_witness_1 } - save_scope_as = bedding_witness_2 - } - else = { save_scope_as = bedding_witness_1 } - add_to_list = bedding_witnesses - } - } - } - } - } -} - -ep2_wedding.3200 = { - type = activity_event - title = ep2_wedding.3200.t - desc = { - first_valid = { - triggered_desc = { - trigger = { scope:shy_both ?= this } - desc = ep2_wedding.3200.both - } - triggered_desc = { - trigger = { scope:shy_spouse ?= this } - desc = ep2_wedding.3200.self - } - desc = ep2_wedding.3200.other - } - } - theme = wedding_night_activity - left_portrait = { - character = root - outfit_tags = { nightgown } - triggered_animation = { - trigger = { - OR = { - scope:shy_spouse ?= this - exists = scope:shy_both - } - } - animation = worry - } - animation = disapproval - } - right_portrait = { - character = scope:my_spouse - outfit_tags = { nightgown } - triggered_animation = { - trigger = { scope:shy_spouse ?= this } - animation = worry - } - triggered_animation = { - trigger = { exists = scope:shy_both } - animation = stress - } - animation = disapproval - } - lower_left_portrait = scope:bedding_witness_1 - lower_center_portrait = scope:bedding_witness_2 - lower_right_portrait = scope:bedding_witness_3 - cooldown = { years = 5 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - OR = { #you are one of the spouses - scope:activity.special_guest:spouse_1 ?= this - scope:activity.special_guest:spouse_2 ?= this - } - OR = { - scope:activity.special_guest:spouse_1 ?= { - NOT = { has_trait = gregarious } - } - scope:activity.special_guest:spouse_2 ?= { - NOT = { has_trait = gregarious } - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - factor = 2 - scope:activity.special_guest:spouse_1 = { ep2_wedding_3200_is_shy_trigger = yes } - } - modifier = { - factor = 2 - scope:activity.special_guest:spouse_2 = { ep2_wedding_3200_is_shy_trigger = yes } - } - } - - immediate = { - # Identify root - if = { - limit = { root = scope:activity.special_guest:spouse_1 } - scope:activity.special_guest:spouse_2 = { save_scope_as = my_spouse } - } - else = { - scope:activity.special_guest:spouse_1 = { save_scope_as = my_spouse } - } - # Determine shy beddiness - if = { - limit = { - ep2_wedding_3200_is_shy_trigger = yes - scope:my_spouse = { ep2_wedding_3200_is_shy_trigger = yes } - } - save_scope_as = shy_both - } - else_if = { - limit = { ep2_wedding_3200_is_shy_trigger = yes } - save_scope_as = shy_spouse - } - else = { - scope:my_spouse = { save_scope_as = shy_spouse } - } - # Save witnesses - ep2_wedding_bedding_ceremony_witness_effect = yes - } - - #Bar the doors - option = { - name = ep2_wedding.3200.a - flavor = ep2_wedding.3200.a.flavor - trigger = { - # Has door privileges - OR = { - location.county.holder = root - highest_held_title_tier > scope:my_spouse.highest_held_title_tier - } - } - scope:activity = { - add_activity_log_entry = { - key = wedding_barred_bedding_log - character = root - target = scope:my_spouse - - # Effect - root = { - add_character_modifier = { - modifier = wedding_barred_doors_modifier - years = 5 - } - if = { - limit = { scope:shy_spouse ?= this } - reverse_add_opinion = { - target = scope:my_spouse - modifier = wedding_barred_bedding_doors_opinion - opinion = -20 - } - had_sex_with_effect = { - CHARACTER = scope:my_spouse - PREGNANCY_CHANCE = 5 - } - } - else = { - reverse_add_opinion = { - target = scope:my_spouse - modifier = wedding_barred_bedding_doors_opinion - opinion = 20 - } - had_sex_with_effect = { - CHARACTER = scope:my_spouse - PREGNANCY_CHANCE = 75 - } - } - } - } - } - every_in_list = { - list = bedding_witnesses - custom = ep2_wedding_witnesses_tt - add_opinion = { - target = root - modifier = wedding_barred_bedding_doors_opinion - opinion = -10 - } - if = { - limit = { exists = scope:shy_both } - add_opinion = { - target = scope:my_spouse - modifier = wedding_barred_bedding_doors_opinion - opinion = -10 - } - } - } - stress_impact = { - shy = minor_stress_impact_loss - reclusive = minor_stress_impact_loss - paranoid = minor_stress_impact_loss - craven = minor_stress_impact_loss - compassionate = minor_stress_impact_loss - gregarious = miniscule_stress_impact_gain - trusting = miniscule_stress_impact_gain - brave = miniscule_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 0.5 - ai_boldness = 1 - ai_sociability = -1 - } - } - } - - #Convince to bar - option = { - name = ep2_wedding.3200.c - trigger = { - OR = { - scope:shy_spouse ?= this - exists = scope:shy_both - } - NOR = { - location.county.holder = root - highest_held_title_tier > scope:my_spouse.highest_held_title_tier - } - } - duel = { - skill = diplomacy - target = scope:my_spouse - 40 = { #they accept - desc = ep2_wedding.3200.c.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - modifier = { - factor = 2 - exists = scope:shy_both - } - send_interface_toast = { - title = ep2_wedding.3200.c.success - left_icon = scope:my_spouse - scope:activity = { - add_activity_log_entry = { - key = wedding_barred_bedding_log - character = root - target = scope:my_spouse - - # Effect - root = { - add_character_modifier = { - modifier = wedding_barred_doors_modifier - years = 5 - } - if = { - limit = { scope:shy_spouse ?= this } - reverse_add_opinion = { - target = scope:my_spouse - modifier = wedding_barred_bedding_doors_opinion - opinion = 10 - } - } - else = { - reverse_add_opinion = { - target = scope:my_spouse - modifier = wedding_barred_bedding_doors_opinion - opinion = 20 - } - } - had_sex_with_effect = { - CHARACTER = scope:my_spouse - PREGNANCY_CHANCE = 25 - } - } - } - } - every_in_list = { - list = bedding_witnesses - custom = ep2_wedding_witnesses_tt - reverse_add_opinion = { - target = scope:my_spouse - modifier = wedding_barred_bedding_doors_opinion - opinion = -10 - } - if = { - limit = { exists = scope:shy_both } - add_opinion = { - target = scope:my_spouse - modifier = wedding_barred_bedding_doors_opinion - opinion = -10 - } - } - } - stress_impact = { - shy = minor_stress_impact_loss - reclusive = medium_stress_impact_loss - paranoid = minor_stress_impact_loss - craven = minor_stress_impact_loss - } - } - } - 60 = { #they refuse - desc = ep2_wedding.3200.c.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - send_interface_toast = { - title = ep2_wedding.3200.c.failure - left_icon = scope:my_spouse - reverse_add_opinion = { - target = scope:my_spouse - modifier = wedding_forced_bedding_ceremony_opinion - opinion = -10 - } - had_sex_with_effect = { - CHARACTER = scope:my_spouse - PREGNANCY_CHANCE = 5 - } - stress_impact = { - shy = miniscule_stress_impact_gain - reclusive = minor_stress_impact_gain - paranoid = miniscule_stress_impact_gain - craven = miniscule_stress_impact_gain - } - } - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - ai_boldness = 0.5 - ai_sociability = -1 - } - } - } - - #Convince to take part - option = { - name = ep2_wedding.3200.d - trigger = { - NOT = { scope:shy_spouse ?= root } - } - duel = { - skill = diplomacy - target = scope:my_spouse - 40 = { # - desc = ep2_wedding.3200.d.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - send_interface_toast = { - title = ep2_wedding.3200.d.success - left_icon = scope:my_spouse - reverse_add_opinion = { - target = scope:my_spouse - modifier = wedding_caved_to_bedding_opinion - opinion = 10 - } - had_sex_with_effect = { - CHARACTER = scope:my_spouse - PREGNANCY_CHANCE = 75 - } - } - } - 60 = { # - desc = ep2_wedding.3200.d.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - send_interface_toast = { - title = ep2_wedding.3200.d.failure - left_icon = scope:my_spouse - reverse_add_opinion = { - target = scope:my_spouse - modifier = wedding_forced_bedding_ceremony_opinion - opinion = -10 - } - had_sex_with_effect = { - CHARACTER = scope:my_spouse - PREGNANCY_CHANCE = 5 - } - } - } - } - stress_impact = { - stubborn = miniscule_stress_impact_gain - compassionate = minor_stress_impact_loss - callous = miniscule_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 0.5 - ai_boldness = 0.5 - ai_sociability = 1 - } - } - } - - #Force to take part - option = { - name = ep2_wedding.3200.e - trigger = { scope:shy_spouse ?= scope:my_spouse } - reverse_add_opinion = { - target = scope:my_spouse - modifier = wedding_forced_bedding_ceremony_opinion - opinion = -10 - } - had_sex_with_effect = { - CHARACTER = scope:my_spouse - PREGNANCY_CHANCE = 20 - } - stress_impact = { - gregarious = medium_stress_impact_loss - zealous = medium_stress_impact_loss - diligent = medium_stress_impact_loss - callous = minor_stress_impact_loss - fickle = miniscule_stress_impact_gain - compassionate = miniscule_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = -0.5 - ai_boldness = 0.5 - ai_sociability = 1 - } - } - } - - #Do your duty - option = { - name = ep2_wedding.3200.b - trigger = { scope:shy_spouse ?= this } - if = { - limit = { - NOT = { exists = scope:shy_both } - } - reverse_add_opinion = { - target = scope:my_spouse - modifier = wedding_caved_to_bedding_opinion - opinion = 20 - } - } - if = { - limit = { - scope:my_spouse = { has_any_fertility_relationship_with_root_trigger = no } - } - set_relation_wedding_good_fertility = scope:my_spouse - } - had_sex_with_effect = { - CHARACTER = scope:my_spouse - PREGNANCY_CHANCE = 20 - } - stress_impact = { - shy = minor_stress_impact_gain - reclusive = minor_stress_impact_gain - paranoid = minor_stress_impact_gain - craven = minor_stress_impact_gain - gregarious = medium_stress_impact_loss - zealous = medium_stress_impact_loss - diligent = medium_stress_impact_loss - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = -1 - ai_sociability = 0.5 - } - } - } -} - -scripted_trigger wedding_3300_flavor_character_trigger = { - is_participant_in_activity = scope:activity - NOR = { - this = scope:my_spouse - this = root - } -} - -ep2_wedding.3300 = { - type = activity_event - title = ep2_wedding.3300.t - desc = { - desc = ep2_wedding.3300.opening - # Ceremony flavor 1 - first_valid = { - triggered_desc = { - trigger = { - scope:officiant ?= { is_clergy = yes } - } - desc = ep2_wedding.3300.blessing - } - triggered_desc = { - trigger = { exists = scope:officiant } - desc = ep2_wedding.3300.decorate - } - desc = ep2_wedding.3300.flowers - } - # Ceremony flavor 2 - first_valid = { - triggered_desc = { - trigger = { - drinks_alcohol_trigger = yes - scope:my_spouse = { drinks_alcohol_trigger = yes } - } - desc = ep2_wedding.3300.wine - } - desc = ep2_wedding.3300.anointing - } - # Spouse flavor - first_valid = { - triggered_desc = { - trigger = { has_relation_lover = scope:my_spouse } - desc = ep2_wedding.3300.lover - } - triggered_desc = { - trigger = { has_relation_friend = scope:my_spouse } - desc = ep2_wedding.3300.friend - } - triggered_desc = { - trigger = { - OR = { - has_relation_rival = scope:my_spouse - reverse_opinion = { target = scope:my_spouse value < -50 } - } - } - desc = ep2_wedding.3300.hatred - } - triggered_desc = { - trigger = { - OR = { - has_relation_rival = scope:my_spouse - reverse_opinion = { target = scope:my_spouse value < -10 } - } - } - desc = ep2_wedding.3300.unfriendly - } - triggered_desc = { - trigger = { - OR = { - has_relation_rival = scope:my_spouse - reverse_opinion = { target = scope:my_spouse value >= 25 } - } - } - desc = ep2_wedding.3300.friendly - } - desc = ep2_wedding.3300.polite - } - # Party flavor - random_valid = { - triggered_desc = { - trigger = { scope:jester.employer ?= root } - desc = ep2_wedding.3300.jester_self - } - triggered_desc = { - trigger = { - exists = scope:jester - scope:jester.employer != root - } - desc = ep2_wedding.3300.jester - } - triggered_desc = { - trigger = { - scope:friend ?= { has_relation_friend = root } - } - desc = ep2_wedding.3300.other_friend_self - } - triggered_desc = { - trigger = { - exists = scope:friend - NOT = { - scope:friend = { has_relation_friend = root } - } - } - desc = ep2_wedding.3300.other_friend - } - triggered_desc = { - trigger = { - scope:other_spouse ?= { is_spouse_of = root } - } - desc = ep2_wedding.3300.other_spouse_self - } - triggered_desc = { - trigger = { - exists = scope:other_spouse - NOT = { - scope:other_spouse ?= { is_spouse_of = root } - } - } - desc = ep2_wedding.3300.other_spouse - } - triggered_desc = { - trigger = { - scope:family ?= { is_close_family_of = root } - } - desc = ep2_wedding.3300.family_self - } - triggered_desc = { - trigger = { - scope:family ?= { is_close_family_of = scope:my_spouse } - } - desc = ep2_wedding.3300.family - } - desc = ep2_wedding.3300.fallback - } - } - theme = wedding_night_activity - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_relation_rival = scope:my_spouse - opinion = { target = scope:my_spouse value < -50 } - } - } - animation = dismissal - } - triggered_animation = { - trigger = { - OR = { - has_relation_lover = scope:my_spouse - opinion = { target = scope:my_spouse value >= 25 } - } - } - animation = flirtation_left - } - animation = idle - } - right_portrait = { - character = scope:my_spouse - triggered_animation = { - trigger = { - OR = { - has_relation_rival = root - opinion = { target = root value < -10 } - } - } - animation = disapproval - } - triggered_animation = { - trigger = { - OR = { - has_relation_lover = root - opinion = { target = root value >= 25 } - } - } - animation = flirtation - } - animation = idle - } - lower_left_portrait = scope:bedding_witness_1 - lower_center_portrait = scope:bedding_witness_2 - lower_right_portrait = scope:bedding_witness_3 - - cooldown = { years = 5 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - OR = { #you are one of the spouses - this = scope:activity.special_guest:spouse_1 - this = scope:activity.special_guest:spouse_2 - } - } - - immediate = { - # Identify root - if = { - limit = { root = scope:activity.special_guest:spouse_1 } - scope:activity.special_guest:spouse_2 = { save_scope_as = my_spouse } - } - else = { - scope:activity.special_guest:spouse_1 = { save_scope_as = my_spouse } - } - check_officiant_effect = yes - scope:activity.var:officiant ?= { save_scope_as = officiant } - # Save witnesses - ep2_wedding_bedding_ceremony_witness_effect = yes - # Save jester - if = { - limit = { - employs_court_position = court_jester_court_position - court_position:court_jester_court_position ?= { wedding_3300_flavor_character_trigger = yes } - } - court_position:court_jester_court_position = { save_scope_as = jester } - } - else_if = { - limit = { - scope:my_spouse = { - employs_court_position = court_jester_court_position - court_position:court_jester_court_position ?= { wedding_3300_flavor_character_trigger = yes } - } - } - scope:my_spouse.court_position:court_jester_court_position = { save_scope_as = jester } - } - else_if = { - limit = { - scope:host = { - employs_court_position = court_jester_court_position - court_position:court_jester_court_position ?= { wedding_3300_flavor_character_trigger = yes } - } - } - scope:host.court_position:court_jester_court_position = { save_scope_as = jester } - } - # Save friend - if = { - limit = { - any_relation = { - type = friend - wedding_3300_flavor_character_trigger = yes - } - } - random_relation = { - type = friend - limit = { wedding_3300_flavor_character_trigger = yes } - weight = { - base = 1 - modifier = { add = ai_sociability } - modifier = { add = ai_boldness } - } - save_scope_as = other_friend - } - } - else_if = { - limit = { - scope:my_spouse = { - any_relation = { - type = friend - wedding_3300_flavor_character_trigger = yes - } - } - } - scope:my_spouse = { - random_relation = { - type = friend - limit = { wedding_3300_flavor_character_trigger = yes } - weight = { - base = 1 - modifier = { add = ai_sociability } - modifier = { add = ai_boldness } - } - save_scope_as = other_friend - } - } - } - # Save other spouse - if = { - limit = { - any_spouse = { wedding_3300_flavor_character_trigger = yes } - } - random_spouse = { - limit = { wedding_3300_flavor_character_trigger = yes } - weight = { - base = 1 - modifier = { add = ai_sociability } - modifier = { add = ai_boldness } - } - save_scope_as = other_spouse - } - } - else_if = { - limit = { - scope:my_spouse = { - any_spouse = { wedding_3300_flavor_character_trigger = yes } - } - } - scope:my_spouse = { - random_spouse = { - limit = { wedding_3300_flavor_character_trigger = yes } - weight = { - base = 1 - modifier = { add = ai_sociability } - modifier = { add = ai_boldness } - } - save_scope_as = other_spouse - } - } - } - # Save family - random_list = { - 10 = { - trigger = { - any_in_list = { - list = bedding_witnesses - is_close_family_of = root - } - } - random_in_list = { - list = bedding_witnesses - limit = { is_close_family_of = root } - weight = { - base = 1 - modifier = { add = ai_sociability } - modifier = { add = ai_boldness } - } - save_scope_as = family - } - } - 10 = { - trigger = { - any_in_list = { - list = bedding_witnesses - is_close_family_of = scope:my_spouse - } - } - random_in_list = { - list = bedding_witnesses - limit = { is_close_family_of = scope:my_spouse } - weight = { - base = 1 - modifier = { add = ai_sociability } - modifier = { add = ai_boldness } - } - save_scope_as = family - } - } - } - # Save scopes for portraits - if = { - limit = { - exists = scope:jester - scope:jester != scope:bedding_witness_1 - } - scope:jester = { save_scope_as = bedding_witness_1 } - } - else_if = { - limit = { - exists = scope:other_friend - scope:other_friend != scope:bedding_witness_1 - } - scope:other_friend = { save_scope_as = bedding_witness_1 } - } - else_if = { - limit = { - exists = scope:other_spouse - scope:other_spouse != scope:bedding_witness_1 - } - scope:other_spouse = { save_scope_as = bedding_witness_1 } - } - else_if = { - limit = { - exists = scope:family - scope:family != scope:bedding_witness_1 - } - scope:family = { save_scope_as = bedding_witness_1 } - } - add_character_flag = is_naked - scope:my_spouse = { - add_character_flag = is_naked - } - } - - #Hurry up! - option = { - name = ep2_wedding.3300.a - random_list = { - 1 = { - desc = ep2_wedding.3300.a.success - opinion_modifier = { - who = scope:my_spouse - opinion_target = root - multiplier = 1 - } - modifier = { add = attraction } - modifier = { - scope:my_spouse = { has_trait = trusting } - factor = 1.5 - } - modifier = { - scope:my_spouse = { has_trait = humble } - factor = 1.5 - } - min = 5 - send_interface_toast = { - title = ep2_wedding.3300.a.success - left_icon = root - right_icon = scope:my_spouse - reverse_add_opinion = { - target = scope:my_spouse - modifier = feast_had_good_time_together_opinion - opinion = 10 - } - if = { - limit = { - scope:my_spouse = { has_any_fertility_relationship_with_root_trigger = no } - } - set_relation_wedding_good_fertility = scope:my_spouse - } - had_sex_with_effect = { - CHARACTER = scope:my_spouse - PREGNANCY_CHANCE = 75 - } - } - } - 1 = { - desc = ep2_wedding.3300.a.failure - opinion_modifier = { - who = scope:my_spouse - opinion_target = root - multiplier = -1 - } - modifier = { - scope:my_spouse = { has_trait = paranoid } - factor = 1.5 - } - modifier = { - scope:my_spouse = { has_trait = arrogant } - factor = 1.5 - } - min = 5 - send_interface_toast = { - title = ep2_wedding.3300.a.failure - left_icon = root - right_icon = scope:my_spouse - reverse_add_opinion = { - target = scope:my_spouse - modifier = disgusted_opinion - opinion = -10 - } - if = { - limit = { - scope:my_spouse = { has_any_fertility_relationship_with_root_trigger = no } - } - set_relation_wedding_bad_fertility = scope:my_spouse - } - had_sex_with_effect = { - CHARACTER = scope:my_spouse - PREGNANCY_CHANCE = 5 - } - } - } - } - stress_impact = { - impatient = minor_stress_impact_loss - rakish = minor_stress_impact_loss - lustful = minor_stress_impact_loss - chaste = miniscule_stress_impact_gain - humble = miniscule_stress_impact_gain - craven = miniscule_stress_impact_gain - } - ai_chance = { - base = 100 - opinion_modifier = { - opinion_target = scope:my_spouse - multiplier = 1 - } - ai_value_modifier = { - ai_boldness = 1 - ai_sociability = 1 - ai_compassion = 0.5 - } - } - } - - #Tired - option = { - name = ep2_wedding.3300.b - random_list = { - 1 = { - desc = ep2_wedding.3300.b.success - opinion_modifier = { - who = scope:my_spouse - opinion_target = root - multiplier = 0.5 - } - modifier = { - scope:my_spouse = { has_trait = compassionate } - factor = 1.5 - } - modifier = { - scope:my_spouse = { has_trait = lustful } - factor = 1.5 - } - min = 5 - send_interface_toast = { - title = ep2_wedding.3300.b.success - left_icon = root - right_icon = scope:my_spouse - reverse_add_opinion = { - target = scope:my_spouse - modifier = insulted_opinion - opinion = -10 - } - if = { - limit = { - scope:my_spouse = { has_any_fertility_relationship_with_root_trigger = no } - } - set_relation_wedding_bad_fertility = scope:my_spouse - } - } - } - 1 = { - desc = ep2_wedding.3300.b.failure - opinion_modifier = { - who = scope:my_spouse - opinion_target = root - multiplier = -0.5 - } - modifier = { - scope:my_spouse = { has_trait = chaste } - factor = 1.5 - } - modifier = { - scope:my_spouse = { has_trait = callous } - factor = 1.5 - } - min = 5 - send_interface_toast = { - title = ep2_wedding.3300.b.failure - left_icon = root - right_icon = scope:my_spouse - reverse_add_opinion = { - target = scope:my_spouse - modifier = relieved_opinion - opinion = 10 - } - } - } - } - stress_impact = { - callous = minor_stress_impact_loss - sadistic = minor_stress_impact_loss - compassionate = miniscule_stress_impact_gain - lustful = miniscule_stress_impact_gain - rakish = miniscule_stress_impact_gain - } - ai_chance = { - base = 100 - opinion_modifier = { - opinion_target = scope:my_spouse - multiplier = -1 - } - ai_value_modifier = { - ai_boldness = 0.5 - ai_compassion = -1 - ai_sociability = -1 - } - } - } - - #Need more wine - option = { - name = ep2_wedding.3300.c - trigger = { drinks_alcohol_trigger = yes } - random_list = { - 1 = { - opinion_modifier = { - who = scope:my_spouse - opinion_target = root - multiplier = 0.25 - } - modifier = { - scope:my_spouse = { has_trait = gluttonous } - factor = 1.25 - } - modifier = { - scope:my_spouse = { has_trait = shy } - factor = 1.5 - } - min = 5 - send_interface_toast = { - title = ep2_wedding.3300.c.success - left_icon = root - right_icon = scope:my_spouse - reverse_add_opinion = { - target = scope:my_spouse - modifier = relieved_opinion - opinion = 10 - } - if = { - limit = { - scope:my_spouse = { has_any_fertility_relationship_with_root_trigger = no } - } - set_relation_wedding_good_fertility = scope:my_spouse - } - had_sex_with_effect = { - CHARACTER = scope:my_spouse - PREGNANCY_CHANCE = 75 - } - } - } - 1 = { - opinion_modifier = { - who = scope:my_spouse - opinion_target = root - multiplier = -0.25 - } - modifier = { - scope:my_spouse = { drinks_alcohol_trigger = no } - factor = 2 - } - modifier = { - scope:my_spouse = { has_trait = temperate } - factor = 1.5 - } - modifier = { - scope:my_spouse = { has_trait = gregarious } - factor = 1.5 - } - min = 5 - send_interface_toast = { - title = ep2_wedding.3300.c.failure - left_icon = root - right_icon = scope:my_spouse - reverse_add_opinion = { - target = scope:my_spouse - modifier = insulted_opinion - opinion = -10 - } - if = { - limit = { - scope:my_spouse = { has_any_fertility_relationship_with_root_trigger = no } - } - set_relation_wedding_bad_fertility = scope:my_spouse - } - had_sex_with_effect = { - CHARACTER = scope:my_spouse - PREGNANCY_CHANCE = 5 - } - } - } - } - stress_impact = { - drunkard = minor_stress_impact_loss - honest = minor_stress_impact_loss - temperate = miniscule_stress_impact_gain - compassionate = miniscule_stress_impact_gain - } - ai_chance = { - base = 100 - opinion_modifier = { - opinion_target = scope:my_spouse - multiplier = -0.5 - } - ai_value_modifier = { - ai_boldness = 0.5 - ai_compassion = -0.5 - ai_sociability = 0.5 - } - } - } - - #I'll do it, but I won't like it - option = { - name = ep2_wedding.3300.d - trigger = { - OR = { - has_relation_rival = scope:my_spouse - opinion = { - target = scope:my_spouse - value < -10 - } - } - } - random_list = { - 1 = { - desc = ep2_wedding.3300.d.success - opinion_modifier = { - who = scope:my_spouse - opinion_target = root - multiplier = 0.5 - } - modifier = { add = attraction } - modifier = { add = scope:my_spouse.attraction } - modifier = { - scope:my_spouse = { has_trait = lustful } - factor = 1.5 - } - min = 5 - send_interface_toast = { - title = ep2_wedding.3300.d.success - left_icon = root - right_icon = scope:my_spouse - reverse_add_opinion = { - target = scope:my_spouse - modifier = feast_had_good_time_together_opinion - opinion = 10 - } - if = { - limit = { - scope:my_spouse = { has_any_fertility_relationship_with_root_trigger = no } - } - set_relation_wedding_good_fertility = scope:my_spouse - } - had_sex_with_effect = { - CHARACTER = scope:my_spouse - PREGNANCY_CHANCE = 75 - } - } - } - 1 = { - desc = ep2_wedding.3300.d.failure - opinion_modifier = { - who = scope:my_spouse - opinion_target = root - multiplier = -0.5 - } - modifier = { - scope:my_spouse = { has_trait = shy } - factor = 1.5 - } - modifier = { - scope:my_spouse = { has_trait = chaste } - factor = 1.5 - } - min = 5 - send_interface_toast = { - title = ep2_wedding.3300.d.failure - left_icon = root - right_icon = scope:my_spouse - reverse_add_opinion = { - target = scope:my_spouse - modifier = seduce_bad_time_opinion - opinion = -10 - } - if = { - limit = { - scope:my_spouse = { has_any_fertility_relationship_with_root_trigger = no } - } - set_relation_wedding_bad_fertility = scope:my_spouse - } - had_sex_with_effect = { - CHARACTER = scope:my_spouse - PREGNANCY_CHANCE = 5 - } - } - } - } - stress_impact = { - ambitious = minor_stress_impact_loss - stubborn = minor_stress_impact_loss - fickle = miniscule_stress_impact_gain - arrogant = miniscule_stress_impact_gain - } - ai_chance = { - base = 100 - opinion_modifier = { - opinion_target = scope:my_spouse - multiplier = 0.5 - } - ai_value_modifier = { - ai_honor = 0.5 - ai_boldness = -0.5 - ai_sociability = 0.5 - } - } - } - after = { - remove_character_flag = is_naked - scope:my_spouse = { - remove_character_flag = is_naked - } - } -} - -scripted_trigger wedding_3400_shared_trigger = { - is_adult = yes - is_participant_in_activity = scope:activity - NOR = { - this = root - has_any_scripted_relation = root - scope:activity.special_guest:spouse_1 ?= this - scope:activity.special_guest:spouse_2 ?= this - is_child_of = root - is_nibling_of = root - is_uncle_or_aunt_of = root - is_sibling_of = root - is_parent_of = root - is_grandparent_of = root - is_great_grandparent_of = root - is_grandchild_of = root - is_great_grandchild_of = root - } -} - -scripted_trigger wedding_3400_suitor_trigger = { - age < 50 - is_participant_in_activity = scope:activity - is_attracted_to_gender_of = $SUITOR$ - age >= $SUITOR$.age_minus_25 - age < $SUITOR$.age_plus_25 - OR = { - is_married = no - allowed_more_spouses = yes - trigger_if = { - limit = { is_female = yes } - faith = { has_doctrine = doctrine_adultery_women_accepted } - root.faith = { has_doctrine = doctrine_adultery_women_accepted } - $SUITOR$.faith = { has_doctrine = doctrine_adultery_women_accepted } - - } - trigger_else = { - faith = { has_doctrine = doctrine_adultery_men_accepted } - root.faith = { has_doctrine = doctrine_adultery_men_accepted } - $SUITOR$.faith = { has_doctrine = doctrine_adultery_men_accepted } - } - } -} - -scripted_effect wedding_3400_save_relative_effect = { - save_scope_as = other_family_spouse - random_close_or_extended_family_member = { - limit = { - is_close_family_of = scope:other_family_spouse - wedding_3400_shared_trigger = yes - save_temporary_scope_as = other_relative_temp - } - alternative_limit = { - wedding_3400_shared_trigger = yes - save_temporary_scope_as = other_relative_temp - } - weight = { - base = 1 - wedding_similiar_family_member_modifier = yes - modifier = { - add = 50 - scope:my_family_spouse = { - any_close_family_member = { - wedding_3400_suitor_trigger = { SUITOR = scope:other_relative_temp } - save_temporary_scope_as = family_suitor_temp - } - } - wedding_3400_suitor_trigger = { SUITOR = scope:family_suitor_temp } - } - } - save_scope_as = other_family_relative - } -} - -scripted_effect wedding_3400_knowledge_effect = { - random_list = { - 0 = { - trigger = { diplomacy < $OTHER$.diplomacy } - modifier = { add = $OTHER$.diplomacy } - add_diplomacy_skill = 1 - } - 0 = { - trigger = { martial < $OTHER$.martial } - modifier = { add = $OTHER$.martial } - add_martial_skill = 1 - } - 0 = { - trigger = { stewardship < $OTHER$.stewardship } - modifier = { add = $OTHER$.stewardship } - add_stewardship_skill = 1 - } - 0 = { - trigger = { intrigue < $OTHER$.intrigue } - modifier = { add = $OTHER$.intrigue } - add_intrigue_skill = 1 - } - 0 = { - trigger = { learning < $OTHER$.learning } - modifier = { add = $OTHER$.learning } - add_learning_skill = 1 - } - } -} - -ep2_wedding.3400 = { - type = activity_event - title = ep2_wedding.3400.t - desc = { - desc = ep2_wedding.3400.opening - first_valid = { - triggered_desc = { - trigger = { drinks_alcohol_trigger = yes } - desc = ep2_wedding.3400.drink_self - } - triggered_desc = { - trigger = { can_be_hashishiyah = yes } - desc = ep2_wedding.3400.hashish_self - } - desc = ep2_wedding.3400.fallback_self - } - first_valid = { - triggered_desc = { - trigger = { - scope:other_family_relative = { drinks_alcohol_trigger = yes } - } - desc = ep2_wedding.3400.drink - } - triggered_desc = { - trigger = { - scope:other_family_relative = { can_be_hashishiyah = yes } - } - desc = ep2_wedding.3400.hashish - } - desc = ep2_wedding.3400.fallback - } - random_valid = { - triggered_desc = { - trigger = { - scope:other_family_relative = { - drinks_alcohol_trigger = yes - NOR = { - is_child_of = scope:my_family_spouse - is_sibling_of = scope:my_family_spouse - is_parent_of = scope:my_family_spouse - is_grandparent_of = scope:my_family_spouse - } - } - } - desc = ep2_wedding.3400.drink_family - } - triggered_desc = { - trigger = { - scope:other_family_relative = { - drinks_alcohol_trigger = no - NOR = { - is_child_of = scope:my_family_spouse - is_sibling_of = scope:my_family_spouse - is_parent_of = scope:my_family_spouse - is_grandparent_of = scope:my_family_spouse - } - } - } - desc = ep2_wedding.3400.family - } - triggered_desc = { - trigger = { - exists = house - exists = scope:other_family_relative.house - house != scope:other_family_relative.house - scope:other_family_relative = { drinks_alcohol_trigger = yes } - } - desc = ep2_wedding.3400.drink_house - } - triggered_desc = { - trigger = { - exists = house - exists = scope:other_family_relative.house - house != scope:other_family_relative.house - scope:other_family_relative = { drinks_alcohol_trigger = no } - } - desc = ep2_wedding.3400.house - } - } - } - theme = wedding_banquet_activity - left_portrait = { - character = root - triggered_animation = { - trigger = { - drinks_alcohol_trigger = yes - NOT = { has_trait = temperate } - } - animation = drink_goblet - } - animation = happiness - } - right_portrait = { - character = scope:other_family_relative - triggered_animation = { - trigger = { - drinks_alcohol_trigger = yes - NOT = { has_trait = temperate } - } - animation = toast_goblet - } - animation = laugh - } - lower_right_portrait = scope:activity.special_guest:spouse_1 - lower_center_portrait = scope:my_family_suitor - lower_left_portrait = scope:activity.special_guest:spouse_2 - - cooldown = { years = 5 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - is_adult = yes - # Spouse 1 and 2 are not root - NOR = { - scope:activity.special_guest:spouse_1 = root - scope:activity.special_guest:spouse_2 = root - } - # Spouse 1 is related to root and someone related to Spouse 2 is kicking around - trigger_if = { - limit = { is_close_or_extended_family_of = scope:activity.special_guest:spouse_1 } - scope:activity.special_guest:spouse_2 = { - any_close_or_extended_family_member = { wedding_3400_shared_trigger = yes } - } - } - # Spouse 2 is related to root and someone related to Spouse 1 is kicking around - trigger_else_if = { - limit = { is_close_or_extended_family_of = scope:activity.special_guest:spouse_2 } - scope:activity.special_guest:spouse_1 = { - any_close_or_extended_family_member = { wedding_3400_shared_trigger = yes } - } - } - # No dice - trigger_else = { always = no } - } - - immediate = { - # Save someone related to Spouse 2 - save_scope_as = my_family_relative - if = { - limit = { is_close_or_extended_family_of = scope:activity.special_guest:spouse_1 } - scope:activity.special_guest:spouse_1 = { save_scope_as = my_family_spouse } - scope:activity.special_guest:spouse_2 = { wedding_3400_save_relative_effect = yes } - } - # Save someone related to Spouse 1 - else = { - scope:activity.special_guest:spouse_2 = { save_scope_as = my_family_spouse } - scope:activity.special_guest:spouse_1 = { wedding_3400_save_relative_effect = yes } - } - # Save suitor if relevant - if = { - limit = { - any_close_family_member = { - wedding_3400_suitor_trigger = { SUITOR = scope:other_family_relative } - save_temporary_scope_as = family_suitor_temp - } - scope:other_family_relative = { - wedding_3400_suitor_trigger = { SUITOR = scope:family_suitor_temp } - } - } - random_close_family_member = { - limit = { - wedding_3400_suitor_trigger = { SUITOR = scope:other_family_relative } - save_temporary_scope_as = family_suitor_temp - scope:other_family_relative = { - wedding_3400_suitor_trigger = { SUITOR = scope:family_suitor_temp } - } - } - weight = { - base = 1 - modifier = { - add = 50 - age >= scope:other_family_relative.age_minus_5 - age < scope:other_family_relative.age_plus_5 - } - modifier = { - add = 25 - age >= scope:other_family_relative.age_minus_10 - age < scope:other_family_relative.age_plus_10 - } - modifier = { add = attraction } - } - save_scope_as = my_family_suitor - } - } - } - - #Oh lemme bore you - option = { - name = ep2_wedding.3400.a - send_interface_toast = { - title = ep2_wedding.3400.tt - left_icon = root - right_icon = scope:other_family_relative - wedding_3400_knowledge_effect = { OTHER = scope:other_family_relative } - scope:other_family_relative = { - wedding_3400_knowledge_effect = { OTHER = root } - } - } - stress_impact = { - ambitious = minor_stress_impact_loss - diligent = minor_stress_impact_loss - content = miniscule_stress_impact_gain - lazy = miniscule_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 1 - } - } - } - - #Family matchmaker - option = { - name = ep2_wedding.3400.b - trigger = { exists = scope:my_family_suitor } - random_list = { - 10 = { - desc = ep2_wedding.3400.b.success - opinion_modifier = { - who = scope:my_family_suitor - opinion_target = scope:other_family_relative - multiplier = 0.5 - } - send_interface_toast = { - title = ep2_wedding.3400.b.tt - left_icon = scope:other_family_relative - right_icon = scope:my_family_suitor - scope:other_family_relative = { - progress_towards_lover_effect = { - CHARACTER = scope:my_family_suitor - REASON = lover_wedding_relation_suitor - OPINION = default_lover_opinion - } - } - } - } - 10 = { - desc = ep2_wedding.3400.b.failure - opinion_modifier = { - who = scope:my_family_suitor - opinion_target = scope:other_family_relative - multiplier = -0.5 - } - send_interface_toast = { - title = ep2_wedding.3400.b.failure - left_icon = scope:other_family_relative - right_icon = scope:my_family_suitor - } - } - } - stress_impact = { - compassionate = minor_stress_impact_loss - trusting = minor_stress_impact_loss - callous = miniscule_stress_impact_gain - paranoid = miniscule_stress_impact_gain - } - ai_chance = { - base = 100 - opinion_modifier = { - opinion_target = scope:my_family_suitor - multiplier = 0.5 - } - opinion_modifier = { - opinion_target = scope:other_family_relative - multiplier = 0.5 - } - ai_value_modifier = { - ai_compassion = 1 - } - } - } - - #More wine! - option = { - name = { - trigger = { drinks_alcohol_trigger = yes } - text = ep2_wedding.3400.c.drink - } - name = { - trigger = { drinks_alcohol_trigger = no } - text = ep2_wedding.3400.c.hashish - } - trigger = { - OR = { - drinks_alcohol_trigger = yes - can_be_hashishiyah = yes - } - } - add_prestige = medium_prestige_gain - if = { - limit = { has_trait = lifestyle_reveler } - add_trait_xp = { - trait = lifestyle_reveler - value = medium_trait_xp - } - } - else = { add_trait = lifestyle_reveler } - if = { - limit = { drinks_alcohol_trigger = yes } - if = { - limit = { - NOT = { has_trait = drunkard } - } - random = { - chance = 1 - add_trait = drunkard - } - stress_impact = { - base = minor_stress_impact_loss - drunkard = minor_stress_impact_loss - lifestyle_reveler = minor_stress_impact_loss - lazy = minor_stress_impact_loss - temperate = miniscule_stress_impact_gain - diligent = miniscule_stress_impact_gain - } - } - - } - else_if = { - limit = { can_be_hashishiyah = yes } - random = { - chance = 1 - add_trait = hashishiyah - } - stress_impact = { - base = minor_stress_impact_loss - hashishiyah = minor_stress_impact_loss - lifestyle_reveler = minor_stress_impact_loss - lazy = minor_stress_impact_loss - temperate = miniscule_stress_impact_gain - diligent = miniscule_stress_impact_gain - } - } - ai_chance = { - base = 50 - modifier = { - has_trait = drunkard - add = 50 - } - modifier = { - has_trait = hashishiyah - add = 50 - } - ai_value_modifier = { - ai_boldness = 1 - ai_rationality = -0.5 - } - } - } - - #Befriend - option = { - name = ep2_wedding.3400.d - trigger = { - OR = { - NOT = { exists = scope:my_family_suitor } - NOT = { is_attracted_to_gender_of = scope:other_family_relative } - } - } - progress_towards_friend_effect = { - REASON = friend_wedding_relation_bond - CHARACTER = scope:other_family_relative - OPINION = default_friend_opinion - } - stress_impact = { - gregarious = minor_stress_impact_loss - humble = minor_stress_impact_loss - shy = miniscule_stress_impact_gain - arrogant = miniscule_stress_impact_gain - } - ai_chance = { - base = 100 - opinion_modifier = { - opinion_target = scope:other_family_relative - multiplier = 1 - } - ai_value_modifier = { - ai_sociability = 1 - } - modifier = { - num_of_relation_friend >= 2 - factor = 0 - } - } - } - - #Woo - option = { - name = ep2_wedding.3400.e - trigger = { - is_attracted_to_gender_of = scope:other_family_relative - NOT = { has_trait = celibate } - } - duel = { - skill = intrigue - value = medium_skill_rating - 10 = { - desc = ep2_wedding.3400.e.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - modifier = { - add = 5 - has_trait = seducer - } - modifier = { add = attraction } - modifier = { - add = 50 - scope:other_family_relative = { - would_attempt_to_seduce_trigger = { CHARACTER = root } - } - } - send_interface_toast = { - title = ep2_wedding.3400.e.success - progress_towards_lover_effect = { - REASON = lover_wedding_relation_bond - CHARACTER = scope:other_family_relative - OPINION = default_lover_opinion - } - if = { - limit = { - might_cheat_on_every_partner_trigger = yes - scope:other_family_relative = { might_cheat_on_every_partner_trigger = yes } - } - had_sex_with_effect = { - CHARACTER = scope:other_family_relative - PREGNANCY_CHANCE = pregnancy_chance - } - } - } - min = 5 - } - 10 = { - desc = ep2_wedding.3400.e.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - modifier = { - add = 50 - NOT = { - scope:other_family_relative = { - would_attempt_to_seduce_trigger = { CHARACTER = root } - } - } - } - min = 5 - send_interface_toast = { - title = ep2_wedding.3400.e.failure - reverse_add_opinion = { - target = scope:other_family_relative - modifier = disgusted_opinion - opinion = -10 - } - } - } - } - stress_impact = { - lustful = minor_stress_impact_loss - rakish = minor_stress_impact_loss - chaste = miniscule_stress_impact_gain - } - ai_chance = { - base = 100 - opinion_modifier = { - opinion_target = scope:other_family_relative - multiplier = 1 - } - ai_value_modifier = { - ai_boldness = 0.5 - ai_sociability = 0.5 - } - modifier = { - num_of_relation_lover >= 2 - factor = 0 - } - modifier = { - NOT = { - would_attempt_to_seduce_trigger = { CHARACTER = scope:other_family_relative } - } - factor = 0 - } - } - } -} - -ep2_wedding.3410 = { - type = activity_event - title = ep2_wedding.3410.t - desc = { - desc = ep2_wedding.3410.opening - first_valid = { - triggered_desc = { # Double trouble - trigger = { exists = scope:double_jealousy } - desc = ep2_wedding.3410.double - } - triggered_desc = { # Primary spouse - trigger = { - OR = { - has_relation_lover = scope:jealousy_focus - any_secret = { - type = secret_lover - secret_target = scope:jealousy_focus - } - } - } - desc = ep2_wedding.3410.lover - } - triggered_desc = { # Primary spouse - trigger = { primary_spouse ?= scope:jealousy_focus } - desc = ep2_wedding.3410.primary - } - desc = ep2_wedding.3410.secondary - } - first_valid = { - triggered_desc = { # Double trouble - trigger = { exists = scope:double_jealousy } - desc = ep2_wedding.3410.double_opinion - } - triggered_desc = { # Primary spouse - trigger = { - reverse_opinion = { - target = scope:jealousy_focus - value >= 25 - } - } - desc = ep2_wedding.3410.positive_opinion - } - triggered_desc = { # Primary spouse - trigger = { - reverse_opinion = { - target = scope:jealousy_focus - value <= 0 - } - } - desc = ep2_wedding.3410.negative_opinion - } - desc = ep2_wedding.3410.indifferent_opinion - } - } - theme = wedding_banquet_activity - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - exists = scope:double_jealousy - AND = { - NOT = { exists = scope:double_jealousy } - reverse_opinion = { - target = scope:jealousy_focus - value > 0 - } - } - } - } - animation = stress - } - animation = war_over_win - } - lower_right_portrait = scope:jealousy_focus - lower_left_portrait = scope:jealousy_usurper - - cooldown = { years = 5 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - is_adult = yes - # Spouse 1 and 2 are not root - NOR = { - scope:activity.special_guest:spouse_1 = root - scope:activity.special_guest:spouse_2 = root - } - # Has an intimate relationship with a spouse - OR = { - any_secret = { - type = secret_lover - secret_target = scope:activity.special_guest:spouse_1 - } - any_secret = { - type = secret_lover - secret_target = scope:activity.special_guest:spouse_2 - } - has_relation_lover = scope:activity.special_guest:spouse_1 - has_relation_lover = scope:activity.special_guest:spouse_2 - is_spouse_of = scope:activity.special_guest:spouse_1 - is_spouse_of = scope:activity.special_guest:spouse_2 - } - } - - immediate = { - # Check for double - if = { - limit = { - OR = { - any_secret = { - type = secret_lover - secret_target = scope:activity.special_guest:spouse_1 - } - has_relation_lover = scope:activity.special_guest:spouse_1 - is_spouse_of = scope:activity.special_guest:spouse_1 - } - OR = { - any_secret = { - type = secret_lover - secret_target = scope:activity.special_guest:spouse_2 - } - has_relation_lover = scope:activity.special_guest:spouse_2 - is_spouse_of = scope:activity.special_guest:spouse_2 - } - } - save_scope_as = double_jealousy - } - # Save jealous focus, or preferred - hidden_effect = { - random_list = { - 1 = { - trigger = { - OR = { - any_secret = { - type = secret_lover - secret_target = scope:activity.special_guest:spouse_1 - } - has_relation_lover = scope:activity.special_guest:spouse_1 - is_spouse_of = scope:activity.special_guest:spouse_1 - } - } - opinion_modifier = { - opinion_target = scope:activity.special_guest:spouse_1 - multiplier = 1 - } - scope:activity.special_guest:spouse_1 = { save_scope_as = jealousy_focus } - scope:activity.special_guest:spouse_2 = { save_scope_as = jealousy_usurper } - } - 1 = { - trigger = { - OR = { - any_secret = { - type = secret_lover - secret_target = scope:activity.special_guest:spouse_2 - } - has_relation_lover = scope:activity.special_guest:spouse_2 - is_spouse_of = scope:activity.special_guest:spouse_2 - } - } - opinion_modifier = { - opinion_target = scope:activity.special_guest:spouse_2 - multiplier = 1 - } - scope:activity.special_guest:spouse_2 = { save_scope_as = jealousy_focus } - scope:activity.special_guest:spouse_1 = { save_scope_as = jealousy_usurper } - } - } - } - } - - #Make a scene - option = { - name = ep2_wedding.3410.a - flavor = ep2_wedding.3410.a.flavor - add_prestige = minor_prestige_gain - reverse_add_opinion = { - target = scope:jealousy_focus - modifier = ruined_wedding_night_opinion - opinion = -15 - } - reverse_add_opinion = { - target = scope:jealousy_usurper - modifier = ruined_wedding_night_opinion - opinion = -15 - } - if = { - limit = { - any_secret = { - type = secret_lover - secret_target = scope:jealousy_focus - } - } - scope:jealousy_usurper = { - every_close_family_member = { - custom = every_usurper_close_family_tt - add_opinion = { - target = scope:jealousy_focus - modifier = revealed_lover_wedding_night_opinion - opinion = -20 - } - add_opinion = { - target = root - modifier = ruined_wedding_night_opinion - opinion = -10 - } - } - } - } - expose_lover_secret_or_run_consequence_effect = { - TARGET = scope:jealousy_focus - EXPOSER = root - } - stress_impact = { - base = minor_stress_impact_loss - wrathful = minor_stress_impact_loss - calm = miniscule_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 0.5 - ai_vengefulness = 0.5 - ai_boldness = 0.5 - } - modifier = { - any_secret = { - type = secret_lover - secret_target = scope:jealousy_usurper - } - factor = 0.5 - } - } - } - - #Plot murder - option = { - name = ep2_wedding.3410.b - trigger = { - NOR = { - any_secret = { - type = secret_lover - secret_target = scope:jealousy_usurper - } - has_relation_lover = scope:jealousy_usurper - is_scheming_against = { target = scope:jealousy_usurper } - } - can_start_scheme = { - type = murder - target_character = scope:jealousy_usurper - } - } - start_scheme = { - target_character = scope:jealousy_usurper - type = murder - } - random_scheme = { - type = murder - limit = { - scheme_target_character = scope:jealousy_usurper - } - add_scheme_modifier = { type = wedding_consorts_envy_modifier } - } - custom_tooltip = ep2_wedding.3410.b.tt - stress_impact = { - vengeful = minor_stress_impact_loss - zealous = miniscule_stress_impact_gain - just = miniscule_stress_impact_gain - forgiving = miniscule_stress_impact_gain - } - ai_chance = { - base = 75 - opinion_modifier = { - opinion_target = scope:jealousy_usurper - multiplier = -1 - } - ai_value_modifier = { - ai_energy = 1 - ai_vengefulness = 1 - ai_boldness = 1 - } - } - } - - #Fed up with focus - option = { - name = ep2_wedding.3410.c - trigger = { - OR = { - has_relation_lover = scope:jealousy_focus - has_relation_lover = scope:jealousy_usurper - } - } - if = { - limit = { has_relation_lover = scope:jealousy_focus } - if = { - limit = { is_ai = yes } - add_opinion = { - target = scope:jealousy_focus - modifier = insulted_opinion - opinion = -20 - } - } - lose_lover_effect = { LOVER = scope:jealousy_focus } - } - if = { - limit = { has_relation_lover = scope:jealousy_usurper } - if = { - limit = { is_ai = yes } - add_opinion = { - target = scope:jealousy_focus - modifier = insulted_opinion - opinion = -20 - } - } - lose_lover_effect = { LOVER = scope:jealousy_usurper } - } - stress_impact = { - fickle = minor_stress_impact_loss - base = miniscule_stress_impact_gain - stubborn = miniscule_stress_impact_gain - } - ai_chance = { - base = 50 - ai_value_modifier = { - ai_vengefulness = 1 - ai_compassion = 1 - ai_boldness = 0.5 - } - } - } - - #Fine by me - option = { - name = ep2_wedding.3410.d - add_character_modifier = { - modifier = wedding_old_news_modifier - years = 5 - } - stress_impact = { - humble = minor_stress_impact_loss - content = minor_stress_impact_loss - arrogant = miniscule_stress_impact_gain - ambitious = miniscule_stress_impact_gain - } - ai_chance = { - base = 50 - opinion_modifier = { - opinion_target = scope:jealousy_focus - multiplier = -1 - } - ai_value_modifier = { - ai_energy = -1 - ai_boldness = -1 - ai_vengefulness = -1 - } - } - } -} - -ep2_wedding.3420 = { - type = activity_event - title = ep2_wedding.3420.t - desc = { - desc = ep2_wedding.3420.opening - random_valid = { - triggered_desc = { - trigger = { - OR = { - has_trait = gluttonous - has_trait = comfort_eater - } - exists = scope:wedding_eat - } - desc = ep2_wedding.3420.eat - } - triggered_desc = { - trigger = { - OR = { - has_trait = drunkard - has_trait = hashishiyah - has_trait = lifestyle_reveler - } - exists = scope:wedding_drink - } - desc = ep2_wedding.3420.drink - } - triggered_desc = { - trigger = { - OR = { - has_trait = lustful - has_trait = rakish - } - exists = scope:wedding_lech - } - desc = ep2_wedding.3420.lech - } - triggered_desc = { - trigger = { - OR = { - has_trait = greedy - has_trait = avaricious - } - exists = scope:wedding_steal - } - desc = ep2_wedding.3420.steal - } - triggered_desc = { - trigger = { - OR = { - has_trait = shy - has_trait = reclusive - } - exists = scope:wedding_flee - } - desc = ep2_wedding.3420.flee - } - triggered_desc = { - trigger = { - OR = { - has_trait = generous - has_trait = improvident - } - exists = scope:wedding_charity - } - desc = ep2_wedding.3420.charity - } - triggered_desc = { - trigger = { - OR = { - has_trait = gregarious - has_trait = trusting - } - exists = scope:wedding_social - } - desc = ep2_wedding.3420.social - } - triggered_desc = { - trigger = { - OR = { - has_trait = arrogant - has_trait = ambitious - has_trait = august - } - exists = scope:wedding_posture - } - desc = ep2_wedding.3420.posture - } - triggered_desc = { - trigger = { - OR = { - has_trait = honest - has_trait = contrite - } - exists = scope:wedding_blab - scope:blab_guest = root - } - desc = ep2_wedding.3420.blab_self - } - triggered_desc = { - trigger = { - OR = { - has_trait = honest - has_trait = contrite - } - exists = scope:wedding_blab - } - desc = ep2_wedding.3420.blab - } - triggered_desc = { - trigger = { - OR = { - has_trait = deceitful - has_trait = schemer - } - exists = scope:wedding_scheme - } - desc = ep2_wedding.3420.scheme - } - triggered_desc = { - trigger = { - OR = { - has_trait = compassionate - has_trait = generous - } - exists = scope:wedding_help - } - desc = ep2_wedding.3420.help - } - triggered_desc = { - trigger = { - OR = { - has_trait = compassionate - has_trait = zealous - } - exists = scope:wedding_pray - } - desc = ep2_wedding.3420.pray - } - } - desc = ep2_wedding.3420.closing - } - theme = wedding_banquet_activity - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:social_guest - trigger = { exists = scope:wedding_social } - animation = happiness - } - cooldown = { years = 5 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - is_adult = yes - exists = scope:activity - } - - immediate = { - scope:activity = { - # Blab scopes - random_attending_character = { - limit = { - any_targeting_secret = { - OR = { - is_known_by = root - secret_owner = root - } - } - } - save_scope_as = blab_guest - random_targeting_secret = { - limit = { is_known_by = root } - alternative_limit = { secret_owner = root } - save_scope_as = blab_secret - } - } - # Scheme scopes - random_attending_character = { - limit = { - OR = { - any_secret = { - NOR = { - is_known_by = root - secret_owner ?= root - secret_target ?= root - } - } - any_targeting_secret = { - NOR = { - is_known_by = root - secret_owner ?= root - secret_target ?= root - } - } - } - } - weight = { - base = 100 - modifier = { - factor = 0.1 - scope:blab_guest ?= this - } - is_of_minor_interest_to_weight_up_modifier = { CHARACTER = root } - is_of_major_interest_to_weight_up_modifier = { CHARACTER = root } - } - save_scope_as = scheme_guest - hidden_effect = { - random_list = { - 1 = { - trigger = { - any_secret = { - NOR = { - is_known_by = root - secret_owner = root - trigger_if = { - limit = { exists = scope:scheme_target } - secret_target = root - } - } - } - } - random_secret = { - limit = { - NOR = { - is_known_by = root - secret_owner = root - trigger_if = { - limit = { exists = scope:scheme_target } - secret_target = root - } - } - } - save_scope_as = scheme_secret - } - } - 1 = { - trigger = { - any_targeting_secret = { - NOR = { - is_known_by = root - secret_owner = root - trigger_if = { - limit = { exists = scope:scheme_target } - secret_target = root - } - } - } - } - random_targeting_secret = { - limit = { - NOR = { - is_known_by = root - secret_owner = root - trigger_if = { - limit = { exists = scope:scheme_target } - secret_target = root - } - } - } - save_scope_as = scheme_secret - } - } - } - } - } - # Social scopes - random_attending_character = { - limit = { - NOR = { - this = root - this = scope:activity.special_guest:spouse_1 - this = scope:activity.special_guest:spouse_2 - has_any_scripted_relation = root - } - opinion = { - target = root - value > -25 - } - } - weight = { - base = 50 - modifier = { - scope:blab_guest ?= this - factor = 0.1 - } - modifier = { - scope:scheme_guest ?= this - factor = 0.1 - } - modifier = { - has_trait = gregarious - add = 25 - } - modifier = { - has_trait = lifestyle_reveler - add = 25 - } - modifier = { - trait_compatibility = { - target = root - value >= low_positive_trait_compatibility - } - add = 25 - } - modifier = { - trait_compatibility = { - target = root - value >= medium_positive_trait_compatibility - } - add = 25 - } - modifier = { - trait_compatibility = { - target = root - value >= high_positive_trait_compatibility - } - add = 25 - } - modifier = { - sex_same_as = root - add = 50 - } - modifier = { - age >= root.age_minus_10 - age < root.age_plus_10 - add = 25 - } - modifier = { - age >= root.age_minus_5 - age < root.age_plus_5 - add = 25 - } - } - save_scope_as = social_guest - } - # Help scopes - random_attending_character = { - limit = { - NOR = { - this = root - this = scope:activity.special_guest:spouse_1 - this = scope:activity.special_guest:spouse_2 - has_any_bad_relationship_with_character_trigger = { CHARACTER = root } - } - } - weight = { - base = 50 - modifier = { - scope:blab_guest ?= this - factor = 0.1 - } - modifier = { - scope:scheme_guest ?= this - factor = 0.1 - } - modifier = { - scope:social_guest ?= this - factor = 0.1 - } - modifier = { - OR = { - has_trait = drunkard - has_trait = lifestyle_reveler - } - add = 25 - } - modifier = { - is_healthy = no - add = 25 - } - modifier = { - age >= 50 - add = 25 - } - modifier = { - is_close_family_of = root - factor = 2 - } - modifier = { - ai_energy <= low_negative_ai_value - add = 25 - } - modifier = { - ai_energy <= medium_negative_ai_value - add = 25 - } - modifier = { - ai_energy <= high_negative_ai_value - add = 25 - } - modifier = { - current_weight >= overweight_value - add = 25 - } - modifier = { - age > 30 - add = 25 - } - modifier = { - age > 60 - add = 25 - } - } - save_scope_as = help_guest - } - } - hidden_effect = { - while = { - count = 4 - random_list = { - 10 = { # Eat - trigger = { - NOR = { - exists = scope:wedding_eat - has_trait = inappetetic - } - } - modifier = { - has_trait = temperate - add = -20 - } - modifier = { - has_trait = gluttonous - add = 10 - } - modifier = { - has_trait = comfort_eater - add = 10 - } - modifier = { - has_trait = lazy - add = 10 - } - modifier = { - add = { - value = ai_energy - multiply = -1 - } - } - save_scope_as = wedding_eat - } - 10 = { # Drink - trigger = { - NOT = { exists = scope:wedding_drink } - } - modifier = { - has_trait = temperate - add = -20 - } - modifier = { - has_trait = drunkard - add = 10 - } - modifier = { - has_trait = hashishiyah - add = 10 - } - modifier = { - has_trait = lifestyle_reveler - add = 10 - } - modifier = { - has_trait = lazy - add = 10 - } - modifier = { - add = { - value = ai_energy - multiply = -1 - } - } - save_scope_as = wedding_drink - } - 10 = { # Lech - trigger = { - NOT = { exists = scope:wedding_lech } - would_attempt_to_seduce_married_trigger = yes - is_eunuch_trigger = no - NOR = { - has_trait = celibate - has_trait = devoted - } - } - modifier = { - has_trait = chaste - add = -20 - } - modifier = { - has_trait = lustful - add = 10 - } - modifier = { - has_trait = rakish - add = 10 - } - modifier = { - add = { - value = ai_sociability - multiply = 0.5 - } - } - modifier = { - add = { - value = ai_honor - multiply = -0.5 - } - } - save_scope_as = wedding_lech - } - 10 = { # Steal - trigger = { - NOT = { exists = scope:wedding_steal } - exists = root.capital_province - NOT = { scope:activity.activity_location ?= root.capital_province } - OR = { - has_trait = greedy - has_trait = avaricious - gold < 0 - ai_honor < low_positive_honor - } - } - modifier = { - has_trait = generous - add = -20 - } - modifier = { - has_trait = greedy - add = 10 - } - modifier = { - has_trait = arbitrary - add = 10 - } - modifier = { - has_trait = avaricious - add = 10 - } - modifier = { add = ai_greed } - modifier = { - add = { - value = ai_honor - multiply = -1 - } - } - save_scope_as = wedding_steal - } - 10 = { # Flee - trigger = { - NOT = { exists = scope:wedding_flee } - OR = { - has_trait = shy - has_trait = reclusive - has_trait = paranoid - has_trait = impatient - } - } - modifier = { - has_trait = gregarious - add = -20 - } - modifier = { - has_trait = brave - add = -20 - } - modifier = { - has_trait = trusting - add = -20 - } - modifier = { - has_trait = shy - add = 10 - } - modifier = { - has_trait = paranoid - add = 10 - } - modifier = { - has_trait = craven - add = 10 - } - modifier = { - has_trait = reclusive - add = 10 - } - modifier = { - has_trait = impatient - add = 10 - } - modifier = { - add = { - value = ai_boldness - multiply = -1 - } - } - save_scope_as = wedding_flee - } - 10 = { # Charity - trigger = { - NOT = { exists = scope:wedding_charity } - } - modifier = { - has_trait = greedy - add = -20 - } - modifier = { - has_trait = avaricious - add = -20 - } - modifier = { - has_trait = callous - add = -20 - } - modifier = { - has_trait = sadistic - add = -20 - } - modifier = { - has_trait = generous - add = 10 - } - modifier = { - has_trait = improvident - add = 10 - } - modifier = { - add = { - value = ai_greed - multiply = -1 - } - add = { - value = ai_zeal - multiply = 0.5 - } - } - save_scope_as = wedding_charity - } - 10 = { # Social - trigger = { - NOT = { exists = scope:wedding_social } - exists = scope:social_guest - } - modifier = { - has_trait = shy - add = -20 - } - modifier = { - has_trait = reclusive - add = -20 - } - modifier = { - has_trait = gregarious - add = 10 - } - modifier = { - has_trait = confider - add = 10 - } - modifier = { add = ai_sociability } - save_scope_as = wedding_social - } - 10 = { # Posture - trigger = { - NOT = { exists = scope:wedding_posture } - } - modifier = { - has_trait = humble - add = -20 - } - modifier = { - has_trait = content - add = -20 - } - modifier = { - has_trait = arrogant - add = 10 - } - modifier = { - has_trait = ambitious - add = 10 - } - modifier = { - has_trait = august - add = 10 - } - modifier = { - add = { - value = ai_boldness - multiply = 0.5 - } - } - save_scope_as = wedding_posture - } - 10 = { # Blab - trigger = { - NOT = { exists = scope:wedding_blab } - exists = scope:blab_guest - exists = scope:blab_secret - } - modifier = { - has_trait = deceitful - add = -20 - } - modifier = { - has_trait = honest - add = 10 - } - modifier = { - has_trait = contrite - add = 10 - } - modifier = { - add = { - value = ai_honor - multiply = 0.5 - } - } - save_scope_as = wedding_blab - } - 10 = { # Scheme - trigger = { - NOT = { exists = scope:wedding_scheme } - } - modifier = { - has_trait = honest - add = -20 - } - modifier = { - has_trait = contrite - add = -20 - } - modifier = { - has_trait = deceitful - add = 10 - } - modifier = { - has_trait = schemer - add = 10 - } - modifier = { - add = { - value = ai_honor - multiply = -1 - } - } - save_scope_as = wedding_scheme - } - 10 = { # Help - trigger = { - NOT = { exists = scope:wedding_help } - exists = scope:help_guest - } - modifier = { - has_trait = callous - add = -20 - } - modifier = { - has_trait = sadistic - add = -20 - } - modifier = { - has_trait = compassionate - add = 10 - } - modifier = { - has_trait = generous - add = 10 - } - modifier = { add = ai_compassion } - save_scope_as = wedding_help - } - 10 = { # Pray - trigger = { - NOT = { exists = scope:wedding_pray } - OR = { - is_close_or_extended_family_of = scope:activity.special_guest:spouse_1 - is_close_or_extended_family_of = scope:activity.special_guest:spouse_2 - has_trait = devoted - has_trait = zealous - } - } - modifier = { - has_trait = cynical - add = -20 - } - modifier = { - has_trait = callous - add = -20 - } - modifier = { - has_trait = zealous - add = 10 - } - modifier = { - has_trait = compassionate - add = 10 - } - modifier = { add = ai_zeal } - modifier = { - add = { - value = ai_compassion - multiply = 0.5 - } - } - save_scope_as = wedding_pray - } - } - } - } - } - - #Eat - option = { - name = ep2_wedding.3420.a - trigger = { exists = scope:wedding_eat } - trait = gluttonous - trait = comfort_eater - target_weight_modifier_effect = { VALUE = 2 } - stress_impact = { - gluttonous = medium_stress_impact_loss - comfort_eater = medium_stress_impact_loss - temperate = minor_stress_impact_gain - } - ai_chance = { - base = 75 - ai_value_modifier = { - ai_energy = 1 - ai_vengefulness = 1 - ai_boldness = 1 - } - } - } - - #Drink - option = { - name = ep2_wedding.3420.b - trigger = { exists = scope:wedding_drink } - trait = drunkard - trait = hashishiyah - trait = lifestyle_reveler - if = { - limit = { - NOT = { has_trait = lifestyle_reveler } - } - add_trait = lifestyle_reveler - } - else = { - add_trait_xp = { - trait = lifestyle_reveler - value = medium_trait_xp - } - } - stress_impact = { - base = minor_stress_impact_loss - drunkard = medium_stress_impact_loss - hashishiyah = medium_stress_impact_loss - lifestyle_reveler = medium_stress_impact_loss - temperate = minor_stress_impact_gain - } - ai_chance = { - base = 50 - ai_value_modifier = { - ai_vengefulness = 1 - ai_compassion = 1 - ai_boldness = 0.5 - } - } - } - - #Lech - option = { - name = ep2_wedding.3420.c - trigger = { exists = scope:wedding_lech } - trait = lustful - trait = rakish - if = { - limit = { - NOT = { is_attracted_to_men = yes } - } - had_sex_with_unknown_effect = { GENDER = female } - } - else = { - had_sex_with_unknown_effect = { GENDER = male } - } - stress_impact = { - lustful = medium_stress_impact_loss - rakish = medium_stress_impact_loss - chaste = minor_stress_impact_gain - } - ai_chance = { - base = 50 - ai_value_modifier = { - ai_energy = -1 - ai_boldness = -1 - ai_vengefulness = -1 - } - } - } - - #Steal - option = { - name = ep2_wedding.3420.d - trigger = { exists = scope:wedding_steal } - trait = greedy - trait = avaricious - add_gold = { 10 25 } - stress_impact = { - greedy = medium_stress_impact_loss - avaricious = medium_stress_impact_loss - generous = medium_stress_impact_gain - just = minor_stress_impact_gain - } - ai_chance = { - base = 50 - ai_value_modifier = { - ai_energy = -1 - ai_boldness = -1 - ai_vengefulness = -1 - } - } - } - - #Flee - option = { - name = ep2_wedding.3420.e - trigger = { exists = scope:wedding_flee } - trait = shy - trait = reclusive - add_prestige = miniscule_prestige_loss - stress_impact = { - impatient = minor_stress_impact_loss - paranoid = minor_stress_impact_loss - shy = medium_stress_impact_loss - reclusive = medium_stress_impact_loss - gregarious = minor_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 0.5 - ai_vengefulness = 0.5 - ai_boldness = 0.5 - } - } - } - - #Charity - option = { - name = ep2_wedding.3420.f - trigger = { exists = scope:wedding_charity } - trait = generous - trait = improvident - remove_short_term_gold = { 10 25 } - add_piety = minor_piety_gain - stress_impact = { - generous = medium_stress_impact_loss - improvident = medium_stress_impact_loss - greedy = minor_stress_impact_gain - avaricious = minor_stress_impact_gain - } - ai_chance = { - base = 50 - ai_value_modifier = { - ai_energy = -1 - ai_boldness = -1 - ai_vengefulness = -1 - } - } - } - - #Socialize - option = { - name = ep2_wedding.3420.g - trigger = { exists = scope:wedding_social } - trait = gregarious - trait = trusting - progress_towards_friend_effect = { - REASON = friend_wedding_relation_bond - CHARACTER = scope:social_guest - OPINION = default_friend_opinion - } - stress_impact = { - gregarious = medium_stress_impact_loss - trusting = medium_stress_impact_loss - shy = minor_stress_impact_gain - paranoid = minor_stress_impact_gain - } - ai_chance = { - base = 50 - ai_value_modifier = { - ai_energy = -1 - ai_boldness = -1 - ai_vengefulness = -1 - } - } - } - - #Posture - option = { - name = ep2_wedding.3420.h - trigger = { exists = scope:wedding_posture } - trait = arrogant - trait = ambitious - add_prestige = minor_prestige_gain - stress_impact = { - arrogant = medium_stress_impact_loss - ambitious = medium_stress_impact_loss - humble = minor_stress_impact_gain - content = minor_stress_impact_gain - } - ai_chance = { - base = 50 - ai_value_modifier = { - ai_energy = -1 - ai_boldness = -1 - ai_vengefulness = -1 - } - } - } - - #Blab - option = { - name = ep2_wedding.3420.i - trigger = { exists = scope:wedding_blab } - trait = honest - trait = contrite - if = { - limit = { - root != scope:blab_guest - } - reverse_add_opinion = { - target = scope:blab_guest - modifier = exposed_my_secret_opinion - } - } - scope:blab_secret = { expose_secret = root } - stress_impact = { - honest = medium_stress_impact_loss - contrite = medium_stress_impact_loss - } - ai_chance = { - base = 50 - ai_value_modifier = { - ai_energy = -1 - ai_boldness = -1 - ai_vengefulness = -1 - } - } - } - - #Scheme - option = { - name = ep2_wedding.3420.j - trigger = { exists = scope:wedding_scheme } - trait = deceitful - trait = schemer - remove_short_term_gold = { 10 25 } - random = { - chance = 50 - custom_tooltip = ep2_wedding.3420.j.tt - hidden_effect = { - if = { - limit = { exists = scope:scheme_secret } - send_interface_toast = { - title = secret_discovered_toast - scope:scheme_secret = { reveal_to = root } - } - } - } - } - stress_impact = { - deceitful = medium_stress_impact_loss - schemer = medium_stress_impact_loss - honest = minor_stress_impact_gain - } - ai_chance = { - base = 50 - ai_value_modifier = { - ai_energy = -1 - ai_boldness = -1 - ai_vengefulness = -1 - } - } - } - - #Help - option = { - name = { - text = ep2_wedding.3420.k.health - trigger = { - scope:help_guest = { is_healthy = no } - } - } - name = { - text = ep2_wedding.3420.k.drink - trigger = { - scope:help_guest = { - OR = { - has_trait = drunkard - has_trait = lifestyle_reveler - } - } - } - } - name = { - text = ep2_wedding.3420.k.fallback - trigger = { - scope:help_guest = { - is_healthy = yes - NOR = { - has_trait = drunkard - has_trait = lifestyle_reveler - } - } - } - } - trigger = { exists = scope:wedding_help } - trait = compassionate - flavor = ep2_wedding.3420.k.flavor - progress_towards_friend_effect = { - REASON = friend_wedding_relation_bond - CHARACTER = scope:help_guest - OPINION = default_friend_opinion - } - stress_impact = { - compassionate = medium_stress_impact_loss - callous = minor_stress_impact_gain - sadistic = minor_stress_impact_gain - } - ai_chance = { - base = 50 - ai_value_modifier = { - ai_energy = -1 - ai_boldness = -1 - ai_vengefulness = -1 - } - } - } - - #Pray - option = { - name = ep2_wedding.3420.l - trigger = { exists = scope:wedding_pray } - trait = zealous - add_piety = minor_piety_gain - stress_impact = { - compassionate = minor_stress_impact_loss - zealous = medium_stress_impact_loss - cynical = minor_stress_impact_gain - } - ai_chance = { - base = 50 - ai_value_modifier = { - ai_energy = -1 - ai_boldness = -1 - ai_vengefulness = -1 - } - } - } -} - -scripted_trigger wedding_3500_shared_trigger = { - is_adult = yes - is_participant_in_activity = scope:activity - NOR = { - this = root - scope:my_family_relative ?= this - scope:my_family_relative_1 ?= this - scope:my_family_relative_2 ?= this - this = scope:activity.special_guest:spouse_1 - this = scope:activity.special_guest:spouse_2 - } -} - -scripted_trigger wedding_3500_same_relation_spouse_trigger = { - is_$RELATION$_of = scope:my_family_spouse - scope:my_family_relative_1 = { is_$RELATION$_of = scope:my_family_spouse } - scope:my_family_relative_2 = { is_$RELATION$_of = scope:my_family_spouse } -} - -scripted_trigger ep2_wedding_3500_relations_spouse_shared_trigger = { - OR = { - wedding_3500_same_relation_spouse_trigger = { RELATION = great_grandchild } - wedding_3500_same_relation_spouse_trigger = { RELATION = grandchild } - wedding_3500_same_relation_spouse_trigger = { RELATION = child } - wedding_3500_same_relation_spouse_trigger = { RELATION = great_grandparent } - wedding_3500_same_relation_spouse_trigger = { RELATION = grandparent } - wedding_3500_same_relation_spouse_trigger = { RELATION = sibling } - wedding_3500_same_relation_spouse_trigger = { RELATION = nibling } - wedding_3500_same_relation_spouse_trigger = { RELATION = uncle_or_aunt } - wedding_3500_same_relation_spouse_trigger = { RELATION = cousin } - } -} - -scripted_trigger ep2_wedding_3500_same_relation_root_trigger = { - scope:my_family_relative_1 = { is_$RELATION$_of = root } - scope:my_family_relative_2 = { is_$RELATION$_of = root } -} - -scripted_trigger ep2_wedding_3500_relations_root_shared_trigger = { - OR = { - ep2_wedding_3500_same_relation_root_trigger = { RELATION = great_grandchild } - ep2_wedding_3500_same_relation_root_trigger = { RELATION = grandchild } - ep2_wedding_3500_same_relation_root_trigger = { RELATION = child } - ep2_wedding_3500_same_relation_root_trigger = { RELATION = great_grandparent } - ep2_wedding_3500_same_relation_root_trigger = { RELATION = grandparent } - ep2_wedding_3500_same_relation_root_trigger = { RELATION = sibling } - ep2_wedding_3500_same_relation_root_trigger = { RELATION = nibling } - ep2_wedding_3500_same_relation_root_trigger = { RELATION = uncle_or_aunt } - ep2_wedding_3500_same_relation_root_trigger = { RELATION = cousin } - } -} - -scripted_effect wedding_3500_save_family_effect = { - scope:activity.special_guest:$SPOUSE$ = { save_scope_as = my_family_spouse } - if = { - limit = { scope:my_family_spouse = scope:activity.special_guest:spouse_1 } - scope:activity.special_guest:spouse_2 = { save_scope_as = other_family_spouse } - } - else = { - scope:activity.special_guest:spouse_1 = { save_scope_as = other_family_spouse } - } - while = { - count = 2 - random_close_or_extended_family_member = { - limit = { - trigger_if = { - limit = { - root = { is_close_family_of = scope:my_family_spouse } - } - is_close_family_of = scope:my_family_spouse - } - trigger_else = { is_extended_family_of = scope:my_family_spouse } - wedding_3500_shared_trigger = yes - NOR = { - has_relation_rival = scope:other_family_spouse - opinion = { - target = scope:other_family_spouse - value <= -25 - } - } - } - alternative_limit = { - wedding_3500_shared_trigger = yes - NOR = { - has_relation_rival = scope:other_family_spouse - opinion = { - target = scope:other_family_spouse - value <= -25 - } - } - } - weight = { - base = 1 - wedding_family_member_compatibility_modifier = yes - is_of_minor_interest_to_weight_up_modifier = { CHARACTER = root } - is_of_major_interest_to_weight_up_modifier = { CHARACTER = root } - } - if = { - limit = { exists = scope:my_family_relative_1 } - save_scope_as = my_family_relative_2 - } - else = { save_scope_as = my_family_relative_1 } - } - } -} - -scripted_trigger ep2_wedding_3500_active_bedroom_trigger = { - scope:my_family_spouse = { - is_eunuch_trigger = no - NOT = { has_trait = celibate } - } - scope:other_family_spouse = { - is_eunuch_trigger = no - NOT = { has_trait = celibate } - } -} - -scripted_trigger ep2_wedding_3500_dislikes_fornicators_trigger = { - scope:other_family_spouse = { - OR = { - has_trait = fornicator - has_trait = adulterer - } - } - scope:my_family_spouse = { - OR = { - has_trait = fornicator - has_trait = adulterer - } - } - trigger_if = { - limit = { - scope:other_family_spouse = { is_female = yes } - } - faith = { - NOT = { has_doctrine = doctrine_adultery_women_accepted } - } - } - trigger_else = { - faith = { - NOT = { has_doctrine = doctrine_adultery_men_accepted } - } - } -} - -ep2_wedding.3500 = { - type = activity_event - title = ep2_wedding.3500.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - scope:my_family_relative_1 = { sex_same_as = scope:my_family_relative_2 } - ep2_wedding_3500_relations_root_shared_trigger = yes - } - desc = ep2_wedding.3500.intro_plural - } - desc = ep2_wedding.3500.intro - } - desc = ep2_wedding.3500.intro_connector - first_valid = { - # BOTH - triggered_desc = { - trigger = { ep2_wedding_3500_relations_spouse_shared_trigger = yes } - desc = ep2_wedding.3500.relation_shared - } - desc = ep2_wedding.3500.relation - } - first_valid = { - # Personal concerns - triggered_desc = { - trigger = { - scope:my_family_relative_1 = { - OR = { - ep2_wedding_3500_dislikes_fornicators_trigger = yes - has_imprisonment_reason = scope:other_family_spouse - has_relation_rival = scope:other_family_spouse - opinion = { - target = scope:other_family_spouse - value <= -25 - } - } - } - } - desc = { - random_valid = { - triggered_desc = { - trigger = { # Fornicator or adulterer trait, and not accepted in faith - scope:my_family_relative_1 = { ep2_wedding_3500_dislikes_fornicators_trigger = yes } - } - desc = ep2_wedding.3500.fornicator - } - triggered_desc = { - trigger = { - scope:my_family_relative_1 = { has_imprisonment_reason = scope:other_family_spouse } - NOT = { - scope:my_family_relative_1 = { has_imprisonment_reason = scope:my_family_spouse } - } - } - desc = ep2_wedding.3500.criminal - } - triggered_desc = { - trigger = { - OR = { - has_relation_rival = scope:other_family_spouse - opinion = { - target = scope:other_family_spouse - value <= -25 - } - } - } - desc = ep2_wedding.3500.dislike - } - } - } - } - # Political concerns - triggered_desc = { - trigger = { - exists = scope:other_family_spouse.house - exists = scope:my_family_spouse.house - OR = { - scope:other_family_spouse.dynasty.dynasty_prestige_level < scope:my_family_spouse.dynasty.dynasty_prestige_level - scope:other_family_spouse.house.house_head ?= { - is_ruler = yes - OR = { - any_neighboring_top_liege_realm_owner = {scope:my_family_spouse.house.house_head.liege ?= this } - AND = { - exists = liege - scope:my_family_spouse.house.house_head.liege ?= liege - } - } - } - AND = { - NOT = { - scope:my_family_relative_1 = { has_trait = cynical } - } - scope:my_family_spouse.faith = { - NOR = { - this = scope:other_family_spouse.faith - faith_hostility_level = { - target = scope:other_family_spouse.faith - value = 0 # Accepted - } - } - } - } - } - } - desc = { - random_valid = { - triggered_desc = { - trigger = { - scope:other_family_spouse.dynasty.dynasty_prestige_level < scope:my_family_spouse.dynasty.dynasty_prestige_level - } - desc = ep2_wedding.3500.renown - } - triggered_desc = { - trigger = { - scope:other_family_spouse.house.house_head ?= { - is_ruler = yes - OR = { - any_neighboring_top_liege_realm_owner = {scope:my_family_spouse.house.house_head.liege ?= this } - AND = { - exists = liege - scope:my_family_spouse.house.house_head.liege ?= liege - } - } - } - } - desc = ep2_wedding.3500.realms - } - triggered_desc = { - trigger = { - NOT = { - scope:my_family_relative_1 = { has_trait = cynical } - } - scope:my_family_spouse.faith = { - NOR = { - this = scope:other_family_spouse.faith - faith_hostility_level = { - target = scope:other_family_spouse.faith - value = 0 # Accepted - } - } - } - } - desc = ep2_wedding.3500.faith - } - } - } - } - # Petty concerns - desc = { - first_valid = { - triggered_desc = { - trigger = { - scope:other_family_spouse = { is_healthy = no } - scope:my_family_spouse = { is_healthy = yes } - scope:my_family_relative_1 = { is_healthy = yes } - } - desc = ep2_wedding.3500.health - } - triggered_desc = { - trigger = { - scope:other_family_spouse.ai_boldness > low_positive_boldness - scope:my_family_spouse.ai_boldness < low_negative_boldness - scope:my_family_relative_1.ai_boldness < low_negative_boldness - } - desc = ep2_wedding.3500.bold - } - triggered_desc = { - trigger = { - scope:other_family_spouse.ai_boldness < low_negative_boldness - scope:my_family_spouse.ai_boldness > low_positive_boldness - scope:my_family_relative_1.ai_boldness > low_positive_boldness - } - desc = ep2_wedding.3500.shy - } - triggered_desc = { - trigger = { - scope:other_family_spouse.ai_honor < low_positive_honor - scope:my_family_relative_1.ai_honor >= low_positive_honor - } - desc = ep2_wedding.3500.dishonorable - } - triggered_desc = { - trigger = { - scope:my_family_spouse.age <= scope:other_family_spouse.age_minus_10 - ep2_wedding_3500_active_bedroom_trigger = yes - } - desc = ep2_wedding.3500.old - } - triggered_desc = { - trigger = { - scope:my_family_spouse.age >= scope:other_family_spouse.age_plus_10 - ep2_wedding_3500_active_bedroom_trigger = yes - } - desc = ep2_wedding.3500.young - } - triggered_desc = { - trigger = { - ep2_wedding_3500_active_bedroom_trigger = yes - scope:other_family_spouse = { has_trait = beauty_bad } - NOR = { - scope:my_family_spouse = { has_trait = beauty_bad } - scope:my_family_relative_1 = { has_trait = beauty_bad } - } - } - desc = ep2_wedding.3500.beauty - } - triggered_desc = { - trigger = { - NOR = { - AND = { - scope:other_family_spouse = { is_healthy = no } - scope:my_family_spouse = { is_healthy = yes } - scope:my_family_relative_1 = { is_healthy = yes } - } - AND = { - scope:other_family_spouse.ai_boldness > low_positive_boldness - scope:my_family_spouse.ai_boldness < low_negative_boldness - scope:my_family_relative_1.ai_boldness < low_negative_boldness - } - AND = { - scope:other_family_spouse.ai_boldness < low_negative_boldness - scope:my_family_spouse.ai_boldness > low_positive_boldness - scope:my_family_relative_1.ai_boldness > low_positive_boldness - } - AND = { - scope:other_family_spouse.ai_honor < low_positive_honor - scope:my_family_relative_1.ai_honor >= low_positive_honor - } - AND = { - ep2_wedding_3500_active_bedroom_trigger = yes - OR = { - scope:my_family_spouse.age <= scope:other_family_spouse.age_plus_10 - scope:my_family_spouse.age >= scope:other_family_spouse.age_minus_10 - AND = { - scope:other_family_spouse = { has_trait = beauty_bad } - NOR = { - scope:my_family_spouse = { has_trait = beauty_bad } - scope:my_family_relative_1 = { has_trait = beauty_bad } - } - } - } - } - - } - } - desc = ep2_wedding.3500.fallback - } - } - } - } - first_valid = { - triggered_desc = { - trigger = { - scope:my_family_relative_2 = { - ep2_wedding_3500_dislikes_fornicators_trigger = yes - has_imprisonment_reason = scope:other_family_spouse - has_relation_rival = scope:other_family_spouse - opinion = { - target = scope:other_family_spouse - value <= -25 - } - } - } - desc = ep2_wedding.3500.agree - } - triggered_desc = { - trigger = { - exists = scope:my_family_spouse - scope:other_family_spouse.house.house_head = { is_allied_to = scope:my_family_spouse.house.house_head } - } - desc = ep2_wedding.3500.alliance - } - triggered_desc = { - trigger = { - OR = { - AND = { - scope:other_family_spouse = { has_trait = beauty_bad } - scope:my_family_spouse = { - NOT = { has_trait = beauty_bad } - } - } - AND = { - scope:other_family_spouse = { is_healthy = no } - scope:my_family_spouse = { is_healthy = yes } - } - } - } - desc = ep2_wedding.3500.compromise - } - desc = ep2_wedding.3500.time - } - } - theme = marriage - override_background = { reference = feast } - left_portrait = { - character = scope:my_family_relative_1 - animation = worry - } - center_portrait = { - character = root - animation = personality_rational - } - right_portrait = { - character = scope:my_family_relative_2 - animation = thinking - } - lower_right_portrait = scope:activity.special_guest:spouse_1 - lower_left_portrait = scope:activity.special_guest:spouse_2 - - cooldown = { years = 5 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - is_adult = yes - # Spouse 1 and 2 are not root - NOR = { - scope:activity.special_guest:spouse_1 ?= root - scope:activity.special_guest:spouse_2 ?= root - } - # More relatives of your family's spouse are about - trigger_if = { - limit = { is_close_or_extended_family_of = scope:activity.special_guest:spouse_1 } - NOR = { - has_relation_rival = scope:activity.special_guest:spouse_1 - opinion = { - target = scope:activity.special_guest:spouse_1 - value <= -25 - } - } - scope:activity.special_guest:spouse_1 = { - any_close_or_extended_family_member = { - count >= 2 - wedding_3500_shared_trigger = yes - NOR = { - has_relation_rival = scope:activity.special_guest:spouse_2 - opinion = { - target = scope:activity.special_guest:spouse_2 - value <= -25 - } - } - } - } - } - trigger_else_if = { - limit = { is_close_or_extended_family_of = scope:activity.special_guest:spouse_2 } - NOR = { - has_relation_rival = scope:activity.special_guest:spouse_2 - opinion = { - target = scope:activity.special_guest:spouse_2 - value <= -25 - } - } - scope:activity.special_guest:spouse_2 = { - any_close_or_extended_family_member = { - count >= 2 - wedding_3500_shared_trigger = yes - NOR = { - has_relation_rival = scope:activity.special_guest:spouse_2 - opinion = { - target = scope:activity.special_guest:spouse_2 - value <= -25 - } - } - } - } - } - # No dice - trigger_else = { always = no } - } - - immediate = { - save_scope_as = my_family_relative - # Save family members related to spouse - hidden_effect = { - if = { - limit = { is_close_or_extended_family_of = scope:activity.special_guest:spouse_1 } - wedding_3500_save_family_effect = { SPOUSE = spouse_1 } - } - else = { - wedding_3500_save_family_effect = { SPOUSE = spouse_2 } - } - } - } - - # Agree - option = { - name = ep2_wedding.3500.a - trigger = { exists = scope:my_family_relative_1 } - progress_towards_friend_effect = { - REASON = friend_wedding_relation_bond - CHARACTER = scope:my_family_relative_1 - OPINION = default_friend_opinion - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 0.5 - } - } - } - - # Rebuff - option = { - name = ep2_wedding.3500.b - trigger = { - scope:my_family_relative_2 ?= { - NOR = { - ep2_wedding_3500_dislikes_fornicators_trigger = yes - has_imprisonment_reason = scope:other_family_spouse - has_relation_rival = scope:other_family_spouse - opinion = { - target = scope:other_family_spouse - value <= -25 - } - } - } - } - progress_towards_friend_effect = { - REASON = friend_wedding_relation_bond - CHARACTER = scope:my_family_relative_2 - OPINION = default_friend_opinion - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = -0.5 - } - } - } - - #It matters not - option = { - name = ep2_wedding.3500.d - add_prestige = minor_prestige_gain - stress_impact = { - compassionate = miniscule_stress_impact_gain - content = miniscule_stress_impact_gain - callous = minor_stress_impact_loss - ambitious = minor_stress_impact_loss - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = -0.5 - } - } - } - - #It is in god's hands now - option = { - name = ep2_wedding.3500.e - add_piety = minor_prestige_gain - stress_impact = { - cynical = miniscule_stress_impact_gain - diligent = miniscule_stress_impact_gain - zealous = minor_stress_impact_loss - lazy = minor_stress_impact_loss - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_zeal = 0.5 - } - } - } -} - -############################ -## Wedding Ceremony Events -## 4000-4999 -## by Veronica Pazos -############################ - -scripted_trigger ep2_wedding_4000_valid_betrothed = { - feast_default_adult_participant_trigger = yes #includes is_ai = yes - can_marry_character_trigger = { CHARACTER = root.intent_target } - NOR = { - age < root.intent_target.age_minus_10 - age > root.intent_target.age_plus_10 - } -} - -# Non-spouse: Matchmaking Intent - This wedding is so cool, you guys should also get married - -ep2_wedding.4000 = { - type = activity_event - title = ep2_wedding.4000.t - desc = { - desc = ep2_wedding.4000.desc.intro - first_valid = { - triggered_desc = { - trigger = { - scope:matchmaked_scope = { - exists = var:wedding_good_match - var:wedding_good_match = scope:objective_scope - } - } - desc = ep2_wedding.4000.desc.good_match - } - triggered_desc = { - trigger = { - scope:matchmaked_scope = { - exists = var:wedding_no_match - var:wedding_no_match = scope:objective_scope - } - } - desc = ep2_wedding.4000.desc.no_match - } - } - } - theme = wedding_ceremony_activity - left_portrait = { - character = root - animation = scheme - } - right_portrait = { - character = scope:matchmaked_scope - animation = personality_rational - } - lower_center_portrait = scope:objective_scope - - cooldown = { years = 5 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - NOT = { has_variable = had_ep2_wedding_matchmaking_event_var } - NOR = { #you are not one of the spouses - root = scope:activity.special_guest:spouse_1 - root = scope:activity.special_guest:spouse_2 - } - has_activity_intent = matchmaking_intent #you're trying to matchmake someone - intent_target = { is_alive = yes } #they're not dead yet - scope:activity = { #there's someone to pair them with - any_attending_character = { - ep2_wedding_4000_valid_betrothed = yes - } - } - } - - weight_multiplier = { - base = 1 - } - - immediate = { - intent_target = { save_scope_as = matchmaked_scope } - scope:activity = { - random_attending_character = { - limit = { ep2_wedding_4000_valid_betrothed = yes } - save_scope_as = objective_scope - } - } - set_variable = { - name = had_ep2_wedding_matchmaking_event_var - days = 90 #enough to not affect this wedding - } - } - - #Go for it - option = { - name = ep2_wedding.4000.a - duel = { - skill = diplomacy - target = scope:matchmaked_scope - 50 = { # success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - modifier = { - add = 20 - attraction >= medium_positive_attraction - } - modifier = { - add = 30 - attraction >= high_positive_attraction - } - desc = ep2_wedding.4000.a.success - send_interface_toast = { - title = ep2_wedding.4000.a.success - left_icon = scope:matchmaked_scope - right_icon = scope:objective_scope - scope:activity = { - add_activity_log_entry = { - key = ep2_wedding_4000_log_success - character = root - target = scope:matchmaked_scope - - # Effect - root = { custom_tooltip = ep2_wedding.wedding_intent.success.tt } - scope:matchmaked_scope = { create_betrothal = scope:objective_scope } - } - } - } - complete_activity_intent = yes - } - 50 = { # fail - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = ep2_wedding.4000.a.failure - send_interface_toast = { - title = ep2_wedding.4000.a.failure - left_icon = scope:matchmaked_scope - add_prestige = minor_prestige_loss - scope:matchmaked_scope = { - add_opinion = { - target = root - modifier = annoyed_opinion - opinion = -10 - } - } - } - } - } - stress_impact = { - craven = medium_stress_impact_gain - patient = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = craven - has_trait = patient - } - } - } - } - - #Be subtle - option = { - name = ep2_wedding.4000.b - duel = { - skill = intrigue - target = scope:matchmaked_scope - 30 = { # success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = ep2_wedding.4000.b.success - send_interface_toast = { - title = ep2_wedding.4000.b.success - left_icon = scope:matchmaked_scope - right_icon = scope:objective_scope - scope:activity = { - add_activity_log_entry = { - key = ep2_wedding_4000_log_success - character = root - target = scope:matchmaked_scope - - # Effect - custom_tooltip = ep2_wedding.wedding_intent.success.tt - scope:matchmaked_scope = { create_betrothal = scope:objective_scope } - } - } - } - complete_activity_intent = yes - } - 70 = { # fail - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = ep2_wedding.4000.a.failure - send_interface_toast = { - title = ep2_wedding.4000.a.failure - left_icon = scope:matchmaked_scope - scope:matchmaked_scope = { - add_opinion = { - target = root - modifier = annoyed_opinion - opinion = -10 - } - } - } - } - } - stress_impact = { - brave = medium_stress_impact_gain - impatient = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = brave - has_trait = impatient - } - } - } - } - - #Nahhh - option = { - name = ep2_wedding.4000.c - ai_chance = { - base = 100 - modifier = { - factor = 1.25 - OR = { - has_trait = callous - has_trait = sadistic - } - } - modifier = { - factor = 0 - scope:matchmaked_scope = { - trait_compatibility = { - target = scope:objective_scope - value >= high_positive_trait_compatibility - } - } - } - } - } -} - -# Host: Gain Renown Intent - Bring a white animal to the Banquet to flex (it's painted) - -scripted_trigger ep2_wedding_2010_impressed = { - OR = { #what kind of people would be impressed by a legendary animal? - has_trait = gregarious - has_trait = brave - has_trait = lifestyle_reveler - has_trait = lifestyle_hunter - has_trait = drunkard - has_trait = gallant #white animals were a pretty chivalrous thing to find/hunt - } -} - -ep2_wedding.2010 = { - type = activity_event - title = ep2_wedding.2010.t - desc = { - desc = ep2_wedding.2010.desc.intro - first_valid = { - triggered_desc = { - trigger = { - OR = { #you are one of the spouses - root = scope:activity.special_guest:spouse_1 - root = scope:activity.special_guest:spouse_2 - } - } - desc = ep2_wedding.2010.desc_spouse - } - } - } - theme = wedding_banquet_activity - left_portrait = { - character = root - animation = personality_rational - } - - cooldown = { years = 5 } - - trigger = { - this = scope:host #you're the host - has_activity_intent = diplomatic_intent - intent_target = { ep2_wedding_2010_impressed = yes } - } - - weight_multiplier = { - base = 1 - modifier = { - factor = 2 - has_trait = deceitful - } - modifier = { - factor = 0.5 - has_trait = honest - } - } - - immediate = { - select_local_animal_effect = { TYPE = big } # Save scope to limit possible animals: any/big/small/dangerous/harmless/prowling - intent_target = { - add_to_list = ep2_wedding_2010_impressed_list - save_scope_as = diplo_target - } - if = { - limit = { - scope:activity = { #there's someone else to impress - any_attending_character = { - feast_default_adult_participant_trigger = yes - NOR = { - this = root - this = root.intent_target - } - ep2_wedding_2010_impressed = yes - } - } - } - scope:activity = { - every_attending_character = { - limit = { - feast_default_adult_participant_trigger = yes - NOR = { - this = root - this = root.intent_target - } - ep2_wedding_2010_impressed = yes - } - add_to_list = ep2_wedding_2010_impressed_list - } - } - } - } - - #Yeah - option = { - name = ep2_wedding.2010.a - custom_tooltip = ep2_wedding.2010.a.tt - every_in_list = { - list = ep2_wedding_2010_impressed_list - custom = ep2_wedding.2010.impressed_list - add_opinion = { - modifier = wbanquet_white_animal_opinion - target = root - opinion = 20 - } - } - #Does anyone suspect? - hidden_effect = { - if = { - limit = { - scope:diplo_target = { - feast_default_adult_participant_trigger = yes - OR = { - has_trait = cynical - has_trait = callous - } - has_any_good_relationship_with_root_trigger = no - } - } - random_list = { - 50 = { #they don't notice - remove_variable = animal_type - if = { - limit = { - scope:diplo_target = { activity_wedding_diplomatic_intent_impressible_target = yes } - } - send_interface_toast = { - title = ep2_wedding.2000.after.subjugate - left_icon = scope:diplo_target - custom_tooltip = { - text = ep2_wedding.2000.after.subjugate.tt - complete_activity_intent = yes - create_title_and_vassal_change = { - type = swear_fealty - save_scope_as = title_change - add_claim_on_loss = no - } - scope:diplo_target = { - change_liege = { - liege = root - change = scope:title_change - } - } - resolve_title_and_vassal_change = scope:title_change - } - } - } - } - 50 = { #they do - trigger_event = ep2_wedding.2011 - } - } - } - else_if = { - limit = { - scope:activity = { - any_attending_character = { - feast_default_adult_participant_trigger = yes - OR = { - has_trait = cynical - has_trait = callous - } - has_any_good_relationship_with_root_trigger = no - } - } - } - random_list = { - 50 = { #they don't notice - remove_variable = animal_type - } - 50 = { #they do - trigger_event = ep2_wedding.2011 - } - } - } - } - remove_short_term_gold = minor_gold_value - stress_impact = { - greedy = medium_stress_impact_gain - honest = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - short_term_gold <= minor_gold_value - } - modifier = { - factor = 0 - OR = { - has_trait = greedy - has_trait = honest - } - } - } - } - - #Nah - option = { - name = ep2_wedding.2010.b - remove_variable = animal_type - stress_impact = { - gallant = medium_stress_impact_gain - gregarious = medium_stress_impact_gain - lifestyle_reveler = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = gallant - has_trait = gregarious - has_trait = lifestyle_reveler - } - } - modifier = { - factor = 1.25 - has_trait = deceitful - } - } - } -} - -# Follow up: You get called out - -ep2_wedding.2011 = { - type = activity_event - title = ep2_wedding.2011.t - desc = ep2_wedding.2011.desc - theme = wedding_banquet_activity - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_trait = arrogant - has_trait = wrathful - has_trait = vengeful - has_trait = callous - has_trait = brave - } - } - animation = anger - } - animation = stress - } - right_portrait = { - character = scope:doubting_guest - animation = schadenfreude - } - - immediate = { - scope:activity = { - random_attending_character = { - limit = { - feast_default_adult_participant_trigger = yes - OR = { - has_trait = cynical - has_trait = callous - } - has_any_good_relationship_with_root_trigger = no - } - save_scope_as = doubting_guest - } - } - } - - #Confess - option = { - name = ep2_wedding.2011.a - add_prestige = minor_prestige_loss - add_piety = minor_piety_gain - scope:doubting_guest = { - add_opinion = { - target = root - opinion = 10 - modifier = pleased_opinion - } - } - stress_impact = { - arrogant = medium_stress_impact_gain - ambitious = medium_stress_impact_gain - deceitful = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = greedy - has_trait = honest - } - } - } - } - - #Double down - option = { - name = ep2_wedding.2011.b - duel = { #they believe you - skill = intrigue - target = scope:doubting_guest - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - modifier = { - factor = 2 - scope:doubting_guest = { - OR = { - has_trait = trusting - has_trait = loyal - } - } - } - desc = ep2_wedding.2011.b.success - send_interface_toast = { - left_icon = scope:doubting_guest - title = ep2_wedding.2011.b.success - custom_tooltip = ep2_wedding.wedding_intent.success.tt - complete_activity_intent = yes - } - } - 50 = { #they don't - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = ep2_wedding.2011.b.failure - send_interface_toast = { - left_icon = scope:doubting_guest - title = ep2_wedding.2011.b.failure - scope:doubting_guest = { - add_opinion = { - target = root - opinion = -10 - modifier = annoyed_opinion - } - } - } - } - } - stress_impact = { - trusting = medium_stress_impact_gain - just = medium_stress_impact_gain - honest = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = honest - has_trait = trusting - has_trait = just - } - } - } - } - - after = { - remove_variable = animal_type - } -} - -# Spouse/Non-spouse: Someone is dangerously close to a well of wine - -scripted_trigger ep2_wedding_2020_would_fall_trigger = { - is_adult = yes - is_alive = yes - feast_default_adult_participant_trigger = yes - drinks_alcohol_trigger = yes - OR = { - has_trait = lifestyle_reveler - has_trait = drunkard - has_trait = gregarious - has_trait = arbitrary - } -} - -ep2_wedding.2020 = { - type = activity_event - title = ep2_wedding.2020.t - desc = ep2_wedding.2020.desc - theme = wedding_banquet_activity - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_activity_intent = banquet_mischief_intent - has_trait = callous - has_trait = sadistic - has_trait = deceitful - } - } - animation = scheme - } - animation = worry - } - right_portrait = { - character = scope:drunk_guest - animation = drink_goblet - } - - cooldown = { years = 5 } - - trigger = { - #DLC check. - has_ep2_dlc_trigger = yes - this != scope:host - scope:activity = { - any_attending_character = { - ep2_wedding_2020_would_fall_trigger = yes - } - has_activity_option = { - category = wedding_option_food - option = wedding_food_good - } - NOT = { - has_variable = has_had_2020_event - } - } - scope:activity = { NOT = { has_variable = ep2_wedding_2020_well_var } } - } - - weight_multiplier = { - base = 1 - modifier = { - factor = 2 - has_activity_intent = banquet_mischief_intent - } - modifier = { - factor = 2 - scope:activity = { - any_attending_character = { - has_trait = drunkard - } - } - } - modifier = { - is_ai = yes - factor = 0.1 - } - } - - immediate = { - scope:activity = { - set_variable = ep2_wedding_2020_well_var - random_attending_character = { - limit = { - ep2_wedding_2020_would_fall_trigger = yes - } - weight = { - base = 1 - modifier = { - add = 50 - has_trait = drunkard - } - } - save_scope_as = drunk_guest - } - set_variable = has_had_2020_event - } - } - - #Tell them - option = { - name = ep2_wedding.2020.a - duel = { - skill = diplomacy - target = scope:drunk_guest - 50 = { #they listen to you - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = ep2_wedding.2020.a.success - send_interface_toast = { - left_icon = scope:drunk_guest - title = ep2_wedding.2020.a.success - progress_towards_friend_effect = { - REASON = friend_wbanquet_saved_from_well - CHARACTER = scope:drunk_guest - OPINION = 20 - } - add_piety = minor_piety_gain - } - } - 50 = { #they fall down - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = ep2_wedding.2020.a.failure - send_interface_toast = { - left_icon = scope:drunk_guest - title = ep2_wedding.2020.a.failure - scope:drunk_guest = { - add_prestige = minor_prestige_loss - increase_wounds_effect = { REASON = fall } - } - } - } - } - stress_impact = { - deceitful = medium_stress_impact_gain - callous = medium_stress_impact_gain - sadistic = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = deceitful - has_trait = callous - has_trait = sadistic - } - } - } - } - - #Don't - option = { - name = ep2_wedding.2020.b - random_list = { - 50 = { #they don't fall - desc = ep2_wedding.2020.b.success - send_interface_toast = { - left_icon = scope:drunk_guest - title = ep2_wedding.2020.b.success - #nothing happens - } - } - 50 = { #they fall down - modifier = { - factor = 2 - scope:drunk_guest = { has_trait = drunkard } - } - desc = ep2_wedding.2020.a.failure - send_interface_toast = { - left_icon = scope:drunk_guest - title = ep2_wedding.2020.a.failure - add_stress = major_stress_impact_loss - scope:drunk_guest = { - add_prestige = minor_prestige_loss - increase_wounds_effect = { REASON = fall } - } - } - } - } - stress_impact = { - compassionate = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = compassionate - } - } - } - - #Crash Wedding Intent - Push them - option = { - name = ep2_wedding.2020.c - trigger = { - OR = { - has_activity_intent = banquet_mischief_intent - AND = { - has_activity_intent = murder_attendee_intent - intent_target = scope:drunk_guest - } - } - } - reason = activity_intent - duel = { - skill = prowess - target = scope:drunk_guest - 50 = { #you push them - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = ep2_wedding.2020.c.success - send_interface_toast = { - left_icon = scope:drunk_guest - title = ep2_wedding.2020.c.success - custom_tooltip = ep2_wedding.wedding_intent.success.tt - add_stress = major_stress_impact_loss - scope:drunk_guest = { - add_prestige = minor_prestige_loss - increase_wounds_effect = { REASON = fall } - } - complete_activity_intent = yes - } - } - 50 = { #they kick you back - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = ep2_wedding.2020.c.failure - send_interface_toast = { - left_icon = root - right_icon = scope:drunk_guest - title = ep2_wedding.2020.c.failure - increase_wounds_effect = { REASON = fight } - } - } - 10 = { #they die - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = ep2_wedding.2020.c.death - send_interface_toast = { - left_icon = root - right_icon = scope:drunk_guest - title = ep2_wedding.2020.c.death - scope:drunk_guest = { - death = { death_reason = death_accident } - } - known_murder_effect = { - VICTIM = scope:drunk_guest - MURDERER = root - EXPOSER = root - } - } - } - } - stress_impact = { - calm = medium_stress_impact_gain - forgiving = medium_stress_impact_gain - compassionate = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = calm - has_trait = forgiving - has_trait = compassionate - } - } - } - } -} diff --git a/events/dlc/ep2/wedding_events/ep2_wedding_events_ewan.txt b/events/dlc/ep2/wedding_events/ep2_wedding_events_ewan.txt deleted file mode 100644 index ce79de404..000000000 --- a/events/dlc/ep2/wedding_events/ep2_wedding_events_ewan.txt +++ /dev/null @@ -1,6109 +0,0 @@ -@ep2_wedding_ewan_0052_dolt_pay_out_value = root.massive_gold_value -@ep2_wedding_ewan_0061_high_skill_value = extremely_high_skill_rating -@ep2_wedding_ewan_0061_old_value = 80 -@ep2_wedding_ewan_0061_very_old = 90 - -namespace = ep2_wedding_ewan - -################################################## -# #Banquet Phase -# 0001 - 0010 Quite the Spectacle - Connect with various types of characters over the entertainment. -# 0011 - 0020 Food Fit for a... - Connect with various types of characters over the food. -# 0021 - 0030 Shimmering, Shining - Connect with various types of characters over the venue & its decorations. -# 0031 - 0040 A Sociable Supper - Meet one of your neighbouring rulers and form a fast friendship. -# 0041 - 0050 Speech! Speech! - Make a speech to the happy couple, adjusting the meaning to your intent. -# 0051 - 0060 And Another Thing - Someone is pitching questionable ideas at you, and you can go along with them or not, but they keep coming at you. -# 0061 - 0070 To My Beloved GetRelation - Embarrassing older relation speech. -# 0071 - 0080 Oath in Moment - Your liege offers you a favour for your support. -################################################## - - - - - - - - - - -################################################## -# MISC SCRIPTED TRIGGERS & EFFECTS - -# Filter out characters who aren't appropriate to be giving their unasked opinions on the activity's setup options. -scripted_trigger ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = { - # Filter out players immediately. - is_ai = yes - # Now let's make sure it's no one who wouldn't be having this conversation or who we might want to reserve for something else. - NOR = { - this = root - this = scope:activity.activity_host - this = scope:activity.special_guest:spouse_1 - this = scope:activity.special_guest:spouse_2 - this ?= root.intent_target - has_any_bad_relationship_with_character_trigger = { CHARACTER = root } - } -} - -# Standard stress loss for hosts agreeing with criticisms. -scripted_effect ep2_wedding_ewan_0000_host_takes_criticism_stress_gain_effect = { - # Host reacts a bit differently to feedback. - if = { - limit = { this = scope:activity.activity_host } - stress_impact = { - gregarious = miniscule_stress_impact_loss - humble = minor_stress_impact_loss - arrogant = miniscule_stress_impact_gain - } - } - else = { - stress_impact = { gregarious = miniscule_stress_impact_loss } - } -} - -scripted_effect ep2_wedding_ewan_0000_opinion_swap_effect = { - # Progress heavily towards friendship. - progress_towards_friend_effect = { - CHARACTER = $FAVOURED_CHAR$ - REASON = friend_dinner - OPINION = 35 - } - reverse_add_opinion = { - target = $REJECTED_CHAR$ - modifier = respect_opinion - opinion = -15 - } -} - -scripted_effect ep2_wedding_ewan_0000_host_approves_effect = { - # If you're the host, gain some prestige for ignoring them. - if = { - limit = { this = scope:activity.activity_host } - add_prestige = minor_prestige_gain - } - # Otherwise, gain some opinion with the host. - else = { - reverse_add_opinion = { - target = scope:activity.activity_host - modifier = friendliness_opinion - opinion = 15 - } - } -} - -scripted_effect ep2_wedding_ewan_0000_award_lifestyle_xp_per_conversationalist_effect = { - $TARGET$ = { - # Diplomacy. - if = { - limit = { has_trait = education_diplomacy } - # T1. - if = { - limit = { has_trait = education_diplomacy_1 } - root = { add_diplomacy_lifestyle_xp = minor_lifestyle_xp } - } - # T2. - else_if = { - limit = { has_trait = education_diplomacy_2 } - root = { add_diplomacy_lifestyle_xp = medium_lifestyle_xp } - } - # T3. - else_if = { - limit = { has_trait = education_diplomacy_3 } - root = { add_diplomacy_lifestyle_xp = major_lifestyle_xp } - } - # T4. - else_if = { - limit = { - OR = { - has_trait = education_diplomacy_4 - has_trait = education_diplomacy_5 - } - } - root = { add_diplomacy_lifestyle_xp = massive_lifestyle_xp } - } - } - # Martial. - if = { - limit = { has_trait = education_martial } - # T1. - if = { - limit = { has_trait = education_martial_1 } - root = { add_martial_lifestyle_xp = minor_lifestyle_xp } - } - # T2. - else_if = { - limit = { has_trait = education_martial_2 } - root = { add_martial_lifestyle_xp = medium_lifestyle_xp } - } - # T3. - else_if = { - limit = { has_trait = education_martial_3 } - root = { add_martial_lifestyle_xp = major_lifestyle_xp } - } - # T4. - else_if = { - limit = { - OR = { - has_trait = education_martial_4 - has_trait = education_martial_5 - } - } - root = { add_martial_lifestyle_xp = massive_lifestyle_xp } - } - } - # Stewardship. - if = { - limit = { has_trait = education_stewardship } - # T1. - if = { - limit = { has_trait = education_stewardship_1 } - root = { add_stewardship_lifestyle_xp = minor_lifestyle_xp } - } - # T2. - else_if = { - limit = { has_trait = education_stewardship_2 } - root = { add_stewardship_lifestyle_xp = medium_lifestyle_xp } - } - # T3. - else_if = { - limit = { has_trait = education_stewardship_3 } - root = { add_stewardship_lifestyle_xp = major_lifestyle_xp } - } - # T4. - else_if = { - limit = { - OR = { - has_trait = education_stewardship_4 - has_trait = education_stewardship_5 - } - } - root = { add_stewardship_lifestyle_xp = massive_lifestyle_xp } - } - } - # Intrigue. - if = { - limit = { has_trait = education_intrigue } - # T1. - if = { - limit = { has_trait = education_intrigue_1 } - root = { add_intrigue_lifestyle_xp = minor_lifestyle_xp } - } - # T2. - else_if = { - limit = { has_trait = education_intrigue_2 } - root = { add_intrigue_lifestyle_xp = medium_lifestyle_xp } - } - # T3. - else_if = { - limit = { has_trait = education_intrigue_3 } - root = { add_intrigue_lifestyle_xp = major_lifestyle_xp } - } - # T4. - else_if = { - limit = { - OR = { - has_trait = education_intrigue_4 - has_trait = education_intrigue_5 - } - } - root = { add_intrigue_lifestyle_xp = massive_lifestyle_xp } - } - } - # Learning. - if = { - limit = { has_trait = education_learning } - # T1. - if = { - limit = { has_trait = education_learning_1 } - root = { add_learning_lifestyle_xp = minor_lifestyle_xp } - } - # T2. - else_if = { - limit = { has_trait = education_learning_2 } - root = { add_learning_lifestyle_xp = medium_lifestyle_xp } - } - # T3. - else_if = { - limit = { has_trait = education_learning_3 } - root = { add_learning_lifestyle_xp = major_lifestyle_xp } - } - # T4. - else_if = { - limit = { - OR = { - has_trait = education_learning_4 - has_trait = education_learning_5 - } - } - root = { add_learning_lifestyle_xp = massive_lifestyle_xp } - } - } - } -} - - - - - - - - - - - -################################################## -# BANQUET PHASE - -################################################## -# Quite the Spectacle -# by Ewan Cowhig Croft -# 0001 - 0010 -################################################## - -# Character likes T1 entertainment. -scripted_trigger ep2_wedding_ewan_0001_entertainment_t1_likes_trigger = { - OR = { - # Thinks too much entertainment is frivolous. - has_trait = diligent - # Prefers 1-on-1 conversations to showy jugglers. - ## N-not that I'm sad because I can't juggle. - ### My hands are just stupid. - has_trait = shy - # Prefers lagom entertainment. - has_trait = humble - has_trait = content - # Doesn't respect any entertaining profession. - has_trait = honest - ## Just characters are kill-joys. Change my mind. - has_trait = just - # Likes safe entertainment that doesn't give them the jitters. - has_trait = craven - # Doesn't trust large bands of strangers. - has_trait = paranoid - } -} -# Character hates T1 entertainment. -scripted_trigger ep2_wedding_ewan_0001_entertainment_t1_hates_trigger = { - OR = { - # Likes a good joke/acrobat/actor. - has_trait = lazy - has_trait = gregarious - # Prefers big, upscale-everything. - has_trait = arrogant - has_trait = ambitious - # Appreciates the entertainer's art. - has_trait = deceitful - has_trait = arbitrary - # Wants bombastic, dangerous entertainment. - has_trait = brave - # Loves large bands of dangerous strangers. - has_trait = trusting - } -} -# Character likes T2 entertainment. -scripted_trigger ep2_wedding_ewan_0001_entertainment_t2_likes_trigger = { - OR = { - # Accepting of the average. - has_trait = content - has_trait = compassionate - # Likes that money was spent. - has_trait = generous - # Likes the atmosphere being high-effort but not _too_ bustling. - has_trait = calm - has_trait = patient - # Likes a middling option. - has_trait = fickle - has_trait = cynical - } -} -# Character hates T2 entertainment. -scripted_trigger ep2_wedding_ewan_0001_entertainment_t2_hates_trigger = { - OR = { - # Hates the average. - has_trait = ambitious - has_trait = arrogant - # Would have preferred all the money, to take advantage, or else none, not to waste any. - has_trait = greedy - # Want a more bustling atmosphere that goes further than this. - has_trait = wrathful - has_trait = impatient - # Feels that if it was worth doing, it's worth doing to its best. - has_trait = stubborn - has_trait = zealous - } -} -# Character likes T3 entertainment. -scripted_trigger ep2_wedding_ewan_0001_entertainment_t3_likes_trigger = { - OR = { - # Loves excellent entertainment. - has_trait = lazy - has_trait = gregarious - # Prefers big, upscale-everything. - has_trait = arrogant - has_trait = ambitious - # Appreciates the entertainer's art. - has_trait = deceitful - has_trait = arbitrary - # Wants bombastic, dangerous entertainment. - has_trait = brave - # Loves large bands of dangerous strangers. - has_trait = trusting - } -} -# Character hates T3 entertainment. -scripted_trigger ep2_wedding_ewan_0001_entertainment_t3_hates_trigger = { - OR = { - # So much entertainment is frivolous. - has_trait = diligent - # This is way, way too loud. - has_trait = shy - # Wants entertainment to be more lagom. - has_trait = humble - has_trait = content - # Doesn't respect any entertaining profession. - has_trait = honest - ## Just characters are kill-joys. Change my mind. - has_trait = just - # Likes safe entertainment that doesn't give them the jitters. - has_trait = craven - # Doesn't trust large bands of strangers. - has_trait = paranoid - } -} - -# Connect with various types of characters over the entertainment. -ep2_wedding_ewan.0001 = { - type = activity_event - title = ep2_wedding_ewan.0001.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - scope:activity = { - has_activity_option = { - category = wedding_option_entertainment - option = wedding_entertainment_bad - } - } - } - desc = { - desc = ep2_wedding_ewan.0001.desc.intro.bad - desc = { - random_valid = { - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = diligent } - } - desc = ep2_wedding_ewan.0001.desc.t1.love.diligent - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = shy } - } - desc = ep2_wedding_ewan.0001.desc.t1.love.shy - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = humble } - } - desc = ep2_wedding_ewan.0001.desc.t1.love.humble - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = content } - } - desc = ep2_wedding_ewan.0001.desc.t1.love.content - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = honest } - } - desc = ep2_wedding_ewan.0001.desc.t1.love.honest - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = just } - } - desc = ep2_wedding_ewan.0001.desc.t1.love.just - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = craven } - } - desc = ep2_wedding_ewan.0001.desc.t1.love.craven - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = paranoid } - } - desc = ep2_wedding_ewan.0001.desc.t1.love.paranoid - } - } - } - } - } - triggered_desc = { - trigger = { - scope:activity = { - has_activity_option = { - category = wedding_option_entertainment - option = wedding_entertainment_normal - } - } - } - desc = { - desc = ep2_wedding_ewan.0001.desc.intro.normal - desc = { - random_valid = { - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = content } - } - desc = ep2_wedding_ewan.0001.desc.t2.love.content - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = compassionate } - } - desc = ep2_wedding_ewan.0001.desc.t2.love.compassionate - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = generous } - } - desc = ep2_wedding_ewan.0001.desc.t2.love.generous - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = calm } - } - desc = ep2_wedding_ewan.0001.desc.t2.love.calm - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = patient } - } - desc = ep2_wedding_ewan.0001.desc.t2.love.patient - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = fickle } - } - desc = ep2_wedding_ewan.0001.desc.t2.love.fickle - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = cynical } - } - desc = ep2_wedding_ewan.0001.desc.t2.love.cynical - } - } - } - } - } - desc = { - desc = ep2_wedding_ewan.0001.desc.intro.good - random_valid = { - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = lazy } - } - desc = ep2_wedding_ewan.0001.desc.t3.love.lazy - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = gregarious } - } - desc = ep2_wedding_ewan.0001.desc.t3.love.gregarious - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = arrogant } - } - desc = ep2_wedding_ewan.0001.desc.t3.love.arrogant - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = ambitious } - } - desc = ep2_wedding_ewan.0001.desc.t3.love.ambitious - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = deceitful } - } - desc = ep2_wedding_ewan.0001.desc.t3.love.deceitful - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = arbitrary } - } - desc = ep2_wedding_ewan.0001.desc.t3.love.arbitrary - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = brave } - } - desc = ep2_wedding_ewan.0001.desc.t3.love.brave - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = trusting } - } - desc = ep2_wedding_ewan.0001.desc.t3.love.trusting - } - } - } - } - desc = ep2_wedding_ewan.0001.desc.midtro - first_valid = { - triggered_desc = { - trigger = { - scope:activity = { - has_activity_option = { - category = wedding_option_entertainment - option = wedding_entertainment_bad - } - } - } - desc = { - random_valid = { - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = lazy } - } - desc = ep2_wedding_ewan.0001.desc.t1.hate.lazy - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = gregarious } - } - desc = ep2_wedding_ewan.0001.desc.t1.hate.gregarious - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = arrogant } - } - desc = ep2_wedding_ewan.0001.desc.t1.hate.arrogant - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = ambitious } - } - desc = ep2_wedding_ewan.0001.desc.t1.hate.ambitious - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = deceitful } - } - desc = ep2_wedding_ewan.0001.desc.t1.hate.deceitful - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = arbitrary } - } - desc = ep2_wedding_ewan.0001.desc.t1.hate.arbitrary - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = brave } - } - desc = ep2_wedding_ewan.0001.desc.t1.hate.brave - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = trusting } - } - desc = ep2_wedding_ewan.0001.desc.t1.hate.trusting - } - triggered_desc = { - trigger = { - scope:char_2 = { - NOR = { - has_trait = lazy - has_trait = gregarious - has_trait = arrogant - has_trait = ambitious - has_trait = deceitful - has_trait = arbitrary - has_trait = brave - has_trait = trusting - } - } - } - desc = ep2_wedding_ewan.0000.desc.hate.fallback - } - } - } - } - triggered_desc = { - trigger = { - scope:activity = { - has_activity_option = { - category = wedding_option_entertainment - option = wedding_entertainment_normal - } - } - } - desc = { - random_valid = { - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = ambitious } - } - desc = ep2_wedding_ewan.0001.desc.t2.hate.ambitious - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = arrogant } - } - desc = ep2_wedding_ewan.0001.desc.t2.hate.arrogant - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = greedy } - } - desc = ep2_wedding_ewan.0001.desc.t2.hate.greedy - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = wrathful } - } - desc = ep2_wedding_ewan.0001.desc.t2.hate.wrathful - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = impatient } - } - desc = ep2_wedding_ewan.0001.desc.t2.hate.impatient - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = stubborn } - } - desc = ep2_wedding_ewan.0001.desc.t2.hate.stubborn - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = zealous } - } - desc = ep2_wedding_ewan.0001.desc.t2.hate.zealous - } - triggered_desc = { - trigger = { - scope:char_2 = { - NOR = { - has_trait = ambitious - has_trait = arrogant - has_trait = greedy - has_trait = wrathful - has_trait = impatient - has_trait = stubborn - has_trait = zealous - } - } - } - desc = ep2_wedding_ewan.0000.desc.hate.fallback - } - } - } - } - desc = { - random_valid = { - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = diligent } - } - desc = ep2_wedding_ewan.0001.desc.t3.hate.diligent - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = shy } - } - desc = ep2_wedding_ewan.0001.desc.t3.hate.shy - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = humble } - } - desc = ep2_wedding_ewan.0001.desc.t3.hate.humble - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = content } - } - desc = ep2_wedding_ewan.0001.desc.t3.hate.content - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = honest } - } - desc = ep2_wedding_ewan.0001.desc.t3.hate.honest - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = just } - } - desc = ep2_wedding_ewan.0001.desc.t3.hate.just - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = craven } - } - desc = ep2_wedding_ewan.0001.desc.t3.hate.craven - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = paranoid } - } - desc = ep2_wedding_ewan.0001.desc.t3.hate.paranoid - } - triggered_desc = { - trigger = { - scope:char_2 = { - NOR = { - has_trait = diligent - has_trait = shy - has_trait = humble - has_trait = content - has_trait = honest - has_trait = just - has_trait = craven - has_trait = paranoid - } - } - } - desc = ep2_wedding_ewan.0000.desc.hate.fallback - } - } - } - } - } - theme = feast_activity - left_portrait = { - character = scope:char_1 - animation = throne_room_applaud_1 - } - center_portrait = { - character = root - animation = happiness - } - right_portrait = { - character = scope:char_2 - animation = boredom - } - - cooldown = { years = 1 } - - trigger = { - scope:activity = { - # T1. - trigger_if = { - limit = { - has_activity_option = { - category = wedding_option_entertainment - option = wedding_entertainment_bad - } - } - # Check for a character who likes the setup. - any_attending_character = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0001_entertainment_t1_likes_trigger = yes - # Now we need to wiggle a bit to make sure they don't overlap with one who _dislikes_ the setup. - save_temporary_scope_as = char_temp - scope:activity = { - any_attending_character = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0001_entertainment_t1_hates_trigger = yes - this != scope:char_temp - } - } - } - } - # T2. - trigger_else_if = { - limit = { - has_activity_option = { - category = wedding_option_entertainment - option = wedding_entertainment_normal - } - } - # Check for a character who likes the setup. - any_attending_character = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0001_entertainment_t2_likes_trigger = yes - # Now we need to wiggle a bit to make sure they don't overlap with one who _dislikes_ the setup. - save_temporary_scope_as = char_temp - scope:activity = { - any_attending_character = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0001_entertainment_t2_hates_trigger = yes - this != scope:char_temp - } - } - } - } - # T3. - trigger_else = { - # Check for a character who likes the setup. - any_attending_character = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0001_entertainment_t3_likes_trigger = yes - # Now we need to wiggle a bit to make sure they don't overlap with one who _dislikes_ the setup. - save_temporary_scope_as = char_temp - scope:activity = { - any_attending_character = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0001_entertainment_t3_hates_trigger = yes - this != scope:char_temp - } - } - } - } - } - } - - immediate = { - # Try to grab our actors. - scope:activity = { - # T1. - if = { - limit = { - has_activity_option = { - category = wedding_option_entertainment - option = wedding_entertainment_bad - } - } - # Check for a character who likes the setup. - ordered_attending_character = { - # Try to grab opposing characters first. - limit = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0001_entertainment_t1_likes_trigger = yes - ep2_wedding_ewan_0001_entertainment_t1_hates_trigger = no - } - # Failing that, grab anyone valid. - alternative_limit = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0001_entertainment_t1_likes_trigger = yes - } - # Make sure we're looking at interesting people. - order_by = highest_held_title_tier - save_scope_as = char_1 - } - # And for one who dislikes it. - ordered_attending_character = { - # Try to grab opposing characters first. - limit = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0001_entertainment_t1_hates_trigger = yes - ep2_wedding_ewan_0001_entertainment_t1_likes_trigger = no - } - # Failing that, grab anyone appropriate. - alternative_limit = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0001_entertainment_t1_hates_trigger = yes - } - # Failing _that_, grab anyone at all. - alternative_limit = { ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes } - # Make sure we're looking at interesting people. - order_by = highest_held_title_tier - save_scope_as = char_2 - } - } - # T2. - else_if = { - limit = { - has_activity_option = { - category = wedding_option_entertainment - option = wedding_entertainment_normal - } - } - # Check for a character who likes the setup. - ordered_attending_character = { - # Try to grab opposing characters first. - limit = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0001_entertainment_t2_likes_trigger = yes - ep2_wedding_ewan_0001_entertainment_t2_hates_trigger = no - } - # Failing that, grab anyone valid. - alternative_limit = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0001_entertainment_t2_likes_trigger = yes - } - # Make sure we're looking at interesting people. - order_by = highest_held_title_tier - save_scope_as = char_1 - } - # And for one who dislikes it. - ordered_attending_character = { - # Try to grab opposing characters first. - limit = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0001_entertainment_t2_hates_trigger = yes - ep2_wedding_ewan_0001_entertainment_t2_likes_trigger = no - } - # Failing that, grab anyone appropriate. - alternative_limit = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0001_entertainment_t2_hates_trigger = yes - } - # Failing _that_, grab anyone at all. - alternative_limit = { ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes } - # Make sure we're looking at interesting people. - order_by = highest_held_title_tier - save_scope_as = char_2 - } - } - # T3. - else = { - # Check for a character who likes the setup. - ordered_attending_character = { - # Try to grab opposing characters first. - limit = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0001_entertainment_t3_likes_trigger = yes - ep2_wedding_ewan_0001_entertainment_t3_hates_trigger = no - } - # Failing that, grab anyone valid. - alternative_limit = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0001_entertainment_t3_likes_trigger = yes - } - # Make sure we're looking at interesting people. - order_by = highest_held_title_tier - save_scope_as = char_1 - } - # And for one who dislikes it. - ordered_attending_character = { - # Try to grab opposing characters first. - limit = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0001_entertainment_t3_hates_trigger = yes - ep2_wedding_ewan_0001_entertainment_t3_likes_trigger = no - } - # Failing that, grab anyone appropriate. - alternative_limit = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0001_entertainment_t3_hates_trigger = yes - } - # Failing _that_, grab anyone at all. - alternative_limit = { ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes } - # Make sure we're looking at interesting people. - order_by = highest_held_title_tier - save_scope_as = char_2 - } - } - } - # If relevant, grab our intent target. - if = { - limit = { has_activity_intent = murder_attendee_intent } - intent_target = { save_scope_as = intent_target } - } - } - - # Agree with scope:char_1. - option = { - name = { - trigger = { - this != scope:activity.activity_host - } - text = ep2_wedding_ewan.0001.a - } - name = { - trigger = { this = scope:activity.activity_host } - text = ep2_wedding_ewan.0001.a.host - } - flavor = ep2_wedding_ewan.0000.flavour.hobnob.char_1 - - # Apply opinion. - ep2_wedding_ewan_0000_opinion_swap_effect = { - FAVOURED_CHAR = scope:char_1 - REJECTED_CHAR = scope:char_2 - } - # Give some lifestyle XP for who you hobnob with. - ep2_wedding_ewan_0000_award_lifestyle_xp_per_conversationalist_effect = { TARGET = scope:char_1 } - - ep2_wedding_ewan_0000_host_takes_criticism_stress_gain_effect = yes - ai_chance = { - base = 1 - ai_value_modifier = { ai_sociability = 1 } - opinion_modifier = { - opinion_target = scope:char_1 - multiplier = 0.5 - } - opinion_modifier = { - opinion_target = scope:char_2 - multiplier = -0.5 - } - } - } - - # Agree with scope:char_2. - option = { - name = { - trigger = { - this != scope:activity.activity_host - } - text = ep2_wedding_ewan.0001.b - } - name = { - trigger = { this = scope:activity.activity_host } - text = ep2_wedding_ewan.0001.b.host - } - flavor = ep2_wedding_ewan.0000.flavour.hobnob.char_2 - - # Apply opinion. - ep2_wedding_ewan_0000_opinion_swap_effect = { - FAVOURED_CHAR = scope:char_2 - REJECTED_CHAR = scope:char_1 - } - # Give some lifestyle XP for who you hobnob with. - ep2_wedding_ewan_0000_award_lifestyle_xp_per_conversationalist_effect = { TARGET = scope:char_2 } - - ep2_wedding_ewan_0000_host_takes_criticism_stress_gain_effect = yes - ai_chance = { - base = 1 - ai_value_modifier = { ai_sociability = 1 } - opinion_modifier = { - opinion_target = scope:char_2 - multiplier = 0.5 - } - opinion_modifier = { - opinion_target = scope:char_1 - multiplier = -0.5 - } - } - } - - # Murder: my eyes are on scope:intent_target. - option = { - name = ep2_wedding_ewan.0001.c - flavor = ep2_wedding_ewan.0001.c.tt - trigger = { has_activity_intent = murder_attendee_intent } - reason = activity_intent - - scope:intent_target = { - # They're unsettled by your staring. - add_stress = medium_stress_gain - # Then we add a little concern. - add_opinion = { - target = root - modifier = suspicion_opinion - opinion = -10 - } - } - - stress_impact = { vengeful = minor_stress_impact_loss } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_vengefulness = 1 - ai_sociability = -0.5 - } - } - } - - # Focus on the acts. - option = { - name = ep2_wedding_ewan.0001.d - - # Opinion with the activty_host, or else prestige. - ep2_wedding_ewan_0000_host_approves_effect = yes - - # We give base stress loss for this'un too. - stress_impact = { - base = minor_stress_impact_loss - shy = minor_stress_impact_loss - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_energy = -0.5 - ai_sociability = -2 - } - } - } -} - -################################################## -# Food Fit for a... -# by Ewan Cowhig Croft -# 0011 - 0020 -################################################## - -# Character likes T1 food. -scripted_trigger ep2_wedding_ewan_0011_food_t1_likes_trigger = { - OR = { - # Has more sedate food preferences. - has_trait = temperate - # Is ok with an only moderately fancy meal. - has_trait = humble - has_trait = content - # Appreciates something with a few fewer courses than usual - has_trait = impatient - # Less food, and less fancy food, means a harder time hiding poisons and other mischiefs. - has_trait = paranoid - # Prefers to eat mostly the same food, if possible. - has_trait = stubborn - } -} -# Character hates T1 food. -scripted_trigger ep2_wedding_ewan_0011_food_t1_hates_trigger = { - OR = { - # Likes plenty of exotic foods. - has_trait = gluttonous - # Prefers a large, fancy meal. - has_trait = arrogant - has_trait = ambitious - # Has the patience for incredibly long meals. - has_trait = patient - # Doesn't see why they wouldn't have more variety. - has_trait = trusting - has_trait = fickle - } -} -# Character likes T2 food. -scripted_trigger ep2_wedding_ewan_0011_food_t2_likes_trigger = { - OR = { - # Accepting of the average. - has_trait = content - has_trait = compassionate - # Likes that money was spent. - has_trait = generous - # Likes the atmosphere being high-effort but not _too_ bustling. - has_trait = calm - has_trait = patient - # Likes a middling option. - has_trait = cynical - } -} -# Character hates T2 food. -scripted_trigger ep2_wedding_ewan_0011_food_t2_hates_trigger = { - OR = { - # Hates the average. - has_trait = ambitious - has_trait = arrogant - # Would have preferred all the money, to take advantage, or else none, not to waste any. - has_trait = greedy - # Want a more bustling atmosphere that goes further than this. - has_trait = wrathful - has_trait = impatient - # Feels that if it was worth doing, it's worth doing to its best. - has_trait = zealous - } -} -# Character likes T3 food. -scripted_trigger ep2_wedding_ewan_0011_food_t3_likes_trigger = { - OR = { - # Likes plenty of exotic foods. - has_trait = gluttonous - # Prefers a large, fancy meal. - has_trait = arrogant - has_trait = ambitious - # Has the patience for incredibly long meals. - has_trait = patient - # Loves the scope and variety of strange foodstuffs. - has_trait = trusting - # Really likes variety and being able to flit. - has_trait = fickle - } -} -# Character hates T3 food. -scripted_trigger ep2_wedding_ewan_0011_food_t3_hates_trigger = { - OR = { - # Has more sedate food preferences. - has_trait = temperate - # Doesn't like showing off this much. - has_trait = humble - has_trait = content - # Can't stand the sheer number of courses. - has_trait = impatient - # Less food, and less fancy food, means a harder time hiding poisons and other mischiefs. - has_trait = paranoid - # Prefers to eat mostly the same food, if possible. - has_trait = stubborn - } -} - -# Connect with various types of characters over the food. -ep2_wedding_ewan.0011 = { - type = activity_event - title = ep2_wedding_ewan.0011.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - scope:activity = { - has_activity_option = { - category = wedding_option_food - option = wedding_food_bad - } - } - } - desc = { - desc = ep2_wedding_ewan.0011.desc.intro.bad - desc = { - random_valid = { - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = temperate } - } - desc = ep2_wedding_ewan.0011.desc.t1.love.temperate - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = humble } - } - desc = ep2_wedding_ewan.0011.desc.t1.love.humble - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = content } - } - desc = ep2_wedding_ewan.0011.desc.t1.love.content - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = impatient } - } - desc = ep2_wedding_ewan.0011.desc.t1.love.impatient - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = paranoid } - } - desc = ep2_wedding_ewan.0011.desc.t1.love.paranoid - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = stubborn } - } - desc = ep2_wedding_ewan.0011.desc.t1.love.stubborn - } - } - } - } - } - triggered_desc = { - trigger = { - scope:activity = { - has_activity_option = { - category = wedding_option_food - option = wedding_food_normal - } - } - } - desc = { - desc = ep2_wedding_ewan.0011.desc.intro.normal - desc = { - random_valid = { - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = content } - } - desc = ep2_wedding_ewan.0011.desc.t2.love.content - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = compassionate } - } - desc = ep2_wedding_ewan.0011.desc.t2.love.compassionate - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = generous } - } - desc = ep2_wedding_ewan.0011.desc.t2.love.generous - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = calm } - } - desc = ep2_wedding_ewan.0011.desc.t2.love.calm - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = patient } - } - desc = ep2_wedding_ewan.0011.desc.t2.love.patient - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = cynical } - } - desc = ep2_wedding_ewan.0011.desc.t2.love.cynical - } - } - } - } - } - desc = { - desc = ep2_wedding_ewan.0011.desc.intro.good - random_valid = { - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = gluttonous } - } - desc = ep2_wedding_ewan.0011.desc.t3.love.gluttonous - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = arrogant } - } - desc = ep2_wedding_ewan.0011.desc.t3.love.arrogant - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = ambitious } - } - desc = ep2_wedding_ewan.0011.desc.t3.love.ambitious - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = patient } - } - desc = ep2_wedding_ewan.0011.desc.t3.love.patient - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = trusting } - } - desc = ep2_wedding_ewan.0011.desc.t3.love.trusting - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = fickle } - } - desc = ep2_wedding_ewan.0011.desc.t3.love.fickle - } - } - } - } - desc = ep2_wedding_ewan.0011.desc.midtro - first_valid = { - triggered_desc = { - trigger = { - scope:activity = { - has_activity_option = { - category = wedding_option_food - option = wedding_food_bad - } - } - } - desc = { - random_valid = { - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = gluttonous } - } - desc = ep2_wedding_ewan.0011.desc.t1.hate.gluttonous - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = arrogant } - } - desc = ep2_wedding_ewan.0011.desc.t1.hate.arrogant - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = ambitious } - } - desc = ep2_wedding_ewan.0011.desc.t1.hate.ambitious - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = patient } - } - desc = ep2_wedding_ewan.0011.desc.t1.hate.patient - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = trusting } - } - desc = ep2_wedding_ewan.0011.desc.t1.hate.trusting - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = fickle } - } - desc = ep2_wedding_ewan.0011.desc.t1.hate.fickle - } - triggered_desc = { - trigger = { - scope:char_2 = { - NOR = { - has_trait = gluttonous - has_trait = arrogant - has_trait = ambitious - has_trait = patient - has_trait = trusting - has_trait = fickle - } - } - } - desc = ep2_wedding_ewan.0000.desc.hate.fallback - } - } - } - } - triggered_desc = { - trigger = { - scope:activity = { - has_activity_option = { - category = wedding_option_food - option = wedding_food_normal - } - } - } - desc = { - random_valid = { - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = ambitious } - } - desc = ep2_wedding_ewan.0011.desc.t2.hate.ambitious - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = arrogant } - } - desc = ep2_wedding_ewan.0011.desc.t2.hate.arrogant - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = greedy } - } - desc = ep2_wedding_ewan.0011.desc.t2.hate.greedy - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = wrathful } - } - desc = ep2_wedding_ewan.0011.desc.t2.hate.wrathful - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = impatient } - } - desc = ep2_wedding_ewan.0011.desc.t2.hate.impatient - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = zealous } - } - desc = ep2_wedding_ewan.0011.desc.t2.hate.zealous - } - triggered_desc = { - trigger = { - scope:char_2 = { - NOR = { - has_trait = ambitious - has_trait = arrogant - has_trait = greedy - has_trait = wrathful - has_trait = impatient - has_trait = zealous - } - } - } - desc = ep2_wedding_ewan.0000.desc.hate.fallback - } - } - } - } - desc = { - random_valid = { - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = temperate } - } - desc = ep2_wedding_ewan.0011.desc.t3.hate.temperate - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = humble } - } - desc = ep2_wedding_ewan.0011.desc.t3.hate.humble - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = content } - } - desc = ep2_wedding_ewan.0011.desc.t3.hate.content - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = impatient } - } - desc = ep2_wedding_ewan.0011.desc.t3.hate.impatient - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = paranoid } - } - desc = ep2_wedding_ewan.0011.desc.t3.hate.paranoid - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = stubborn } - } - desc = ep2_wedding_ewan.0011.desc.t3.hate.stubborn - } - triggered_desc = { - trigger = { - scope:char_2 = { - NOR = { - has_trait = temperate - has_trait = humble - has_trait = content - has_trait = impatient - has_trait = paranoid - has_trait = stubborn - } - } - } - desc = ep2_wedding_ewan.0000.desc.hate.fallback - } - } - } - } - } - theme = feast_activity - left_portrait = { - character = scope:char_1 - animation = drink_goblet - } - center_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:char_2 - animation = disapproval - } - - cooldown = { years = 1 } - - trigger = { - scope:activity = { - # T1. - trigger_if = { - limit = { - has_activity_option = { - category = wedding_option_food - option = wedding_food_bad - } - } - # Check for a character who likes the setup. - any_attending_character = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0011_food_t1_likes_trigger = yes - # Now we need to wiggle a bit to make sure they don't overlap with one who _dislikes_ the setup. - save_temporary_scope_as = char_temp - scope:activity = { - any_attending_character = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0011_food_t1_hates_trigger = yes - this != scope:char_temp - } - } - } - } - # T2. - trigger_else_if = { - limit = { - has_activity_option = { - category = wedding_option_food - option = wedding_food_normal - } - } - # Check for a character who likes the setup. - any_attending_character = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0011_food_t2_likes_trigger = yes - # Now we need to wiggle a bit to make sure they don't overlap with one who _dislikes_ the setup. - save_temporary_scope_as = char_temp - scope:activity = { - any_attending_character = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0011_food_t2_hates_trigger = yes - this != scope:char_temp - } - } - } - } - # T3. - trigger_else = { - # Check for a character who likes the setup. - any_attending_character = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0011_food_t3_likes_trigger = yes - # Now we need to wiggle a bit to make sure they don't overlap with one who _dislikes_ the setup. - save_temporary_scope_as = char_temp - scope:activity = { - any_attending_character = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0011_food_t3_hates_trigger = yes - this != scope:char_temp - } - } - } - } - } - } - - immediate = { - scope:activity = { - # Try to grab our actors. - ## T1. - if = { - limit = { - has_activity_option = { - category = wedding_option_food - option = wedding_food_bad - } - } - # Check for a character who likes the setup. - ordered_attending_character = { - # Try to grab opposing characters first. - limit = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0011_food_t1_likes_trigger = yes - ep2_wedding_ewan_0011_food_t1_hates_trigger = no - } - # Failing that, grab anyone valid. - alternative_limit = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0011_food_t1_likes_trigger = yes - } - # Make sure we're looking at interesting people. - order_by = highest_held_title_tier - save_scope_as = char_1 - } - # And for one who dislikes it. - ordered_attending_character = { - # Try to grab opposing characters first. - limit = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0011_food_t1_hates_trigger = yes - ep2_wedding_ewan_0011_food_t1_likes_trigger = no - } - # Failing that, grab anyone appropriate. - alternative_limit = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0011_food_t1_hates_trigger = yes - } - # Failing _that_, grab anyone at all. - alternative_limit = { ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes } - # Make sure we're looking at interesting people. - order_by = highest_held_title_tier - save_scope_as = char_2 - } - } - ## T2. - else_if = { - limit = { - has_activity_option = { - category = wedding_option_food - option = wedding_food_normal - } - } - # Check for a character who likes the setup. - ordered_attending_character = { - # Try to grab opposing characters first. - limit = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0011_food_t2_likes_trigger = yes - ep2_wedding_ewan_0011_food_t2_hates_trigger = no - } - # Failing that, grab anyone valid. - alternative_limit = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0011_food_t2_likes_trigger = yes - } - # Make sure we're looking at interesting people. - order_by = highest_held_title_tier - save_scope_as = char_1 - } - # And for one who dislikes it. - ordered_attending_character = { - # Try to grab opposing characters first. - limit = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0011_food_t2_hates_trigger = yes - ep2_wedding_ewan_0011_food_t2_likes_trigger = no - } - # Failing that, grab anyone appropriate. - alternative_limit = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0011_food_t2_hates_trigger = yes - } - # Failing _that_, grab anyone at all. - alternative_limit = { ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes } - # Make sure we're looking at interesting people. - order_by = highest_held_title_tier - save_scope_as = char_2 - } - } - ## T3. - else = { - # Check for a character who likes the setup. - ordered_attending_character = { - # Try to grab opposing characters first. - limit = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0011_food_t3_likes_trigger = yes - ep2_wedding_ewan_0011_food_t3_hates_trigger = no - } - # Failing that, grab anyone valid. - alternative_limit = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0011_food_t3_likes_trigger = yes - } - # Make sure we're looking at interesting people. - order_by = highest_held_title_tier - save_scope_as = char_1 - } - # And for one who dislikes it. - ordered_attending_character = { - # Try to grab opposing characters first. - limit = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0011_food_t3_hates_trigger = yes - ep2_wedding_ewan_0011_food_t3_likes_trigger = no - } - # Failing that, grab anyone appropriate. - alternative_limit = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0011_food_t3_hates_trigger = yes - } - # Failing _that_, grab anyone at all. - alternative_limit = { ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes } - # Make sure we're looking at interesting people. - order_by = highest_held_title_tier - save_scope_as = char_2 - } - } - # Now we try to process a decent activity target. - if = { - limit = { - root = { has_activity_intent = banquet_mischief_intent } - } - ordered_attending_character = { - limit = { - NOR = { - this = root - this = scope:char_1 - this = scope:char_2 - this = scope:activity.special_guest:spouse_1 - this = scope:activity.special_guest:spouse_2 - } - # No players. - is_ai = yes - } - order_by = { - # Nab opinion. - add = "opinion(root)" - # Invert it, as we want characters who hate us ranked first. - multiply = -1 - # Aaaand multiply by tier to get more interesting characters who hate us. - if = { - # Unlanded have a rank of zero, so filter this a bit. - limit = { is_landed = yes } - multiply = highest_held_title_tier - } - } - save_scope_as = intent_target - } - } - } - } - - # Agree with scope:char_1. - option = { - name = { - trigger = { - this != scope:activity.activity_host - } - text = ep2_wedding_ewan.0011.a - } - name = { - trigger = { this = scope:activity.activity_host } - text = ep2_wedding_ewan.0011.a.host - } - flavor = ep2_wedding_ewan.0000.flavour.hobnob.char_1 - - # Apply opinion. - ep2_wedding_ewan_0000_opinion_swap_effect = { - FAVOURED_CHAR = scope:char_1 - REJECTED_CHAR = scope:char_2 - } - # Give some lifestyle XP for who you hobnob with. - ep2_wedding_ewan_0000_award_lifestyle_xp_per_conversationalist_effect = { TARGET = scope:char_1 } - - ep2_wedding_ewan_0000_host_takes_criticism_stress_gain_effect = yes - ai_chance = { - base = 1 - ai_value_modifier = { ai_sociability = 1 } - opinion_modifier = { - opinion_target = scope:char_1 - multiplier = 0.5 - } - opinion_modifier = { - opinion_target = scope:char_2 - multiplier = -0.5 - } - } - } - - # Agree with scope:char_2. - option = { - name = { - trigger = { - this != scope:activity.activity_host - } - text = ep2_wedding_ewan.0011.b - } - name = { - trigger = { this = scope:activity.activity_host } - text = ep2_wedding_ewan.0011.b.host - } - flavor = ep2_wedding_ewan.0000.flavour.hobnob.char_2 - - # Apply opinion. - ep2_wedding_ewan_0000_opinion_swap_effect = { - FAVOURED_CHAR = scope:char_2 - REJECTED_CHAR = scope:char_1 - } - # Give some lifestyle XP for who you hobnob with. - ep2_wedding_ewan_0000_award_lifestyle_xp_per_conversationalist_effect = { TARGET = scope:char_2 } - - ep2_wedding_ewan_0000_host_takes_criticism_stress_gain_effect = yes - ai_chance = { - base = 1 - ai_value_modifier = { ai_sociability = 1 } - opinion_modifier = { - opinion_target = scope:char_2 - multiplier = 0.5 - } - opinion_modifier = { - opinion_target = scope:char_1 - multiplier = -0.5 - } - } - } - - # Mischief: spill something on someone. - option = { - name = ep2_wedding_ewan.0011.c - # Check for target directly, rather than just the intent, because there isn't a pre-defined intent target and we may have failed to acquire someone suitable. - trigger = { exists = scope:intent_target } - reason = activity_intent - - # You try to trip a server onto someone. - duel = { - skill = intrigue - target = scope:intent_target - # You're successful. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 10 - desc = ep2_wedding_ewan.0011.c.tt.success - send_interface_toast = { - title = ep2_wedding_ewan.0011.c.tt.success - left_icon = scope:intent_target - scope:intent_target = { - # Lose some prestige. - add_prestige = minor_prestige_loss - # Gain some stress. - add_stress = medium_stress_gain - } - } - } - # The server rights themselves. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 10 - desc = ep2_wedding_ewan.0011.c.tt.failure - send_interface_toast = { - title = ep2_wedding_ewan.0011.c.tt.failure - left_icon = scope:intent_target - # Considered borish. - add_prestige = miniscule_prestige_loss - # Plus scope:intent_target notices. - reverse_add_opinion = { - target = scope:intent_target - modifier = suspicion_opinion - opinion = -10 - } - } - } - } - - # We give base stress loss for this'un too. - stress_impact = { - base = medium_stress_impact_loss - deceitful = minor_stress_impact_loss - honest = miniscule_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_boldness = 0.5 - ai_compassion = -0.25 - ai_rationality = -0.25 - } - } - } - - # Nod along without paying attention. - option = { - name = ep2_wedding_ewan.0011.d - - # Opinion with the activty_host, or else prestige. - ep2_wedding_ewan_0000_host_approves_effect = yes - - # We give base stress loss for this'un too. - stress_impact = { - base = minor_stress_impact_loss - shy = minor_stress_impact_loss - eccentric = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_energy = -0.5 - ai_sociability = -2 - } - } - } -} - -################################################## -# Shimmering, Shining -# by Ewan Cowhig Croft -# 0021 - 0030 -################################################## - -# Character likes T1 decorations. -scripted_trigger ep2_wedding_ewan_0021_decoration_t1_likes_trigger = { - OR = { - # Appreciate it for being low-key. - has_trait = content - has_trait = lazy - has_trait = humble - # Understand that effort still went into it. - has_trait = forgiving - has_trait = compassionate - # Contrarian. - has_trait = arbitrary - # Approves of frugality. - has_trait = greedy - } -} -# Character hates T1 decorations. -scripted_trigger ep2_wedding_ewan_0021_decoration_t1_hates_trigger = { - OR = { - # Hates it for being low-key. - has_trait = ambitious - has_trait = diligent - has_trait = arrogant - # Thinks they could've done better or not hyped it up so much. - has_trait = honest - has_trait = generous - # Thinks it's just not what they expected. - has_trait = just - } -} -# Character likes T2 decorations. -scripted_trigger ep2_wedding_ewan_0021_decoration_t2_likes_trigger = { - OR = { - # Accepting of the average. - has_trait = content - has_trait = compassionate - # Likes that money was spent. - has_trait = generous - # Likes the atmosphere being high-effort but not _too_ bustling. - has_trait = calm - has_trait = patient - # Likes a middling option. - has_trait = fickle - has_trait = cynical - } -} -# Character hates T2 decorations. -scripted_trigger ep2_wedding_ewan_0021_decoration_t2_hates_trigger = { - OR = { - # Hates the average. - has_trait = ambitious - has_trait = arrogant - # Would have preferred all the money, to take advantage, or else none, not to waste any. - has_trait = greedy - # Want a more bustling atmosphere that goes further than this. - has_trait = wrathful - has_trait = impatient - # Feels that if it was worth doing, it's worth doing to its best. - has_trait = stubborn - has_trait = zealous - } -} -# Character likes T3 decorations. -scripted_trigger ep2_wedding_ewan_0021_decoration_t3_likes_trigger = { - OR = { - # Loves an over-the-top wedding. - has_trait = ambitious - has_trait = diligent - has_trait = arrogant - # Think it had the appropriate amount of effort put in. - has_trait = honest - has_trait = just - # Happy to see all the money being spent. - has_trait = greedy - has_trait = generous - } -} -# Character hates T3 decorations. -scripted_trigger ep2_wedding_ewan_0021_decoration_t3_hates_trigger = { - OR = { - # Think this might all be a bit much. - has_trait = content - has_trait = lazy - has_trait = humble - # Worry that the marriage is getting lost amidst all of this pomp. - has_trait = compassionate - # Contrarian. - has_trait = arbitrary - } -} - -# Connect with various types of characters over the venue & its decorations. -ep2_wedding_ewan.0021 = { - type = activity_event - title = ep2_wedding_ewan.0021.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - scope:activity = { - has_activity_option = { - category = wedding_option_decoration - option = wedding_decoration_bad - } - } - } - desc = { - desc = ep2_wedding_ewan.0021.desc.intro.bad - random_valid = { - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = content } - } - desc = ep2_wedding_ewan.0021.desc.t1.love.content - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = lazy } - } - desc = ep2_wedding_ewan.0021.desc.t1.love.lazy - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = humble } - } - desc = ep2_wedding_ewan.0021.desc.t1.love.humble - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = forgiving } - } - desc = ep2_wedding_ewan.0021.desc.t1.love.forgiving - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = compassionate } - } - desc = ep2_wedding_ewan.0021.desc.t1.love.compassionate - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = arbitrary } - } - desc = ep2_wedding_ewan.0021.desc.t1.love.arbitrary - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = greedy } - } - desc = ep2_wedding_ewan.0021.desc.t1.love.greedy - } - } - } - } - triggered_desc = { - trigger = { - scope:activity = { - has_activity_option = { - category = wedding_option_decoration - option = wedding_decoration_normal - } - } - } - desc = { - desc = ep2_wedding_ewan.0021.desc.intro.normal - random_valid = { - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = content } - } - desc = ep2_wedding_ewan.0021.desc.t2.love.content - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = compassionate } - } - desc = ep2_wedding_ewan.0021.desc.t2.love.compassionate - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = generous } - } - desc = ep2_wedding_ewan.0021.desc.t2.love.generous - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = calm } - } - desc = ep2_wedding_ewan.0021.desc.t2.love.calm - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = patient } - } - desc = ep2_wedding_ewan.0021.desc.t2.love.patient - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = fickle } - } - desc = ep2_wedding_ewan.0021.desc.t2.love.fickle - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = cynical } - } - desc = ep2_wedding_ewan.0021.desc.t2.love.cynical - } - } - } - } - desc = { - desc = ep2_wedding_ewan.0021.desc.intro.good - random_valid = { - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = ambitious } - } - desc = ep2_wedding_ewan.0021.desc.t3.love.ambitious - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = diligent } - } - desc = ep2_wedding_ewan.0021.desc.t3.love.diligent - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = arrogant } - } - desc = ep2_wedding_ewan.0021.desc.t3.love.arrogant - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = honest } - } - desc = ep2_wedding_ewan.0021.desc.t3.love.honest - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = just } - } - desc = ep2_wedding_ewan.0021.desc.t3.love.just - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = greedy } - } - desc = ep2_wedding_ewan.0021.desc.t3.love.greedy - } - triggered_desc = { - trigger = { - scope:char_1 = { has_trait = generous } - } - desc = ep2_wedding_ewan.0021.desc.t3.love.generous - } - } - } - } - desc = ep2_wedding_ewan.0021.desc.midtro - first_valid = { - triggered_desc = { - trigger = { - scope:activity = { - has_activity_option = { - category = wedding_option_decoration - option = wedding_decoration_bad - } - } - } - desc = { - random_valid = { - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = ambitious } - } - desc = ep2_wedding_ewan.0021.desc.t1.hate.ambitious - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = diligent } - } - desc = ep2_wedding_ewan.0021.desc.t1.hate.diligent - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = arrogant } - } - desc = ep2_wedding_ewan.0021.desc.t1.hate.arrogant - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = honest } - } - desc = ep2_wedding_ewan.0021.desc.t1.hate.honest - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = generous } - } - desc = ep2_wedding_ewan.0021.desc.t1.hate.generous - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = just } - } - desc = ep2_wedding_ewan.0021.desc.t1.hate.just - } - triggered_desc = { - trigger = { - scope:char_2 = { - NOR = { - has_trait = ambitious - has_trait = diligent - has_trait = arrogant - has_trait = honest - has_trait = generous - has_trait = just - } - } - } - desc = ep2_wedding_ewan.0000.desc.hate.fallback - } - } - } - } - triggered_desc = { - trigger = { - scope:activity = { - has_activity_option = { - category = wedding_option_decoration - option = wedding_decoration_normal - } - } - } - desc = { - random_valid = { - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = ambitious } - } - desc = ep2_wedding_ewan.0021.desc.t2.hate.ambitious - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = arrogant } - } - desc = ep2_wedding_ewan.0021.desc.t2.hate.arrogant - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = greedy } - } - desc = ep2_wedding_ewan.0021.desc.t2.hate.greedy - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = wrathful } - } - desc = ep2_wedding_ewan.0021.desc.t2.hate.wrathful - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = impatient } - } - desc = ep2_wedding_ewan.0021.desc.t2.hate.impatient - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = stubborn } - } - desc = ep2_wedding_ewan.0021.desc.t2.hate.stubborn - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = zealous } - } - desc = ep2_wedding_ewan.0021.desc.t2.hate.zealous - } - triggered_desc = { - trigger = { - scope:char_2 = { - NOR = { - has_trait = ambitious - has_trait = arrogant - has_trait = greedy - has_trait = wrathful - has_trait = impatient - has_trait = stubborn - has_trait = zealous - } - } - } - desc = ep2_wedding_ewan.0000.desc.hate.fallback - } - } - } - } - desc = { - random_valid = { - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = content } - } - desc = ep2_wedding_ewan.0021.desc.t3.hate.content - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = lazy } - } - desc = ep2_wedding_ewan.0021.desc.t3.hate.lazy - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = humble } - } - desc = ep2_wedding_ewan.0021.desc.t3.hate.humble - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = compassionate } - } - desc = ep2_wedding_ewan.0021.desc.t3.hate.compassionate - } - triggered_desc = { - trigger = { - scope:char_2 = { has_trait = arbitrary } - } - desc = ep2_wedding_ewan.0021.desc.t3.hate.arbitrary - } - triggered_desc = { - trigger = { - scope:char_2 = { - NOR = { - has_trait = content - has_trait = lazy - has_trait = humble - has_trait = compassionate - has_trait = arbitrary - } - } - } - desc = ep2_wedding_ewan.0000.desc.hate.fallback - } - } - } - } - } - theme = feast_activity - left_portrait = { - character = scope:char_1 - animation = admiration - } - center_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:char_2 - animation = disapproval - } - - cooldown = { years = 1 } - - trigger = { - scope:activity = { - # T1. - trigger_if = { - limit = { - has_activity_option = { - category = wedding_option_decoration - option = wedding_decoration_bad - } - } - # Check for a character who likes the setup. - any_attending_character = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0021_decoration_t1_likes_trigger = yes - # Now we need to wiggle a bit to make sure they don't overlap with one who _dislikes_ the setup. - save_temporary_scope_as = char_temp - scope:activity = { - any_attending_character = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0021_decoration_t1_hates_trigger = yes - this != scope:char_temp - } - } - } - } - # T2. - trigger_else_if = { - limit = { - has_activity_option = { - category = wedding_option_decoration - option = wedding_decoration_normal - } - } - # Check for a character who likes the setup. - any_attending_character = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0021_decoration_t2_likes_trigger = yes - # Now we need to wiggle a bit to make sure they don't overlap with one who _dislikes_ the setup. - save_temporary_scope_as = char_temp - scope:activity = { - any_attending_character = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0021_decoration_t2_hates_trigger = yes - this != scope:char_temp - } - } - } - } - # T3. - trigger_else = { - # Check for a character who likes the setup. - any_attending_character = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0021_decoration_t3_likes_trigger = yes - # Now we need to wiggle a bit to make sure they don't overlap with one who _dislikes_ the setup. - save_temporary_scope_as = char_temp - scope:activity = { - any_attending_character = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0021_decoration_t3_hates_trigger = yes - this != scope:char_temp - } - } - } - } - } - } - - immediate = { - # Try to grab our actors. - scope:activity = { - # T1. - if = { - limit = { - has_activity_option = { - category = wedding_option_decoration - option = wedding_decoration_bad - } - } - # Check for a character who likes the setup. - ordered_attending_character = { - # Try to grab opposing characters first. - limit = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0021_decoration_t1_likes_trigger = yes - ep2_wedding_ewan_0021_decoration_t1_hates_trigger = no - } - # Failing that, grab anyone valid. - alternative_limit = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0021_decoration_t1_likes_trigger = yes - } - # Make sure we're looking at interesting people. - order_by = highest_held_title_tier - save_scope_as = char_1 - } - # And for one who dislikes it. - ordered_attending_character = { - # Try to grab opposing characters first. - limit = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0021_decoration_t1_hates_trigger = yes - ep2_wedding_ewan_0021_decoration_t1_likes_trigger = no - } - # Failing that, grab anyone appropriate. - alternative_limit = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0021_decoration_t1_hates_trigger = yes - } - # Failing _that_, grab anyone at all. - alternative_limit = { ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes } - # Make sure we're looking at interesting people. - order_by = highest_held_title_tier - save_scope_as = char_2 - } - } - # T2. - else_if = { - limit = { - has_activity_option = { - category = wedding_option_decoration - option = wedding_decoration_normal - } - } - # Check for a character who likes the setup. - ordered_attending_character = { - # Try to grab opposing characters first. - limit = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0021_decoration_t2_likes_trigger = yes - ep2_wedding_ewan_0021_decoration_t2_hates_trigger = no - } - # Failing that, grab anyone valid. - alternative_limit = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0021_decoration_t2_likes_trigger = yes - } - # Make sure we're looking at interesting people. - order_by = highest_held_title_tier - save_scope_as = char_1 - } - # And for one who dislikes it. - ordered_attending_character = { - # Try to grab opposing characters first. - limit = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0021_decoration_t2_hates_trigger = yes - ep2_wedding_ewan_0021_decoration_t2_likes_trigger = no - } - # Failing that, grab anyone appropriate. - alternative_limit = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0021_decoration_t2_hates_trigger = yes - } - # Failing _that_, grab anyone at all. - alternative_limit = { ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes } - # Make sure we're looking at interesting people. - order_by = highest_held_title_tier - save_scope_as = char_2 - } - } - # T3. - else = { - # Check for a character who likes the setup. - ordered_attending_character = { - # Try to grab opposing characters first. - limit = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0021_decoration_t3_likes_trigger = yes - ep2_wedding_ewan_0021_decoration_t3_hates_trigger = no - } - # Failing that, grab anyone valid. - alternative_limit = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0021_decoration_t3_likes_trigger = yes - } - # Make sure we're looking at interesting people. - order_by = highest_held_title_tier - save_scope_as = char_1 - } - # And for one who dislikes it. - ordered_attending_character = { - # Try to grab opposing characters first. - limit = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0021_decoration_t3_hates_trigger = yes - ep2_wedding_ewan_0021_decoration_t3_likes_trigger = no - } - # Failing that, grab anyone appropriate. - alternative_limit = { - ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes - ep2_wedding_ewan_0021_decoration_t3_hates_trigger = yes - } - # Failing _that_, grab anyone at all. - alternative_limit = { ep2_wedding_ewan_0000_activity_option_opinion_characters_standard_filter_trigger = yes } - # Make sure we're looking at interesting people. - order_by = highest_held_title_tier - save_scope_as = char_2 - } - } - } - # If relevant, grab our intent target. - if = { - limit = { has_activity_intent = woo_attendee_intent } - intent_target = { save_scope_as = intent_target } - } - } - - # Agree with scope:char_1. - option = { - name = { - trigger = { - this != scope:activity.activity_host - } - text = ep2_wedding_ewan.0021.a - } - name = { - trigger = { this = scope:activity.activity_host } - text = ep2_wedding_ewan.0021.a.host - } - flavor = ep2_wedding_ewan.0000.flavour.hobnob.char_1 - - # Apply opinion. - ep2_wedding_ewan_0000_opinion_swap_effect = { - FAVOURED_CHAR = scope:char_1 - REJECTED_CHAR = scope:char_2 - } - # Give some lifestyle XP for who you hobnob with. - ep2_wedding_ewan_0000_award_lifestyle_xp_per_conversationalist_effect = { TARGET = scope:char_1 } - - ep2_wedding_ewan_0000_host_takes_criticism_stress_gain_effect = yes - ai_chance = { - base = 1 - ai_value_modifier = { ai_sociability = 1 } - opinion_modifier = { - opinion_target = scope:char_1 - multiplier = 0.5 - } - opinion_modifier = { - opinion_target = scope:char_2 - multiplier = -0.5 - } - } - } - - # Agree with scope:char_2. - option = { - name = { - trigger = { - this != scope:activity.activity_host - } - text = ep2_wedding_ewan.0021.b - } - name = { - trigger = { this = scope:activity.activity_host } - text = ep2_wedding_ewan.0021.b.host - } - flavor = ep2_wedding_ewan.0000.flavour.hobnob.char_2 - - # Apply opinion. - ep2_wedding_ewan_0000_opinion_swap_effect = { - FAVOURED_CHAR = scope:char_2 - REJECTED_CHAR = scope:char_1 - } - # Give some lifestyle XP for who you hobnob with. - ep2_wedding_ewan_0000_award_lifestyle_xp_per_conversationalist_effect = { TARGET = scope:char_2 } - - ep2_wedding_ewan_0000_host_takes_criticism_stress_gain_effect = yes - ai_chance = { - base = 1 - ai_value_modifier = { ai_sociability = 1 } - opinion_modifier = { - opinion_target = scope:char_2 - multiplier = 0.5 - } - opinion_modifier = { - opinion_target = scope:char_1 - multiplier = -0.5 - } - } - } - - # Seduce: try to chat your target up. - option = { - name = ep2_wedding_ewan.0021.c - trigger = { has_activity_intent = woo_attendee_intent } - reason = activity_intent - - # Sprinkle a bit of opinion in there. - reverse_add_opinion = { - target = scope:intent_target - modifier = flattered_opinion - opinion = 30 - } - - if = { - limit = { - OR = { - root = scope:activity.special_guest:spouse_1 - root = scope:activity.special_guest:spouse_2 - } - OR = { - scope:intent_target = scope:activity.special_guest:spouse_1 - scope:intent_target = scope:activity.special_guest:spouse_2 - } - can_set_relation_soulmate_trigger = { CHARACTER = scope:intent_target } - } - random = { - chance = 5 - set_relation_soulmate = { reason = soulmate_wedding_accepting_partner target = scope:intent_target } - # Achievements - player_succeeded_at_a_thousand_and_one_nights_achievement_effect = yes - } - } - - stress_impact = { - chaste = miniscule_stress_impact_gain - lustful = minor_stress_impact_loss - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_boldness = 1 - ai_rationality = -0.5 - } - } - } - - # Don't get involved. - option = { - name = ep2_wedding_ewan.0021.d - - # Opinion with the activty_host, or else prestige. - ep2_wedding_ewan_0000_host_approves_effect = yes - - # We give base stress loss for this'un too. - stress_impact = { - base = minor_stress_impact_loss - shy = minor_stress_impact_loss - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_energy = -0.5 - ai_sociability = -2 - } - } - } -} - -################################################## -# A Sociable Supper -# by Ewan Cowhig Croft -# 0031 - 0040 -################################################## - -scripted_trigger ep2_wedding_ewan_0031_appropriate_ruler_trigger = { - # Are they an appropriately landed ruler? - highest_held_title_tier >= { - # Grab root's tier. - value = root.highest_held_title_tier - # Now subtract one so that we allow for direct vassals. - add = -1 - # Counts & above only. - min = 2 - } - # Make sure they don't hate root's guts already? - opinion = { - target = root - value >= high_negative_opinion - } - NOR = { - # No family. - is_close_family_of = root - is_consort_of = root - # No prior relations. - has_any_good_relationship_with_character_trigger = { CHARACTER = root } - has_any_bad_relationship_with_character_trigger = { CHARACTER = root } - } - # No players. - is_ai = no -} - -scripted_effect ep2_wedding_ewan_0031_social_climber_stress_effect = { - stress_impact = { - gregarious = minor_stress_impact_loss - ambitious = minor_stress_impact_loss - shy = miniscule_stress_impact_gain - content = miniscule_stress_impact_gain - } -} - -scripted_effect ep2_wedding_ewan_0031_make_friend_effect = { - # Become friends. - set_relation_friend = { - target = $TARGET$ - reason = befriended_at_feast - province = scope:activity.activity_location - } - # Plus some opinion for the sake of it. - reverse_add_opinion = { - target = $TARGET$ - modifier = friendliness_opinion - opinion = 15 - } -} - -# Meet one of your neighbouring rulers and form a fast friendship. -ep2_wedding_ewan.0031 = { - type = activity_event - title = ep2_wedding_ewan.0031.t - desc = { - desc = ep2_wedding_ewan.0031.desc.intro - # Our first character. - first_valid = { - triggered_desc = { - trigger = { scope:conversationalist_neighbour ?= scope:char_1 } - desc = ep2_wedding_ewan.0031.desc.char_1.conversationalist_neighbour - } - triggered_desc = { - trigger = { scope:conversationalist_covassal ?= scope:char_1 } - desc = ep2_wedding_ewan.0031.desc.char_1.conversationalist_covassal - } - triggered_desc = { - trigger = { scope:conversationalist_vassal ?= scope:char_1 } - desc = ep2_wedding_ewan.0031.desc.char_1.conversationalist_vassal - } - triggered_desc = { - trigger = { scope:conversationalist_liege ?= scope:char_1 } - desc = ep2_wedding_ewan.0031.desc.char_1.conversationalist_liege - } - triggered_desc = { - trigger = { scope:conversationalist_other_ruler ?= scope:char_1 } - desc = ep2_wedding_ewan.0031.desc.char_1.conversationalist_other_ruler - } - triggered_desc = { - trigger = { scope:conversationalist_backup ?= scope:char_1 } - desc = ep2_wedding_ewan.0031.desc.char_1.conversationalist_backup - } - } - desc = ep2_wedding_ewan.0031.desc.midro - # Our second character. - first_valid = { - triggered_desc = { - trigger = { scope:conversationalist_neighbour ?= scope:char_2 } - desc = ep2_wedding_ewan.0031.desc.char_2.conversationalist_neighbour - } - triggered_desc = { - trigger = { scope:conversationalist_covassal ?= scope:char_2 } - desc = ep2_wedding_ewan.0031.desc.char_2.conversationalist_covassal - } - triggered_desc = { - trigger = { scope:conversationalist_vassal ?= scope:char_2 } - desc = ep2_wedding_ewan.0031.desc.char_2.conversationalist_vassal - } - triggered_desc = { - trigger = { scope:conversationalist_liege ?= scope:char_2 } - desc = ep2_wedding_ewan.0031.desc.char_2.conversationalist_liege - } - triggered_desc = { - trigger = { scope:conversationalist_other_ruler ?= scope:char_2 } - desc = ep2_wedding_ewan.0031.desc.char_2.conversationalist_other_ruler - } - triggered_desc = { - trigger = { scope:conversationalist_backup ?= scope:char_2 } - desc = ep2_wedding_ewan.0031.desc.char_2.conversationalist_backup - } - } - desc = ep2_wedding_ewan.0031.desc.outro - } - theme = feast_activity - left_portrait = { - character = scope:char_1 - animation = boredom - } - right_portrait = { - character = scope:char_2 - animation = happiness - } - - cooldown = { years = 1 } - - trigger = { - trigger_if = { - limit = { - is_ai = yes - } - static_group_filter = { - group = ep2_wedding_ewan.0031 - match = 0.1 - } - } - scope:activity = { - any_attending_character = { - count >= 2 - ep2_wedding_ewan_0031_appropriate_ruler_trigger = yes - } - } - } - - immediate = { - # Let's pick some characters! - ## First, grab everyone we might want to pick through. - scope:activity = { - every_attending_character = { - limit = { ep2_wedding_ewan_0031_appropriate_ruler_trigger = yes } - add_to_list = potential_conversationalists_list - } - } - ## Now, we need to try and filter them out by categories. - ### Neighbouring rulers. - #### This one is expensive, so we restrict it to players. - if = { - limit = { is_ai = no } - # Right, we're actually going to post-filter by these guys later on too, so we want to grab all of them the first time we iterate rather than do it twice. - every_in_list = { - list = potential_conversationalists_list - limit = { - OR = { - any_neighboring_and_across_water_realm_same_rank_owner = { this = root } - any_neighboring_and_across_water_top_liege_realm_owner = { this = root } - } - } - add_to_list = neighbouring_conversationalists_list - } - # Now we can go through and grab the best one. - ordered_in_list = { - list = neighbouring_conversationalists_list - # Order by military strength for the most interesting realpolitik choice. - order_by = max_military_strength - # Grab the most suitable for later checks & randomisation. - save_scope_as = conversationalist_neighbour - add_to_list = contending_characters_list - } - } - ### Fellow vassals or one of your lieges. - #### No point iterating through the list repeatedly if we aren't independent. - if = { - limit = { exists = liege } - # Fellow vassals. - ordered_in_list = { - list = potential_conversationalists_list - limit = { liege ?= root.liege } - # Order by military strength for the most interesting realpolitik choice. - order_by = max_military_strength - # Grab the most suitable for later checks & randomisation. - save_scope_as = conversationalist_covassal - add_to_list = contending_characters_list - } - # Lieges. - ordered_in_list = { - list = potential_conversationalists_list - limit = { - save_temporary_scope_as = char_temp - root = { - any_liege_or_above = { this = scope:char_temp } - } - } - # Lieges use a slightly weirder prio-order, since their military strength is less relevant. - order_by = { - # We want to befriend the most powerful person we can, as they're the most interesting. - value = highest_held_title_tier - # _But_, your direct liege is still the best, as they have much more impact on your general rule. - if = { - limit = { this = root.liege } - add = 10 - } - } - # Grab the most suitable for later checks & randomisation. - save_scope_as = conversationalist_liege - add_to_list = contending_characters_list - } - } - ### Direct vassals. - ordered_in_list = { - list = potential_conversationalists_list - limit = { liege ?= root } - # Order by military strength for the most interesting realpolitik choice. - order_by = max_military_strength - # Grab the most suitable for later checks & randomisation. - save_scope_as = conversationalist_vassal - add_to_list = contending_characters_list - } - ### Distant rulers. - ordered_in_list = { - list = potential_conversationalists_list - limit = { - NOR = { - top_liege = root.top_liege - # If we don't have a neighbouring conversationalists list, then this allows the AI to befriend non-realm rulers, and if we do, then this stops us checking through all that smeg again. - trigger_if = { - limit = { - any_in_list = { - list = neighbouring_conversationalists_list - count >= 1 - } - } - is_in_list = neighbouring_conversationalists_list - } - } - } - # Order by military strength for the most interesting realpolitik choice. - order_by = max_military_strength - # Grab the most suitable for later checks & randomisation. - save_scope_as = conversationalist_other_ruler - add_to_list = contending_characters_list - } - ## If we didn't have multiple interesting categories, generate a backup. - if = { - limit = { - calc_true_if = { - amount <= 1 - NOT = { exists = scope:conversationalist_neighbour } - NOT = { exists = scope:conversationalist_covassal } - NOT = { exists = scope:conversationalist_vassal } - NOT = { exists = scope:conversationalist_liege } - NOT = { exists = scope:conversationalist_other_ruler } - } - } - ordered_in_list = { - list = potential_conversationalists_list - limit = { - NOR = { - scope:conversationalist_neighbour ?= this - scope:conversationalist_covassal ?= this - scope:conversationalist_vassal ?= this - scope:conversationalist_liege ?= this - scope:conversationalist_other_ruler ?= this - } - } - # Grab the most suitable for later checks & randomisation. - save_scope_as = conversationalist_backup - add_to_list = contending_characters_list - } - } - # Ok, characters are assembled. Grab our favourite candidates. - ## Grab one. - random_in_list = { - list = contending_characters_list - # This character isn't having a great time at the party, so we try to pick the less sociable char first. - limit = { has_trait = shy } - alternative_limit = { - NOT = { has_trait = gregarious } - } - alternative_limit = { always = yes } - save_scope_as = char_1 - } - ## Then another. - random_in_list = { - list = contending_characters_list - limit = { - this != scope:char_1 - # No trait checks needed here — there's only one character remaining in the list now. - } - save_scope_as = char_2 - } - } - - # Neighbouring ruler. - option = { - name = ep2_wedding_ewan.0031.a - trigger = { - OR = { - scope:conversationalist_neighbour ?= scope:char_1 - scope:conversationalist_neighbour ?= scope:char_2 - } - } - - # Become friends. - ep2_wedding_ewan_0031_make_friend_effect = { TARGET = scope:conversationalist_neighbour } - - ep2_wedding_ewan_0031_social_climber_stress_effect = yes - ai_chance = { - base = 1 - ai_value_modifier = { ai_sociability = 1 } - opinion_modifier = { opinion_target = scope:conversationalist_neighbour } - } - } - - # Fellow vassal. - option = { - name = ep2_wedding_ewan.0031.b - trigger = { - OR = { - scope:conversationalist_covassal ?= scope:char_1 - scope:conversationalist_covassal ?= scope:char_2 - } - } - - # Become friends. - ep2_wedding_ewan_0031_make_friend_effect = { TARGET = scope:conversationalist_covassal } - - ep2_wedding_ewan_0031_social_climber_stress_effect = yes - ai_chance = { - base = 1 - ai_value_modifier = { ai_sociability = 1 } - opinion_modifier = { opinion_target = scope:conversationalist_covassal } - } - } - - # Direct vassal. - option = { - name = ep2_wedding_ewan.0031.c - trigger = { - OR = { - scope:conversationalist_vassal ?= scope:char_1 - scope:conversationalist_vassal ?= scope:char_2 - } - } - - # Become friends. - ep2_wedding_ewan_0031_make_friend_effect = { TARGET = scope:conversationalist_vassal } - - ep2_wedding_ewan_0031_social_climber_stress_effect = yes - ai_chance = { - base = 1 - ai_value_modifier = { ai_sociability = 1 } - opinion_modifier = { opinion_target = scope:conversationalist_vassal } - } - } - - # Liege. - option = { - name = ep2_wedding_ewan.0031.d - trigger = { - OR = { - scope:conversationalist_liege ?= scope:char_1 - scope:conversationalist_liege ?= scope:char_2 - } - } - - # Become friends. - ep2_wedding_ewan_0031_make_friend_effect = { TARGET = scope:conversationalist_liege } - - ep2_wedding_ewan_0031_social_climber_stress_effect = yes - ai_chance = { - base = 1 - ai_value_modifier = { ai_sociability = 1 } - opinion_modifier = { opinion_target = scope:conversationalist_liege } - } - } - - # Distant ruler. - option = { - name = ep2_wedding_ewan.0031.e - trigger = { - OR = { - scope:conversationalist_other_ruler ?= scope:char_1 - scope:conversationalist_other_ruler ?= scope:char_2 - } - } - - # Become friends. - ep2_wedding_ewan_0031_make_friend_effect = { TARGET = scope:conversationalist_other_ruler } - - ep2_wedding_ewan_0031_social_climber_stress_effect = yes - ai_chance = { - base = 1 - ai_value_modifier = { ai_sociability = 1 } - opinion_modifier = { opinion_target = scope:conversationalist_other_ruler } - } - } - - # Backup option. - option = { - name = ep2_wedding_ewan.0031.f - trigger = { - OR = { - scope:conversationalist_backup ?= scope:char_1 - scope:conversationalist_backup ?= scope:char_2 - } - } - - # Become friends. - ep2_wedding_ewan_0031_make_friend_effect = { TARGET = scope:conversationalist_backup } - - ep2_wedding_ewan_0031_social_climber_stress_effect = yes - ai_chance = { - base = 1 - ai_value_modifier = { ai_sociability = 1 } - opinion_modifier = { opinion_target = scope:conversationalist_backup } - } - } - - # Recreation: this isn't the time for such ladder-climbing. - option = { - name = ep2_wedding_ewan.0031.g - trigger = { has_activity_intent = reduce_stress_intent } - reason = activity_intent - - # Decent middling prestige. - add_prestige = medium_prestige_gain - - # We give base stress loss for this'un too. - stress_impact = { - base = major_stress_impact_loss - shy = medium_stress_impact_loss - lazy = medium_stress_impact_loss - gregarious = miniscule_stress_impact_gain - ambitious = miniscule_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_sociability = -0.25 - ai_energy = -0.5 - ai_boldness = -1 - } - } - } - - # Mmm. They're not that interesting. - option = { - name = ep2_wedding_ewan.0031.h - trigger = { - NOT = { has_activity_intent = reduce_stress_intent } - } - - # Consolation prestige. - add_prestige = minor_prestige_gain - - stress_impact = { - shy = minor_stress_impact_loss - gregarious = miniscule_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_sociability = -2 } - } - } -} - -################################################## -# Speech! Speech! -# by Ewan Cowhig Croft -# 0041 - 0050 -################################################## - -scripted_effect ep2_wedding_ewan_0041_offended_couple_effect = { - # You hath offended them. - if = { - limit = { - # Double-check we're not double-dipping on opinion. - scope:host != scope:spouse_1 - } - reverse_add_opinion = { - target = scope:spouse_1 - modifier = insult_opinion - opinion = -10 - } - } - if = { - limit = { - # Double-check we're not double-dipping on opinion. - scope:host != scope:spouse_2 - } - reverse_add_opinion = { - target = scope:spouse_2 - modifier = insult_opinion - opinion = -10 - } - } -} - -scripted_effect ep2_wedding_ewan_0041_duel_with_highest_social_skill_effect = { - duel = { - skill = $SKILL$ - value = high_skill_rating - # I can't BELIEVE that's true! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep2_wedding_ewan.0041.g.tt.success - send_interface_toast = { - title = ep2_wedding_ewan.0041.g.tt.success - # Your finger is clearly on the pulse. - add_prestige = medium_prestige_gain - # Plus gain some XP in the relevant lifestyle. - add_$SKILL$_lifestyle_xp = major_lifestyle_xp - } - } - # Salacious, but clearly bollocks. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 10 - desc = ep2_wedding_ewan.0041.g.tt.failure - send_interface_toast = { - title = ep2_wedding_ewan.0041.g.tt.failure - # No one believes you. - add_prestige = minor_prestige_loss - } - } - } -} - -# Make a speech to the happy couple, adjusting the meaning to your intent. -ep2_wedding_ewan.0041 = { - type = activity_event - title = ep2_wedding_ewan.0041.t - desc = { - desc = ep2_wedding_ewan.0041.desc.intro - first_valid = { - # Murder. - triggered_desc = { - trigger = { has_activity_intent = murder_attendee_intent } - desc = ep2_wedding_ewan.0041.desc.murder - } - # Seduce. - triggered_desc = { - trigger = { has_activity_intent = woo_attendee_intent } - desc = ep2_wedding_ewan.0041.desc.seduce - } - # Diplomacy. - triggered_desc = { - trigger = { has_activity_intent = diplomatic_intent } - desc = ep2_wedding_ewan.0041.desc.diplomacy - } - # Matchmaking. - triggered_desc = { - trigger = { has_activity_intent = matchmaking_intent } - desc = ep2_wedding_ewan.0041.desc.matchmaking - } - # Mischief. - triggered_desc = { - trigger = { has_activity_intent = banquet_mischief_intent } - desc = ep2_wedding_ewan.0041.desc.mischief - } - # Recreation. - desc = ep2_wedding_ewan.0041.desc.recreation - } - desc = ep2_wedding_ewan.0041.desc.outro - } - theme = feast_activity - left_portrait = { - character = root - animation = admiration - } - right_portrait = { - character = scope:spouse_1 - animation = personality_honorable - } - center_portrait = { - character = scope:spouse_2 - animation = happiness - } - lower_right_portrait = scope:intent_target - - cooldown = { years = 1 } - - trigger = { - NOR = { - this = scope:activity.special_guest:spouse_1 - this = scope:activity.special_guest:spouse_2 - } - } - - immediate = { - # Save the spouses for ease of reference. - scope:activity.special_guest:spouse_1 = { save_scope_as = spouse_1 } - scope:activity.special_guest:spouse_2 = { save_scope_as = spouse_2 } - # And, if we've got one, our intent target. - intent_target ?= { save_scope_as = intent_target } - } - - # Praise the happy couple, as expected. - option = { - name = ep2_wedding_ewan.0041.a - - # Gain opinion with the happy couple. - reverse_add_opinion = { - target = scope:spouse_1 - modifier = kindness_opinion - opinion = 30 - } - reverse_add_opinion = { - target = scope:spouse_2 - modifier = kindness_opinion - opinion = 30 - } - - stress_impact = { - just = miniscule_stress_impact_loss - compassionate = minor_stress_impact_loss - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_honor = 1 - ai_compassion = 0.5 - } - } - } - - # Recreation: praise the party. - option = { - name = ep2_wedding_ewan.0041.b - trigger = { has_activity_intent = reduce_stress_intent } - reason = activity_intent - - # If you're the host, gain prestige. - if = { - limit = { this = scope:host } - add_prestige = medium_prestige_gain - } - # Otherwise, gain some prestige + opinion with the host. - else = { - add_prestige = minor_prestige_gain - reverse_add_opinion = { - target = scope:host - modifier = pleased_opinion - opinion = 20 - } - } - # Annoy the spouses. - ep2_wedding_ewan_0041_offended_couple_effect = yes - - stress_impact = { - arbitrary = miniscule_stress_impact_loss - gregarious = minor_stress_impact_loss - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_sociability = 0.75 - ai_honor = -0.5 - } - } - } - - # Murder: stare at your target to cause them stress. - option = { - name = ep2_wedding_ewan.0041.c - trigger = { has_activity_intent = murder_attendee_intent } - reason = activity_intent - - scope:intent_target = { - # They're a bit freaked out. - add_stress = major_stress_gain - # And concerned about what you're implying. - add_opinion = { - target = root - modifier = suspicion_opinion - opinion = -20 - } - } - # Annoy the spouses. - ep2_wedding_ewan_0041_offended_couple_effect = yes - - stress_impact = { - arbitrary = miniscule_stress_impact_loss - greedy = miniscule_stress_impact_loss - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_vengefulness = 1 - ai_honor = -0.5 - } - } - } - - # Seduce: make eyes at your seduction target. - option = { - name = ep2_wedding_ewan.0041.d - trigger = { has_activity_intent = woo_attendee_intent } - reason = activity_intent - - # You try to keep it juuuuust about down-low. - duel = { - skill = intrigue - target = scope:intent_target - # They appreciate the hints. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 10 - desc = ep2_wedding_ewan.0041.d.tt.success - send_interface_toast = { - title = ep2_wedding_ewan.0041.d.tt.success - left_icon = scope:intent_target - # Always gain opinion with them. - reverse_add_opinion = { - target = scope:intent_target - modifier = flustered_opinion - opinion = 20 - } - # If possible, they grow interested in you. - if = { - limit = { - OR = { - root = scope:activity.special_guest:spouse_1 - root = scope:activity.special_guest:spouse_2 - } - OR = { - scope:intent_target = scope:activity.special_guest:spouse_1 - scope:intent_target = scope:activity.special_guest:spouse_2 - } - can_set_relation_soulmate_trigger = { CHARACTER = scope:intent_target } - } - random = { - chance = 5 - set_relation_soulmate = { reason = soulmate_wedding_accepting_partner target = scope:intent_target } - # Achievements - player_succeeded_at_a_thousand_and_one_nights_achievement_effect = yes - } - } - else_if = { - limit = { - can_set_relation_potential_lover_trigger = { CHARACTER = scope:intent_target } - } - set_relation_potential_lover = scope:intent_target - } - } - } - # They're publically embarrassed. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 10 - desc = ep2_wedding_ewan.0041.d.tt.failure - send_interface_toast = { - title = ep2_wedding_ewan.0041.d.tt.failure - left_icon = scope:intent_target - add_prestige = minor_prestige_loss - reverse_add_opinion = { - target = scope:intent_target - modifier = disgusted_opinion - opinion = -20 - } - } - } - } - # Annoy the spouses. - ep2_wedding_ewan_0041_offended_couple_effect = yes - - stress_impact = { - arbitrary = miniscule_stress_impact_loss - lustful = miniscule_stress_impact_loss - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_boldness = 1 - ai_honor = -0.5 - } - } - } - - # Diplomacy: opinion gain with every landed ruler attending. - option = { - name = ep2_wedding_ewan.0041.e - trigger = { has_activity_intent = diplomatic_intent } - reason = activity_intent - - # Try to give a big, impressive speech. - duel = { - skill = diplomacy - value = extremely_high_skill_rating - # You gain opinion with every attending landed character, plus some prestige. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 10 - desc = ep2_wedding_ewan.0041.e.tt.success - send_interface_toast = { - title = ep2_wedding_ewan.0041.e.tt.success - scope:activity = { - every_attending_character = { - limit = { - is_ruler = yes - this != root - } - custom = custom.every_landed_activity_guest - reverse_add_opinion = { - target = root - modifier = respect_opinion - opinion = 20 - } - } - } - add_prestige = minor_prestige_gain - } - } - # You just gain the prestige. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 10 - desc = ep2_wedding_ewan.0041.e.tt.failure - send_interface_toast = { - title = ep2_wedding_ewan.0041.e.tt.failure - # Consolation prestige. - add_prestige = minor_prestige_gain - } - } - } - # Annoy the spouses. - ep2_wedding_ewan_0041_offended_couple_effect = yes - - stress_impact = { - arbitrary = miniscule_stress_impact_loss - ambitious = miniscule_stress_impact_loss - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_boldness = 1 - ai_honor = -0.5 - } - } - } - - # Matchmaking: talk up your char of choice. - option = { - name = ep2_wedding_ewan.0041.f - trigger = { has_activity_intent = matchmaking_intent } - reason = activity_intent - - # Gain opinion with scope:activity_intent. - reverse_add_opinion = { - target = scope:intent_target - modifier = pleased_opinion - opinion = 20 - } - # Plus they get a neat modifier. - scope:intent_target = { - add_character_modifier = { - modifier = ep2_wedding_ewan_0041_attraction_modifier - years = 15 - } - } - # Annoy the spouses. - ep2_wedding_ewan_0041_offended_couple_effect = yes - - stress_impact = { - arbitrary = miniscule_stress_impact_loss - compassionate = miniscule_stress_impact_loss - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_boldness = 1 - ai_honor = -0.5 - } - } - } - - # Mischief: try to start some rumours. - option = { - name = ep2_wedding_ewan.0041.g - trigger = { has_activity_intent = banquet_mischief_intent } - reason = activity_intent - - # We take your highest of diplomacy or intrigue and let you duel against it. - if = { - limit = { diplomacy > intrigue } - ep2_wedding_ewan_0041_duel_with_highest_social_skill_effect = { SKILL = diplomacy } - } - else = { - ep2_wedding_ewan_0041_duel_with_highest_social_skill_effect = { SKILL = intrigue } - } - # Annoy the spouses. - ep2_wedding_ewan_0041_offended_couple_effect = yes - - stress_impact = { - arbitrary = miniscule_stress_impact_loss - deceitful = miniscule_stress_impact_loss - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_boldness = 1 - ai_honor = -0.5 - } - } - } - - # Shy: awkwardly sit back down without saying anything. - option = { - name = ep2_wedding_ewan.0041.h - trigger = { has_trait = shy } - trait = shy - - # The couple are confused. - reverse_add_opinion = { - target = scope:spouse_1 - modifier = confusion_opinion - opinion = -10 - } - reverse_add_opinion = { - target = scope:spouse_2 - modifier = confusion_opinion - opinion = -10 - } - - # SWEET RELIEF. - stress_impact = { shy = massive_stress_impact_loss } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_boldness = -1 - ai_sociability = -1 - } - } - } - - # Say something sweet but perfunctory. - option = { - name = ep2_wedding_ewan.0041.i - trigger = { - NOT = { has_trait = shy } - } - - # They're pleased, but not _as_pleased. - reverse_add_opinion = { - target = scope:spouse_1 - modifier = kindness_opinion - opinion = 10 - } - reverse_add_opinion = { - target = scope:spouse_2 - modifier = kindness_opinion - opinion = 10 - } - - # We most give base stress loss for this'un. - stress_impact = { - base = medium_stress_loss - lazy = miniscule_stress_impact_loss - compassionate = miniscule_stress_impact_loss - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_honor = 0.5 - ai_energy = -1 - } - } - } -} - -################################################## -# And Another Thing -# by Ewan Cowhig Croft -# 0051 - 0060 -################################################## - -# Zealous same-faith chars don't mind hearing these things. -scripted_trigger ep2_wedding_ewan_0051_boring_zeal_trigger = { - has_trait = zealous - NOT = { - faith = root.faith - root = { has_trait = zealous } - } -} - -# Make sure a rakish character wouldn't get in legal trouble talking about this (fornication is included in adultery logic). -scripted_trigger ep2_wedding_ewan_0051_legal_rake_trigger = { - has_trait = rakish - save_temporary_scope_as = char_temp - NOT = { - trait_is_criminal_in_faith_trigger = { - TRAIT = trait:adulterer - FAITH = scope:char_temp.faith - GENDER_CHARACTER = scope:char_temp - } - } -} - -# Profligates fall for someone else's scam, so paranoid profligates are immune to this *specific* form of money loss. -scripted_trigger ep2_wedding_ewan_0051_foolish_profligate_trigger = { - has_trait = profligate - NOT = { has_trait = paranoid } -} - -# Pick someone with nothing interesting to say. -scripted_trigger ep2_wedding_ewan_0051_dolt_trigger = { - # We don't want important characters. - highest_held_title_tier <= tier_barony - # Must be verifiably a yawn. - ## Filter out anyone who can probably hold an interesting conversation. - NOR = { - has_trait = gregarious - has_trait = diplomat - diplomacy >= high_skill_rating - learning >= high_skill_rating - # Shy characters will also never do this. - has_trait = shy - } - ## Filter out people who don't make sense or who you might listen to. - NOR = { - this = root - root.intent_target ?= this - has_any_good_relationship_with_character_trigger = { CHARACTER = root } - } - ## Now, ensure they've got an actively boring quality to discuss. - OR = { - # Won't stop talking about work. - has_trait = diligent - # Won't stop talking at all, relentlessly. - has_trait = patient - # Won't stick to the same subject. - has_trait = impatient - # Doesn't see any of the obvious flaws in their idea. - has_trait = arrogant - # Idea makes no sense. - has_trait = arbitrary - # Boring religious talk. - ep2_wedding_ewan_0051_boring_zeal_trigger = yes - # Can't stick to an idea. - has_trait = fickle - # Idea is hyper-focused on disproportionately screwing someone over. - has_trait = vengeful - # Idea is long-winded. - has_trait = lifestyle_poet - # Stress traits want you to go in on their stress-related emporium. - ## Pub. - has_trait = drunkard - ## Cake shop. - has_trait = hashishiyah - ## Brothel. - ep2_wedding_ewan_0051_legal_rake_trigger = yes - ## Some kind of isolation tower. - has_trait = reclusive - ## Whipping. Place. Whiptorium? Whiplaza? - has_trait = flagellant - ## It's someone else's idea and obviously a scam. - ep2_wedding_ewan_0051_foolish_profligate_trigger = yes - ## Want to open a library for journals. - ### Honestly this one is kinda rad, I feel, but I guess I'm boring. - has_trait = journaller - ## Gym. - has_trait = athletic - } -} - -# Triggers for whether you get the option to invest in a specific stress trait pitch. -scripted_trigger ep2_wedding_ewan_0051_interested_stress_pitch_trait_drunkard_trigger = { - has_trait = drunkard - scope:stress_pitch ?= flag:drunkard -} -scripted_trigger ep2_wedding_ewan_0051_interested_stress_pitch_trait_hashishiyah_trigger = { - has_trait = hashishiyah - scope:stress_pitch ?= flag:hashishiyah -} -scripted_trigger ep2_wedding_ewan_0051_interested_stress_pitch_trait_rakish_trigger = { - has_trait = rakish - scope:stress_pitch ?= flag:rakish -} -scripted_trigger ep2_wedding_ewan_0051_interested_stress_pitch_trait_reclusive_trigger = { - has_trait = reclusive - scope:stress_pitch ?= flag:reclusive -} -scripted_trigger ep2_wedding_ewan_0051_interested_stress_pitch_trait_flagellant_trigger = { - OR = { - has_trait = flagellant - # *sigh* And we acknowledge ulterior motives. - has_trait = deviant - any_secret = { type = secret_deviant } - } - scope:stress_pitch ?= flag:flagellant -} -scripted_trigger ep2_wedding_ewan_0051_interested_stress_pitch_trait_profligate_trigger = { - has_trait = profligate - scope:stress_pitch ?= flag:profligate -} -scripted_trigger ep2_wedding_ewan_0051_interested_stress_pitch_trait_journaller_trigger = { - has_trait = journaller - scope:stress_pitch ?= flag:journaller -} -scripted_trigger ep2_wedding_ewan_0051_interested_stress_pitch_trait_athletic_trigger = { - has_trait = athletic - scope:stress_pitch ?= flag:athletic -} - -# Stress for not being a dick to a boring, boring person. -scripted_effect ep2_wedding_ewan_0051_compassion_to_dolt_effect = { - stress_impact = { - compassionate = minor_stress_impact_loss - patient = minor_stress_impact_loss - calm = minor_stress_impact_loss - callous = miniscule_stress_impact_gain - sadistic = miniscule_stress_impact_gain - impatient = miniscule_stress_impact_gain - wrathful = miniscule_stress_impact_gain - } -} - -# Loss stress when indulging a stress coping trait. -scripted_effect ep2_wedding_ewan_0051_stress_trait_stress_effect = { - stress_impact = { - $STRESS_TRAIT$ = massive_stress_impact_loss - trusting = miniscule_stress_impact_loss - diligent = miniscule_stress_impact_loss - paranoid = miniscule_stress_impact_gain - lazy = miniscule_stress_impact_gain - } -} - -# You start a business based around a shared stress coping trait. -scripted_effect ep2_wedding_ewan_0051_start_business_together_effect = { - # Up-front costs for the both of you. - remove_short_term_gold = major_gold_value - scope:dolt = { remove_short_term_gold = major_gold_value } - # Inform that this may not bear fruit for many years. - custom_tooltip = ep2_wedding_ewan.0051.business_venture.tt - hidden_effect = { - # Log that we're waiting on our last venture. - add_character_flag = awaiting_ep2_wedding_ewan_0051_results_flag - # Now, do a hidden duel for this'un. - duel = { - skill = stewardship - value = dolt_stewardship_adjusted_difficulty_value - # It goes well. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - # Weight down if this is a profligacy thing, as that's the surest-loss. - modifier = { - add = -10 - scope:stress_pitch ?= flag:profligate - } - # You always have a very, very slight shot. - min = 2 - # Congrats! - trigger_event = { - id = ep2_wedding_ewan.0052 - years = { 15 25 } - } - } - # It goes poorly. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - # Weight up if this is a profligacy thing, as that's the surest-loss. - modifier = { - add = 10 - scope:stress_pitch ?= flag:profligate - } - # This is not a well-structured proposition for either of you. - min = 25 - # Better luck next time. - trigger_event = { - id = ep2_wedding_ewan.0053 - years = { 15 25 } - } - } - } - } -} - -# Your business is incompatible with your faith. -scripted_effect ep2_wedding_ewan_0051_business_piety_consequences_effect = { - if = { - limit = { this ?= faith.religious_head } - add_piety = medium_piety_loss - } - else = { add_piety = minor_piety_loss } -} - -# Someone is pitching questionable ideas at you, and you can go along with them or not, but they keep coming at you. -ep2_wedding_ewan.0051 = { - type = activity_event - title = ep2_wedding_ewan.0051.t - desc = { - desc = ep2_wedding_ewan.0051.desc.intro - first_valid = { - # Do we have a stress pitch to make, and thus special option shenanigans to account for? - triggered_desc = { - trigger = { exists = scope:stress_pitch } - desc = { - first_valid = { - # Drunkard - triggered_desc = { - trigger = { scope:stress_pitch = flag:drunkard } - desc = ep2_wedding_ewan.0051.desc.drunkard - } - # Hashishiyah - triggered_desc = { - trigger = { scope:stress_pitch = flag:hashishiyah } - desc = ep2_wedding_ewan.0051.desc.hashishiyah - } - # Rakish - triggered_desc = { - trigger = { scope:stress_pitch = flag:rakish } - desc = ep2_wedding_ewan.0051.desc.rakish - } - # Reclusive - triggered_desc = { - trigger = { scope:stress_pitch = flag:reclusive } - desc = ep2_wedding_ewan.0051.desc.reclusive - } - # Flagellant - triggered_desc = { - trigger = { scope:stress_pitch = flag:flagellant } - desc = ep2_wedding_ewan.0051.desc.flagellant - } - # Profligate - triggered_desc = { - trigger = { scope:stress_pitch = flag:profligate } - desc = ep2_wedding_ewan.0051.desc.profligate - } - # Journaller - triggered_desc = { - trigger = { scope:stress_pitch = flag:journaller } - desc = ep2_wedding_ewan.0051.desc.journaller - } - # Athletic - triggered_desc = { - trigger = { scope:stress_pitch = flag:athletic } - desc = ep2_wedding_ewan.0051.desc.athletic - } - } - } - } - # Nope? Right, random roll it. - desc = { - random_valid = { - # Diligent - triggered_desc = { - trigger = { - scope:dolt = { has_trait = diligent } - } - desc = ep2_wedding_ewan.0051.desc.diligent - } - # Patient - triggered_desc = { - trigger = { - scope:dolt = { has_trait = patient } - } - desc = ep2_wedding_ewan.0051.desc.patient - } - # Impatient - triggered_desc = { - trigger = { - scope:dolt = { has_trait = impatient } - } - desc = ep2_wedding_ewan.0051.desc.impatient - } - # Arrogant - triggered_desc = { - trigger = { - scope:dolt = { has_trait = arrogant } - } - desc = ep2_wedding_ewan.0051.desc.arrogant - } - # Arbitrary - triggered_desc = { - trigger = { - scope:dolt = { has_trait = arbitrary } - } - desc = ep2_wedding_ewan.0051.desc.arbitrary - } - # Zealous - triggered_desc = { - trigger = { - scope:dolt = { ep2_wedding_ewan_0051_boring_zeal_trigger = yes } - } - desc = ep2_wedding_ewan.0051.desc.zealous - } - # Fickle - triggered_desc = { - trigger = { - scope:dolt = { has_trait = fickle } - } - desc = ep2_wedding_ewan.0051.desc.fickle - } - # Vengeful - triggered_desc = { - trigger = { - scope:dolt = { has_trait = vengeful } - } - desc = ep2_wedding_ewan.0051.desc.vengeful - } - # Poet - triggered_desc = { - trigger = { - scope:dolt = { has_trait = lifestyle_poet } - } - desc = ep2_wedding_ewan.0051.desc.poet - } - } - } - } - desc = ep2_wedding_ewan.0051.desc.outro - } - theme = feast_activity - left_portrait = { - character = root - animation = boredom - } - right_portrait = { - character = scope:dolt - animation = admiration - } - - cooldown = { years = 1 } - - trigger = { - NOT = { has_character_flag = awaiting_ep2_wedding_ewan_0051_results_flag } - scope:activity = { - any_attending_character = { ep2_wedding_ewan_0051_dolt_trigger = yes } - } - } - - immediate = { - # We need root saved for dumb loc stuff. - save_scope_as = reference - # Right, let's sort our dolt. - ## First, grab everyone applicable. - scope:activity = { - every_attending_character = { - limit = { ep2_wedding_ewan_0051_dolt_trigger = yes } - add_to_list = potential_boring_characters_list - } - } - ## Then sort through them to find the _least_ interesting person. - ordered_in_list = { - list = potential_boring_characters_list - order_by = { - # Grab the two major talky skills. - value = diplomacy - add = learning - # Now, invert them to rank the chars with the worst scores highest. - multiply = -1 - } - save_scope_as = dolt - } - # Ok, now that we've got our dolt, let's check to see if they're going to pitch a stress-based endeavour to you. - scope:dolt = { - # We don't bother to if statement this, because we're going to random roll with a chance of nothing anyway, so we may as well just put the triggers right on the random_list entries. - random_list = { - # Drunkard - 20 = { - trigger = { has_trait = drunkard } - # Weight up a bit if root shares this quality. - modifier = { - add = 20 - root = { has_trait = drunkard } - } - save_scope_value_as = { - name = stress_pitch - value = flag:drunkard - } - } - # Hashishiyah - 20 = { - trigger = { has_trait = hashishiyah } - # Weight up a bit if root shares this quality. - modifier = { - add = 20 - root = { has_trait = hashishiyah } - } - save_scope_value_as = { - name = stress_pitch - value = flag:hashishiyah - } - } - # Rakish - 20 = { - trigger = { ep2_wedding_ewan_0051_legal_rake_trigger = yes } - # Weight up a bit if root shares this quality. - modifier = { - add = 20 - root = { ep2_wedding_ewan_0051_legal_rake_trigger = yes } - } - save_scope_value_as = { - name = stress_pitch - value = flag:rakish - } - } - # Reclusive - 20 = { - trigger = { has_trait = reclusive } - # Weight up a bit if root shares this quality. - modifier = { - add = 20 - root = { has_trait = reclusive } - } - save_scope_value_as = { - name = stress_pitch - value = flag:reclusive - } - } - # Flagellant - 20 = { - trigger = { has_trait = flagellant } - # Weight up a bit if root shares this quality. - modifier = { - add = 20 - root = { has_trait = flagellant } - } - save_scope_value_as = { - name = stress_pitch - value = flag:flagellant - } - } - # Profligate - 20 = { - trigger = { ep2_wedding_ewan_0051_foolish_profligate_trigger = yes } - # Weight up a bit if root shares this quality. - modifier = { - add = 20 - root = { ep2_wedding_ewan_0051_foolish_profligate_trigger = yes } - } - save_scope_value_as = { - name = stress_pitch - value = flag:profligate - } - } - # Journaller - 20 = { - trigger = { has_trait = journaller } - # Weight up a bit if root shares this quality. - modifier = { - add = 20 - root = { has_trait = journaller } - } - save_scope_value_as = { - name = stress_pitch - value = flag:journaller - } - } - # Athletic - 20 = { - trigger = { has_trait = athletic } - # Weight up a bit if root shares this quality. - modifier = { - add = 20 - root = { has_trait = athletic } - } - save_scope_value_as = { - name = stress_pitch - value = flag:athletic - } - } - # No stress coping pitch, so no effect. - ## If they've got 1 stress trait, we want a roughly 20% chance they'll bring that up, so we weight at 20:80. - ### If they have multiple stress traits, the numbers'll get progressively more stacked in favour of pitching such, but uhhh... clearly they have something to get off their chests. - 80 = { - # We still need to check for the presence of some other boring quality so that we can fetch a desc key. - trigger = { - OR = { - has_trait = diligent - has_trait = patient - has_trait = impatient - has_trait = arrogant - has_trait = arbitrary - ep2_wedding_ewan_0051_boring_zeal_trigger = yes - has_trait = fickle - has_trait = vengeful - has_trait = lifestyle_poet - } - } - } - } - } - } - - # Gently exit the conversation. - option = { - name = ep2_wedding_ewan.0051.a - - # Let's give this a go! - duel = { - skill = diplomacy - value = high_skill_rating - # You extricate yourself. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep2_wedding_ewan.0051.a.tt.success - send_interface_toast = { - title = ep2_wedding_ewan.0051.a.tt.success - left_icon = scope:dolt - add_diplomacy_lifestyle_perk_points = 1 - } - } - # It never ends. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 10 - desc = ep2_wedding_ewan.0051.a.tt.failure - send_interface_toast = { - title = ep2_wedding_ewan.0051.a.tt.failure - left_icon = scope:dolt - reverse_add_opinion = { - target = scope:dolt - modifier = friendliness_opinion - opinion = 50 - } - } - } - } - - ep2_wedding_ewan_0051_compassion_to_dolt_effect = yes - ai_chance = { - base = 1 - ai_value_modifier = { - ai_compassion = 1 - ai_sociability = -0.25 - } - } - } - - # Wrathful: By all the denizens of NegativeAfterLife, will you cease this prattle? - option = { - name = ep2_wedding_ewan.0051.b - trigger = { has_trait = wrathful } - trait = wrathful - - # Your firmness is notable. - add_prestige = medium_prestige_gain - # Scope:dolt is hurt. - reverse_add_opinion = { - target = scope:dolt - modifier = hurt_opinion - opinion = -40 - } - # Every wrathful character at the gathering sees your point. - scope:activity = { - every_attending_character = { - limit = { - has_trait = wrathful - NOR = { - this = root - this = scope:dolt - } - } - custom = ep2_wedding_ewan.0051.b.custom.every_wrathful_guest - add_opinion = { - target = root - modifier = respect_opinion - opinion = 20 - } - } - } - - stress_impact = { - callous = minor_stress_impact_loss - sadistic = minor_stress_impact_loss - impatient = minor_stress_impact_loss - wrathful = major_stress_impact_loss - patient = miniscule_stress_impact_gain - compassionate = miniscule_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_boldness = 0.5 - ai_compassion = -0.5 - } - } - } - - # Shut. Up. - option = { - name = ep2_wedding_ewan.0051.c - trigger = { - NOT = { has_trait = wrathful } - } - - # Your firmness is notable. - add_character_modifier = { - modifier = ep2_wedding_ewan_0051_snooty_modifier - years = 15 - } - # Scope:dolt is hurt. - reverse_add_opinion = { - target = scope:dolt - modifier = hurt_opinion - opinion = -20 - } - - stress_impact = { - callous = minor_stress_impact_loss - sadistic = minor_stress_impact_loss - impatient = minor_stress_impact_loss - compassionate = miniscule_stress_impact_gain - patient = miniscule_stress_impact_gain - calm = miniscule_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_boldness = 0.5 - ai_compassion = -0.5 - } - } - } - - # Lazy: fall asleep. - option = { - name = ep2_wedding_ewan.0051.d - trigger = { has_trait = lazy } - trait = lazy - - # Scope:dolt is hurt. - add_opinion = { - target = scope:dolt - modifier = hurt_opinion - opinion = -30 - } - # Every lazy character at the gathering respects the hustle. - scope:activity = { - every_attending_character = { - limit = { - has_trait = lazy - NOR = { - this = root - this = scope:dolt - } - } - custom = ep2_wedding_ewan.0051.d.custom.every_lazy_guest - reverse_add_opinion = { - target = root - modifier = respect_opinion - opinion = 30 - } - } - } - - # Lotta stress loss for this one too. - stress_impact = { - lazy = major_stress_impact_loss - compassionate = miniscule_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_boldness = 0.5 - ai_energy = -1 - } - } - } - - # Drunkard: you buy a pub together. - option = { - name = ep2_wedding_ewan.0051.e - trigger = { - ep2_wedding_ewan_0051_interested_stress_pitch_trait_drunkard_trigger = yes - NOT = { has_trait = lazy } - } - trait = drunkard - - # Roll the effect. - ep2_wedding_ewan_0051_start_business_together_effect = yes - - ep2_wedding_ewan_0051_stress_trait_stress_effect = { STRESS_TRAIT = drunkard } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_boldness = 1 - ai_rationality = -0.75 - } - } - } - - # Hashishiyah: you buy a cake shop together. - option = { - name = ep2_wedding_ewan.0051.f - trigger = { - ep2_wedding_ewan_0051_interested_stress_pitch_trait_hashishiyah_trigger = yes - NOT = { has_trait = lazy } - } - trait = hashishiyah - - # Roll the effect. - ep2_wedding_ewan_0051_start_business_together_effect = yes - - ep2_wedding_ewan_0051_stress_trait_stress_effect = { STRESS_TRAIT = hashishiyah } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_boldness = 1 - ai_rationality = -0.75 - } - } - } - - # Rakish: you start a brothel together. - option = { - name = ep2_wedding_ewan.0051.g - trigger = { - ep2_wedding_ewan_0051_interested_stress_pitch_trait_rakish_trigger = yes - NOT = { has_trait = lazy } - } - trait = rakish - - # Roll the effect. - ep2_wedding_ewan_0051_start_business_together_effect = yes - - ep2_wedding_ewan_0051_stress_trait_stress_effect = { STRESS_TRAIT = rakish } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_boldness = 1 - ai_rationality = -0.75 - } - } - } - - # Reclusive: you start a private retreat together. - option = { - name = ep2_wedding_ewan.0051.h - trigger = { - ep2_wedding_ewan_0051_interested_stress_pitch_trait_reclusive_trigger = yes - NOT = { has_trait = lazy } - } - trait = reclusive - - # Roll the effect. - ep2_wedding_ewan_0051_start_business_together_effect = yes - - ep2_wedding_ewan_0051_stress_trait_stress_effect = { STRESS_TRAIT = reclusive } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_boldness = 1 - ai_rationality = -0.75 - } - } - } - - # Flagellant: you start a... whipping post field together. Apparently. - option = { - name = ep2_wedding_ewan.0051.i - trigger = { - ep2_wedding_ewan_0051_interested_stress_pitch_trait_flagellant_trigger = yes - NOT = { has_trait = lazy } - } - trait = flagellant - trait = deviant - # Account for secret deviants. - if = { - limit = { - any_secret = { type = secret_deviant } - } - random_secret = { - type = secret_deviant - save_scope_as = secret - } - custom_tooltip = ep2_wedding_ewan.0051.i.tt.deviant - } - - # Roll the effect. - ep2_wedding_ewan_0051_start_business_together_effect = yes - - ep2_wedding_ewan_0051_stress_trait_stress_effect = { STRESS_TRAIT = flagellant } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_boldness = 1 - ai_rationality = -0.75 - } - } - } - - # Profligate: you go in on a scam together, but will generally get scammed. - option = { - name = ep2_wedding_ewan.0051.j - trigger = { - ep2_wedding_ewan_0051_interested_stress_pitch_trait_profligate_trigger = yes - NOT = { has_trait = lazy } - } - trait = profligate - - # Roll the effect. - ep2_wedding_ewan_0051_start_business_together_effect = yes - - ep2_wedding_ewan_0051_stress_trait_stress_effect = { STRESS_TRAIT = profligate } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_boldness = 1 - ai_rationality = -0.75 - } - } - } - - # Journaller: you start a library/scriptorium together. - option = { - name = ep2_wedding_ewan.0051.k - trigger = { - ep2_wedding_ewan_0051_interested_stress_pitch_trait_journaller_trigger = yes - NOT = { has_trait = lazy } - } - trait = journaller - - # Roll the effect. - ep2_wedding_ewan_0051_start_business_together_effect = yes - - ep2_wedding_ewan_0051_stress_trait_stress_effect = { STRESS_TRAIT = journaller } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_boldness = 1 - ai_rationality = -0.75 - } - } - } - - # Athletic: you start a gym together. - option = { - name = ep2_wedding_ewan.0051.l - trigger = { - ep2_wedding_ewan_0051_interested_stress_pitch_trait_athletic_trigger = yes - NOT = { has_trait = lazy } - } - trait = athletic - - # Roll the effect. - ep2_wedding_ewan_0051_start_business_together_effect = yes - - ep2_wedding_ewan_0051_stress_trait_stress_effect = { STRESS_TRAIT = athletic } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_boldness = 1 - ai_rationality = -0.75 - } - } - } - - # That's... very interesting... - option = { - name = ep2_wedding_ewan.0051.m - trigger = { - NOR = { - has_trait = lazy - ep2_wedding_ewan_0051_interested_stress_pitch_trait_drunkard_trigger = yes - ep2_wedding_ewan_0051_interested_stress_pitch_trait_hashishiyah_trigger = yes - ep2_wedding_ewan_0051_interested_stress_pitch_trait_rakish_trigger = yes - ep2_wedding_ewan_0051_interested_stress_pitch_trait_reclusive_trigger = yes - ep2_wedding_ewan_0051_interested_stress_pitch_trait_flagellant_trigger = yes - ep2_wedding_ewan_0051_interested_stress_pitch_trait_profligate_trigger = yes - ep2_wedding_ewan_0051_interested_stress_pitch_trait_journaller_trigger = yes - ep2_wedding_ewan_0051_interested_stress_pitch_trait_athletic_trigger = yes - } - } - - # Try to play along as best you can. - duel = { - skill = intrigue - value = extremely_high_skill_rating - # You pull off your bold-faced lie. - 40 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep2_wedding_ewan.0051.m.tt.success - send_interface_toast = { - title = ep2_wedding_ewan.0051.m.tt.success - left_icon = scope:dolt - add_intrigue_skill = 1 - } - } - # Some people appreciate your tact. - 60 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 10 - desc = ep2_wedding_ewan.0051.m.tt.failure - send_interface_toast = { - title = ep2_wedding_ewan.0051.m.tt.failure - left_icon = scope:dolt - add_character_modifier = { - modifier = ep2_wedding_ewan_0051_approachable_modifier - years = 15 - } - } - } - } - - ep2_wedding_ewan_0051_compassion_to_dolt_effect = yes - ai_chance = { - base = 1 - ai_value_modifier = { - ai_compassion = 0.5 - ai_sociability = 0.5 - } - } - } - - # Grin and bear it. - option = { - name = ep2_wedding_ewan.0051.n - flavor = ep2_wedding_ewan.0051.n.tt - - # They appreciate you listening. - reverse_add_opinion = { - target = scope:dolt - modifier = friendliness_opinion - opinion = 40 - } - # Try to give a hook - they're likely uninteresting (y'know, inherently), which is why we put this in the opt-out. - if = { - limit = { - can_add_hook = { - target = scope:dolt - type = favor_hook - } - } - add_hook = { - target = scope:dolt - type = favor_hook - } - } - - ep2_wedding_ewan_0051_compassion_to_dolt_effect = yes - ai_chance = { - base = 1 - ai_value_modifier = { - ai_compassion = 0.5 - ai_boldness = -1 - } - } - } -} - -# Investment success — your venture turned out to be worthwhile after all! -ep2_wedding_ewan.0052 = { - type = character_event - title = ep2_wedding_ewan.0052.t - desc = { - desc = ep2_wedding_ewan.0052.desc.intro - # Is scope:dolt around? - first_valid = { - # Scope:dolt is dead. - triggered_desc = { - trigger = { - scope:dolt = { is_alive = no } - } - desc = ep2_wedding_ewan.0052.desc.dolt_availability.dead - } - # Scope:dolt is imprisoned. - triggered_desc = { - trigger = { - scope:dolt = { is_imprisoned = yes } - } - desc = ep2_wedding_ewan.0052.desc.dolt_availability.imprisoned - } - # Scope:dolt is available. - desc = ep2_wedding_ewan.0052.desc.dolt_availability.free - } - desc = ep2_wedding_ewan.0052.desc.midtro - # And what was your business again? - first_valid = { - # Drunkard - triggered_desc = { - trigger = { scope:stress_pitch = flag:drunkard } - desc = ep2_wedding_ewan.0052.desc.drunkard - } - # Hashishiyah - triggered_desc = { - trigger = { scope:stress_pitch = flag:hashishiyah } - desc = ep2_wedding_ewan.0052.desc.hashishiyah - } - # Rakish - triggered_desc = { - trigger = { scope:stress_pitch = flag:rakish } - desc = ep2_wedding_ewan.0052.desc.rakish - } - # Reclusive - triggered_desc = { - trigger = { scope:stress_pitch = flag:reclusive } - desc = ep2_wedding_ewan.0052.desc.reclusive - } - # Flagellant - triggered_desc = { - trigger = { scope:stress_pitch = flag:flagellant } - desc = ep2_wedding_ewan.0052.desc.flagellant - } - # Profligate - triggered_desc = { - trigger = { scope:stress_pitch = flag:profligate } - desc = ep2_wedding_ewan.0052.desc.profligate - } - # Journaller - triggered_desc = { - trigger = { scope:stress_pitch = flag:journaller } - desc = ep2_wedding_ewan.0052.desc.journaller - } - # Athletic - triggered_desc = { - trigger = { scope:stress_pitch = flag:athletic } - desc = ep2_wedding_ewan.0052.desc.athletic - } - } - # Who's sending the letter? - first_valid = { - triggered_desc = { - trigger = { - scope:dolt = { - OR = { - is_alive = no - is_imprisoned = yes - } - } - } - desc = ep2_wedding_ewan.0052.desc.outro.dolt_unavailable - } - desc = ep2_wedding_ewan.0052.desc.outro - } - } - theme = feast_activity - left_portrait = { - character = root - animation = disbelief - } - right_portrait = { - character = scope:dolt - animation = happiness - } - override_background = { reference = tavern } - - trigger = { - # Standard checks. - is_available_adult = yes - } - - on_trigger_fail = { - trigger_event = { - id = ep2_wedding_ewan.0052 - years = 1 - } - } - - immediate = { - # Clear the flag. - remove_character_flag = awaiting_ep2_wedding_ewan_0051_results_flag - # Cash for both of you! - add_gold = massive_gold_value - scope:dolt = { - if = { - limit = { is_alive = yes } - add_gold = @ep2_wedding_ewan_0052_dolt_pay_out_value - } - } - # Faith concerns with these iniquities. - ## We don't take off _too_ much for any of these — we're just trying to note them for responsiveness. - ### Unless you're HoF, in which case, that's a bit of a downer. - ## Some faiths would frown on a pub. - if = { - limit = { - scope:stress_pitch = flag:drunkard - faith_forbids_alcohol_trigger = yes - } - ep2_wedding_ewan_0051_business_piety_consequences_effect = yes - } - ## Some faiths frown on sloth. - else_if = { - limit = { - scope:stress_pitch = flag:hashishiyah - # Diligent virtue excluded because you can definitely do work _and_ have a hashish indulging habit, but it's hard to see lots of people _on_ hashish as anything but a den of folks lazing around on cushions chatting about nothing in particular. The horror. - faith = { trait_is_sin = lazy } - } - ep2_wedding_ewan_0051_business_piety_consequences_effect = yes - } - ## Some faiths frown on lust. - else_if = { - limit = { - scope:stress_pitch = flag:rakish - faith = { - OR = { - trait_is_sin = lustful - trait_is_virtue = chaste - } - } - } - ep2_wedding_ewan_0051_business_piety_consequences_effect = yes - } - ## Some faiths frown on isolation. - else_if = { - limit = { - scope:stress_pitch = flag:reclusive - faith = { - OR = { - trait_is_sin = shy - trait_is_virtue = gregarious - } - } - } - ep2_wedding_ewan_0051_business_piety_consequences_effect = yes - } - ## Some faiths frown on boondoggles. - else_if = { - limit = { - scope:stress_pitch = flag:profligate - faith = { trait_is_virtue = greedy } - } - ep2_wedding_ewan_0051_business_piety_consequences_effect = yes - } - ## Some faiths frown on non-gamer activities. - else_if = { - limit = { - scope:stress_pitch = flag:athletic - faith = { trait_is_virtue = lazy } - } - ep2_wedding_ewan_0051_business_piety_consequences_effect = yes - } - } - - # Greedy/Callous/Sadistic/Arbitrary: take scope:dolt's gold too. - option = { - name = ep2_wedding_ewan.0052.a - trigger = { - # You have some sway over scope:dolt. - scope:dolt = { - is_alive = yes - any_liege_or_above = { this = root } - } - OR = { - has_trait = greedy - has_trait = callous - has_trait = sadistic - has_trait = arbitrary - } - } - trait = greedy - trait = callous - trait = sadistic - trait = arbitrary - - scope:dolt = { - # Forcibly transfer the gold. - pay_short_term_gold = { - target = root - gold = @ep2_wedding_ewan_0052_dolt_pay_out_value - } - # But be mad about it. - add_opinion = { - target = root - modifier = cruelty_opinion - opinion = -50 - } - } - - stress_impact = { - greedy = minor_stress_impact_loss - callous = miniscule_stress_impact_loss - sadistic = miniscule_stress_impact_loss - arbitrary = miniscule_stress_impact_loss - generous = medium_stress_impact_gain - compassionate = medium_stress_impact_gain - just = medium_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_greed = 1 - ai_honor = -1 - } - } - } - - # Arrogant: Of course, I'm a business genius. - option = { - name = ep2_wedding_ewan.0052.b - trigger = { has_trait = arrogant } - trait = arrogant - - # Scope:dolt appreciates that you believed in HerHim. - scope:dolt = { - if = { - limit = { is_alive = yes } - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 50 - } - } - } - - stress_impact = { arrogant = massive_stress_impact_loss } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_honor = 1 - ai_greed = -1 - } - } - } - - # An unexpectedly pleasant surprise! - option = { - name = ep2_wedding_ewan.0052.c - trigger = { - NOT = { has_trait = arrogant } - } - - # Scope:dolt appreciates that you believed in HerHim. - scope:dolt = { - if = { - limit = { is_alive = yes } - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 50 - } - } - } - - # No stress for notification option. - ai_chance = { - base = 1 - ai_value_modifier = { - ai_honor = 1 - ai_greed = -1 - } - } - } -} - -# Investment failure — semi-predictably, your venture dun goofed. -ep2_wedding_ewan.0053 = { - type = character_event - title = ep2_wedding_ewan.0053.t - desc = { - desc = ep2_wedding_ewan.0053.desc.intro - # Is scope:dolt around? - first_valid = { - # Scope:dolt is dead. - triggered_desc = { - trigger = { - scope:dolt = { is_alive = no } - } - desc = ep2_wedding_ewan.0053.desc.dolt_availability.dead - } - # Scope:dolt is imprisoned. - triggered_desc = { - trigger = { - scope:dolt = { is_imprisoned = yes } - } - desc = ep2_wedding_ewan.0053.desc.dolt_availability.imprisoned - } - # Scope:dolt is available. - desc = ep2_wedding_ewan.0053.desc.dolt_availability.free - } - desc = ep2_wedding_ewan.0053.desc.midtro - # And what was your business again? - first_valid = { - # Drunkard - triggered_desc = { - trigger = { scope:stress_pitch = flag:drunkard } - desc = ep2_wedding_ewan.0053.desc.drunkard - } - # Hashishiyah - triggered_desc = { - trigger = { scope:stress_pitch = flag:hashishiyah } - desc = ep2_wedding_ewan.0053.desc.hashishiyah - } - # Rakish - triggered_desc = { - trigger = { scope:stress_pitch = flag:rakish } - desc = ep2_wedding_ewan.0053.desc.rakish - } - # Reclusive - triggered_desc = { - trigger = { scope:stress_pitch = flag:reclusive } - desc = ep2_wedding_ewan.0053.desc.reclusive - } - # Flagellant - triggered_desc = { - trigger = { scope:stress_pitch = flag:flagellant } - desc = ep2_wedding_ewan.0053.desc.flagellant - } - # Profligate - triggered_desc = { - trigger = { scope:stress_pitch = flag:profligate } - desc = ep2_wedding_ewan.0053.desc.profligate - } - # Journaller - triggered_desc = { - trigger = { scope:stress_pitch = flag:journaller } - desc = ep2_wedding_ewan.0053.desc.journaller - } - # Athletic - triggered_desc = { - trigger = { scope:stress_pitch = flag:athletic } - desc = ep2_wedding_ewan.0053.desc.athletic - } - } - desc = ep2_wedding_ewan.0053.desc.outro - } - theme = feast_activity - left_portrait = { - character = root - animation = disapproval - } - right_portrait = { - character = scope:dolt - animation = shame - } - override_background = { reference = tavern } - - trigger = { - # Standard checks. - is_available_adult = yes - } - - on_trigger_fail = { - trigger_event = { - id = ep2_wedding_ewan.0053 - years = 1 - } - } - - immediate = { - # Clear the flag. - remove_character_flag = awaiting_ep2_wedding_ewan_0051_results_flag - # Troublesome to be reminded of. - add_stress = medium_stress_gain - scope:dolt = { - if = { - limit = { is_ai = yes } - add_stress = massive_stress_gain - } - } - } - - # Bring me that idiot in shackles! - option = { - name = { - trigger = { - scope:dolt = { is_alive = yes } - } - text = ep2_wedding_ewan.0053.a.alive - } - name = { - trigger = { - scope:dolt = { is_alive = no } - } - text = ep2_wedding_ewan.0053.a.dead - } - - scope:dolt = { - if = { - limit = { is_alive = yes } - # If you can imprison scope:dolt, you do. - if = { - limit = { - is_imprisoned = no - any_liege_or_above = { this = root } - } - rightfully_imprison_character_effect = { - TARGET = scope:dolt - IMPRISONER = root - } - } - # Plus they're upset with your lack of understanding. - add_opinion = { - target = root - modifier = cruelty_opinion - opinion = -30 - } - } - } - - stress_impact = { - vengeful = major_stress_impact_loss - wrathful = miniscule_stress_impact_loss - forgiving = medium_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_vengefulness = 1 - ai_compassion = -1 - } - } - } - - # This was probably to be expected. - option = { - name = ep2_wedding_ewan.0053.b - - # They're grateful for your understanding. - scope:dolt = { - if = { - limit = { is_alive = yes } - add_opinion = { - target = root - modifier = kindness_opinion - opinion = 30 - } - } - } - - stress_impact = { - forgiving = minor_stress_impact_loss - wrathful = minor_stress_impact_gain - vengeful = medium_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_compassion = 1 - ai_vengefulness = -1 - } - } - } -} - -################################################## -# To My Beloved GetRelation -# by Ewan Cowhig Croft -# 0061 - 0070 -################################################## - -# Find an old coot to chatter on. -scripted_trigger ep2_wedding_ewan_0061_suitable_doddering_relative_trigger = { - is_ai = yes - # Right, make sure that they're old enough for a good ramble. - age >= 60 - # Must be sufficiently older than our target also. - age >= { - value = $TARGET$.age - add = 20 - } - # Shy characters will never do this. - NOT = { has_trait = shy } - # Must have some predilection for long public speeches. - OR = { - # Some traits make you want to talk. - ## You love the sound of your own voice. - has_trait = arrogant - ## Because you must tell your story to the world. Or something. - has_trait = honest - ## Because you must tell _a_ story to the world. Or something. - has_trait = deceitful - ## You love giving speeches. - has_trait = gregarious - has_trait = ambitious - has_trait = diplomat - has_trait = lifestyle_poet - ## You love giving terrible speeches. - has_trait = sadistic - ## It seemed like a good idea at the time. - ### We've all been there. - #### ;_;. - has_trait = drunkard - has_trait = hashishiyah - # People with very high talky-skills are inclined to talking. - diplomacy >= @ep2_wedding_ewan_0061_high_skill_value - learning >= @ep2_wedding_ewan_0061_high_skill_value - # Really old people will give speeches. - age >= @ep2_wedding_ewan_0061_old_value - } - # And actually family - we check this last so that we iterate over as few characters as possible. - is_close_or_extended_family_of = $TARGET$ - # Filter out candidates that don't make sense. - NOR = { - this = root - this = scope:activity.special_guest:spouse_1 - this = scope:activity.special_guest:spouse_2 - } -} - -# Talk scope:oldling down without hurting HerHis feelings. -scripted_effect ep2_wedding_ewan_0061_diplomatically_stop_speech_effect = { - # Hook + prestige if we can. - if = { - limit = { - can_add_hook = { - target = scope:relative - type = favor_hook - } - } - add_hook = { - target = scope:relative - type = favor_hook - } - add_prestige = minor_prestige_gain - } - # Otherwise, double our prestige. - else = { add_prestige = medium_prestige_gain } -} - -# How much does root prod scope:oldling into continuing, at the cost of scope:relative's mental health? -scripted_effect ep2_wedding_ewan_0061_humiliation_rewards_effect = { - # If this is the player, we give stress to scope:relative. - ## The AI restriction is to stop scope:relative from being harassed into alcoholism/death if they accidentally invite too many dicks to their wedding. - if = { - limit = { is_ai = no } - scope:relative = { add_stress = $STRESS_AMOUNT$_stress_gain } - } - # Everyone gets to lose opinion though! - ## (the AI is thus effectively just trading opinion for stress loss) - reverse_add_opinion = { - target = scope:relative - modifier = humiliated_opinion - opinion = $OPINION_LOSS$ - } -} - -# Embarrassing older relation speech. -ep2_wedding_ewan.0061 = { - type = activity_event - title = ep2_wedding_ewan.0061.t - desc = { - desc = ep2_wedding_ewan.0061.desc.intro - random_valid = { - # Arrogant - triggered_desc = { - trigger = { - scope:oldling = { has_trait = arrogant } - } - desc = ep2_wedding_ewan.0061.desc.arrogant - } - # Honest - triggered_desc = { - trigger = { - scope:oldling = { has_trait = honest } - } - desc = ep2_wedding_ewan.0061.desc.honest - } - # Deceitful - triggered_desc = { - trigger = { - scope:oldling = { has_trait = deceitful } - } - desc = ep2_wedding_ewan.0061.desc.deceitful - } - # Gregarious - triggered_desc = { - trigger = { - scope:oldling = { has_trait = gregarious } - } - desc = ep2_wedding_ewan.0061.desc.gregarious - } - # Ambitious - triggered_desc = { - trigger = { - scope:oldling = { has_trait = ambitious } - } - desc = ep2_wedding_ewan.0061.desc.ambitious - } - # Diplomat - triggered_desc = { - trigger = { - scope:oldling = { has_trait = diplomat } - } - desc = ep2_wedding_ewan.0061.desc.diplomat - } - # Poet - triggered_desc = { - trigger = { - scope:oldling = { has_trait = lifestyle_poet } - } - desc = ep2_wedding_ewan.0061.desc.poet - } - # Sadistic - triggered_desc = { - trigger = { - scope:oldling = { has_trait = sadistic } - } - desc = ep2_wedding_ewan.0061.desc.sadistic - } - # Drunkard - triggered_desc = { - trigger = { - scope:oldling = { has_trait = drunkard } - } - desc = ep2_wedding_ewan.0061.desc.drunkard - } - # Hashishiyah - triggered_desc = { - trigger = { - scope:oldling = { has_trait = hashishiyah } - } - desc = ep2_wedding_ewan.0061.desc.hashishiyah - } - # High Diplomacy - triggered_desc = { - trigger = { scope:oldling.diplomacy >= @ep2_wedding_ewan_0061_high_skill_value } - desc = ep2_wedding_ewan.0061.desc.skill.diplomacy - } - # High Learning - triggered_desc = { - trigger = { scope:oldling.learning >= @ep2_wedding_ewan_0061_high_skill_value } - desc = ep2_wedding_ewan.0061.desc.skill.learning - } - # V. Old - triggered_desc = { - trigger = { scope:oldling.age >= @ep2_wedding_ewan_0061_old_value } - desc = ep2_wedding_ewan.0061.desc.old - } - # V. V. Old - triggered_desc = { - trigger = { scope:oldling.age >= @ep2_wedding_ewan_0061_very_old } - desc = ep2_wedding_ewan.0061.desc.very_old - } - } - desc = ep2_wedding_ewan.0061.desc.outro - } - theme = feast_activity - left_portrait = { - character = scope:oldling - animation = toast_goblet - } - center_portrait = { - character = root - animation = worry - } - right_portrait = { - character = scope:relative - animation = fear - } - - cooldown = { years = 1 } - - trigger = { - NOR = { - this = scope:activity.special_guest:spouse_1 - this = scope:activity.special_guest:spouse_2 - } - # Either special guest must have a relative who matches the criteria. - scope:activity = { - NOT = { exists = var:had_event_ewan_0061 } - any_attending_character = { - OR = { - ep2_wedding_ewan_0061_suitable_doddering_relative_trigger = { TARGET = scope:activity.special_guest:spouse_1 } - ep2_wedding_ewan_0061_suitable_doddering_relative_trigger = { TARGET = scope:activity.special_guest:spouse_2 } - } - } - } - } - - immediate = { - # Save some scopes for loc and general sanity. - scope:activity = { - special_guest:spouse_1 = { save_scope_as = spouse_1 } - special_guest:spouse_2 = { save_scope_as = spouse_2 } - set_variable = { - name = had_event_ewan_0061 - years = 5 - } - } - # Alright, let's pick a doddering old relative! - scope:activity = { - ordered_attending_character = { - limit = { - OR = { - ep2_wedding_ewan_0061_suitable_doddering_relative_trigger = { TARGET = scope:spouse_1 } - ep2_wedding_ewan_0061_suitable_doddering_relative_trigger = { TARGET = scope:spouse_2 } - } - } - # Naturally, naturally. - order_by = age - # Ok, save 'em for reference. - save_scope_as = oldling - } - } - # Right, work out who they're related to. - random_list = { - # Related to scope:spouse_1. - 100 = { - trigger = { - scope:spouse_1 = { - any_close_or_extended_family_member = { this = scope:oldling } - } - } - scope:spouse_1 = { save_scope_as = relative } - } - # Related to scope:spouse_2. - 100 = { - trigger = { - scope:spouse_2 = { - any_close_or_extended_family_member = { this = scope:oldling } - } - } - scope:spouse_2 = { save_scope_as = relative} - } - } - } - - # Diplomacy: gently interrupt them. - option = { - name = ep2_wedding_ewan.0061.a - trigger = { diplomacy >= extremely_high_skill_rating } - skill = diplomacy - - # Talk scope:oldling down without hurting HerHis feelings. - ep2_wedding_ewan_0061_diplomatically_stop_speech_effect = yes - # Scope:relative is _extremely_ grateful to you either way. - reverse_add_opinion = { - target = scope:relative - modifier = grateful_opinion - opinion = 40 - } - - stress_impact = { - compassionate = minor_stress_impact_loss - callous = miniscule_stress_impact_gain - sadistic = miniscule_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_compassion = 1 - ai_sociability = 1 - } - } - } - - # Politely clap to stop them. - option = { - name = ep2_wedding_ewan.0061.b - trigger = { diplomacy < very_high_skill_rating } - - # You give it your best shot. - duel = { - skill = diplomacy - value = high_skill_rating - # You force scope:oldling down. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep2_wedding_ewan.0061.b.tt.success - send_interface_toast = { - title = ep2_wedding_ewan.0061.b.tt.success - left_icon = scope:oldling - # Talk scope:oldling down without hurting HerHis feelings. - ep2_wedding_ewan_0061_diplomatically_stop_speech_effect = yes - } - } - # Scope:oldling continues apace regardless. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 10 - desc = ep2_wedding_ewan.0061.b.tt.failure - send_interface_toast = { - title = ep2_wedding_ewan.0061.b.tt.failure - left_icon = scope:oldling - add_prestige = minor_prestige_gain - } - } - } - # Scope:relative is _extremely_ grateful to you either way. - reverse_add_opinion = { - target = scope:relative - modifier = grateful_opinion - opinion = 40 - } - - stress_impact = { - compassionate = minor_stress_impact_loss - callous = miniscule_stress_impact_gain - sadistic = miniscule_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_compassion = 1 - ai_sociability = 1 - } - } - } - - # Grin and suffer through it. - option = { - name = ep2_wedding_ewan.0061.c - - # Everyone can commiserate. - scope:activity = { - every_attending_character = { - limit = { - NOR = { - this = scope:oldling - this = root - } - } - custom = custom.every_activity_guest - reverse_add_opinion = { - target = root - modifier = commiseration_opinion - opinion = 15 - } - } - } - - stress_impact = { - compassionate = minor_stress_impact_loss - lazy = minor_stress_impact_loss - patient = minor_stress_impact_loss - impatient = miniscule_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_compassion = 1 - ai_boldness = -1 - } - } - } - - # Mischief: cheer and whoop for more. - option = { - name = ep2_wedding_ewan.0061.d - trigger = { has_activity_intent = banquet_mischief_intent } - reason = activity_intent - - # Same as the .e rolls, but we remove the minor result and just roll between success & crit success. - duel = { - skill = intrigue - value = very_high_skill_rating - # Critical success. - 40 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep2_wedding_ewan.0061.d.tt.crit_success - send_interface_toast = { - title = ep2_wedding_ewan.0061.d.tt.crit_success - left_icon = scope:oldling - right_icon = scope:relative - # Parse out our effects. - ep2_wedding_ewan_0061_humiliation_rewards_effect = { - STRESS_AMOUNT = massive - OPINION_LOSS = -40 - } - } - } - # Success. - 60 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep2_wedding_ewan.0061.d.tt.success - send_interface_toast = { - title = ep2_wedding_ewan.0061.d.tt.success - left_icon = scope:oldling - right_icon = scope:relative - # Parse out our effects. - ep2_wedding_ewan_0061_humiliation_rewards_effect = { - STRESS_AMOUNT = major - OPINION_LOSS = -30 - } - } - } - } - # Plus scope:oldling appreciates the cheering. - reverse_add_opinion = { - target = scope:oldling - modifier = compliment_opinion - opinion = 40 - } - - # We give base stress loss for this'un too. - stress_impact = { - base = major_stress_impact_loss - deceitful = miniscule_stress_impact_loss - callous = miniscule_stress_impact_loss - sadistic = miniscule_stress_impact_loss - compassionate = miniscule_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_boldness = 1 - ai_compassion = -0.5 - } - } - } - - # Prod them to continue. - option = { - name = ep2_wedding_ewan.0061.e - trigger = { - NOT = { has_activity_intent = banquet_mischief_intent } - } - - # Commence the haranguing. - duel = { - skill = intrigue - value = very_high_skill_rating - # Critical success. - 20 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep2_wedding_ewan.0061.e.tt.crit_success - send_interface_toast = { - title = ep2_wedding_ewan.0061.e.tt.crit_success - left_icon = scope:oldling - right_icon = scope:relative - # Parse out our effects. - ep2_wedding_ewan_0061_humiliation_rewards_effect = { - STRESS_AMOUNT = massive - OPINION_LOSS = -40 - } - } - } - # Success. - 30 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep2_wedding_ewan.0061.e.tt.success - send_interface_toast = { - title = ep2_wedding_ewan.0061.e.tt.success - left_icon = scope:oldling - right_icon = scope:relative - # Parse out our effects. - ep2_wedding_ewan_0061_humiliation_rewards_effect = { - STRESS_AMOUNT = major - OPINION_LOSS = -30 - } - } - } - # Slight success. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 10 - desc = ep2_wedding_ewan.0061.e.tt.failure - send_interface_toast = { - title = ep2_wedding_ewan.0061.e.tt.failure - left_icon = scope:oldling - right_icon = scope:relative - # Parse out our effects. - ep2_wedding_ewan_0061_humiliation_rewards_effect = { - STRESS_AMOUNT = medium - OPINION_LOSS = -20 - } - } - } - } - # Plus scope:oldling appreciates the prompts. - reverse_add_opinion = { - target = scope:oldling - modifier = compliment_opinion - opinion = 10 - } - - stress_impact = { - base = major_stress_loss - deceitful = minor_stress_impact_loss - callous = minor_stress_impact_loss - sadistic = minor_stress_impact_loss - compassionate = miniscule_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_boldness = 1 - ai_compassion = -0.5 - } - } - } - - # Stop paying attention. - option = { - name = ep2_wedding_ewan.0061.f - - # Effect is stress loss. - stress_impact = { - base = medium_stress_loss - lazy = medium_stress_impact_loss - diligent = miniscule_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_energy = -0.5 - ai_sociability = -0.5 - } - } - } -} - -################################################## -# Oath in Moment -# by Ewan Cowhig Croft -# 0071 - 0080 -################################################## - -# Your liege offers you a favour for your support. -ep2_wedding_ewan.0071 = { - type = character_event - title = ep2_wedding_ewan.0071.t - desc = ep2_wedding_ewan.0071.desc - theme = feast_activity - left_portrait = { - character = root - animation = personality_bold - } - right_portrait = { - character = scope:liege - animation = admiration - } - - trigger = { - # DLC check. - has_ep2_dlc_trigger = yes - # Vassals only please. - top_liege != this - # Decent prestige level, as you can't be a nobody. - prestige_level >= medium_prestige_level - # Dynastic cooldowns. - trigger_if = { - limit = { exists = dynasty } - dynasty = { - OR = { - # AI cooldown. - AND = { - root = { is_ai = yes } - NOT = { has_variable = ep2_wedding_ewan_0071_ai_cooldown } - } - # Player cooldown. - AND = { - root = { is_ai = no } - NOT = { has_variable = ep2_wedding_ewan_0071_player_cooldown } - } - } - } - } - # If you're factioning, they won't give ye diddly. - NOR = { - is_a_faction_leader = yes - is_a_faction_member = yes - } - # Must have a liege who... - liege ?= { - NOR = { - has_imprisonment_reason = root - has_banish_reason = root - has_execute_reason = root - } - # ... has a prestige level no higher than yours. - prestige_level <= root.prestige_level - # ... really likes you. - OR = { - opinion = { - target = root - value >= 100 - } - AND = { - dynasty ?= { has_dynasty_perk = ep2_activities_legacy_2 } - opinion = { - target = root - value >= 50 - } - } - has_trait = trusting - } - # ... juuuust let's double-check you haven't managed this whilst having a bad relationship. - NOT = { - has_any_bad_relationship_with_character_trigger = { CHARACTER = root } - } - # ... and is an AI. - is_ai = yes - # Plus, filter out stuff that'd look real weird. - NOR = { - # No crime reasons. - has_imprisonment_reason = root - has_banish_reason = root - has_revoke_title_reason = root - has_execute_reason = root - has_divorce_reason = root - # No terrible opinions you might've overridden. - has_any_major_negative_opinion_against_character_trigger = { CHARACTER = root } - # Paranoid lieges don't make themselves this vulnerable. - has_trait = paranoid - } - } - # No use if you already have a strong hook on 'em. - NOT = { has_strong_hook = liege } - } - - weight_multiplier = { - base = 1 - - # Weight up for the dynasty legacy that generally enables this. - modifier = { - # This number is deliberately high — it brings it up to about the standard weighting in the on_action, going from 1 to 100. - add = 99 - dynasty ?= { has_dynasty_perk = ep2_activities_legacy_2 } - } - } - - immediate = { - # Grab the liege immediately for mildly easier loc - we don't worry about a scripted trigger because we only have one liege who can have passed this gate. - liege = { save_scope_as = liege } - # We don't want to see this again for a century or so. - if = { - limit = { exists = dynasty } - # AI get one cooldown... - if = { - limit = { is_ai = yes } - dynasty = { - set_variable = { - name = ep2_wedding_ewan_0071_ai_cooldown - value = yes - years = 100 - } - } - } - # ... and the player gets another, so that the AI doesn't block them. - dynasty = { - set_variable = { - name = ep2_wedding_ewan_0071_player_cooldown - value = yes - years = 100 - } - } - } - } - - # Sounds like a fair trade to me! - option = { - name = ep2_wedding_ewan.0071.a - - # You get your hook. - add_hook = { - type = liege_favour_strong_hook - target = scope:liege - } - # Liege gains prestige! - scope:liege = { - add_prestige = major_prestige_gain - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 30 - } - } - - stress_impact = { - humble = major_stress_impact_loss - arbitrary = minor_stress_impact_gain - arrogant = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_rationality = 2 - ai_honor = 0.5 - } - } - } - - # Thank you, but no thank you. - option = { - name = ep2_wedding_ewan.0071.b - - # You gain prestige. - add_prestige = major_prestige_gain - # Plus dynasty prestige if you're not the same dynasty. - if = { - limit = { - OR = { - AND = { - exists = liege.dynasty - NOT = { dynasty ?= liege.dynasty } - } - AND = { - exists = dynasty - NOT = { exists = liege.dynasty } - } - } - } - dynasty = { add_dynasty_prestige = massive_dynasty_prestige_value } - } - # Liege loses a little opinion of you. - reverse_add_opinion = { - target = scope:liege - modifier = disappointed_opinion - opinion = -15 - } - - stress_impact = { - arbitrary = minor_stress_impact_loss - arrogant = minor_stress_impact_loss - humble = medium_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_compassion = -0.5 - ai_energy = -0.75 - } - } - } -}